summaryrefslogtreecommitdiff
path: root/mysql-test/suite/gcol
diff options
context:
space:
mode:
authorMarko Mäkelä <marko.makela@mariadb.com>2017-09-13 09:31:13 +0300
committerMarko Mäkelä <marko.makela@mariadb.com>2017-09-13 16:02:31 +0300
commitd06e4fc6a36a5ef9e8c37c29acb143970f136f93 (patch)
tree17eca33d1e2b297c631f3047f87eb54eb3bfbf75 /mysql-test/suite/gcol
parentdd35fb35fa03c034ff66fcb25bdabf2bc3e1a097 (diff)
downloadmariadb-git-d06e4fc6a36a5ef9e8c37c29acb143970f136f93.tar.gz
Do not require a debug non-embedded server in the test
This also avoids hitting the hang at server shutdown. That hang should be fixed, of course.
Diffstat (limited to 'mysql-test/suite/gcol')
-rw-r--r--mysql-test/suite/gcol/r/gcol_update.result30
-rw-r--r--mysql-test/suite/gcol/t/gcol_update.test41
2 files changed, 47 insertions, 24 deletions
diff --git a/mysql-test/suite/gcol/r/gcol_update.result b/mysql-test/suite/gcol/r/gcol_update.result
index 380d1c1efef..720ff533bac 100644
--- a/mysql-test/suite/gcol/r/gcol_update.result
+++ b/mysql-test/suite/gcol/r/gcol_update.result
@@ -1,13 +1,19 @@
-set global innodb_purge_stop_now = 1;
+SET @saved_frequency = @@GLOBAL.innodb_purge_rseg_truncate_frequency;
+SET GLOBAL innodb_purge_rseg_truncate_frequency = 1;
+connect purge_control,localhost,root;
+START TRANSACTION WITH CONSISTENT SNAPSHOT;
+connection default;
create table t1(f1 int not null, f2 blob not null, f3 blob not null,
vchar char(2) as (substr(f3,2,2)) virtual,
primary key(f1, f3(5)), index(vchar))engine=innodb;
insert into t1(f1,f2,f3) values(1, repeat('a',8000), repeat('b', 9000));
update t1 set f1=5 where f1=1;
delete from t1 where f1=5;
-set global innodb_purge_run_now=1;
-set global innodb_fast_shutdown=0;
-set global innodb_purge_stop_now = 1;
+connection purge_control;
+COMMIT;
+InnoDB 0 transactions not purged
+START TRANSACTION WITH CONSISTENT SNAPSHOT;
+connection default;
drop table t1;
create table t1(f1 int not null, f2 blob not null, f3 blob not null,
vchar char(2) as (substr(f3,2,2)) virtual,
@@ -15,9 +21,11 @@ primary key(f1, f3(5)), index(vchar, f3(2)))engine=innodb;
insert into t1(f1,f2,f3) values(1, repeat('a',8000), repeat('b', 9000));
update t1 set f1=5 where f1=1;
delete from t1 where f1=5;
-set global innodb_purge_run_now=1;
-set global innodb_fast_shutdown=0;
-set global innodb_purge_stop_now = 1;
+connection purge_control;
+COMMIT;
+InnoDB 0 transactions not purged
+START TRANSACTION WITH CONSISTENT SNAPSHOT;
+connection default;
drop table t1;
create table t1(f1 int not null, f2 blob not null, f3 blob not null,
vchar blob as (f3) virtual,
@@ -25,6 +33,10 @@ primary key(f1, f3(5)), index(vchar(3)))engine=innodb;
insert into t1(f1,f2,f3) values(1, repeat('a',8000), repeat('b', 9000));
update t1 set f1=5 where f1=1;
delete from t1 where f1=5;
-set global innodb_purge_run_now=1;
-set global innodb_fast_shutdown=0;
+connection purge_control;
+COMMIT;
+InnoDB 0 transactions not purged
+disconnect purge_control;
+connection default;
drop table t1;
+SET GLOBAL innodb_purge_rseg_truncate_frequency = @saved_frequency;
diff --git a/mysql-test/suite/gcol/t/gcol_update.test b/mysql-test/suite/gcol/t/gcol_update.test
index 0a7265bebac..8652ce7a638 100644
--- a/mysql-test/suite/gcol/t/gcol_update.test
+++ b/mysql-test/suite/gcol/t/gcol_update.test
@@ -1,9 +1,12 @@
---source include/have_debug.inc
--source include/have_innodb.inc
-# The embedded server does not support restarting.
---source include/not_embedded.inc
-set global innodb_purge_stop_now = 1;
+SET @saved_frequency = @@GLOBAL.innodb_purge_rseg_truncate_frequency;
+SET GLOBAL innodb_purge_rseg_truncate_frequency = 1;
+
+connect (purge_control,localhost,root);
+START TRANSACTION WITH CONSISTENT SNAPSHOT;
+
+connection default;
# Index on virtual column
@@ -16,10 +19,12 @@ insert into t1(f1,f2,f3) values(1, repeat('a',8000), repeat('b', 9000));
update t1 set f1=5 where f1=1;
delete from t1 where f1=5;
-set global innodb_purge_run_now=1;
-set global innodb_fast_shutdown=0;
---source include/restart_mysqld.inc
-set global innodb_purge_stop_now = 1;
+connection purge_control;
+COMMIT;
+--source ../../innodb/include/wait_all_purged.inc
+START TRANSACTION WITH CONSISTENT SNAPSHOT;
+connection default;
+
drop table t1;
# Index on virtual column and blob
@@ -33,10 +38,11 @@ insert into t1(f1,f2,f3) values(1, repeat('a',8000), repeat('b', 9000));
update t1 set f1=5 where f1=1;
delete from t1 where f1=5;
-set global innodb_purge_run_now=1;
-set global innodb_fast_shutdown=0;
---source include/restart_mysqld.inc
-set global innodb_purge_stop_now = 1;
+connection purge_control;
+COMMIT;
+--source ../../innodb/include/wait_all_purged.inc
+START TRANSACTION WITH CONSISTENT SNAPSHOT;
+connection default;
drop table t1;
# Index on virtual column of blob type
@@ -50,7 +56,12 @@ insert into t1(f1,f2,f3) values(1, repeat('a',8000), repeat('b', 9000));
update t1 set f1=5 where f1=1;
delete from t1 where f1=5;
-set global innodb_purge_run_now=1;
-set global innodb_fast_shutdown=0;
---source include/restart_mysqld.inc
+connection purge_control;
+COMMIT;
+--source ../../innodb/include/wait_all_purged.inc
+disconnect purge_control;
+
+connection default;
drop table t1;
+
+SET GLOBAL innodb_purge_rseg_truncate_frequency = @saved_frequency;