1--source include/have_rocksdb.inc 2 3CREATE TABLE `linktable` ( 4 `id1` bigint(20) unsigned NOT NULL DEFAULT '0', 5 `id1_type` int(10) unsigned NOT NULL DEFAULT '0', 6 `id2` bigint(20) unsigned NOT NULL DEFAULT '0', 7 `id2_type` int(10) unsigned NOT NULL DEFAULT '0', 8 `link_type` bigint(20) unsigned NOT NULL DEFAULT '0', 9 `visibility` tinyint(3) NOT NULL DEFAULT '0', 10 `data` varchar(255) NOT NULL DEFAULT '', 11 `time` bigint(20) unsigned NOT NULL DEFAULT '0', 12 `version` int(11) unsigned NOT NULL DEFAULT '0', 13 PRIMARY KEY (link_type, `id1`,`id2`) COMMENT 'cf_link_pk', 14 KEY `id1_type` (`id1`,`link_type`,`visibility`,`time`,`id2`,`version`,`data`) COMMENT 'rev:cf_link_id1_type' 15) ENGINE=RocksDB DEFAULT COLLATE=latin1_bin; 16--disable_query_log 17let $i = 1; 18while ($i <= 10000) { 19 let $insert = INSERT INTO linktable (id1, link_type, id2) values (1, 1, $i); 20 inc $i; 21 eval $insert; 22} 23--enable_query_log 24set global rocksdb_force_flush_memtable_now=1; 25 26insert into linktable (id1, link_type, id2) values (2, 1, 1); 27insert into linktable (id1, link_type, id2) values (2, 1, 2); 28insert into linktable (id1, link_type, id2) values (2, 1, 3); 29insert into linktable (id1, link_type, id2) values (2, 1, 4); 30insert into linktable (id1, link_type, id2) values (2, 1, 5); 31insert into linktable (id1, link_type, id2) values (2, 1, 6); 32insert into linktable (id1, link_type, id2) values (2, 1, 7); 33insert into linktable (id1, link_type, id2) values (2, 1, 8); 34insert into linktable (id1, link_type, id2) values (2, 1, 9); 35insert into linktable (id1, link_type, id2) values (2, 1, 10); 36 37--replace_column 9 # 38explain select id1, id2, link_type, data from linktable force index(primary) where id1=2 and link_type=1 and (id2=1 or id2=2 or id2=3 or id2=4 or id2=5); 39 40drop table linktable; 41