You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by iv...@apache.org on 2011/05/23 13:21:58 UTC

svn commit: r1126441 - /subversion/trunk/subversion/svnsync/main.c

Author: ivan
Date: Mon May 23 11:21:57 2011
New Revision: 1126441

URL: http://svn.apache.org/viewvc?rev=1126441&view=rev
Log:
svnsync: Reduce number of RA requests.

* subversion/svnsync/main.c
  (open_source_session): Retrieve three properties using one 
   svn_ra_rev_proplist() call instead of requesting them one by one.

Modified:
    subversion/trunk/subversion/svnsync/main.c

Modified: subversion/trunk/subversion/svnsync/main.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/svnsync/main.c?rev=1126441&r1=1126440&r2=1126441&view=diff
==============================================================================
--- subversion/trunk/subversion/svnsync/main.c (original)
+++ subversion/trunk/subversion/svnsync/main.c Mon May 23 11:21:57 2011
@@ -906,14 +906,17 @@ open_source_session(svn_ra_session_t **f
                     void *baton,
                     apr_pool_t *pool)
 {
+  apr_hash_t *props;
   svn_string_t *from_url_str, *from_uuid_str;
 
-  SVN_ERR(svn_ra_rev_prop(to_session, 0, SVNSYNC_PROP_FROM_URL,
-                          &from_url_str, pool));
-  SVN_ERR(svn_ra_rev_prop(to_session, 0, SVNSYNC_PROP_FROM_UUID,
-                          &from_uuid_str, pool));
-  SVN_ERR(svn_ra_rev_prop(to_session, 0, SVNSYNC_PROP_LAST_MERGED_REV,
-                          last_merged_rev, pool));
+  SVN_ERR(svn_ra_rev_proplist(to_session, 0, &props, pool));
+
+  from_url_str = apr_hash_get(props, SVNSYNC_PROP_FROM_URL,
+                              APR_HASH_KEY_STRING);
+  from_uuid_str = apr_hash_get(props, SVNSYNC_PROP_FROM_UUID,
+                               APR_HASH_KEY_STRING);
+  *last_merged_rev = apr_hash_get(props, SVNSYNC_PROP_LAST_MERGED_REV,
+                                  APR_HASH_KEY_STRING);
 
   if (! from_url_str || ! from_uuid_str || ! *last_merged_rev)
     return svn_error_create