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

Re: Proposal for OPW project

From: Philip Martin <philip.martin_at_wandisco.com>
Date: Wed, 02 Jan 2013 21:59:59 +0000

Gabriela Gibson <gabriela.gibson_at_gmail.com> writes:

> On 02/01/13 10:38, Philip Martin wrote:
>> A small one: svnadmin freeze multiple repositories
>> http://subversion.tigris.org/issues/show_bug.cgi?id=4276
>>
>> A bit larger: rep-cache offset validation
>> http://subversion.tigris.org/issues/show_bug.cgi?id=4277
>>
> The first bug is a keeper, I learn about the command line component
> anyway in the diff project.

The command line stuff is just boilerplate that is needed to get to the
guts of the issue, the main part is putting a loop into the existing
code:

   svn_error_t *
   freeze_body(...)
   {
     svn_io_run_cmd(...);
   }

   svn_error_t *
   subcommand_freeze(...)
   {
     svn_repos_freeze(..., freeze_body, ...);
   }

The loop could be a recursive call in svnadmin itself:

   svn_error_t *
   freeze_body(...)
   {
     if (repositories)
       {
         next(repositories);
         svn_repos_freeze(..., freeze_body, ...);
       }
     else
       svn_io_run_cmd(...);
   }

   svn_error_t *
   subcommand_freeze(...)
   {
     svn_repos_freeze(..., freeze_body, ...);
   }

Or the loop could go in the libsvn_repos library by changing the
svn_repos_freeze API to pass an array of paths. The loop in the library
may well look much like the above svnadmin loop, but putting it in the
library has the advantage of making it readily available to all clients.

> The second bug is fs_fs.c territory, so I think I'll wimpy on that
> for now.

This is is mostly about determining which FSFS function, or perhaps
sequence of functions, to call. It's probably a smaller patch than the
freeze patch but perhaps requires more work to understand the FS code.

-- 
Certified & Supported Apache Subversion Downloads:
http://www.wandisco.com/subversion/download
Received on 2013-01-02 23:00:39 CET

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

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.