Mike,
On Wed, Dec 12, 2012 at 10:15 PM, C. Michael Pilato <cmpilato_at_collab.net> wrote:
> On 12/12/2012 03:30 PM, C. Michael Pilato wrote:
>> On 12/12/2012 03:02 PM, Lieven Govaerts wrote:
>>> On Tue, Dec 11, 2012 at 9:29 PM, C. Michael Pilato <cmpilato_at_collab.net> wrote:
>>>> Those technical challenges aside, I've since started to doubt the wisdom of
>>>> adding special treatment of the starting revision to this API anyway. I'll
>>>> continue pondering other options.
>>>>
>>>
>>> What about my earlier suggestion?
>>
>> I considered it.
>>
>> And ... then I considered it a nasty hack.
>
> Wait a second, though. If we're talking about nasty hacks, what about this
> one: 'svnrdump dump' grows code to set the new bulk-updates config option on
> behalf of the user. :-)
You're not reading my mails at all are you? ;)
That's what I suggested before, but I found later that it will not
work because the server can force the client to use skelta mode
(SVNAllowBulkUpdates Off).
>
> Something like this:
>
> Index: subversion/svnrdump/svnrdump.c
> ===================================================================
> --- subversion/svnrdump/svnrdump.c (revision 1420957)
> +++ subversion/svnrdump/svnrdump.c (working copy)
> @@ -341,7 +341,7 @@
> apr_pool_t *pool)
> {
> svn_client_ctx_t *ctx = NULL;
> - svn_config_t *cfg_config;
> + svn_config_t *cfg_config, *cfg_servers;
>
> SVN_ERR(svn_ra_initialize(pool));
>
> @@ -357,6 +357,13 @@
> cfg_config = apr_hash_get(ctx->config, SVN_CONFIG_CATEGORY_CONFIG,
> APR_HASH_KEY_STRING);
>
> + /* Forcibly prefer bulk-updates to work around issue #4116
> + (http://subversion.tigris.org/issues/show_bug.cgi?id=4116). */
> + cfg_servers = apr_hash_get(ctx->config, SVN_CONFIG_CATEGORY_SERVERS,
> + APR_HASH_KEY_STRING);
> + svn_config_set_bool(cfg_servers, SVN_CONFIG_SECTION_GLOBAL,
> + SVN_CONFIG_OPTION_BULK_UPDATES, TRUE);
> +
Also, this setting can be set per server group by the user so
overriding the above, but I got the idea! ;)
> /* Set up our cancellation support. */
> ctx->cancel_func = check_cancel;
>
>
> --
> C. Michael Pilato <cmpilato_at_collab.net>
> CollabNet <> www.collab.net <> Enterprise Cloud Development
>
Lieven
Received on 2012-12-12 22:23:59 CET