Subject Re: [Firebird-Architect] Question about limits in fb 2.5 or 3.0
Author Jim Starkey
Alex Peshkov wrote:
> On Tuesday 24 February 2009 17:32, Dmitry Yemanov wrote:
>
>> Obviously, you cannot truncate the every segment of the compound index
>> before constructing the key, it can be truncated as a whole only.
>>
>
> Why? When values in segment N match, you continue with segment N+1. When they
> do not match, result of comparison does not depend from segment N+1 - exactly
> what we need for compound index. May be I've missed something?
>
>

It's exactly the same idea as Firebird (and Rdb/Eln, Interbase, and
Falcon) numeric keys (truncated mangled double precision floating). Key
segments that are equal up to the segment size are considered by the
index as equal letting the boolean filter sort things out after fetching
the record. The only risk is that an index scan will result in more
records that actually match the key.

If you are going to walk the index in key order, that is another matter,
and has to be handled.

--
Jim Starkey
President, NimbusDB, Inc.
978 526-1376