Merge mergetrees/merge-myrocks into bb-10.2-mariarocks-merge

Upstream cset we are merging from:

    commit 184a4a2d82f4f6f3cbcb1015bcdb32bebe73315c
    Author: Abhinav Sharma <abhinavsharma@fb.com>
    Date:   Thu Sep 14 11:40:08 2017 -0700

        Bump rocksdb submodule

        Summary:
        Bump rocksdb to include the fix for rocksdb.trx_info_rpl

Lots of conflicts, got the code to compile but tests are likely to
be broken
This commit is contained in:
Sergei Petrunia 2017-09-18 14:06:01 +03:00
commit ba3209e219
277 changed files with 22051 additions and 2884 deletions

View file

@ -1,3 +1,4 @@
--source include/have_rocksdb.inc
--source include/not_embedded.inc
--source include/not_threadpool.inc

View file

@ -1,18 +1,5 @@
--source include/have_rocksdb.inc
CREATE TABLE valid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO valid_values VALUES(1);
INSERT INTO valid_values VALUES(0);
INSERT INTO valid_values VALUES('on');
CREATE TABLE invalid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO invalid_values VALUES('\'aaa\'');
INSERT INTO invalid_values VALUES('\'bbb\'');
--let $sys_var=ROCKSDB_ALLOW_CONCURRENT_MEMTABLE_WRITE
--let $read_only=0
--let $read_only=1
--let $session=0
--source include/rocksdb_sys_var.inc
DROP TABLE valid_values;
DROP TABLE invalid_values;

View file

@ -1,7 +0,0 @@
--source include/have_rocksdb.inc
--let $sys_var=ROCKSDB_BASE_BACKGROUND_COMPACTIONS
--let $read_only=1
--let $session=0
--source include/rocksdb_sys_var.inc

View file

@ -0,0 +1,18 @@
--source include/have_rocksdb.inc
CREATE TABLE valid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO valid_values VALUES(1);
INSERT INTO valid_values VALUES(0);
INSERT INTO valid_values VALUES('on');
CREATE TABLE invalid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO invalid_values VALUES('\'aaa\'');
INSERT INTO invalid_values VALUES('\'bbb\'');
--let $sys_var=ROCKSDB_BULK_LOAD_ALLOW_UNSORTED
--let $read_only=0
--let $session=1
--source ../include/rocksdb_sys_var.inc
DROP TABLE valid_values;
DROP TABLE invalid_values;

View file

@ -0,0 +1,16 @@
--source include/have_rocksdb.inc
CREATE TABLE valid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO valid_values VALUES(1);
INSERT INTO valid_values VALUES(1024);
CREATE TABLE invalid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO invalid_values VALUES('\'aaa\'');
--let $sys_var=ROCKSDB_CONCURRENT_PREPARE
--let $read_only=1
--let $session=0
--source ../include/rocksdb_sys_var.inc
DROP TABLE valid_values;
DROP TABLE invalid_values;

View file

@ -21,7 +21,7 @@
# Set back to original value
# validate that DEFAULT causes failure in creating checkpoint since
# DEFAULT == ''
--error ER_UNKNOWN_ERROR
--error ER_RDB_STATUS_GENERAL
--eval SET @@global.ROCKSDB_CREATE_CHECKPOINT = @start_value
# clean up

View file

@ -0,0 +1,17 @@
--source include/have_rocksdb.inc
CREATE TABLE valid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO valid_values VALUES(100);
INSERT INTO valid_values VALUES(2);
CREATE TABLE invalid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO invalid_values VALUES('\'aaa\'');
INSERT INTO invalid_values VALUES('\'123\'');
--let $sys_var=ROCKSDB_DEADLOCK_DETECT_DEPTH
--let $read_only=0
--let $session=1
--source ../include/rocksdb_sys_var.inc
DROP TABLE valid_values;
DROP TABLE invalid_values;

View file

@ -0,0 +1,18 @@
--source include/have_rocksdb.inc
CREATE TABLE valid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO valid_values VALUES(1);
INSERT INTO valid_values VALUES(0);
INSERT INTO valid_values VALUES('on');
CREATE TABLE invalid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO invalid_values VALUES('\'aaa\'');
INSERT INTO invalid_values VALUES('\'bbb\'');
--let $sys_var=ROCKSDB_DEBUG_TTL_IGNORE_PK
--let $read_only=0
--let $session=0
--source ../include/rocksdb_sys_var.inc
DROP TABLE valid_values;
DROP TABLE invalid_values;

View file

@ -0,0 +1,16 @@
--source include/have_rocksdb.inc
CREATE TABLE valid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO valid_values VALUES(2400);
INSERT INTO valid_values VALUES(-2400);
CREATE TABLE invalid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO invalid_values VALUES('\'aaa\'');
--let $sys_var=ROCKSDB_DEBUG_TTL_READ_FILTER_TS
--let $read_only=0
--let $session=0
--source ../include/rocksdb_sys_var.inc
DROP TABLE valid_values;
DROP TABLE invalid_values;

View file

@ -0,0 +1,16 @@
--source include/have_rocksdb.inc
CREATE TABLE valid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO valid_values VALUES(2400);
INSERT INTO valid_values VALUES(-2400);
CREATE TABLE invalid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO invalid_values VALUES('\'aaa\'');
--let $sys_var=ROCKSDB_DEBUG_TTL_REC_TS
--let $read_only=0
--let $session=0
--source ../include/rocksdb_sys_var.inc
DROP TABLE valid_values;
DROP TABLE invalid_values;

View file

@ -0,0 +1,16 @@
--source include/have_rocksdb.inc
CREATE TABLE valid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO valid_values VALUES(2400);
INSERT INTO valid_values VALUES(-2400);
CREATE TABLE invalid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO invalid_values VALUES('\'aaa\'');
--let $sys_var=ROCKSDB_DEBUG_TTL_SNAPSHOT_TS
--let $read_only=0
--let $session=0
--source ../include/rocksdb_sys_var.inc
DROP TABLE valid_values;
DROP TABLE invalid_values;

View file

@ -4,12 +4,12 @@ CREATE TABLE valid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO valid_values VALUES(1);
INSERT INTO valid_values VALUES(0);
INSERT INTO valid_values VALUES('on');
INSERT INTO valid_values VALUES('off');
CREATE TABLE invalid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO invalid_values VALUES('\'aaa\'');
INSERT INTO invalid_values VALUES('\'bbb\'');
--let $sys_var=ROCKSDB_BACKGROUND_SYNC
--let $sys_var=ROCKSDB_ENABLE_TTL
--let $read_only=0
--let $session=0
--source include/rocksdb_sys_var.inc

View file

@ -0,0 +1,18 @@
--source include/have_rocksdb.inc
CREATE TABLE valid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO valid_values VALUES(1);
INSERT INTO valid_values VALUES(0);
INSERT INTO valid_values VALUES('on');
CREATE TABLE invalid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO invalid_values VALUES('\'aaa\'');
INSERT INTO invalid_values VALUES('\'bbb\'');
--let $sys_var=ROCKSDB_ENABLE_TTL_READ_FILTERING
--let $read_only=0
--let $session=0
--source ../include/rocksdb_sys_var.inc
DROP TABLE valid_values;
DROP TABLE invalid_values;

View file

@ -1,18 +1,5 @@
--source include/have_rocksdb.inc
CREATE TABLE valid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO valid_values VALUES(1);
INSERT INTO valid_values VALUES(0);
INSERT INTO valid_values VALUES('on');
CREATE TABLE invalid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO invalid_values VALUES('\'aaa\'');
INSERT INTO invalid_values VALUES('\'bbb\'');
--let $sys_var=ROCKSDB_ENABLE_WRITE_THREAD_ADAPTIVE_YIELD
--let $read_only=0
--let $read_only=1
--let $session=0
--source include/rocksdb_sys_var.inc
DROP TABLE valid_values;
DROP TABLE invalid_values;

View file

@ -10,9 +10,8 @@ INSERT INTO invalid_values VALUES('\'aaa\'');
--let $sys_var=ROCKSDB_FLUSH_LOG_AT_TRX_COMMIT
--let $read_only=0
--let $session=1
--let $session=0
--source include/rocksdb_sys_var.inc
DROP TABLE valid_values;
DROP TABLE invalid_values;

View file

@ -6,7 +6,7 @@ DROP TABLE IF EXISTS t;
CREATE TABLE t (a INT PRIMARY KEY, b CHAR(8)) ENGINE=rocksdb;
INSERT INTO t (a,b) VALUES (1,'bar'),(2,'foo');
SET @ORIG_PAUSE_BACKGROUND_WORK = @@rocksdb_force_compute_memtable_stats;
SET @ORIG_FORCE_COMPUTE_MEMTABLE_STATS = @@rocksdb_force_compute_memtable_stats;
set global rocksdb_force_flush_memtable_now = true;
INSERT INTO t (a,b) VALUES (3,'dead'),(4,'beef'),(5,'a'),(6,'bbb'),(7,'c'),(8,'d');
@ -20,4 +20,4 @@ SELECT TABLE_ROWS INTO @ROWS_INCLUDE_MEMTABLE FROM information_schema.TABLES WHE
select case when @ROWS_INCLUDE_MEMTABLE-@ROWS_EXCLUDE_MEMTABLE > 0 then 'true' else 'false' end;
DROP TABLE t;
set global rocksdb_force_compute_memtable_stats = @ORIG_PAUSE_BACKGROUND_WORK;
set global rocksdb_force_compute_memtable_stats = @ORIG_FORCE_COMPUTE_MEMTABLE_STATS;

View file

@ -0,0 +1,18 @@
--source include/have_rocksdb.inc
CREATE TABLE valid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO valid_values VALUES(0);
INSERT INTO valid_values VALUES(1);
INSERT INTO valid_values VALUES(1024);
INSERT INTO valid_values VALUES(1024 * 1024 * 1024);
CREATE TABLE invalid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO invalid_values VALUES('\'aaa\'');
--let $sys_var=ROCKSDB_FORCE_COMPUTE_MEMTABLE_STATS_CACHETIME
--let $read_only=0
--let $session=0
--source ../include/rocksdb_sys_var.inc
DROP TABLE valid_values;
DROP TABLE invalid_values;

View file

@ -0,0 +1,17 @@
--source include/have_rocksdb.inc
CREATE TABLE valid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO valid_values VALUES(1);
INSERT INTO valid_values VALUES(0);
INSERT INTO valid_values VALUES('on');
CREATE TABLE invalid_values (value varchar(255)) ENGINE=myisam;
--let $sys_var=ROCKSDB_FORCE_FLUSH_MEMTABLE_AND_LZERO_NOW
--let $read_only=0
--let $session=0
--let $sticky=1
--source ../include/rocksdb_sys_var.inc
DROP TABLE valid_values;
DROP TABLE invalid_values;

View file

@ -0,0 +1,20 @@
--source include/have_rocksdb.inc
CREATE TABLE valid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO valid_values VALUES(10);
INSERT INTO valid_values VALUES(100);
INSERT INTO valid_values VALUES(0);
INSERT INTO valid_values VALUES(42);
INSERT INTO valid_values VALUES(142);
CREATE TABLE invalid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO invalid_values VALUES('\'aaa\'');
INSERT INTO invalid_values VALUES('\'bbb\'');
--let $sys_var=ROCKSDB_IO_WRITE_TIMEOUT
--let $read_only=0
--let $session=0
--source ../include/rocksdb_sys_var.inc
DROP TABLE valid_values;
DROP TABLE invalid_values;

View file

@ -0,0 +1,18 @@
--source include/have_rocksdb.inc
CREATE TABLE valid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO valid_values VALUES(1);
INSERT INTO valid_values VALUES(0);
INSERT INTO valid_values VALUES('on');
CREATE TABLE invalid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO invalid_values VALUES('\'aaa\'');
INSERT INTO invalid_values VALUES('\'bbb\'');
--let $sys_var=ROCKSDB_LARGE_PREFIX
--let $read_only=0
--let $session=0
--source ../include/rocksdb_sys_var.inc
DROP TABLE valid_values;
DROP TABLE invalid_values;

View file

@ -0,0 +1,16 @@
--source include/have_rocksdb.inc
CREATE TABLE valid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO valid_values VALUES(1);
INSERT INTO valid_values VALUES(1024);
CREATE TABLE invalid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO invalid_values VALUES('\'aaa\'');
--let $sys_var=ROCKSDB_MANUAL_WAL_FLUSH
--let $read_only=1
--let $session=0
--source ../include/rocksdb_sys_var.inc
DROP TABLE valid_values;
DROP TABLE invalid_values;

View file

@ -1,6 +0,0 @@
--source include/have_rocksdb.inc
--let $sys_var=ROCKSDB_MAX_BACKGROUND_FLUSHES
--let $read_only=1
--let $session=0
--source include/rocksdb_sys_var.inc

View file

@ -7,7 +7,7 @@ INSERT INTO valid_values VALUES(64);
CREATE TABLE invalid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO invalid_values VALUES('\'abc\'');
--let $sys_var=ROCKSDB_MAX_BACKGROUND_COMPACTIONS
--let $sys_var=ROCKSDB_MAX_BACKGROUND_JOBS
--let $read_only=0
--let $session=0
--source include/rocksdb_sys_var.inc

View file

@ -0,0 +1,17 @@
--source include/have_rocksdb.inc
CREATE TABLE valid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO valid_values VALUES(100);
INSERT INTO valid_values VALUES(1);
CREATE TABLE invalid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO invalid_values VALUES('\'aaa\'');
INSERT INTO invalid_values VALUES('\'123\'');
--let $sys_var=ROCKSDB_MAX_LATEST_DEADLOCKS
--let $read_only=0
--let $session=0
--source ../include/rocksdb_sys_var.inc
DROP TABLE valid_values;
DROP TABLE invalid_values;

View file

@ -0,0 +1,49 @@
--source include/have_rocksdb.inc
CREATE TABLE valid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO valid_values VALUES(1);
INSERT INTO valid_values VALUES(0);
CREATE TABLE invalid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO invalid_values VALUES('\'aaa\'');
INSERT INTO invalid_values VALUES('\'bbb\'');
INSERT INTO invalid_values VALUES('on');
--let $sys_var=ROCKSDB_MERGE_TMP_FILE_REMOVAL_DELAY_MS
--let $read_only=0
--let $session=1
--source ../include/rocksdb_sys_var.inc
DROP TABLE valid_values;
DROP TABLE invalid_values;
set session rocksdb_merge_buf_size=250;
set session rocksdb_merge_combine_read_size=1000;
set session rocksdb_merge_tmp_file_removal_delay_ms=1000;
CREATE TABLE t1 (i INT, j INT, PRIMARY KEY (i)) ENGINE = ROCKSDB;
--disable_query_log
let $max = 100;
let $i = 1;
while ($i <= $max) {
let $insert = INSERT INTO t1 VALUES ($i, FLOOR(RAND() * 100));
inc $i;
eval $insert;
}
--enable_query_log
let $start= `SELECT UNIX_TIMESTAMP()`;
# this should take a lot longer than normal because each deleted merge file
# will sleep for 1 secs. There should be about 13 buffers.
# So it should take at least 13 secs
ALTER TABLE t1 ADD INDEX kj(j), ALGORITHM=INPLACE;
let $stop_exec= `SELECT UNIX_TIMESTAMP()`;
let $time_diff= `SELECT ($stop_exec - $start)`;
let $assert_text= Alter should have taken at least 10 seconds;
let $assert_cond= $time_diff >= 10;
source include/assert.inc;
DROP TABLE t1;

View file

@ -0,0 +1,21 @@
--source include/have_rocksdb.inc
CREATE TABLE valid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO valid_values VALUES(1);
INSERT INTO valid_values VALUES(0);
INSERT INTO valid_values VALUES('on');
INSERT INTO valid_values VALUES('off');
INSERT INTO valid_values VALUES('true');
INSERT INTO valid_values VALUES('false');
CREATE TABLE invalid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO invalid_values VALUES('\'aaa\'');
INSERT INTO invalid_values VALUES('\'bbb\'');
--let $sys_var=ROCKSDB_RESET_STATS
--let $read_only=0
--let $session=0
--source ../include/rocksdb_sys_var.inc
DROP TABLE valid_values;
DROP TABLE invalid_values;

View file

@ -0,0 +1,6 @@
--source include/have_rocksdb.inc
--let $sys_var=ROCKSDB_SIM_CACHE_SIZE
--let $read_only=1
--let $session=0
--source ../include/rocksdb_sys_var.inc

View file

@ -0,0 +1,22 @@
--source include/have_rocksdb.inc
CREATE TABLE valid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO valid_values VALUES(100);
INSERT INTO valid_values VALUES(1);
INSERT INTO valid_values VALUES(0);
CREATE TABLE invalid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO invalid_values VALUES('\'aaa\'');
INSERT INTO invalid_values VALUES('\'bbb\'');
INSERT INTO invalid_values VALUES('\'-1\'');
INSERT INTO invalid_values VALUES('\'101\'');
INSERT INTO invalid_values VALUES('\'484436\'');
--let $sys_var=ROCKSDB_SST_MGR_RATE_BYTES_PER_SEC
--let $read_only=0
--let $session=0
--source ../include/rocksdb_sys_var.inc
DROP TABLE valid_values;
DROP TABLE invalid_values;

View file

@ -0,0 +1,94 @@
--source include/have_rocksdb.inc
call mtr.add_suppression("MyRocks: NULL is not a valid option for updates to column family settings.");
call mtr.add_suppression("Invalid cf options, '=' expected *");
call mtr.add_suppression("MyRocks: failed to parse the updated column family options = *");
call mtr.add_suppression("Invalid cf config for default in override options *");
DROP TABLE IF EXISTS t1;
# Need a table which has multiple partitions and column families associated
# with them to make sure that we're testing the valid scenario.
CREATE TABLE `t1` (
`col1` bigint(20) NOT NULL,
`col2` varbinary(64) NOT NULL,
`col3` varbinary(256) NOT NULL,
`col4` bigint(20) NOT NULL,
`col5` mediumblob NOT NULL,
PRIMARY KEY (`col1`,`col2`,`col3`) COMMENT 'custom_p0_cfname=cf1;custom_p1_cfname=cf2',
UNIQUE KEY (`col2`, `col4`) COMMENT 'custom_p5_cfname=cf3'
) ENGINE=ROCKSDB DEFAULT CHARSET=latin1
PARTITION BY LIST COLUMNS (`col2`) (
PARTITION custom_p0 VALUES IN (0x12345),
PARTITION custom_p1 VALUES IN (0x23456),
PARTITION custom_p2 VALUES IN (0x34567),
PARTITION custom_p3 VALUES IN (0x45678),
PARTITION custom_p4 VALUES IN (0x56789),
PARTITION custom_p5 VALUES IN (0x6789A),
PARTITION custom_p6 VALUES IN (0x789AB),
PARTITION custom_p7 VALUES IN (0x89ABC)
);
USE information_schema;
# We should start with NULL.
SELECT @@global.rocksdb_update_cf_options;
# ... and we should be able to handle NULL and issue a reasonable warning.
SET @@global.rocksdb_update_cf_options = NULL;
SELECT @@global.rocksdb_update_cf_options;
# Will fail to parse. Value not updated.
SET @@global.rocksdb_update_cf_options = 'aaaaa';
SELECT @@global.rocksdb_update_cf_options;
SELECT * FROM ROCKSDB_CF_OPTIONS WHERE CF_NAME='default' AND OPTION_TYPE='WRITE_BUFFER_SIZE';
SELECT * FROM ROCKSDB_CF_OPTIONS WHERE CF_NAME='default' AND OPTION_TYPE='TARGET_FILE_SIZE_BASE';
# All good. Use default CF.
SET @@global.rocksdb_update_cf_options = 'default={write_buffer_size=8m;target_file_size_base=2m};';
SELECT @@global.rocksdb_update_cf_options;
SELECT * FROM ROCKSDB_CF_OPTIONS WHERE CF_NAME='default' AND OPTION_TYPE='WRITE_BUFFER_SIZE';
SELECT * FROM ROCKSDB_CF_OPTIONS WHERE CF_NAME='default' AND OPTION_TYPE='TARGET_FILE_SIZE_BASE';
SELECT * FROM ROCKSDB_CF_OPTIONS WHERE CF_NAME='cf1' AND OPTION_TYPE='WRITE_BUFFER_SIZE';
SELECT * FROM ROCKSDB_CF_OPTIONS WHERE CF_NAME='cf1' AND OPTION_TYPE='TARGET_FILE_SIZE_BASE';
SELECT * FROM ROCKSDB_CF_OPTIONS WHERE CF_NAME='cf2' AND OPTION_TYPE='WRITE_BUFFER_SIZE';
SELECT * FROM ROCKSDB_CF_OPTIONS WHERE CF_NAME='cf2' AND OPTION_TYPE='MAX_BYTES_FOR_LEVEL_MULTIPLIER';
SELECT * FROM ROCKSDB_CF_OPTIONS WHERE CF_NAME='cf3' AND OPTION_TYPE='TARGET_FILE_SIZE_BASE';
# All good. Use multiple valid CF-s.
SET @@global.rocksdb_update_cf_options = 'cf1={write_buffer_size=8m;target_file_size_base=2m};cf2={write_buffer_size=16m;max_bytes_for_level_multiplier=8};cf3={target_file_size_base=4m};';
SELECT @@global.rocksdb_update_cf_options;
SELECT * FROM ROCKSDB_CF_OPTIONS WHERE CF_NAME='cf1' AND OPTION_TYPE='WRITE_BUFFER_SIZE';
SELECT * FROM ROCKSDB_CF_OPTIONS WHERE CF_NAME='cf1' AND OPTION_TYPE='TARGET_FILE_SIZE_BASE';
SELECT * FROM ROCKSDB_CF_OPTIONS WHERE CF_NAME='cf2' AND OPTION_TYPE='WRITE_BUFFER_SIZE';
SELECT * FROM ROCKSDB_CF_OPTIONS WHERE CF_NAME='cf2' AND OPTION_TYPE='MAX_BYTES_FOR_LEVEL_MULTIPLIER';
SELECT * FROM ROCKSDB_CF_OPTIONS WHERE CF_NAME='cf3' AND OPTION_TYPE='TARGET_FILE_SIZE_BASE';
# All good. Use a single valid CF.
SET @@global.rocksdb_update_cf_options = 'cf3={target_file_size_base=24m};';
SELECT @@global.rocksdb_update_cf_options;
SELECT * FROM ROCKSDB_CF_OPTIONS WHERE CF_NAME='cf3' AND OPTION_TYPE='TARGET_FILE_SIZE_BASE';
# Some parts are good. Value still updated.
SET @@global.rocksdb_update_cf_options = 'cf1={target_file_size_base=24m};foo={max_bytes_for_level_multiplier=8};';
SELECT @@global.rocksdb_update_cf_options;
SELECT * FROM ROCKSDB_CF_OPTIONS WHERE CF_NAME='cf1' AND OPTION_TYPE='TARGET_FILE_SIZE_BASE';
# Will fail to parse. No valid assignments included. Value not updated and
# reset to NULL.
SET @@global.rocksdb_update_cf_options = 'default={foo=bar};';
SELECT @@global.rocksdb_update_cf_options;
USE test;
DROP TABLE t1;

View file

@ -0,0 +1,21 @@
--source include/have_rocksdb.inc
CREATE TABLE valid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO valid_values VALUES(1);
INSERT INTO valid_values VALUES(0);
INSERT INTO valid_values VALUES('on');
INSERT INTO valid_values VALUES('off');
INSERT INTO valid_values VALUES('true');
INSERT INTO valid_values VALUES('false');
CREATE TABLE invalid_values (value varchar(255)) ENGINE=myisam;
INSERT INTO invalid_values VALUES('\'aaa\'');
INSERT INTO invalid_values VALUES('\'bbb\'');
--let $sys_var=ROCKSDB_USE_CLOCK_CACHE
--let $read_only=1
--let $session=0
--source ../include/rocksdb_sys_var.inc
DROP TABLE valid_values;
DROP TABLE invalid_values;

View file

@ -0,0 +1,6 @@
--source include/have_rocksdb.inc
--let $sys_var=ROCKSDB_USE_DIRECT_IO_FOR_FLUSH_AND_COMPACTION
--let $read_only=1
--let $session=0
--source ../include/rocksdb_sys_var.inc

View file

@ -1,6 +0,0 @@
--source include/have_rocksdb.inc
--let $sys_var=ROCKSDB_USE_DIRECT_WRITES
--let $read_only=1
--let $session=0
--source include/rocksdb_sys_var.inc

View file

@ -0,0 +1,26 @@
--source include/have_rocksdb.inc
create table t (i int);
insert into t values (1), (2), (3), (4), (5);
set session rocksdb_write_batch_max_bytes = 1000;
insert into t values (1), (2), (3), (4), (5);
set session rocksdb_write_batch_max_bytes = 10;
--error ER_RDB_STATUS_GENERAL
insert into t values (1), (2), (3), (4), (5);
set session rocksdb_write_batch_max_bytes = 0;
insert into t values (1), (2), (3), (4), (5);
set session rocksdb_write_batch_max_bytes = 10;
begin;
--error ER_RDB_STATUS_GENERAL
insert into t values (1), (2), (3), (4), (5);
rollback;
drop table t;