You've already forked mariadb-columnstore-engine
mirror of
https://github.com/mariadb-corporation/mariadb-columnstore-engine.git
synced 2025-10-31 18:30:33 +03:00
chore(tests): now RBO tests can run without --extern
This commit is contained in:
3
mysql-test/columnstore/future/rbo_parallel_ces.opt
Normal file
3
mysql-test/columnstore/future/rbo_parallel_ces.opt
Normal file
@@ -0,0 +1,3 @@
|
||||
--skip-partition=0
|
||||
--skip-sequence=0
|
||||
--columnstore_innodb_queries_use_mcs=on
|
||||
57
mysql-test/columnstore/future/rbo_parallel_ces.result
Normal file
57
mysql-test/columnstore/future/rbo_parallel_ces.result
Normal file
@@ -0,0 +1,57 @@
|
||||
CREATE USER IF NOT EXISTS'cejuser'@'localhost' IDENTIFIED BY 'Vagrant1|0000001';
|
||||
GRANT ALL PRIVILEGES ON *.* TO 'cejuser'@'localhost';
|
||||
FLUSH PRIVILEGES;
|
||||
CREATE USER IF NOT EXISTS'cejuser'@'localhost' IDENTIFIED BY 'Vagrant1|0000001';
|
||||
GRANT ALL PRIVILEGES ON *.* TO 'cejuser'@'localhost';
|
||||
FLUSH PRIVILEGES;
|
||||
DROP DATABASE IF EXISTS rbo_parallel_ces;
|
||||
CREATE DATABASE rbo_parallel_ces;
|
||||
USE rbo_parallel_ces;
|
||||
SELECT calsettrace(1);
|
||||
calsettrace(1)
|
||||
0
|
||||
CREATE TABLE Ti (col1 INT, col2 INT, col3 INT) ENGINE=InnoDB;
|
||||
INSERT INTO Ti (col1, col2, col3)
|
||||
SELECT seq, seq+1, seq+2 FROM (SELECT seq FROM seq_1_to_100) AS numbers;
|
||||
SET @@histogram_size=10;
|
||||
ANALYZE TABLE Ti PERSISTENT FOR ALL;
|
||||
Table Op Msg_type Msg_text
|
||||
rbo_parallel_ces.Ti analyze status Engine-independent statistics collected
|
||||
rbo_parallel_ces.Ti analyze status OK
|
||||
CREATE INDEX excellent_index ON Ti(col1);
|
||||
SET @@columnstore_unstable_optimizer=ON;
|
||||
SET @@optimizer_switch='derived_merge=off';
|
||||
SET @@columnstore_ces_optimization_parallel_factor=5;
|
||||
SELECT SUM(col1) FROM Ti;
|
||||
SUM(col1)
|
||||
5050
|
||||
SET @orig_plan := mcsgetplan('original');
|
||||
SET @opt_plan := mcsgetplan('optimized');
|
||||
SET @rbo_rules := mcsgetplan('rules');
|
||||
SET @uu_tail := SUBSTRING_INDEX(@orig_plan, '--- Union Unit ---', -1);
|
||||
SET @unit_open := CONCAT(CHAR(10),' {',CHAR(10));
|
||||
SELECT (CHAR_LENGTH(@uu_tail) - CHAR_LENGTH(REPLACE(@uu_tail, @unit_open, '')))/CHAR_LENGTH(@unit_open) AS unions_original;
|
||||
unions_original
|
||||
0.0000
|
||||
SET @uu_tail := SUBSTRING_INDEX(@opt_plan, '--- Union Unit ---', -1);
|
||||
SELECT (CHAR_LENGTH(@uu_tail) - CHAR_LENGTH(REPLACE(@uu_tail, @unit_open, '')))/CHAR_LENGTH(@unit_open) AS unions_optimized_5;
|
||||
unions_optimized_5
|
||||
5.0000
|
||||
SELECT @rbo_rules LIKE '%parallel_ces%' AS rule_parallel_ces_applied;
|
||||
rule_parallel_ces_applied
|
||||
1
|
||||
SET @@columnstore_ces_optimization_parallel_factor=15;
|
||||
SELECT SUM(col1) FROM Ti;
|
||||
SUM(col1)
|
||||
5050
|
||||
SET @opt_plan := mcsgetplan('optimized');
|
||||
SET @uu_tail := SUBSTRING_INDEX(@opt_plan, '--- Union Unit ---', -1);
|
||||
SELECT (CHAR_LENGTH(@uu_tail) - CHAR_LENGTH(REPLACE(@uu_tail, @unit_open, '')))/CHAR_LENGTH(@unit_open) AS unions_optimized_15;
|
||||
unions_optimized_15
|
||||
10.0000
|
||||
SELECT calsettrace(0);
|
||||
calsettrace(0)
|
||||
1
|
||||
DROP DATABASE rbo_parallel_ces;
|
||||
REVOKE ALL PRIVILEGES ON *.* FROM 'cejuser'@'localhost';
|
||||
DROP USER 'cejuser'@'localhost';
|
||||
@@ -1,8 +1,32 @@
|
||||
--source ../include/have_columnstore.inc
|
||||
--source include/have_innodb.inc
|
||||
--source ../include/functions.inc
|
||||
--source ../include/cross_engine.inc
|
||||
|
||||
|
||||
# -------------------------------------------------------------- #
|
||||
# Enable cross engine join
|
||||
# Configure user and password in Columnstore.xml file
|
||||
# -------------------------------------------------------------- #
|
||||
--exec /usr/bin/mcsSetConfig CrossEngineSupport User 'cejuser'
|
||||
--exec /usr/bin/mcsSetConfig CrossEngineSupport Password 'Vagrant1|0000001'
|
||||
--exec $MCS_MCSSETCONFIG CrossEngineSupport Port $MASTER_MYPORT
|
||||
|
||||
# -------------------------------------------------------------- #
|
||||
# Create corresponding in the server
|
||||
# -------------------------------------------------------------- #
|
||||
|
||||
--disable_warnings
|
||||
CREATE USER IF NOT EXISTS'cejuser'@'localhost' IDENTIFIED BY 'Vagrant1|0000001';
|
||||
--enable_warnings
|
||||
|
||||
GRANT ALL PRIVILEGES ON *.* TO 'cejuser'@'localhost';
|
||||
FLUSH PRIVILEGES;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
--disable_warnings
|
||||
DROP DATABASE IF EXISTS rbo_parallel_ces;
|
||||
--enable_warnings
|
||||
@@ -69,3 +93,4 @@ SELECT calsettrace(0);
|
||||
DROP DATABASE rbo_parallel_ces;
|
||||
|
||||
--source ../include/drop_functions.inc
|
||||
--source ../include/drop_cross_engine.inc
|
||||
|
||||
29
mysql-test/columnstore/future/suite.pm
Normal file
29
mysql-test/columnstore/future/suite.pm
Normal file
@@ -0,0 +1,29 @@
|
||||
package My::Suite::ColumnStore;
|
||||
|
||||
@ISA = qw(My::Suite);
|
||||
|
||||
my $mcs_bin_dir_compiled=$::bindir . '/storage/columnstore/columnstore/bin';
|
||||
my $mcs_ins_dir_installed=$::bindir . '/bin';
|
||||
|
||||
if (-d $mcs_bin_dir_compiled)
|
||||
{
|
||||
$ENV{MCS_MCSSETCONFIG}=$mcs_bin_dir_compiled . "/mcsSetConfig";
|
||||
$ENV{MCS_CPIMPORT}=$mcs_bin_dir_compiled . "/cpimport";
|
||||
$ENV{MCS_SYSCATALOG_MYSQL_SQL}=$::mysqld_variables{'basedir'} . "/storage/columnstore/columnstore/dbcon/mysql/syscatalog_mysql.sql";
|
||||
}
|
||||
elsif (-d $mcs_ins_dir_installed)
|
||||
{
|
||||
$ENV{MCS_MCSSETCONFIG}=$mcs_ins_dir_installed . "/mcsSetConfig";
|
||||
$ENV{MCS_CPIMPORT}=$mcs_ins_dir_installed . "/cpimport";
|
||||
$ENV{MCS_SYSCATALOG_MYSQL_SQL}=$::mysqld_variables{'basedir'} . "/share/columnstore/syscatalog_mysql.sql";
|
||||
}
|
||||
|
||||
sub is_default { 0 }
|
||||
|
||||
sub start_test {
|
||||
# we should guard this for --force-restart flag condition.
|
||||
my ($self, $tinfo)= @_;
|
||||
My::Suite::start_test(@_);
|
||||
}
|
||||
|
||||
bless { };
|
||||
@@ -4,6 +4,8 @@
|
||||
# -------------------------------------------------------------- #
|
||||
--exec /usr/bin/mcsSetConfig CrossEngineSupport User 'cejuser'
|
||||
--exec /usr/bin/mcsSetConfig CrossEngineSupport Password 'Vagrant1|0000001'
|
||||
--exec $MCS_MCSSETCONFIG CrossEngineSupport Port $MASTER_MYPORT
|
||||
|
||||
# -------------------------------------------------------------- #
|
||||
# Create corresponding in the server
|
||||
# -------------------------------------------------------------- #
|
||||
|
||||
2
mysql-test/columnstore/include/drop_cross_engine.inc
Normal file
2
mysql-test/columnstore/include/drop_cross_engine.inc
Normal file
@@ -0,0 +1,2 @@
|
||||
REVOKE ALL PRIVILEGES ON *.* FROM 'cejuser'@'localhost';
|
||||
DROP USER 'cejuser'@'localhost';
|
||||
Reference in New Issue
Block a user