[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

How to recreate rep-cache.db if it wasn't writable for some time ?

From: Olivier Berger <olivier.berger_at_telecom-sudparis.eu>
Date: Thu, 16 Jan 2014 15:08:59 +0100

(please CC: me as not subscribed)

Hi.

The bug report "rep-cache.db created without group write bit" [0] seems
to be on the way of being solved (AFAIU, the fix isn't released yet).

So, until then, for new repositories where no commit was made, a workaround
is to create (touch) the file before the first commit.

But if commits have been made already, as the file was created with
wrong permissions, there are chances that some commits are missing.

I cannot seem to find a reference to a repair solution to recreate the
contents of the DB cache (svnadmin recover doesn't address it AFAICT).

The document at [1] mentions that "This file is only consulted during
writes and never during reads. Consequently, it is not required, and
may be removed at an abritrary time, with the subsequent loss of
rep-sharing capabilities for revisions written thereafter." But AFAIU,
if the file is removed, it gets recreated anyway, staring from the next
commit, unless enable-rep-sharing = false...

So I'm wondering : if the file is incomplete, is there a risk ? And
if not, how may we recreate the contents of the cache ?

It seems that the algorithm would be quite simple from reading [1], but
that's beyond my capacity investigating SVN internals, I'm afraid.

Thanks in advance.

Best regards,

[0] http://subversion.tigris.org/issues/show_bug.cgi?id=3437
[1] http://svn.apache.org/repos/asf/subversion/trunk/subversion/libsvn_fs_fs/structure

-- 
Olivier BERGER 
http://www-public.telecom-sudparis.eu/~berger_o/ - OpenPGP-Id: 2048R/5819D7E8
Ingenieur Recherche - Dept INF
Institut Mines-Telecom, Telecom SudParis, Evry (France)
Received on 2014-01-16 15:17:39 CET

This is an archived mail posted to the Subversion Users mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.