On Sun, Apr 29, 2012 at 08:15, Stefan Fuhrmann <eqfox_at_web.de> wrote:
>...
> The problem is that there is globally available file name
> to back the SHM implementation on OSes that need it.
> We can only assume write access to some file within the
> respective repositories.
>
> Because a given server process may access thousands of
> repositories during its lifetime, keeping the SHM data
> alive for all of them is not an option, too.
>
> So, we store the new revprop generation as part of each
> setrevprop call, i.e. this write will be serialized and the
> write order be kept by the repository write lock.
>
> The only racy situation occurs when the data is being read
> again but the first one to finish that procedure is guaranteed
> to be the only one that initializes the SHM data. Since even
> writers will first go through that initialization phase, they
> will never operate on stale data.
Is all the above written into some comments or docstrings? It would be
nice to preserve information in the code rather than mailing lists :-)
Cheers,
-g
Received on 2012-04-30 21:20:44 CEST