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

Re: [PATCH] Implement svnadmin verify --force

From: Stefan Sperling <stsp_at_elego.de>
Date: Mon, 29 Oct 2012 10:21:27 +0100

On Mon, Oct 29, 2012 at 12:27:32PM +0530, Prabhu Gnana Sundar wrote:
> On 10/28/2012 01:54 AM, Daniel Shahaf wrote:
> >>Index: subversion/libsvn_fs/fs-loader.c
> >>===================================================================
> >>--- subversion/libsvn_fs/fs-loader.c (revision 1402414)
> >>+++ subversion/libsvn_fs/fs-loader.c (working copy)
> >>@@ -487,17 +487,21 @@
> >> void *cancel_baton,
> >> svn_revnum_t start,
> >> svn_revnum_t end,
> >>+ svn_boolean_t keep_going,
> >> apr_pool_t *pool)
> >> {
> >>- fs_library_vtable_t *vtable;
> >>- svn_fs_t *fs;
> >>+ if (!keep_going)
> >>+ {
> >That's wrong for the same reason as last time
>
>
> I am not sure on what has to be done. Can you please guide me with
> some pointers on what has to be done.
>
> Thanks
> Prabhu

With some context added back it's easier to see what's wrong:

> Index: subversion/libsvn_fs/fs-loader.c
> ===================================================================
> --- subversion/libsvn_fs/fs-loader.c (revision 1402414)
> +++ subversion/libsvn_fs/fs-loader.c (working copy)
> @@ -487,17 +487,21 @@
> void *cancel_baton,
> svn_revnum_t start,
> svn_revnum_t end,
> + svn_boolean_t keep_going,
> apr_pool_t *pool)
> {
> - fs_library_vtable_t *vtable;
> - svn_fs_t *fs;
> + if (!keep_going)
> + {
> + fs_library_vtable_t *vtable;
> + svn_fs_t *fs;
>
> - SVN_ERR(fs_library_vtable(&vtable, path, pool));
> - fs = fs_new(NULL, pool);
> + SVN_ERR(fs_library_vtable(&vtable, path, pool));
> + fs = fs_new(NULL, pool);

You are effectively disabling the verify_fs() function call below if the
user passes --keep-going. That doesn't seem right.

This patch is supposed to change the way we treat errors encountered
during verification. The verification process itself shouldn't be changed.

>
> - SVN_MUTEX__WITH_LOCK(common_pool_lock,
> - vtable->verify_fs(fs, path, cancel_func, cancel_baton,
> - start, end, pool, common_pool));
> + SVN_MUTEX__WITH_LOCK(common_pool_lock,
> + vtable->verify_fs(fs, path, cancel_func, cancel_baton,
> + start, end, pool, common_pool));
> + }
> return SVN_NO_ERROR;
> }
>
Received on 2012-10-29 10:22:16 CET

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