You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by hw...@apache.org on 2010/06/02 03:56:42 UTC

svn commit: r950333 - in /subversion/trunk/subversion: include/svn_fs.h include/svn_repos.h libsvn_fs_fs/fs_fs.c svnadmin/main.c

Author: hwright
Date: Wed Jun  2 01:56:42 2010
New Revision: 950333

URL: http://svn.apache.org/viewvc?rev=950333&view=rev
Log:
Extend the repository notification framework (and it's complement in use for
FSFS packing) to handle packing of revprops.

* subversion/svnadmin/main.c
  (repos_notify_handler): Add handlers for the packing of revprops.

* subversion/include/svn_fs.h
  (svn_fs_pack_notify_action): Add enums for revprop packing.

* subversion/include/svn_repos.h
  (svn_repos_notify_action_t): Same.

* subversion/libsvn_fs_fs/fs_fs.c
  (pack_revprop_shard): Emit the revprop shard packing notification.

Modified:
    subversion/trunk/subversion/include/svn_fs.h
    subversion/trunk/subversion/include/svn_repos.h
    subversion/trunk/subversion/libsvn_fs_fs/fs_fs.c
    subversion/trunk/subversion/svnadmin/main.c

Modified: subversion/trunk/subversion/include/svn_fs.h
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/include/svn_fs.h?rev=950333&r1=950332&r2=950333&view=diff
==============================================================================
--- subversion/trunk/subversion/include/svn_fs.h (original)
+++ subversion/trunk/subversion/include/svn_fs.h Wed Jun  2 01:56:42 2010
@@ -2143,7 +2143,15 @@ typedef enum
   svn_fs_pack_notify_start = 0,
 
   /** packing of the shard is completed */
-  svn_fs_pack_notify_end
+  svn_fs_pack_notify_end,
+
+  /** packing of the shard revprops has commenced
+      @since New in 1.7. */
+  svn_fs_pack_notify_start_revprop,
+
+  /** packing of the shard revprops has completed
+      @since New in 1.7. */
+  svn_fs_pack_notify_end_revprop
 
 } svn_fs_pack_notify_action_t;
 

Modified: subversion/trunk/subversion/include/svn_repos.h
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/include/svn_repos.h?rev=950333&r1=950332&r2=950333&view=diff
==============================================================================
--- subversion/trunk/subversion/include/svn_repos.h (original)
+++ subversion/trunk/subversion/include/svn_repos.h Wed Jun  2 01:56:42 2010
@@ -181,9 +181,18 @@ typedef enum svn_repos_notify_action_t
   /** A revision has finished being verified. */
   svn_repos_notify_verify_rev_end,
 
+  /** packing of an FSFS shard has commenced */
   svn_repos_notify_pack_shard_start,
 
-  svn_repos_notify_pack_shard_end
+  /** packing of an FSFS shard is completed */
+  svn_repos_notify_pack_shard_end,
+
+  /** packing of the shard revprops has commenced */
+  svn_repos_notify_pack_shard_start_revprop,
+
+  /** packing of the shard revprops has completed */
+  svn_repos_notify_pack_shard_end_revprop
+
 } svn_repos_notify_action_t;
 
 /**

Modified: subversion/trunk/subversion/libsvn_fs_fs/fs_fs.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_fs_fs/fs_fs.c?rev=950333&r1=950332&r2=950333&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_fs_fs/fs_fs.c (original)
+++ subversion/trunk/subversion/libsvn_fs_fs/fs_fs.c Wed Jun  2 01:56:42 2010
@@ -7450,7 +7450,7 @@ pack_revprop_shard(svn_fs_t *fs,
 
   /* Notify caller we're starting to pack this shard. */
   if (notify_func)
-    SVN_ERR(notify_func(notify_baton, shard, svn_fs_pack_notify_start,
+    SVN_ERR(notify_func(notify_baton, shard, svn_fs_pack_notify_start_revprop,
                         pool));
 
   start_rev = (svn_revnum_t) (shard * max_files_per_dir);
@@ -7488,7 +7488,7 @@ pack_revprop_shard(svn_fs_t *fs,
 
   /* Notify caller we're starting to pack this shard. */
   if (notify_func)
-    SVN_ERR(notify_func(notify_baton, shard, svn_fs_pack_notify_end,
+    SVN_ERR(notify_func(notify_baton, shard, svn_fs_pack_notify_end_revprop,
                         pool));
 
   return SVN_NO_ERROR;

Modified: subversion/trunk/subversion/svnadmin/main.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/svnadmin/main.c?rev=950333&r1=950332&r2=950333&view=diff
==============================================================================
--- subversion/trunk/subversion/svnadmin/main.c (original)
+++ subversion/trunk/subversion/svnadmin/main.c Wed Jun  2 01:56:42 2010
@@ -687,7 +687,7 @@ repos_notify_handler(void *baton,
                                             "%" APR_INT64_T_FMT,
                                             notify->shard);
         svn_error_clear(svn_stream_printf(feedback_stream, scratch_pool,
-                                          _("Packing shard %s..."),
+                                          _("Packing revisions in shard %s..."),
                                           shardstr));
       }
       return;
@@ -697,6 +697,22 @@ repos_notify_handler(void *baton,
                                         _("done.\n")));
       return;
 
+    case svn_repos_notify_pack_shard_start_revprop:
+      {
+        const char *shardstr = apr_psprintf(scratch_pool,
+                                            "%" APR_INT64_T_FMT,
+                                            notify->shard);
+        svn_error_clear(svn_stream_printf(feedback_stream, scratch_pool,
+                                          _("Packing revprops in shard %s..."),
+                                          shardstr));
+      }
+      return;
+
+    case svn_repos_notify_pack_shard_end_revprop:
+      svn_error_clear(svn_stream_printf(feedback_stream, scratch_pool,
+                                        _("done.\n")));
+      return;
+
     default:
       return;
   }