RE: Specifying commit timestamps over RA
From: Bert Huijben <bert_at_qqmail.nl>
Date: Fri, 29 Nov 2013 17:46:59 +0100
Can we please use plain text mail?
(Yes I know, I use html on my phone and tablet too… :()
[[
We don't have any code anywhere that would guarantee that svn:date values are in-order, and we've known for 10 years that dated revision searches or ranges yield indeterminate results if the dates within the searched subtree are not in order.
This is not correct.
[[
/**
* Get the latest revision number at time @a tm in the repository of
* @a session.
*
* Use @a pool for memory allocation.
*
* @since New in 1.2.
*/
svn_error_t *
svn_ra_get_dated_revision(svn_ra_session_t *session,
svn_revnum_t *revision,
apr_time_t tm,
apr_pool_t *pool);
]]
This function that is used to evaluate +- all timestamps doesn’t use a path. Its implementation just performs a binary search on the revisions in a repository (not a path) and it would be very inefficient in our current design to update it to walk history for a binary search.
Bert
From: Branko Čibej [mailto:brane_at_wandisco.com]
On 29.11.2013 15:29, Ivan Zhakov wrote:
On 27 November 2013 22:57, Philip Martin <mailto:philip.martin_at_wandisco.com> <philip.martin_at_wandisco.com> wrote:
In 1.9 we have a new API svn_fs_commit_txn2 that allows 'svnadmin load'
While I added svn_fs_commit_txn2() function I think it should not be
We don't have any code anywhere that would guarantee that svn:date values are in-order, and we've known for 10 years that dated revision searches or ranges yield indeterminate results if the dates within the searched subtree are not in order.
Other than that, it is perfectly OK for the dates to be out of order. If you don't believe me, you only have to look at the import of the Subversion repository into the ASF repo:
$ svn log -r0:HEAD ^/subversion --limit 1 | grep ^r
You're also missing the entire point of the discussion: the intent of the proposed change is to be able to sync repository mirrors in such a way that both the contents and the revprops, including the original svn:date value of the master repo, can be atomically committed to the mirror. In other words, the intent is to reduce the probability of having out-of-order dates on the mirror.
-- Brane
-- Branko Čibej | Director of Subversion WANdisco // Non-Stop Data e. brane_at_wandisco.com <mailto:brane_at_wandisco.com>Received on 2013-11-29 17:47:54 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.