You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Daniel Shahaf <da...@elego.de> on 2011/12/15 13:27:55 UTC

Re: svn commit: r1214697 - in /subversion/trunk/subversion: include/ libsvn_fs/ libsvn_fs_base/ libsvn_fs_fs/ libsvn_repos/ svnadmin/ tests/cmdline/

stsp@apache.org wrote on Thu, Dec 15, 2011 at 11:03:08 -0000:
> Author: stsp
> Date: Thu Dec 15 11:03:08 2011
> New Revision: 1214697
> 
> URL: http://svn.apache.org/viewvc?rev=1214697&view=rev
> Log:
> New and improved implementation of 'hotcopy' for FSFS.
...
> Modified: subversion/trunk/subversion/libsvn_repos/repos.c
> URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_repos/repos.c?rev=1214697&r1=1214696&r2=1214697&view=diff
> ==============================================================================
> --- subversion/trunk/subversion/libsvn_repos/repos.c (original)
> +++ subversion/trunk/subversion/libsvn_repos/repos.c Thu Dec 15 11:03:08 2011
> @@ -1777,17 +1793,29 @@ lock_db_logs_file(svn_repos_t *repos,
> +svn_repos_hotcopy2(const char *src_path,
>  {
> +  SVN_ERR(svn_dirent_get_absolute(&src_abspath, src_path, pool));
> +  SVN_ERR(svn_dirent_get_absolute(&dst_abspath, dst_path, pool));
> +  if (strcmp(src_abspath, dst_abspath) == 0)

Noting from IRC that this should resolve symlinks.

> +    return svn_error_create(SVN_ERR_INCORRECT_PARAMS, NULL,
> +                             _("Hotcopy source and destination are equal"));
> Modified: subversion/trunk/subversion/svnadmin/main.c
> URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/svnadmin/main.c?rev=1214697&r1=1214696&r2=1214697&view=diff
> ==============================================================================
> --- subversion/trunk/subversion/svnadmin/main.c (original)
> +++ subversion/svnadmin/main.c Thu Dec 15 11:03:08 2011
> @@ -332,8 +332,10 @@ static const svn_opt_subcommand_desc2_t 
>  
>    {"hotcopy", subcommand_hotcopy, {0}, N_
>     ("usage: svnadmin hotcopy REPOS_PATH NEW_REPOS_PATH\n\n"
> -    "Makes a hot copy of a repository.\n"),
> -   {svnadmin__clean_logs} },
> +    "Makes a hot copy of a repository.\n"
> +    "If --incremental is passed, data which already exists at the destination\n"
> +    "is not copied again (for FSFS repositories only).\n"),

I'd like to clarify what happens for 'hotcopy --incremental' for BDB.
This sounds like it's silently ignored...

How about saying "[for FSFS; not implemented for BDB]"?