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

Re: log cache and date revisions

From: <Stefan.Fuhrmann_at_etas.com>
Date: Wed, 7 Jan 2009 12:04:40 +0100

Stefan Kueng <tortoisesvn_at_gmail.com> wrote:

> Seems the log cache can't handle date revisions?

That is correct.

> With the next nightly build (> 15028):
> * show log on the TSVN working copy
> * click arrow of "Show All" button, select "revision range"
> * enter {2008-01-01} and {2009-01-01} in the from/to fields
> * click OK.
>
> I remember that the log cache isn't designed to handle date revisions,
> but could you maybe implement a workaround so that if date revisions are
> specified that the cache is not used?

I think the log cache can be taught to interpret
date revisions. Here is the plan:

* CLogCacheQuery translates date revisions to
  actual revision numbers (just like it would
  for HEAD, peg/path etc.) and runs the actual
  query after that.

* Date revisions can be translated as follows:
  - find the latest revision before the date.
    Start at revision 0 and increment until found.
    I guess that is what SVN still does even
    if the history is non-contiguous?
    Alternatively, find the closed match.
  - check whether the revision found equals HEAD
    or whether the next revision is in cache.
    -> translation successful, otherwise failed
  - if the translation failed, ask the server
    to translate the date revision
  - when in off-line mode, proceed with whatever
    revision has been found

For non-contiguous history, e.g. after merging
repositories, (some) date revisions are ambiguous.
In that case, the log cache might return different
results as a native query.

I should be able to implement that this weekend.

-- Stefan^2.

------------------------------------------------------
http://tortoisesvn.tigris.org/ds/viewMessage.do?dsForumId=757&dsMessageId=1009822

To unsubscribe from this discussion, e-mail: [dev-unsubscribe_at_tortoisesvn.tigris.org].
Received on 2009-01-07 12:05:00 CET

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

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