1DROP TABLE IF EXISTS t1;
2CREATE TABLE t1 (
3id INT,
4fake_id INT,
5bigfield VARCHAR(4096),
6PRIMARY KEY (id),
7KEY bf (bigfield(32)),
8KEY fid (fake_id, bigfield(32))
9) ENGINE=rocksdb;
10INSERT INTO t1 VALUES (1, 1001, REPEAT('a', 1)),
11(8, 1008, REPEAT('b', 8)),
12(24, 1024, REPEAT('c', 24)),
13(31, 1031, REPEAT('d', 31)),
14(32, 1032, REPEAT('x', 32)),
15(33, 1033, REPEAT('y', 33)),
16(128, 1128, REPEAT('z', 128));
17SELECT * FROM t1;
18id	fake_id	bigfield
191	1001	a
208	1008	bbbbbbbb
2124	1024	cccccccccccccccccccccccc
2231	1031	ddddddddddddddddddddddddddddddd
2332	1032	xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
2433	1033	yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy
25128	1128	zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz
26# Baseline sanity check
27no-op query
28no-op query
29include/assert.inc [Baseline sanity check: 0 rocksdb_covered_secondary_key_lookups]
30# Eligible for optimization.
31id	bigfield
3231	ddddddddddddddddddddddddddddddd
33include/assert.inc [Eligible for optimization.: 2 rocksdb_covered_secondary_key_lookups]
34# Eligible for optimization, access via fake_id only
35id	bigfield
3631	ddddddddddddddddddddddddddddddd
37include/assert.inc [Eligible for optimization, access via fake_id only: 2 rocksdb_covered_secondary_key_lookups]
38# Not eligible for optimization, access via fake_id of big row.
39id	bigfield
4033	yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy
41include/assert.inc [Not eligible for optimization, access via fake_id of big row.: 0 rocksdb_covered_secondary_key_lookups]
42# Eligible for optimization.
43id	bigfield
4432	xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
45include/assert.inc [Eligible for optimization.: 1 rocksdb_covered_secondary_key_lookups]
46# Not eligible for optimization.
47id	bigfield
4833	yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy
49include/assert.inc [Not eligible for optimization.: 0 rocksdb_covered_secondary_key_lookups]
50# Eligible for optimization.
51id	bigfield
528	bbbbbbbb
53include/assert.inc [Eligible for optimization.: 2 rocksdb_covered_secondary_key_lookups]
54# Eligible for optimization.
55id	bigfield
5624	cccccccccccccccccccccccc
57include/assert.inc [Eligible for optimization.: 2 rocksdb_covered_secondary_key_lookups]
58# Not eligible for optimization.
59id	bigfield
60128	zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz
61include/assert.inc [Not eligible for optimization.: 0 rocksdb_covered_secondary_key_lookups]
62#
63# Test that multi-byte charsets are handled correctly
64#
65# Charset record obviously shorter than the prefix
66a	b
671	a
68include/assert.inc [Charset record obviously shorter than the prefix: 2 rocksdb_covered_secondary_key_lookups]
69# Charset record shorter than prefix
70a	b
712	cc
72include/assert.inc [Charset record shorter than prefix: 2 rocksdb_covered_secondary_key_lookups]
73# Charset record with glyphs shorter than prefix
74a	b
753	ŽŽ
76include/assert.inc [Charset record with glyphs shorter than prefix: 1 rocksdb_covered_secondary_key_lookups]
77# Charset record longer than prefix
78a	b
794	žžžž
80include/assert.inc [Charset record longer than prefix: 0 rocksdb_covered_secondary_key_lookups]
81