OK, figured it out... VERY INTERESTING.

The original file has an mtime of -2082826800 which corresponds to 5AM
Friday, Jan 1, 1904.
The the error message in question is actually *right* and not an
error:
    setVarInt botch: got negative argument -2082826800; setting to 0

i.e. it truly is a negative mtime.

The reason for this odd time is that the file was created on a Mac128
(circa 1985) and apparently, on old Macs (pre-PowerPC), time starts with 
midnight Jan
1, 1904 and runs until 2040. Now 5AM GMT is actually 12AM EST (my home
timezone), so the file shows a 'default' old Mac start date of
midnight Jan 1, 1904.

Now for the interesting part.
Both the v3 and v4 versions of BackupPC_attribPrint are actually wrong! 2 
(different) bugs!!!!

1. v3 displays a positive mtime of 2212140496 which is is right only
   in the sense that it is the decimal equivalent of the 2's
   complement representation of -2082826800

2. v4 properly catches that the mtime is negative, but signals an
   error rather than writing it. it then proceeds however to record a
   wrong (and very large) mtime of 18446744071626724816, rather than
   0. The number however is 2^64 which is the 2's complement of 0 for
   8 byte integers


Fascinating. I learned a lot from nailing this one down.
Now both the v3 and v4 bugs should presumably be corrected :)

