Hi,
This is the follow-up to r1126441.
In r1126441, Ivan reduced the no. of RA requests in
subversion/svnsync/main.c: open_source_session() by using
svn_ra_rev_proplist(). This patch does the same during "svnsync info" also.
Attaching the patch and log message.
Thanks & Regards,
Vijayaguru
Index: subversion/svnsync/main.c
===================================================================
--- subversion/svnsync/main.c (revision 1126455)
+++ subversion/svnsync/main.c (working copy)
@@ -1633,6 +1633,7 @@
apr_array_header_t *targets;
subcommand_baton_t *baton;
const char *to_url;
+ apr_hash_t *props;
svn_string_t *from_url, *from_uuid, *last_merged_rev;
SVN_ERR(svn_opt__args_to_target_array(&targets, os,
@@ -1654,19 +1655,20 @@
baton = make_subcommand_baton(opt_baton, to_url, NULL, 0, 0, pool);
SVN_ERR(open_target_session(&to_session, baton, pool));
- /* Verify that the repos has been initialized for synchronization. */
- SVN_ERR(svn_ra_rev_prop(to_session, 0, SVNSYNC_PROP_FROM_URL,
- &from_url, pool));
+ SVN_ERR(svn_ra_rev_proplist(to_session, 0, &props, pool));
+
+ from_url = apr_hash_get(props, SVNSYNC_PROP_FROM_URL,
+ APR_HASH_KEY_STRING);
+
if (! from_url)
return svn_error_createf
(SVN_ERR_BAD_URL, NULL,
_("Repository '%s' is not initialized for synchronization"), to_url);
- /* Fetch more of the magic properties, which are the source of our info. */
- SVN_ERR(svn_ra_rev_prop(to_session, 0, SVNSYNC_PROP_FROM_UUID,
- &from_uuid, pool));
- SVN_ERR(svn_ra_rev_prop(to_session, 0, SVNSYNC_PROP_LAST_MERGED_REV,
- &last_merged_rev, pool));
+ from_uuid = 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);
/* Print the info. */
SVN_ERR(svn_cmdline_printf(pool, _("Source URL: %s\n"), from_url->data));
This is the follow-up to r1126441.
Reduce number of RA requests during 'svnsync info'.
* subversion/svnsync/main.c
(info_cmd): Retrieve three properties using one
svn_ra_rev_proplist() call instead of requesting them one by one.
Patch by: Vijayaguru G <vijay{_AT_}collab.net>
Inspired by: Ivan