Subject | Re: [IB-Architect] Next ODS change (was: System table change) |
---|---|
Author | Ann Harrison |
Post date | 2000-11-14T15:42:02Z |
At 03:53 PM 11/14/2000 +0100, Ivan Prenosil wrote:
computed key length, particularly in multi-byte collating sequences.
You have a long memory!
(vigorously) that allowing the definition of an index that
could produce an oversized key value was a bug. We should have
bit the bullet then, and increased the key length field from
a byte to a word. Who knew?
will cause more trouble than it saves. In particular,
compound keys in multi-byte collating sequences are just
too small now. Truncating them will create sub-optimal
indexes - unique indexes that are actually much less than
unique, for example.
it has no other effect. Except, of course, that it's a new
ODS, and could not be read by old versions of Firebird.
Best,
Ann
>If I remember correctly, older IB versions did not enforce limit on indexRight. It takes a very unfortunate choice of key values to use the
>key length
>when creating index, but at runtime. Because index keys are compressed,
>it was possible to store/index longer strings than in current IB versions.
computed key length, particularly in multi-byte collating sequences.
You have a long memory!
>The problem was thatWe had a long and acrimonious discussion when a user reported
>- you could get error message even when inserting string that fits to column
> (in current IB you either can index short columns and you are guaranteed
> to not have problems with indexed strings, or you can't index too long
> columns at all)
(vigorously) that allowing the definition of an index that
could produce an oversized key value was a bug. We should have
bit the bullet then, and increased the key length field from
a byte to a word. Who knew?
>"silent key trimming" should not cause big problemsI continue to thing that silent key trimming is a hack that
will cause more trouble than it saves. In particular,
compound keys in multi-byte collating sequences are just
too small now. Truncating them will create sub-optimal
indexes - unique indexes that are actually much less than
unique, for example.
>But increasing max index key size from 255 to 64KIt makes each index entry one byte longer. To my knowledge,
>seems like proper/long term solution to me.
>Does it have any serious disadvantages ?
it has no other effect. Except, of course, that it's a new
ODS, and could not be read by old versions of Firebird.
Best,
Ann