subversion-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Daniel Shahaf <>
Subject Re: svn commit: r1331763 - in /subversion/trunk/subversion/libsvn_fs_fs: fs.h fs_fs.c
Date Sat, 28 Apr 2012 14:41:19 GMT wrote on Sat, Apr 28, 2012 at 13:48:00 -0000:
> Author: stefan2
> Date: Sat Apr 28 13:48:00 2012
> New Revision: 1331763
> URL:
> Log:
> The lifetime of the shared-memory based named atomics used for
> revprop generation communication and storage may be as short as
> that of the svn_fs_t. Cached revprops may live as long as the process,
> though. Therefore, we must store the revprop generation on disk
> and re-read it when we encounter un-initialized (having only the 
> default value of 0) the named atomics.
> Please note that the revprop generation file is optional an may be
> removed or remain unchanged when being used with older servers.
> Therefore, no format bump is necessary.

I'm lost.  The cache lives as long as the process, the generation as
long as the svn_fs_t, therefore you cache the generation on-disk?  In
a file whose name is _not_ keyed on the process (or even the machine)?

This sounds wrong.  (For example, if two processes on the same machine
both swap out their generation to a file, and then read it back, one of
them will get the wrong value.)  Isn't the right solution to store the
generation in memory of the same lifetime as the cache itself?

View raw message