"" wrote at about 20:23:18 -0400 on Monday, April 8, 2019:
 > "" wrote at about 20:13:33 -0400 on Monday, April 8, 2019:
 > 
 > Once again seems to be a problem with bpc_attrib.c:
 > BackupPC_attribPrint
 > 
 > Using v3:
 >  'MacWrite 5.0Scrap' => {
 >    'uid' => 501,
 >    'mode' => 33188,
 >    'sizeDiv4GB' => 0,
 >    'size' => 0,
 >    'type' => 0,
 >    'gid' => 501,
 >    'sizeMod4GB' => 0,
 >    'mtime' => 2212140496
 >   },
 >                               
 > Using v4:
 > 
 >  'MacWrite 5.0Scrap' => {
 >    'compress' => 3,
 >    'digest' => '',
 >    'gid' => 501,
 >    'inode' => 0,
 >    'mode' => 33188,
 >    'mtime' => '18446744071626724816',
 >    'name' => 'MacWrite 5.0Scrap',
 >    'nlinks' => 0,
 >    'size' => 0,
 >    'type' => 0,
 >    'uid' => 501
 >   },
 > 
 > Clearly, v4 is messing up on reading 'mtime' which presumably is what
 > is causing the problem, consistent with the verbose output of
 > BackupPC_migrateV3toV4 (as more fully excertped below)
 > 
 >  > setVarInt botch: got negative argument -2082826800; setting to 0
 >  > Wrote file MacWrite 5.0Scrap: type = 0, mode = 0100644, uid/gid = 
 > 501/501, size = 0, inode = 11616435, nlinks = 0, digest = 0xd41d8c..., 
 > bufUsed = 925
 > 
 > 
 > 
 >  > 
 >  > Craig Barratt wrote at about 23:39:50 -0700 on Sunday, April 7, 2019:
 >  >  > Jeff,
 >  >  > 
 >  >  > Please send me an attrib file that triggers that error.
 >  >  > 
 >  >  > Craig
 >  >  > 
 >  > 
 >  > Here is the relevant verbose output from BackupPc_migrateV3toV4
 >  > starting with the attrib file:
 >  > 
 >  > bpc_poolRefDeltaUpdate(5a3631521955e47e179ea20d8a84ac5a, 1), count now 1
 >  > 
 > bpc_attrib_dirWrite(/var/lib/backuppc/pc/consult/13.v4/./f%2f/fvar/fopt/fexecutor/fshare/fhome/fSystem
 >  Folder/attrib): dirPath = 
 > /var/lib/backuppc/pc/consult/13.v4/./f%2f/fvar/fopt/fexecutor/fshare/fhome/fSystem
 >  Folder, attribFileName = attrib, baseAttribFileName = attrib
 >  > 
 > bpc_path_create(/var/lib/backuppc/pc/consult/13.v4/./f%2f/fvar/fopt/fexecutor/fshare/fhome/fSystem
 >  Folder)
 >  > Wrote file Extensions: type = 5, mode = 040771, uid/gid = 0/1002, size = 
 > 4096, inode = 11616442, nlinks = 0, digest = 0x000000..., bufUsed = 4
 >  > Wrote file %mac.rsrc: type = 0, mode = 0100660, uid/gid = 0/1002, size = 
 > 6753, inode = 11616437, nlinks = 0, digest = 0xc874b4..., bufUsed = 37
 >  > Wrote file system.ard: type = 0, mode = 0100660, uid/gid = 0/1002, size = 
 > 0, inode = 11616455, nlinks = 0, digest = 0xd41d8c..., bufUsed = 85
 >  > Wrote file %MacWrite 5.0Scrap: type = 0, mode = 0100644, uid/gid = 
 > 501/501, size = 198, inode = 11616432, nlinks = 0, digest = 0x85e52a..., 
 > bufUsed = 133
 >  > Wrote file Excel Toolbars: type = 0, mode = 0100644, uid/gid = 501/501, 
 > size = 267, inode = 11616447, nlinks = 0, digest = 0x619077..., bufUsed = 191
 >  > Wrote file %ParamRAM: type = 0, mode = 0100660, uid/gid = 0/1002, size = 
 > 198, inode = 11616457, nlinks = 0, digest = 0x5a3631..., bufUsed = 245
 >  > Wrote file Printer: type = 0, mode = 0100640, uid/gid = 0/1002, size = 0, 
 > inode = 11616441, nlinks = 0, digest = 0xd41d8c..., bufUsed = 293
 >  > Wrote file %system.ard: type = 0, mode = 0100660, uid/gid = 0/1002, size 
 > = 798, inode = 11616445, nlinks = 0, digest = 0xdcd6d0..., bufUsed = 338
 >  > Wrote file %System: type = 0, mode = 0100660, uid/gid = 0/1002, size = 
 > 487415, inode = 11616434, nlinks = 0, digest = 0xa9c2a3..., bufUsed = 388
 >  > Wrote file System: type = 0, mode = 0100660, uid/gid = 0/1002, size = 0, 
 > inode = 11616433, nlinks = 0, digest = 0xd41d8c..., bufUsed = 435
 >  > Wrote file Browser: type = 0, mode = 0100640, uid/gid = 0/1002, size = 0, 
 > inode = 11616450, nlinks = 0, digest = 0xd41d8c..., bufUsed = 479
 >  > Wrote file ParamRAM: type = 0, mode = 0100660, uid/gid = 0/1002, size = 
 > 20, inode = 11616443, nlinks = 0, digest = 0xcef2a5..., bufUsed = 524
 >  > Wrote file %Printer: type = 0, mode = 0100640, uid/gid = 0/1002, size = 
 > 2279, inode = 11616438, nlinks = 0, digest = 0x07c53e..., bufUsed = 570
 >  > Wrote file %Browser: type = 0, mode = 0100640, uid/gid = 0/1002, size = 
 > 119268, inode = 11616448, nlinks = 0, digest = 0x9fb0e6..., bufUsed = 617
 >  > Wrote file %windows.rsrc: type = 0, mode = 0100660, uid/gid = 0/1002, 
 > size = 15917, inode = 11616451, nlinks = 0, digest = 0xd30945..., bufUsed = 
 > 665
 >  > Wrote file %Excel Toolbars: type = 0, mode = 0100644, uid/gid = 501/501, 
 > size = 198, inode = 11616439, nlinks = 0, digest = 0x7c1511..., bufUsed = 717
 >  > Wrote file windows.rsrc: type = 0, mode = 0100660, uid/gid = 0/1002, size 
 > = 0, inode = 11616453, nlinks = 0, digest = 0xd41d8c..., bufUsed = 772
 >  > Wrote file mac.rsrc: type = 0, mode = 0100660, uid/gid = 0/1002, size = 
 > 0, inode = 11616440, nlinks = 0, digest = 0xd41d8c..., bufUsed = 822
 >  > Wrote file Excel Settings (4): type = 0, mode = 0100644, uid/gid = 
 > 501/501, size = 0, inode = 11616436, nlinks = 0, digest = 0xd41d8c..., 
 > bufUsed = 868
 >  > setVarInt botch: got negative argument -2082826800; setting to 0
 >  > Wrote file MacWrite 5.0Scrap: type = 0, mode = 0100644, uid/gid = 
 > 501/501, size = 0, inode = 11616435, nlinks = 0, digest = 0xd41d8c..., 
 > bufUsed = 925
 >  > Wrote file %godata.sav: type = 0, mode = 0100644, uid/gid = 501/501, size 
 > = 198, inode = 11616452, nlinks = 0, digest = 0x39c291..., bufUsed = 977
 >  > Wrote file %Preferences: type = 0, mode = 0100660, uid/gid = 0/1002, size 
 > = 198, inode = 11616454, nlinks = 0, digest = 0x087760..., bufUsed = 1028
 >  > Wrote file godata.sav: type = 0, mode = 0100644, uid/gid = 501/501, size 
 > = 1100, inode = 11616456, nlinks = 0, digest = 0xb247c3..., bufUsed = 1079
 >  > Wrote file MacWrite 5.0Undo: type = 0, mode = 0100644, uid/gid = 501/501, 
 > size = 32, inode = 11616446, nlinks = 0, digest = 0x70bc8f..., bufUsed = 1129
 >  > Wrote file %MacWrite 5.0Undo: type = 0, mode = 0100644, uid/gid = 
 > 501/501, size = 198, inode = 11616449, nlinks = 0, digest = 0xb5c763..., 
 > bufUsed = 1184
 >  > Wrote file Preferences: type = 5, mode = 040771, uid/gid = 0/1002, size = 
 > 4096, inode = 11616431, nlinks = 0, digest = 0x000000..., bufUsed = 1241
 >  > 
 >  > 
 >  > I am also attaching the relevant attrib file
 >  > [DELETED ATTACHMENT attrib, Untyped binary data]


_______________________________________________
BackupPC-users mailing list
BackupPC-users@lists.sourceforge.net
List:    https://lists.sourceforge.net/lists/listinfo/backuppc-users
Wiki:    http://backuppc.wiki.sourceforge.net
Project: http://backuppc.sourceforge.net/

Reply via email to