Passing null will always have the full wait time, so just picking some path has a better user experience. When multiple paths are passed they are usually all in the same (wc and) file system.
Bert From: Philip Martin Sent: 30/07/2013 14:53 To: Bert Huijben Cc: Alexander Lüders; dev@subversion.apache.org Subject: Re: SVN 1.7/1.8 "commit after delete" performance issue Bert Huijben <b...@qqmail.nl> writes: > Just pick the parent of the first delete or something like that. The > path should be a valid path on the same file system, nothing special. > It is just used for guessing the timestamp granularity. I suppose that might work for commit, but it's not clear how it would work for update. Instead how about something like this: Index: subversion/libsvn_client/commit.c =================================================================== --- subversion/libsvn_client/commit.c (revision 1508338) +++ subversion/libsvn_client/commit.c (working copy) @@ -1027,8 +1027,14 @@ svn_client_commit6(const apr_array_header_t *targe cleanup: /* Sleep to ensure timestamp integrity. */ if (timestamp_sleep) - svn_io_sleep_for_timestamps(base_abspath, pool); + { + const char *wcroot_abspath; + SVN_ERR(svn_wc__get_wcroot(&wcroot_abspath, ctx->wc_ctx, base_abspath, + pool, pool)); + svn_io_sleep_for_timestamps(wcroot_abspath, pool); + } + /* Abort the commit if it is still in progress. */ svn_pool_clear(iterpool); /* Close open handles before aborting */ if (commit_in_progress) Index: subversion/libsvn_client/update.c =================================================================== --- subversion/libsvn_client/update.c (revision 1508338) +++ subversion/libsvn_client/update.c (working copy) @@ -701,7 +701,17 @@ svn_client_update4(apr_array_header_t **result_rev cleanup: if (sleep) - svn_io_sleep_for_timestamps((paths->nelts == 1) ? path : NULL, pool); + { + const char *wcroot_abspath; + if (paths->nelts == 1) + SVN_ERR(svn_wc__get_wcroot(&wcroot_abspath, ctx->wc_ctx, path, + pool, pool)); + else + wcroot_abspath = NULL; + + svn_io_sleep_for_timestamps(wcroot_abspath, pool); + } + return svn_error_trace(err); } -- Philip Martin | Subversion Committer WANdisco | Non-Stop Data