Built-in RTRIM collating sequence yields incorrect comparisons
|User & Date:||mrigger 2019-06-14 11:03:06|
- Change icomment to:
Consider the following statements:
CREATE TABLE t0(c0 COLLATE RTRIM, c1 BLOB UNIQUE, PRIMARY KEY (c0, c1)) WITHOUT ROWID; INSERT INTO t0 VALUES (123, 3), (' ', 1), (' ', 2), ('', 4); SELECT * FROM t0 WHERE c1 = 1; -- expected: ' ', 1, actual: no row is fetched
I would expect a row to be fetched, which is not the case. Note that the whitespace seems to be significant: the first one is a space, the second one a tab, and the third one an empty string.
- Change login to "mrigger"
- Change mimetype to "text/x-fossil-wiki"
- Change severity to "Critical"
- Change status to "Open"
- Change title to:
Row is not fetched in WITHOUT ROWID table and a composite primary key
- Change type to "Code_Defect"