hashes/ue/srv/mirrors/ue /srv/mirrors/ue -v
looking at /srv/mirrors/ue
locked /srv/metalink-hashes/ue/srv/mirrors/ue/LOCK
Hashing '/srv/mirrors/ue/bar' ... <-----------
Up to date: '/srv/metalink-hashes/ue/srv/mirrors/ue/ultimate-edition-2.4-
x64.iso.size_2562793472'
Up to date: '/srv/metalink-hashes/ue/srv/mirrors/ue/ultimate-edition-2.4-
x86.iso.size_2534909952'
unlocking /srv/metalink-hashes/ue/srv/mirrors/ue/LOCK
The log shows how /srv/mirrors/ue/bar is re-hashed. However, the script always claims that.
Inserting a debug print shows that the mtime on the source and destination file are slightly different (in subsecond range):
Issue migrated (2015-06-05) from old issue tracker http://mirrorbrain.org/issues/issue24
msg67 (view) Author: poeml Date: 2009-11-30.14:46:08
Checking whether a saved metalink hash file is up to date, the comparison for mtimes doesn't
work sometimes. I encountered this case:
withlock ~/LOCK-ue-hasher metalink-hasher update -t /srv/metalink-
hashes/ue/srv/mirrors/ue /srv/mirrors/ue -v
looking at /srv/mirrors/ue
locked /srv/metalink-hashes/ue/srv/mirrors/ue/LOCK
Hashing '/srv/mirrors/ue/bar' ... <-----------
Up to date: '/srv/metalink-hashes/ue/srv/mirrors/ue/ultimate-edition-2.4-
x64.iso.size_2562793472'
Up to date: '/srv/metalink-hashes/ue/srv/mirrors/ue/ultimate-edition-2.4-
x86.iso.size_2534909952'
unlocking /srv/metalink-hashes/ue/srv/mirrors/ue/LOCK
The log shows how /srv/mirrors/ue/bar is re-hashed. However, the script always claims that.
Inserting a debug print shows that the mtime on the source and destination file are
slightly different (in subsecond range):
withlock ~/LOCK-ue-hasher metalink-hasher update -t /srv/metalink-
hashes/ue/srv/mirrors/ue /srv/mirrors/ue -v
looking at /srv/mirrors/ue
locked /srv/metalink-hashes/ue/srv/mirrors/ue/LOCK
src mtime 1259537492.4343064 <---------
dst mtime 1259537492.4343059 <---------
Hashing '/srv/mirrors/ue/bar' ...
src mtime 1257621747.0
dst mtime 1257621747.0
Up to date: '/srv/metalink-hashes/ue/srv/mirrors/ue/ultimate-edition-2.4-
x64.iso.size_2562793472'
src mtime 1257621923.0
dst mtime 1257621923.0
Up to date: '/srv/metalink-hashes/ue/srv/mirrors/ue/ultimate-edition-2.4-
x86.iso.size_2534909952'
unlocking /srv/metalink-hashes/ue/srv/mirrors/ue/LOCK
This means that os.utime() doesn't set the correct utime for some reason.
I'm fixing this in trunk by comparing int(mtime) to int(mtime) instead of a direct
comparison.
msg68 (view) Author: poeml Date: 2009-11-30.14:49:39
fixed in r7881
http://svn.mirrorbrain.org/viewvc/mirrorbrain?view=revision&revision=7881
msg75 (view) Author: poeml Date: 2009-12-01.20:58:37
No adverse effects observed with the fix. Seems to work. Closing this issue.
(end of migrated issue)
The text was updated successfully, but these errors were encountered: