Archie Cobbs wrote:
>
> Apparently this is a timestamp issue. The
> checkout/trunk/dir1/.svn/entries file contains this:
>
> file1.txt
> file
>
>
>
>
> 2008-05-07T16:03:14.000000Z
> 60d2445f39ed500fe763b26bb19f06d3
> 2008-05-07T16:03:14.299221Z
> 1
> archie
> has-props
>
> But the modification time of the file is exactly the same as the first
> timestamp in .svn/entries, and apparently this makes SVN mistakenly
> believe the file is not modified:
>
> $ ls -l --time-style=full-iso checkout/trunk/dir1/file1.txt
> -rw-r--r-- 1 archie awarix 54 2008-05-07 11:03:14.000000000 -0500
> checkout/trunk/dir1/file1.txt
> $ svn st !$
> svn st checkout/trunk/dir1/file1.txt
> $
>
> Simply touching the file causes it to suddenly appear modified to SVN:
>
> $ touch checkout/trunk/dir1/file1.txt
> $ ls -l --time-style=full-iso checkout/trunk/dir1/file1.txt
> -rw-r--r-- 1 archie awarix 54 2008-05-07 11:12:06.000000000 -0500
> checkout/trunk/dir1/file1.txt
> $ svn st checkout/trunk/dir1/file1.txt
> M checkout/trunk/dir1/file1.txt
>
> This system is Linux using reiserfs. I'm guessing that due to its
> journaling behavior that can coalesce multiple operations into a single
> disk operation, two distinct file operations can appear to happen at the
> exact same time.
>
> My guess is that SVN assumes this can't happen. So probably there is a
> ">" in the code that instead should be ">=" :-)
My understanding is that Subversion has an internal function
svn_sleep_for_timestamps() which is supposed to prevent this case from
happening.
I am not one of the developers, but this does sound like a bug to me.
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe_at_subversion.tigris.org
For additional commands, e-mail: users-help_at_subversion.tigris.org
Received on 2008-05-07 19:56:18 CEST