diff --git a/BUILD/SETUP.sh b/BUILD/SETUP.sh index 84abf2a461b..418ee799a2c 100755 --- a/BUILD/SETUP.sh +++ b/BUILD/SETUP.sh @@ -172,6 +172,7 @@ local_infile_configs="--enable-local-infile" max_no_embedded_configs="$SSL_LIBRARY --with-plugins=max" +max_no_qc_configs="$SSL_LIBRARY --with-plugins=max --without-query-cache" max_no_ndb_configs="$SSL_LIBRARY --with-plugins=max-no-ndb --with-embedded-server --with-libevent" max_configs="$SSL_LIBRARY --with-plugins=max --with-embedded-server --with-libevent" # Disable NDB in maria max builds diff --git a/BUILD/compile-pentium-debug-max-no-qc b/BUILD/compile-pentium-debug-max-no-qc new file mode 100755 index 00000000000..6407b4b09ad --- /dev/null +++ b/BUILD/compile-pentium-debug-max-no-qc @@ -0,0 +1,10 @@ +#! /bin/sh +# Builds server without query cache support + +path=`dirname $0` +. "$path/SETUP.sh" + +extra_flags="$pentium_cflags $debug_cflags" +extra_configs="$pentium_configs $debug_configs $max_no_qc_configs" + +. "$path/FINISH.sh" diff --git a/Makefile.am b/Makefile.am index 55d4794d0d5..5d076adcda0 100644 --- a/Makefile.am +++ b/Makefile.am @@ -156,6 +156,8 @@ test-bt: -cd mysql-test ; MTR_BUILD_THREAD=auto \ @PERL@ ./mysql-test-run.pl $(MTR_EXTRA_OPTIONS) --comment=ps --force --timer \ --skip-ndbcluster --ps-protocol + -cd mysql-test ; MTR_BUILD_THREAD=auto \ + @PERL@ ./mysql-test-run.pl $(MTR_EXTRA_OPTIONS) --force --comment=PBXT --mysqld=--default-storage-engine=pbxt --suite=pbxt -if [ -e bin/ndbd -o -e storage/ndb/src/kernel/ndbd ] ; then \ cd mysql-test ; \ MTR_BUILD_THREAD=auto \ @@ -171,8 +173,6 @@ test-bt: @PERL@ ./mysql-test-run.pl $(MTR_EXTRA_OPTIONS) --force --comment=funcs1+ps --ps-protocol --reorder --suite=funcs_1 -cd mysql-test ; MTR_BUILD_THREAD=auto \ @PERL@ ./mysql-test-run.pl $(MTR_EXTRA_OPTIONS) --force --comment=funcs2 --suite=funcs_2 - -cd mysql-test ; MTR_BUILD_THREAD=auto \ - @PERL@ ./mysql-test-run.pl $(MTR_EXTRA_OPTIONS) --force --comment=partitions --suite=parts -cd mysql-test ; MTR_BUILD_THREAD=auto \ @PERL@ ./mysql-test-run.pl $(MTR_EXTRA_OPTIONS) --force --comment=stress --suite=stress -cd mysql-test ; MTR_BUILD_THREAD=auto \ diff --git a/client/mysqltest.cc b/client/mysqltest.cc index f5c6c1ce377..c9dedde7476 100644 --- a/client/mysqltest.cc +++ b/client/mysqltest.cc @@ -100,6 +100,7 @@ static my_bool display_result_vertically= FALSE, display_metadata= FALSE, display_result_sorted= FALSE; static my_bool disable_query_log= 0, disable_result_log= 0; static my_bool disable_warnings= 0; +static my_bool prepare_warnings_enabled= 0; static my_bool disable_info= 1; static my_bool abort_on_error= 1; static my_bool server_initialized= 0; @@ -289,7 +290,7 @@ enum enum_commands { Q_SEND_QUIT, Q_CHANGE_USER, Q_MKDIR, Q_RMDIR, Q_LIST_FILES, Q_LIST_FILES_WRITE_FILE, Q_LIST_FILES_APPEND_FILE, Q_SEND_SHUTDOWN, Q_SHUTDOWN_SERVER, - Q_MOVE_FILE, + Q_MOVE_FILE, Q_ENABLE_PREPARE_WARNINGS, Q_DISABLE_PREPARE_WARNINGS, Q_UNKNOWN, /* Unknown command. */ Q_COMMENT, /* Comments, ignored. */ @@ -387,6 +388,8 @@ const char *command_names[]= "send_shutdown", "shutdown_server", "move_file", + "enable_prepare_warnings", + "disable_prepare_warnings", 0 }; @@ -6929,8 +6932,17 @@ void run_query_stmt(MYSQL *mysql, struct st_command *command, mysql_free_result(res); /* Free normal result set with meta data */ - /* Clear prepare warnings */ - dynstr_set(&ds_prepare_warnings, NULL); + /* + Normally, if there is a result set, we do not show warnings from the + prepare phase. This is because some warnings are generated both during + prepare and execute; this would generate different warning output + between normal and ps-protocol test runs. + + The --enable_prepare_warnings command can be used to change this so + that warnings from both the prepare and execute phase are shown. + */ + if (!disable_warnings && !prepare_warnings_enabled) + dynstr_set(&ds_prepare_warnings, NULL); } else { @@ -7754,6 +7766,8 @@ int main(int argc, char **argv) case Q_DISABLE_RESULT_LOG: disable_result_log=1; break; case Q_ENABLE_WARNINGS: disable_warnings=0; break; case Q_DISABLE_WARNINGS: disable_warnings=1; break; + case Q_ENABLE_PREPARE_WARNINGS: prepare_warnings_enabled=1; break; + case Q_DISABLE_PREPARE_WARNINGS: prepare_warnings_enabled=0; break; case Q_ENABLE_INFO: disable_info=0; break; case Q_DISABLE_INFO: disable_info=1; break; case Q_ENABLE_METADATA: display_metadata=1; break; diff --git a/configure.in b/configure.in index 5b11dbb331b..8ee4a3a47fc 100644 --- a/configure.in +++ b/configure.in @@ -12,8 +12,10 @@ AC_CANONICAL_SYSTEM # in mysqlbinlog.cc / check_master_version(). # # When merging new MySQL releases, update the version number to match the -# MySQL version number, but reset the maria subrelease (-beta1). -AM_INIT_AUTOMAKE(mysql, 5.1.38-MariaDB-beta1) +# MySQL version number. +# +# Note: the following line must be parseable by win/configure.js:GetVersion() +AM_INIT_AUTOMAKE(mysql, 5.1.38-maria-beta) AM_CONFIG_HEADER([include/config.h:config.h.in]) PROTOCOL_VERSION=10 diff --git a/mysql-test/include/maria_empty_logs.inc b/mysql-test/include/maria_empty_logs.inc index 00f92010bd0..bbe6673f10d 100644 --- a/mysql-test/include/maria_empty_logs.inc +++ b/mysql-test/include/maria_empty_logs.inc @@ -1,6 +1,10 @@ # Maria help script. # Cleans up all logs to give recovery a fresh start. - +# +# Note that this script relies on the number of threads connect at start of +# this script, so one should run this script with a freshly started server +# for it to work. +# # API: set mel_keep_control_file=1 if want to keep control file; # uses vardir, port and socket. diff --git a/mysql-test/include/read_many_rows.inc b/mysql-test/include/read_many_rows.inc index ff57c0ca13d..d40086b01df 100644 --- a/mysql-test/include/read_many_rows.inc +++ b/mysql-test/include/read_many_rows.inc @@ -71,8 +71,8 @@ CREATE TRIGGER t1_bi before INSERT BEGIN DECLARE CONTINUE HANDLER FOR SQLSTATE '40001' SET @a:= 'deadlock'; DECLARE CONTINUE HANDLER FOR SQLEXCEPTION SET @a:= 'exception'; - INSERT INTO t2 (f2) VALUES (1); - DELETE FROM t2 WHERE f2 = 1; + INSERT INTO t2 (f2) VALUES (NEW.f1); + DELETE FROM t2 WHERE f2 = NEW.f1; END;| CREATE PROCEDURE proc24989() @@ -109,7 +109,7 @@ send insert into t1 values(1); connection con1; --sleep 1 -insert into t1 values(1); +insert into t1 values(123); connection con2; --error 1213 @@ -130,7 +130,7 @@ send call proc24989(); connection con1; --sleep 1 -insert into t1 values(1); +insert into t1 values(123); connection con2; reap; @@ -150,7 +150,7 @@ send call proc24989_2(); connection con1; --sleep 1 -insert into t1 values(1); +insert into t1 values(123); commit; connection con2; diff --git a/mysql-test/include/wait_for_status_var.inc b/mysql-test/include/wait_for_status_var.inc index 4c168da7f1a..6ba632ce46b 100644 --- a/mysql-test/include/wait_for_status_var.inc +++ b/mysql-test/include/wait_for_status_var.inc @@ -51,11 +51,12 @@ if (`SELECT '$_status_var_comparsion' = ''`) } let $_show_status_value= query_get_value("SHOW $status_type STATUS LIKE '$status_var'", Value, 1); + while (`SELECT NOT('$_show_status_value' $_status_var_comparsion '$status_var_value')`) { if (!$_status_timeout_counter) { - --echo **** ERROR: failed while waiting for $status_type $status_var $_status_var_comparison $status_var_value **** + --echo **** ERROR: failed while waiting for '$status_type' '$status_var' $_status_var_comparsion '$status_var_value' **** --echo Note: the following output may have changed since the failure was detected --echo **** Showing STATUS, PROCESSLIST **** eval SHOW $status_type STATUS LIKE '$status_var'; diff --git a/mysql-test/lib/My/ConfigFactory.pm b/mysql-test/lib/My/ConfigFactory.pm index 751c4815945..855918a1284 100644 --- a/mysql-test/lib/My/ConfigFactory.pm +++ b/mysql-test/lib/My/ConfigFactory.pm @@ -19,7 +19,7 @@ my @pre_rules= ); -my @share_locations= ("share/mysql", "sql/share", "share"); +my @share_locations= ("share/mariadb", "share/mysql", "sql/share", "share"); sub get_basedir { diff --git a/mysql-test/lib/mtr_cases.pm b/mysql-test/lib/mtr_cases.pm index 3c62388a310..f37353b195c 100644 --- a/mysql-test/lib/mtr_cases.pm +++ b/mysql-test/lib/mtr_cases.pm @@ -490,6 +490,8 @@ sub collect_one_suite($) my $lib_innodb_plugin= mtr_file_exists(::vs_config_dirs('storage/innodb_plugin', 'ha_innodb_plugin.dll'), "$::basedir/storage/innodb_plugin/.libs/ha_innodb_plugin.so", + "$::basedir/lib/mariadb/plugin/ha_innodb_plugin.so", + "$::basedir/lib/mariadb/plugin/ha_innodb_plugin.dll", "$::basedir/lib/mysql/plugin/ha_innodb_plugin.so", "$::basedir/lib/mysql/plugin/ha_innodb_plugin.dll"); if ($::mysql_version_id >= 50100 && !(IS_WINDOWS && $::opt_embedded_server) && @@ -1094,6 +1096,17 @@ sub collect_one_test_case { $tinfo->{template_path}= $config; } + if ( $tinfo->{'example_plugin_test'} ) + { + if ( !$ENV{'EXAMPLE_PLUGIN'} ) + { + $tinfo->{'skip'}= 1; + $tinfo->{'comment'}= "Test requires the 'example' plugin"; + return $tinfo; + } + } + + # Set extra config file to use if (defined $defaults_extra_file) { $tinfo->{extra_template_path}= $defaults_extra_file; @@ -1146,6 +1159,7 @@ my @tags= ["federated.inc", "federated_test", 1], ["include/not_embedded.inc", "not_embedded", 1], ["include/not_valgrind.inc", "not_valgrind", 1], + ["include/have_example_plugin.inc", "example_plugin_test", 1] ); diff --git a/mysql-test/mysql-test-run.pl b/mysql-test/mysql-test-run.pl index d8274192419..5dad054eaef 100755 --- a/mysql-test/mysql-test-run.pl +++ b/mysql-test/mysql-test-run.pl @@ -1018,7 +1018,8 @@ sub command_line_setup { } # Look for language files and charsetsdir, use same share - $path_language= mtr_path_exists("$basedir/share/mysql/english", + $path_language= mtr_path_exists("$basedir/share/mariadb/english", + "$basedir/share/mysql/english", "$basedir/sql/share/english", "$basedir/share/english"); @@ -1887,6 +1888,7 @@ sub environment_setup { my $lib_udf_example= mtr_file_exists(vs_config_dirs('sql', 'udf_example.dll'), "$basedir/sql/.libs/udf_example.so", + "$basedir/lib/mariadb/plugin/udf_example.so", "$basedir/lib/mysql/plugin/udf_example.so",); if ( $lib_udf_example ) @@ -1915,6 +1917,7 @@ sub environment_setup { my $lib_example_plugin= mtr_file_exists(vs_config_dirs('storage/example',$plugin_filename), "$basedir/storage/example/.libs/".$plugin_filename, + "$basedir/lib/mariadb/plugin/".$plugin_filename, "$basedir/lib/mysql/plugin/".$plugin_filename); $ENV{'EXAMPLE_PLUGIN'}= ($lib_example_plugin ? basename($lib_example_plugin) : ""); @@ -1931,6 +1934,7 @@ sub environment_setup { my $lib_simple_parser= mtr_file_exists(vs_config_dirs('plugin/fulltext', 'mypluglib.dll'), "$basedir/plugin/fulltext/.libs/mypluglib.so", + "$basedir/lib/mariadb/plugin/mypluglib.so", "$basedir/lib/mysql/plugin/mypluglib.so",); $ENV{'SIMPLE_PARSER'}= @@ -2074,6 +2078,7 @@ sub environment_setup { my $file_mysql_fix_privilege_tables= mtr_file_exists("$basedir/scripts/mysql_fix_privilege_tables.sql", "$basedir/share/mysql_fix_privilege_tables.sql", + "$basedir/share/mariadb/mysql_fix_privilege_tables.sql", "$basedir/share/mysql/mysql_fix_privilege_tables.sql"); $ENV{'MYSQL_FIX_PRIVILEGE_TABLES'}= $file_mysql_fix_privilege_tables; @@ -2826,7 +2831,7 @@ sub mysql_install_db { mtr_add_arg($args, "--basedir=%s", $install_basedir); mtr_add_arg($args, "--datadir=%s", $install_datadir); mtr_add_arg($args, "--loose-skip-innodb"); - mtr_add_arg($args, "--loose-skip-falcon"); + mtr_add_arg($args, "--loose-skip-pbxt"); mtr_add_arg($args, "--loose-skip-ndbcluster"); mtr_add_arg($args, "--loose-skip-maria"); mtr_add_arg($args, "--disable-sync-frm"); @@ -2870,8 +2875,8 @@ sub mysql_install_db { my $bootstrap_sql_file= "$opt_vardir/tmp/bootstrap.sql"; my $path_sql= my_find_file($install_basedir, - ["mysql", "sql/share", "share/mysql", - "share", "scripts"], + ["mysql", "sql/share", "share/mariadb", + "share/mysql", "share", "scripts"], "mysql_system_tables.sql", NOT_REQUIRED); diff --git a/mysql-test/r/mysqltest_ps.result b/mysql-test/r/mysqltest_ps.result new file mode 100644 index 00000000000..dcf73455055 --- /dev/null +++ b/mysql-test/r/mysqltest_ps.result @@ -0,0 +1,40 @@ +select 1 + "2 a"; +1 + "2 a" +3 +Warnings: +Warning 1292 Truncated incorrect DOUBLE value: '2 a' +create table t (a int primary key, b blob default ''); +Warnings: +Warning 1101 BLOB/TEXT column 'b' can't have a default value +select a, (2*a) AS a from t group by a; +a a +Warnings: +Warning 1052 Column 'a' in group statement is ambiguous +drop table t; +select 1 + "2 a"; +1 + "2 a" +3 +Warnings: +Warning 1292 Truncated incorrect DOUBLE value: '2 a' +create table t (a int primary key, b blob default ''); +Warnings: +Warning 1101 BLOB/TEXT column 'b' can't have a default value +select a, (2*a) AS a from t group by a; +a a +Warnings: +Warning 1052 Column 'a' in group statement is ambiguous +Warning 1052 Column 'a' in group statement is ambiguous +drop table t; +select 1 + "2 a"; +1 + "2 a" +3 +Warnings: +Warning 1292 Truncated incorrect DOUBLE value: '2 a' +create table t (a int primary key, b blob default ''); +Warnings: +Warning 1101 BLOB/TEXT column 'b' can't have a default value +select a, (2*a) AS a from t group by a; +a a +Warnings: +Warning 1052 Column 'a' in group statement is ambiguous +drop table t; diff --git a/mysql-test/r/read_many_rows_innodb.result b/mysql-test/r/read_many_rows_innodb.result index 29ec509db5a..24f9a2d54a5 100644 --- a/mysql-test/r/read_many_rows_innodb.result +++ b/mysql-test/r/read_many_rows_innodb.result @@ -40,8 +40,8 @@ ON t1 FOR EACH ROW BEGIN DECLARE CONTINUE HANDLER FOR SQLSTATE '40001' SET @a:= 'deadlock'; DECLARE CONTINUE HANDLER FOR SQLEXCEPTION SET @a:= 'exception'; -INSERT INTO t2 (f2) VALUES (1); -DELETE FROM t2 WHERE f2 = 1; +INSERT INTO t2 (f2) VALUES (NEW.f1); +DELETE FROM t2 WHERE f2 = NEW.f1; END;| CREATE PROCEDURE proc24989() BEGIN @@ -63,7 +63,7 @@ insert into t1 values(1); start transaction; insert into t2 values(123); insert into t1 values(1); -insert into t1 values(1); +insert into t1 values(123); ERROR 40001: Deadlock found when trying to get lock; try restarting transaction select @a; @a @@ -76,7 +76,7 @@ insert into t1 values(1); start transaction; insert into t2 values(123); call proc24989(); -insert into t1 values(1); +insert into t1 values(123); select @a,@b; @a @b exception deadlock @@ -88,7 +88,7 @@ insert into t1 values(1); start transaction; insert into t2 values(123); call proc24989_2(); -insert into t1 values(1); +insert into t1 values(123); commit; exception Outer handler diff --git a/mysql-test/suite/funcs_1/datadict/processlist_priv.inc b/mysql-test/suite/funcs_1/datadict/processlist_priv.inc index 187ab730a2a..9bd8eaedd14 100644 --- a/mysql-test/suite/funcs_1/datadict/processlist_priv.inc +++ b/mysql-test/suite/funcs_1/datadict/processlist_priv.inc @@ -66,7 +66,7 @@ let $table= processlist; # # columns of the information_schema table e.g. to use in a select. -let $columns= ID, USER, HOST, DB, COMMAND, TIME, STATE, INFO; +let $columns= ID, USER, HOST, DB, COMMAND, TIME, STATE, INFO, TIME_MS; # # Where clause for an update. let $update_where= WHERE id=1 ; @@ -137,11 +137,11 @@ WHERE DB = 'information_schema' AND COMMAND = 'Sleep' AND USER = 'ddicttestuser1 --source include/wait_condition.inc --replace_result ENGINE=MyISAM "" ENGINE=MARIA "" " PAGE_CHECKSUM=1" "" " PAGE_CHECKSUM=0" "" eval SHOW CREATE TABLE $table; ---replace_column 1 ID 3 HOST_NAME 6 TIME +--replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS eval SHOW $table; ---replace_column 1 ID 3 HOST_NAME 6 TIME +--replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS eval SELECT * FROM $table $select_where ORDER BY id; ---replace_column 1 ID 3 HOST_NAME 6 TIME +--replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS eval SELECT $columns FROM $table $select_where ORDER BY id; --source suite/funcs_1/datadict/datadict_priv.inc --real_sleep 0.3 @@ -157,11 +157,11 @@ connection con100; # but "ddicttestuser1" must not see anything of the root session. --replace_result ENGINE=MyISAM "" ENGINE=MARIA "" " PAGE_CHECKSUM=1" "" " PAGE_CHECKSUM=0" "" eval SHOW CREATE TABLE $table; ---replace_column 1 ID 3 HOST_NAME 6 TIME +--replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS eval SHOW $table; ---replace_column 1 ID 3 HOST_NAME 6 TIME +--replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS eval SELECT * FROM $table $select_where ORDER BY id; ---replace_column 1 ID 3 HOST_NAME 6 TIME +--replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS eval SELECT $columns FROM $table $select_where ORDER BY id; --source suite/funcs_1/datadict/datadict_priv.inc --real_sleep 0.3 @@ -183,9 +183,9 @@ GRANT PROCESS ON *.* TO ddicttestuser1@'localhost' IDENTIFIED BY 'ddictpass'; --echo #################################################################################### connection con100; SHOW GRANTS; ---replace_column 1 ID 3 HOST_NAME 6 TIME +--replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS SHOW processlist; ---replace_column 1 ID 3 HOST_NAME 6 TIME +--replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS SELECT * FROM information_schema.processlist; --real_sleep 0.3 @@ -195,9 +195,9 @@ SELECT * FROM information_schema.processlist; --echo #################################################################################### connect (con101,localhost,ddicttestuser1,ddictpass,information_schema); SHOW GRANTS; ---replace_column 1 ID 3 HOST_NAME 6 TIME +--replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS SHOW processlist; ---replace_column 1 ID 3 HOST_NAME 6 TIME +--replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS SELECT * FROM information_schema.processlist; --real_sleep 0.3 @@ -217,9 +217,9 @@ GRANT PROCESS ON *.* TO ''@'localhost'; --echo #################################################################################### connect (anonymous1,localhost,"''",,information_schema); SHOW GRANTS; ---replace_column 1 ID 3 HOST_NAME 6 TIME +--replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS SHOW processlist; ---replace_column 1 ID 3 HOST_NAME 6 TIME +--replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS SELECT * FROM information_schema.processlist; --real_sleep 0.3 @@ -239,9 +239,9 @@ connect (con102,localhost,ddicttestuser1,ddictpass,information_schema); --echo ddicttestuser1 are visible. --echo #################################################################################### SHOW GRANTS; ---replace_column 1 ID 3 HOST_NAME 6 TIME +--replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS SHOW processlist; ---replace_column 1 ID 3 HOST_NAME 6 TIME +--replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS SELECT * FROM information_schema.processlist; --real_sleep 0.3 @@ -264,10 +264,10 @@ SHOW GRANTS FOR ''@'localhost'; if ($fixed_bug_30395) { # Bug#30395 strange results after REVOKE PROCESS ON *.* FROM ... ---replace_column 1 ID 3 HOST_NAME 6 TIME +--replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS SHOW processlist; } ---replace_column 1 ID 3 HOST_NAME 6 TIME +--replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS SELECT * FROM information_schema.processlist; --real_sleep 0.3 @@ -286,9 +286,9 @@ connect (con103,localhost,ddicttestuser1,ddictpass,information_schema); --echo Only the processes of ddicttestuser1 user are visible. --echo #################################################################################### SHOW GRANTS FOR 'ddicttestuser1'@'localhost'; ---replace_column 1 ID 3 HOST_NAME 6 TIME +--replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS SHOW processlist; ---replace_column 1 ID 3 HOST_NAME 6 TIME +--replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS SELECT * FROM information_schema.processlist; --real_sleep 0.3 @@ -308,9 +308,9 @@ connect (con104,localhost,ddicttestuser1,ddictpass,information_schema); --echo Only the processes of ddicttestuser1 are visible. --echo #################################################################################### SHOW GRANTS FOR 'ddicttestuser1'@'localhost'; ---replace_column 1 ID 3 HOST_NAME 6 TIME +--replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS SHOW processlist; ---replace_column 1 ID 3 HOST_NAME 6 TIME +--replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS SELECT * FROM information_schema.processlist; --real_sleep 0.3 @@ -355,9 +355,9 @@ connect (con200,localhost,ddicttestuser2,ddictpass,information_schema); --echo ddicttestuser2 has now the PROCESS privilege and sees all connections --echo #################################################################################### SHOW GRANTS FOR 'ddicttestuser2'@'localhost'; ---replace_column 1 ID 3 HOST_NAME 6 TIME +--replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS SHOW processlist; ---replace_column 1 ID 3 HOST_NAME 6 TIME +--replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS SELECT * FROM information_schema.processlist; --real_sleep 0.3 @@ -376,9 +376,9 @@ connect (con201,localhost,ddicttestuser2,ddictpass,information_schema); --echo ddicttestuser2 has no more the PROCESS privilege and can only see own connects --echo #################################################################################### SHOW GRANTS; ---replace_column 1 ID 3 HOST_NAME 6 TIME +--replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS SHOW processlist; ---replace_column 1 ID 3 HOST_NAME 6 TIME +--replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS SELECT * FROM information_schema.processlist; --real_sleep 0.3 @@ -399,9 +399,9 @@ connect (con107,localhost,ddicttestuser1,ddictpass,information_schema); SHOW GRANTS FOR 'ddicttestuser1'@'localhost'; --error ER_ACCESS_DENIED_ERROR GRANT PROCESS ON *.* TO 'ddicttestuser2'@'localhost'; ---replace_column 1 ID 3 HOST_NAME 6 TIME +--replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS SHOW processlist; ---replace_column 1 ID 3 HOST_NAME 6 TIME +--replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS SELECT * FROM information_schema.processlist; --real_sleep 0.3 @@ -423,9 +423,9 @@ connect (con108,localhost,ddicttestuser1,ddictpass,information_schema); --echo Therefore the missing SELECT privilege does not affect SELECTs on PROCESSLIST. --echo #################################################################################### SHOW GRANTS FOR 'ddicttestuser1'@'localhost'; ---replace_column 1 ID 3 HOST_NAME 6 TIME +--replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS SHOW processlist; ---replace_column 1 ID 3 HOST_NAME 6 TIME +--replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS SELECT * FROM information_schema.processlist; --real_sleep 0.3 diff --git a/mysql-test/suite/funcs_1/datadict/processlist_val.inc b/mysql-test/suite/funcs_1/datadict/processlist_val.inc index ee5347fa529..9936b7c580b 100644 --- a/mysql-test/suite/funcs_1/datadict/processlist_val.inc +++ b/mysql-test/suite/funcs_1/datadict/processlist_val.inc @@ -93,9 +93,9 @@ echo # - INFO must contain the corresponding SHOW/SELECT PROCESSLIST # # 1. Just dump what we get ---replace_column 1 3 6