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

Re: svn: E175008: Failed to parse revprops for r0.

From: Daniel Shahaf <d.s_at_daniel.shahaf.name>
Date: Tue, 30 Jul 2019 19:43:23 +0000

JITHIN K wrote on Tue, 30 Jul 2019 14:57 +00:00:
> * Verifying metadata at revision 0 ...
> * Error verifying repository metadata.
> svnadmin: E200002: Failed to parse revprops for r0.
> svnadmin: E200002: Serialized hash malformed value data
> "

That's supposed to be impossible *even after a system crash*.

The revprops file is changed by creating a new file, flushing it to
disk, and atomically renaming it into place. This design is resilient
to crashes… when fflush(3) and rename(2) deliver on their promises.

I would suspect that fflush(3) on your system returns before the data is
actually written to persistent (durable) storage.

> 4. I edited the file manually and tried to sync but it failed. Did
> anyone faced this problem. Any support would be appreciated.

Well, just edit the revprops file to be valid. It's a binary file
format so you have to be careful about lengths and trailing spaces,
but it should be straightforward. If in doubt, do this:

% svnadmin freeze /svn/myrepo /bin/sh
$ cp db/revprops/0/0 db/revprops/0/0.BACKUP
$ printf 'END\n' > db/revprops/0/0
$ cat db/revprops/0/0.BACKUP
[for each key-value pair in the output of the previous command, do:]
    $ svnadmin setrevprop -r0 . key value
$ exit
%

(Of course, you should never modify anything under the db/ directory except for
fsfs.conf… so don't try hacks such as the above unless you have to, and even
then, _make a backup_ first.)

Cheers,

Daniel
Received on 2019-07-30 21:43:39 CEST

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