You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by JITHIN K <ji...@gmail.com> on 2019/07/30 14:56:57 UTC

svn: E175008: Failed to parse revprops for r0.

Hello All,

I would like your suggestion on fixing the a svnsync error. SVN mirroring
is not working in one of the repository after a system crash.

Options tried.

1. I used svnadmin verify tool but it failed with following error message.

  "
* Verifying metadata at revision 0 ...
* Error verifying repository metadata.
svnadmin: E200002: Failed to parse revprops for r0.
svnadmin: E200002: Serialized hash malformed value data
"

2. svnadmin verify -r 1:100   is working fine. So I think problem with
revision 0.

3.  '/db/revprops/0/0' file readable and shows the revision0 properties. I
could not set revision 0 properties using  *svn propset --revprop -r0 *command
it failed with

 svn: E175008: While handling the 'svn:sync-from-uuid' property on
'/svn/myrepo/!svn/bln/0':
svn: E175008: Failed to parse revprops for r0.

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

Server OS : Ubuntu 14.04 LTS
Subversion : *version 1.8.8 (r1568071).*

*Mirror OS : Ubuntu 16.04 LTS*
*Subversion : **version 1.9.3 (r1718519).*

Regards,
Jithin K

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

Posted by Daniel Shahaf <d....@daniel.shahaf.name>.
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