On 20/02/17 15:27, Alex Parvulescu wrote:
What about walking the revision history in smaller chunks?
Given a repository history of revisions: r0, r1, ...., r100, the indexer
would now diff [r0, r100] which can be resource intensive. What if it diffs
by a window of size 10: [r0, r9] (mark), [r10, r19] (mark) and so on. This
would not give out a 'continuable' session, but it has resilience, and
optionally it could already use the intermediary index to serve queries
instead of full traversals.

This may work for some cases, but not on a repository that was already running for a long time. Instead of r0, r1, ...., r100, you'd have r1000000, r1000001, ..., r1000100. That is, r1 to r999999 was garbage collected. Assuming r0 is the empty repository, even the first diff [r0, r1000000] is already big.

Regards
 Marcel

Reply via email to