1SET @ORIG_PAUSE_BACKGROUND_WORK = @@ROCKSDB_PAUSE_BACKGROUND_WORK; 2SET GLOBAL ROCKSDB_PAUSE_BACKGROUND_WORK = 1; 3DROP TABLE IF EXISTS t1; 4CREATE TABLE t1 ( 5i INT PRIMARY KEY, 6t TINYINT, 7s SMALLINT, 8m MEDIUMINT, 9b BIGINT 10) ENGINE=rocksdb; 11INSERT INTO t1 (i,t,s,m,b) VALUES (1,2,3,4,5),(1000,100,10000,1000000,1000000000000000000),(5,100,10000,1000000,100000000000000000),(2,3,4,5,6),(3,4,5,6,7),(101,102,103,104,105),(10001,103,10002,10003,10004),(10,11,12,13,14),(11,12,13,14,15),(12,13,14,15,16); 12EXPLAIN SELECT i FROM t1 ORDER BY i; 13id select_type table type possible_keys key key_len ref rows Extra 141 SIMPLE t1 index NULL PRIMARY 4 NULL # Using index 15SELECT i FROM t1 ORDER BY i; 16i 171 182 193 205 2110 2211 2312 24101 251000 2610001 27DROP TABLE t1; 28CREATE TABLE t1 ( 29i INT, 30t TINYINT, 31s SMALLINT, 32m MEDIUMINT, 33b BIGINT, 34pk SMALLINT AUTO_INCREMENT PRIMARY KEY, 35INDEX s_m (s,m) 36) ENGINE=rocksdb; 37INSERT INTO t1 (i,t,s,m,b) VALUES (1,2,3,4,5),(1000,100,10000,1000000,1000000000000000000),(5,100,10000,1000000,100000000000000000),(2,3,4,5,6),(3,4,5,6,7),(101,102,103,104,105),(10001,103,10002,10003,10004),(10,11,12,13,14),(11,12,13,14,15),(12,13,14,15,16); 38EXPLAIN SELECT s, m FROM t1 WHERE s != 10 AND m != 1; 39id select_type table type possible_keys key key_len ref rows Extra 401 SIMPLE t1 index s_m s_m 7 NULL # Using where; Using index 41SELECT s, m FROM t1 WHERE s != 10 AND m != 1; 42s m 4310000 1000000 4410000 1000000 4510002 10003 46103 104 4712 13 4813 14 4914 15 503 4 514 5 525 6 53DROP TABLE t1; 54# RocksDB: unique indexes allowed 55CREATE TABLE t1 ( 56i INT, 57t TINYINT, 58s SMALLINT, 59m MEDIUMINT, 60b BIGINT, 61pk MEDIUMINT AUTO_INCREMENT PRIMARY KEY, 62UNIQUE KEY b_t (b,t) 63) ENGINE=rocksdb; 64INSERT INTO t1 (i,t,s,m,b) VALUES (1,2,3,4,5),(1000,100,10000,1000000,1000000000000000000),(5,100,10000,1000000,100000000000000000),(2,3,4,5,6),(3,4,5,6,7),(101,102,103,104,105),(10001,103,10002,10003,10004),(10,11,12,13,14),(11,12,13,14,15),(12,13,14,15,16); 65SELECT b+t FROM t1 WHERE (b,t) IN ( SELECT b, t FROM t1 WHERE i>1 ) ORDER BY b+t; 66b+t 679 6811 6925 7027 7129 72207 7310107 74100000000000000100 751000000000000000100 76SELECT b+t FROM t1 FORCE INDEX (b_t) WHERE (b,t) IN ( SELECT b, t FROM t1 WHERE i>1 ) ORDER BY b+t; 77b+t 789 7911 8025 8127 8229 83207 8410107 85100000000000000100 861000000000000000100 87SELECT b+t FROM t1 IGNORE INDEX (b_t) WHERE (b,t) IN ( SELECT b, t FROM t1 WHERE i>1 ) ORDER BY b+t; 88b+t 899 9011 9125 9227 9329 94207 9510107 96100000000000000100 971000000000000000100 98DROP TABLE t1; 99SET GLOBAL ROCKSDB_PAUSE_BACKGROUND_WORK = @ORIG_PAUSE_BACKGROUND_WORK; 100