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

[PATCH] UI improvement for svnadmin verify

From: Eric Gillespie <epg_at_google.com>
Date: Fri, 22 Feb 2008 15:14:11 -0800

Our abuse of the dump code for verify gets yuckier as time
passes. I'm not going to separate it though, at least not yet.

[[[
Don't print a warning about dump when we're pretending dump is verify.

* subversion/libsvn_repos/dump.c
  (struct edit_baton): Add new verify field, indicating whether this is
    a verify or not.
  (dump_node): Don't warn about an incomplete dump if this is a verify.
  (get_dump_editor): Set eb->verify to FALSE.
  (svn_repos_verify_fs): Set eb->verify to TRUE.
]]]

Index: subversion/libsvn_repos/dump.c
===================================================================
--- subversion/libsvn_repos/dump.c (revision 29557)
+++ subversion/libsvn_repos/dump.c (working copy)
@@ -185,6 +185,9 @@
   /* True if dumped nodes should output deltas instead of full text. */
   svn_boolean_t use_deltas;
 
+ /* True if this "dump" is in fact a verify. */
+ svn_boolean_t verify;
+
   /* The first revision dumped in this dumpstream. */
   svn_revnum_t oldest_dumped_rev;
 
@@ -410,7 +413,7 @@
         }
       else
         {
- if (cmp_rev < eb->oldest_dumped_rev)
+ if (!eb->verify && cmp_rev < eb->oldest_dumped_rev)
             SVN_ERR(svn_stream_printf
                     (eb->feedback_stream, pool,
                      _("WARNING: Referencing data in revision %ld,"
@@ -827,6 +830,7 @@
   SVN_ERR(svn_fs_revision_root(&(eb->fs_root), fs, to_rev, pool));
   eb->current_rev = to_rev;
   eb->use_deltas = use_deltas;
+ eb->verify = FALSE;
 
   /* Set up the editor. */
   dump_editor->open_root = open_root;
@@ -1193,7 +1197,7 @@
   for (rev = start_rev; rev <= end_rev; rev++)
     {
       svn_delta_editor_t *dump_editor;
- void *dump_edit_baton;
+ struct edit_baton *dump_edit_baton;
       const svn_delta_editor_t *cancel_editor;
       void *cancel_edit_baton;
       svn_fs_root_t *to_root;
@@ -1202,9 +1206,10 @@
 
       /* Get cancellable dump editor, but with our close_directory handler. */
       SVN_ERR(get_dump_editor((const svn_delta_editor_t **)&dump_editor,
- &dump_edit_baton, fs, rev, "",
+ (void *)&dump_edit_baton, fs, rev, "",
                               svn_stream_empty(pool), feedback_stream,
                               start_rev, FALSE, iterpool));
+ dump_edit_baton->verify = TRUE;
       dump_editor->close_directory = verify_close_directory;
       SVN_ERR(svn_delta_get_cancellation_editor(cancel_func, cancel_baton,
                                                 dump_editor, dump_edit_baton,

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe_at_subversion.tigris.org
For additional commands, e-mail: dev-help_at_subversion.tigris.org
Received on 2008-02-23 00:14:23 CET

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