Subject Re: [firebird-support] Max identifier length?
Author Ann W. Harrison
Kjell Rilbe wrote:
>
> For those who lost track: the problem is that if one or more characters
> in the table name above is changed into a character that takes up more
> than one byte, the max identifier length decreases proportionally.
>
> But is it a bug?
>
> I thought this was as designed?

Both - it's an artifact. The system tables are really really ancient -
InterBase chose to use the same system tables as DEC's RDB databases
which were designed in 1982. Back then, 7-bit ASCII was good enough
for everybody, a byte was a character, and there weren't none of those
fancy collation things. Over time, most of Firebird has evolved to
be much more world friendly, but changing the data type of the strings
in the system tables is a daunting and very incompatible change.

So, even though char and varchar now understand character length
and byte length, the system tables don't. Yes, that's a bug.
But it's a big nasty old bug, well dug in.


Good luck,

Ann