Daniel Shahaf <danie...@elego.de> writes:

> You're right, I misread the code: I mistakenly thought line 2867 will
> always re-read the revprop-gen file from disk.  How about:
>
> Index: subversion/libsvn_fs_fs/fs_fs.c
> ===================================================================
> --- subversion/libsvn_fs_fs/fs_fs.c   (revision 1297002)
> +++ subversion/libsvn_fs_fs/fs_fs.c   (working copy)
> @@ -583,8 +583,9 @@ with_some_lock_file(svn_fs_t *fs,
>        fs_fs_data_t *ffd = fs->fsap_data;
>        if (ffd->format >= SVN_FS_FS__MIN_PACKED_FORMAT)
>          SVN_ERR(update_min_unpacked_rev(fs, pool));
>        SVN_ERR(get_youngest(&ffd->youngest_rev_cache, fs->path,
>                             pool));
> +      SVN_ERR(read_revprop_generation(fs, pool));
>        err = body(baton, subpool);
>      }
>  

That looks like it works.  But it only works if all writers update the
generation file so this whole caching scheme requires an FSFS format
bump to exclude 1.7 and earlier.

-- 
uberSVN: Apache Subversion Made Easy
http://www.uberSVN.com

Reply via email to