14.05.2014 17:48, Vlad Khorsun wrote:
>> 10.05.2014 14:03, Vlad Khorsun wrote:
>>    If I'm not mistaken, these repeating index entries works as a reference 
>> counters and
>
>      Nope. A-A...A-B will produce two index entries

   Right. And it means that there are two _series_ of versions: one with A 
other with B.

>> allow to stop using staying list for indexes even in current code for the 
>> same reason as
>> for blobs: three versions are enough for decision making.
>
>      Not really. While A-B-A is not possible for blobs (as we agreed 
> recently), but it is usual
> case for index keys.

   Let's look at more interesting case: A-B-A-B. In this case there will be 
four index 
entries, two for A and two for B. Now, for example, we rollback last version B, 
leaving 
A-B-A. If we collect full staying list, removing of the B index node will be 
prevented, 
leaving us with two B index nodes. If we take into account only nearest 
version, B node 
will be removed and for resulting chain A-B-A we will have in index two A nodes 
and _one_ 
B node, which is a right result.
   The same way you can check that removing any version from the middle of the 
chain will 
leave right number of nodes if you use for staying list only two neighbor 
versions.

-- 
   WBR, SD.

------------------------------------------------------------------------------
"Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
Instantly run your Selenium tests across 300+ browser/OS combos.
Get unparalleled scalability from the best Selenium testing platform available
Simple to use. Nothing to install. Get started now for free."
http://p.sf.net/sfu/SauceLabs
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel

Reply via email to