WARNING: <file> failed verification -- update discarded (will
try again).
Joe Peterson
joe at skyrush.com
Mon Dec 12 00:48:24 GMT 2005
Wayne,
I just did some more testing to see if I could reproduce the warning,
and I was successful. I tried manually setting "--checksum-seed" equal
to timestamps around the time of the error, and I hit a case pretty
quickly on that same file. It reproduces over and over, so it's
definitely the first cause you list below or some other deterministic
rsync thing.
Now that I have a test case, would be it worth investigating? You said
it should be rare, so I wonder if something else could be afoot and
therefore worth checking.
Anyway, here is the output:
----------- Checksum seed: 1133910002
building file list ... done
04-Let_Me_Try_Again.flac
WARNING: 04-Let_Me_Try_Again.flac failed verification -- update
discarded (will try again).
04-Let_Me_Try_Again.flac
(command is: rsync -av --checksum-seed=1133910002 --delete-excluded
--exclude="*~" --exclude="#*#"
new/The_Main_Event/04-Let_Me_Try_Again.flac host:/tmp)
Let me know if I can help to track this down, or I could send you the
files (new and old) in question.
Thanks, Joe
Wayne Davison wrote:
> On Wed, Dec 07, 2005 at 11:38:25AM -0700, Joe Peterson wrote:
>
>>WARNING: jukebox/Frank_Sinatra/The_Main_Event/04-Let_Me_Try_Again.flac
>>failed verification -- update discarded (will try again).
>>jukebox/Frank_Sinatra/The_Main_Event/12-My_Way.flac
>>
>>What does the "WARNING" imply?
>
>
> It is telling you that the updated file that rsync created didn't match
> the checksum that the sender told us. There are a number of different
> ways this can happen (all of them pretty rare, but not impossible):
>
> If this was an update (not a newly-created file):
>
> - A block checksum may have gotten a match on some local data that
> wasn't really identical, so the constructed file wasn't correct.
> (The redo-pass uses a slightly different block size in order to
> work-around such a rare occurrence.)
>
> - If someone was modifying the file on the receiving side during the
> interval between rsync generating the checksum data and the local
> data being used to recreate the updated file, that can also cause
> the end result to be incorrect (due to different data being copied
> from what rsync was expecting).
>
> For both updates and new files:
>
> - If the sender got a read-error reading the file, the checksum is
> forced to be invalid because this is the only current way rsync
> has to tell the receiving side to discard the updated file.
> (The observed behavior is not consistent with this possibility,
> so you can ignore this one.)
>
> - If the data being sent over the socket was corrupted (somehow), it
> may be that the corruption to occurred inside the file data. This
> is usually only possible with failing hardware, buggy networking
> drivers, and things like that.
>
> ..wayne..
>
More information about the rsync
mailing list