You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This looks a lot like CORE1049 et alia, but it is showing up in 2.0.3:
CREATE TABLE "Sheet1$" (
"Appearance" VARCHAR(6) CHARACTER SET UTF8 COLLATE UNICODE,
"Decimal" FLOAT(53),
"Name" VARCHAR(83) CHARACTER SET UTF8 COLLATE UNICODE,
"Position" VARCHAR(6) CHARACTER SET UTF8 COLLATE UNICODE
);
// At this point, I inserted a table of about 10600 rows with
distinct single character ucs2 code points in the "Appearance" column
// using the API. Many thanks to my sadistic test cr?e...
// We use UTF8 for the communication character set and convert the
ucs2 to utf8 using the standard Windows character conversion
// routines.
// If I now say:
CREATE INDEX "_tidx_128_1a" ON "Sheet1$" ("Appearance");
Note its decomposition in many others characters. When getting sort key of it, ICU returns 55 bytes. How can we deal with it? With our current fixed size buffers for keys, there is no way...
The attached test case has synthetic data, so it seems this problem is not affecting our users, so I believe it's low priority.
Submitted by: Richard Wesley (hawkfish)
Attachments:
CREATETABLETEST.FDB.zip
This looks a lot like CORE1049 et alia, but it is showing up in 2.0.3:
CREATE TABLE "Sheet1$" (
"Appearance" VARCHAR(6) CHARACTER SET UTF8 COLLATE UNICODE,
"Decimal" FLOAT(53),
"Name" VARCHAR(83) CHARACTER SET UTF8 COLLATE UNICODE,
"Position" VARCHAR(6) CHARACTER SET UTF8 COLLATE UNICODE
);
INSERT INTO "Sheet1$"
("Appearance", "Decimal", "Name", "Position")
VALUES(?, ?, ?, ?);
// At this point, I inserted a table of about 10600 rows with
distinct single character ucs2 code points in the "Appearance" column
// using the API. Many thanks to my sadistic test cr?e...
// We use UTF8 for the communication character set and convert the
ucs2 to utf8 using the standard Windows character conversion
// routines.
// If I now say:
CREATE INDEX "_tidx_128_1a" ON "Sheet1$" ("Appearance");
// we log the following error in our application:
--- FB Error
---------------------------------------------------------------
File: db\firebirdprotocol.cpp, Line: 1921
Status: 335544333
internal gds software consistency check (index key too big (174),
file: idx.cpp line: 448)
------------------------------------------------------------------------
----
The text was updated successfully, but these errors were encountered: