-
Notifications
You must be signed in to change notification settings - Fork 0
SQL: Tests failure research
We are working towards 100% pass rate in SQLite tests.
Occasionally we encounter obscure issues that aren't fixed immediately due to non-trivial amount of effort required. We record our findings here for future reference.
Feature request submitted #2263
Original test is alter.test, not alter1.test There're lots of commented cases in the file. Need to review and uncomment if possible.
Commented. Need AUTOINCREMENT
feature #2263
Not sure, we can and will implement db close
TCL API. @mejedi could you pls clarify?
This SQLite feature won't be supported in nearest future.
All issues here connected w/ removal of default column rowid
.
With rowid
removed, traversal is performed using different index.
See #2273
See #2274
We're not going to support db close/open
statements at all,
so this test might be excluded.
Fails in this tests depend on #2284.
Key part count limit reached.
Submitted #2293.
NB: these tests failed on sql
branch as well.
Submitted #2295.
Submitted #2296.
These tests relies on ordering by rowid. Also they use x
as PK (wasn't originally),
so duplicates on x
prohibited. Probably we'll comment the test.
Same as alter-12.4. Tests use db close/open
TCL statements.
UTF system table encoding issue #2295.
Issue submitted #2300
Use PK instead of rowid
changed generated program. So, it doesn't use
OpenEphemeral
anymore.
Cases commented.
Issue submitted #2289.
Test checks VFS functionality. No relation to Tarantool.
Issue submitted #2311.
Removal of rowid makes query solvable.
Need AUTOINCREMENT
feature #2263.
db open/close feature.
This and subsequent tests fail due to the missing NOCASE
collation.
This and subsequent tests fail due to the missing NOCASE
collation.
Issue submitted #2325.
Due to the missing NOCASE
collation.
Issue submitted #2302.
Issue related to #2284.
Need AUTOINCREMENT
feature #2263.
Issue submitted #2306.
Issue submitted #2319.
Issue submitted #2320.
Issue submitted #2307.
SQL:
CREATE TABLE t3(x TEXT PRIMARY KEY COLLATE nocase);
INSERT INTO t3(x) VALUES('aaa'),('abc'),('abd'),('abe'),('acz');
INSERT INTO t3(x) SELECT CAST(x AS blob) FROM t3;
SELECT quote(x) FROM t3 WHERE x LIKE 'ab%' ORDER BY x;
Expected: ['abc' 'abd' 'abe' X'616263' X'616264' X'616265']
Got: ['aaa' 'abc' 'abd' 'abe' X'616263' X'616264' X'616265']
Root cause: LIKE 'ab%'
translates into OP_IdxGE 'AB'
, i.e. position the cursor on the first entry >= 'AB'. NOCASE
implies 'aaa' < 'AB'
, but in the BINARY
collation, which is the only one we have for now, 'aaa' > 'AB'
.
See https://github.com/tarantool/tarantool/issues/2255
SQLite limit SQLITE_LIMIT_COLUMN
is not set at all. Need to investigate
if we want to port it to Tarantool.
Tests will be commented until that time.
xferopt optimization status in Tarantool is unknown, need to investigate and find a way to export variable to Lua if needed.
Architecture Specifications
- Server architecture
- Feature specifications
- What's in a good specification
- Functional indexes
- Space _index structure
- R tree index quick start and usage
- LuaJIT
- Vinyl
- SQL
- Testing
- Performance
How To ...?
- ... add new fuzzers
- ... build RPM or Deb package using packpack
- ... calculate memory size
- ... debug core dump of stripped tarantool
- ... debug core from different OS
- ... debug Lua state with GDB
- ... generate new bootstrap snapshot
- ... use Address Sanitizer
- ... collect a coredump
Lua modules
Useful links