@@ -40,9 +40,6 @@ def _checkFileLength(self, localFile, remoteFile, fileRead=False):
4040 lengthQuery = "SELECT LENGTH(LOAD_FILE('%s'))" % remoteFile
4141
4242 elif Backend .isDbms (DBMS .PGSQL ):
43- if fileRead :
44- lengthQuery = True
45- else :
4643 lengthQuery = "SELECT LENGTH(data) FROM pg_largeobject WHERE loid=%d" % self .oid
4744
4845 elif Backend .isDbms (DBMS .MSSQL ):
@@ -53,32 +50,36 @@ def _checkFileLength(self, localFile, remoteFile, fileRead=False):
5350
5451 localFileSize = os .path .getsize (localFile )
5552
56- logger .debug ("checking the length of the remote file %s" % remoteFile )
57- remoteFileSize = inject .getValue (lengthQuery , resumeValue = False , expected = EXPECTED .INT , charsetType = CHARSET_TYPE .DIGITS )
58- sameFile = None
59-
60- if isNumPosStrValue (remoteFileSize ):
61- remoteFileSize = long (remoteFileSize )
62- sameFile = False
63-
64- if localFileSize == remoteFileSize :
65- sameFile = True
66- infoMsg = "the local file %s and the remote file " % localFile
67- infoMsg += "%s have the same size" % remoteFile
68- elif remoteFileSize > localFileSize :
69- infoMsg = "the remote file %s is larger than " % remoteFile
70- infoMsg += "the local file %s" % localFile
71- else :
72- infoMsg = "the remote file %s is smaller than " % remoteFile
73- infoMsg += "file '%s' (%d bytes)" % (localFile , localFileSize )
74-
75- logger .info (infoMsg )
53+ if fileRead and Backend .isDbms (DBMS .PGSQL ):
54+ logger .info ("length of read file %s cannot be checked on PostgreSQL" % remoteFile )
55+ sameFile = True
7656 else :
77- sameFile = False
78- warnMsg = "it looks like the file has not been written, this "
79- warnMsg += "can occur if the DBMS process' user has no write "
80- warnMsg += "privileges in the destination path"
81- logger .warn (warnMsg )
57+ logger .debug ("checking the length of the remote file %s" % remoteFile )
58+ remoteFileSize = inject .getValue (lengthQuery , resumeValue = False , expected = EXPECTED .INT , charsetType = CHARSET_TYPE .DIGITS )
59+ sameFile = None
60+
61+ if isNumPosStrValue (remoteFileSize ):
62+ remoteFileSize = long (remoteFileSize )
63+ sameFile = False
64+
65+ if localFileSize == remoteFileSize :
66+ sameFile = True
67+ infoMsg = "the local file %s and the remote file " % localFile
68+ infoMsg += "%s have the same size" % remoteFile
69+ elif remoteFileSize > localFileSize :
70+ infoMsg = "the remote file %s is larger than " % remoteFile
71+ infoMsg += "the local file %s" % localFile
72+ else :
73+ infoMsg = "the remote file %s is smaller than " % remoteFile
74+ infoMsg += "file '%s' (%d bytes)" % (localFile , localFileSize )
75+
76+ logger .info (infoMsg )
77+ else :
78+ sameFile = False
79+ warnMsg = "it looks like the file has not been written, this "
80+ warnMsg += "can occur if the DBMS process' user has no write "
81+ warnMsg += "privileges in the destination path"
82+ logger .warn (warnMsg )
8283
8384 return sameFile
8485
0 commit comments