1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
|
test_run = require('test_run').new()
---
...
engine = test_run:get_cfg('engine')
---
...
_ = box.space._session_settings:update('sql_default_engine', {{'=', 2, engine}})
---
...
-- box.cfg()
-- create space
box.execute("CREATE TABLE zoobar (c1 INT, c2 INT PRIMARY KEY, c3 TEXT, c4 INT)")
---
- row_count: 1
...
box.execute("CREATE UNIQUE INDEX zoobar2 ON zoobar(c1, c4)")
---
- row_count: 1
...
-- Seed entry
box.execute("INSERT INTO zoobar VALUES (111, 222, 'c3', 444)")
---
- row_count: 1
...
-- PK must be unique
box.execute("INSERT INTO zoobar VALUES (112, 222, 'c3', 444)")
---
- null
- Duplicate key exists in unique index 'pk_unnamed_ZOOBAR_1' in space 'ZOOBAR'
...
-- Unique index must be respected
box.execute("INSERT INTO zoobar VALUES (111, 223, 'c3', 444)")
---
- null
- Duplicate key exists in unique index 'ZOOBAR2' in space 'ZOOBAR'
...
-- Cleanup
box.execute("DROP INDEX zoobar2 ON zoobar")
---
- row_count: 1
...
box.execute("DROP TABLE zoobar")
---
- row_count: 1
...
-- Debug
-- require("console").start()
|