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