From 84d4005bad1abc45c5baac581ae26a563dea14bb Mon Sep 17 00:00:00 2001 From: Elena Stepanova Date: Sat, 25 Jan 2020 23:50:41 +0200 Subject: List of unstable tests for 10.1.44 release --- mysql-test/unstable-tests | 263 +++++++++++++++++++++------------------------- 1 file changed, 117 insertions(+), 146 deletions(-) (limited to 'mysql-test') diff --git a/mysql-test/unstable-tests b/mysql-test/unstable-tests index 6ed67cdba94..e78157ca6c4 100644 --- a/mysql-test/unstable-tests +++ b/mysql-test/unstable-tests @@ -23,43 +23,39 @@ # ############################################################################## # -# Based on 10.1 05e72a33331bd9ad96ebbe4c844b94f0a5fb7390 +# Based on bb-10.1-release 599a06098b967db3d636c1053bdbdd0011cba606 main.alter_table_trans : MDEV-12084 - timeout main.analyze_stmt_slow_query_log : MDEV-12237 - Wrong result main.auth_named_pipe : MDEV-14724 - System error 2 -main.bootstrap : Modified in 10.1.41 -main.connect_debug : Modified in 10.1.41 +main.connect_debug : Modified in 10.1.44 main.count_distinct2 : MDEV-11768 - timeout main.create_delayed : MDEV-10605 - failed with timeout main.create_drop_event : MDEV-16271 - Wrong result main.ctype_utf16 : MDEV-10675: timeout or extra warnings -main.ctype_utf8_def_upgrade : Added in 10.1.41 main.debug_sync : MDEV-10607 - internal error -main.derived : Modified in 10.1.41 main.derived_opt : MDEV-11768 - timeout -main.derived_view : Modified in 10.1.41 main.dirty_close : MDEV-19368 - mysqltest failed but provided no output main.drop_bad_db_type : Modified in 10.1.42 main.drop_debug : Modified in 10.1.42 main.events_2 : MDEV-13277 - Server crash -main.events_bugs : MDEV-12892 - Crash in fill_schema_processlist +main.events_bugs : MDEV-12892 - Crash in fill_schema_processlist; modified in 10.1.44 main.events_restart : MDEV-12236 - Server shutdown problem main.events_slowlog : MDEV-12821 - Wrong result main.flush : MDEV-19368 - mysqltest failed but provided no output +main.func_gconcat : MDEV-21379 - Valgrind warnings main.func_math : Modified in 10.1.42 +main.func_misc : Modified in 10.1.44 main.gis : MDEV-13411 - wrong result on P8 +main.gis_notembedded : MDEV-21264 - Wrong result with different default charset +main.group_by : MDEV-21565 - Wrong result; modified in 10.1.44 main.host_cache_size_functionality : MDEV-10606 - sporadic failure on shutdown main.index_intersect_innodb : MDEV-10643 - failed with timeout main.index_merge_innodb : MDEV-7142 - Wrong execution plan, timeout with valgrind; modified in 10.1.42 main.index_merge_myisam : Modified in 10.1.42 -main.information_schema_parameters : Modified in 10.1.41 main.innodb_mysql_lock : MDEV-7861 - sporadic lock detection failure +main.insert_debug : Added in 10.1.44 main.join : Modified in 10.1.42 -main.join_cache : Modified in 10.1.41 -main.join_nested : Modified in 10.1.41 -main.join_outer : Modified in 10.1.41 -main.join_outer_innodb : Modified in 10.1.41 main.kill_processlist-6619 : MDEV-10793 - wrong result in processlist main.loaddata : MDEV-19368 - mysqltest failed but provided no output main.locale : MDEV-20521 - Wrong result (missing warning) @@ -69,16 +65,12 @@ main.log_tables-big : MDEV-13408 - wrong result main.mdev-504 : MDEV-10607 - sporadic "can't connect" main.mdev375 : MDEV-10607 - sporadic "can't connect" main.merge : MDEV-10607 - sporadic "can't connect" -main.multi_update : Modified in 10.1.41 -main.multi_update_debug : MDEV-20136 - Debug sync point wait timed out; added in 10.1.41 -main.multi_update_innodb : Modified in 10.1.41 +main.multi_update_debug : MDEV-20136 - Debug sync point wait timed out main.myisam : Modified in 10.1.42 main.mysql_client_test : MDEV-19369 - error: 5888, status: 23, errno: 2 main.mysql_client_test_comp : MDEV-19369 - error: 5888, status: 23, errno: 2 main.mysql_client_test_nonblock : MDEV-15096 - exec failed main.mysql_upgrade_noengine : MDEV-14355 - Plugin is busy -main.mysqld--help : Modified in 10.1.41 -main.mysqldump : Modified in 10.1.41 main.mysqlhotcopy_myisam : MDEV-10995 - test hangs on debug build main.mysqlslap : MDEV-11801 - timeout main.mysqltest : MDEV-9269 - fails on Alpha @@ -88,16 +80,12 @@ main.order_by_innodb : Modified in 10.1.42 main.order_by_optimizer_innodb : MDEV-10683 - wrong execution plan main.partition_debug_sync : MDEV-15669 - Deadlock found when trying to get lock; modified in 10.1.42 main.partition_innodb_plugin : MDEV-12901 - Valgrind warnings -main.plugin : Modified in 10.1.41 -main.plugin_not_embedded : Modified in 10.1.41 main.processlist : Modified in 10.1.42 main.processlist_notembedded : Added in 10.1.42 -main.ps : MDEV-11017 - sporadic wrong Prepared_stmt_count; modified in 10.1.41 -main.ps_innodb : Added in 10.1.41 +main.ps : MDEV-11017 - sporadic wrong Prepared_stmt_count main.query_cache : MDEV-12895 - Wrong result main.query_cache_debug : MDEV-15281 - Resize or similar command in progress main.range_vs_index_merge_innodb : MDEV-15283 - Server has gone away -main.repair_symlink-5543 : Modified in 10.1.41 main.selectivity : Modified in 10.1.44 main.set_statement : MDEV-13183 - Wrong result main.show_explain : MDEV-10674 - sporadic failure @@ -105,23 +93,19 @@ main.sp : Modified in 10.1.42 main.sp-code : Modified in 10.1.42 main.sp-security : MDEV-10607 - sporadic "can't connect" main.sp_notembedded : MDEV-10607 - internal error -main.stat_tables : Modified in 10.1.41 main.stat_tables_par_innodb : MDEV-14155 - wrong rounding main.status : MDEV-8510 - sporadic wrong result -main.subselect : Modified in 10.1.41 main.subselect_innodb : MDEV-10614 - sporadic wrong results main.subselect_sj : Modified in 10.1.42 -main.subselect_sj_mat : Modified in 10.1.41 main.sum_distinct-big : Modified in 10.1.42 main.tc_heuristic_recover : MDEV-15200 - wrong error on mysqld_stub_cmd -main.trigger_null-8605 : Modified in 10.1.41 main.type_blob : MDEV-15195 - Wrong result main.type_date : Modified in 10.1.42 -main.type_datetime : Modified in 10.1.42 +main.type_datetime : Modified in 10.1.44 main.type_datetime_hires : MDEV-10687 - timeout -main.type_int : Modified in 10.1.42 +main.type_int : Modified in 10.1.44 main.type_newdecimal : Modified in 10.1.42 -main.view : Modified in 10.1.41 +main.type_time : Modified in 10.1.44 main.wait_timeout : Lost connection to MySQL server during query main.xa : MDEV-11769 - lock wait timeout @@ -139,11 +123,12 @@ archive-test_sql_discovery.discover : MDEV-16817 - Table marked as crashed #----------------------------------------------------------------------- binlog.binlog_commit_wait : MDEV-10150 - Error: too much time elapsed +binlog.binlog_invalid_read_in_rotate : Added in 10.1.44 binlog.binlog_killed : MDEV-12925 - Wrong result -binlog.binlog_mysqlbinlog_stop_never : Added in 10.1.41 -binlog.binlog_parallel_replication_marks_row : Include file modified in 10.1.41 -binlog.binlog_parallel_replication_marks_stm_mix : Include file modified in 10.1.41 +binlog.binlog_parallel_replication_marks_row : Include file modified in 10.1.44 +binlog.binlog_parallel_replication_marks_stm_mix : Include file modified in 10.1.44 binlog.binlog_row_drop_tmp_tbl : Include file modified in 10.1.42 +binlog.binlog_show_binlog_event_random_pos : Added in 10.1.44 binlog.binlog_stm_drop_tmp_tbl : Include file modified in 10.1.42 binlog.binlog_xa_recover : MDEV-8517 - Extra checkpoint binlog.load_data_stm_view : MDEV-16948 - Wrong result @@ -152,6 +137,7 @@ binlog.load_data_stm_view : MDEV-16948 - Wrong result binlog_encryption.binlog_xa_recover : MDEV-12908 - Extra checkpoint binlog_encryption.encrypted_master : MDEV-12906 - Failed to sync +binlog_encryption.multisource : MDEV-21289 - Wrong error code binlog_encryption.rpl_corruption : Include file modified in 10.1.44 binlog_encryption.rpl_parallel : MDEV-10653 - Timeout binlog_encryption.rpl_parallel_ignored_errors : Added in 10.1.42 @@ -163,12 +149,14 @@ binlog_encryption.rpl_typeconv : MDEV-14362 - Lost connection to #----------------------------------------------------------------------- -connect.pivot : MDEV-14803 - failed to discover table -connect.zip : MDEV-13884 - Wrong result - -#----------------------------------------------------------------------- - -disks.disks_notembedded : Added in 10.1.41 +connect.grant : Modified in 10.1.44 +connect.grant2 : Modified in 10.1.44 +connect.ini_grant : Modified in 10.1.44 +connect.mysql_grant : Modified in 10.1.44 +connect.pivot : MDEV-21378 - Valgrind warnings; MDEV-14803 - failed to discover table +connect.xml2_grant : Include file modified in 10.1.44 +connect.xml_grant : Include file modified in 10.1.44 +connect.zip : MDEV-13884 - Wrong result #----------------------------------------------------------------------- @@ -187,6 +175,7 @@ encryption.innodb_encryption_discard_import : MDEV-16116 - Wrong result encryption.innodb_encryption_is : MDEV-12898 - Server hang on startup encryption.innodb_encryption_row_compressed : MDEV-16113 - Crash encryption.innodb_first_page : MDEV-10689 - Crash +encryption.innodb_onlinealter_encryption : MDEV-14121 - Assertion failure encryption.innodb_scrub : MDEV-8139 - scrubbing tests need fixing encryption.innodb_scrub_background : MDEV-8139 - scrubbing tests need fixing encryption.innodb_scrub_compressed : MDEV-8139 - scrubbing tests need fixing @@ -238,10 +227,7 @@ galera_3nodes.* : The suite has not been stabilized yet #----------------------------------------------------------------------- innodb.binlog_consistent : MDEV-10618 - Server fails to start -innodb.check_ibd_filesize : Added in 10.1.41 -innodb.create_select : Added in 10.1.41 -innodb.doublewrite : MDEV-12905 - Lost connection to MySQL server -innodb.foreign-keys : Modified in 10.1.41 +innodb.doublewrite : MDEV-12905 - Lost connection to MySQL server; MDEV-21380 - Assertion failure innodb.group_commit_crash : MDEV-11770 - Checksum mismatch innodb.group_commit_crash_no_optimize_thread : MDEV-11770 - Checksum mismatch innodb.innodb-64k-crash : MDEV-13872 - Failure and crash on startup @@ -253,8 +239,6 @@ innodb.innodb-fk : MDEV-13832 - Assertion failure on innodb.innodb-page_compression_default : MDEV-14121 - Assertion failure innodb.innodb-page_compression_lzma : MDEV-14353 - Wrong result on Fedora 25 innodb.innodb-page_compression_zip : MDEV-10641 - Mutex problem -innodb.innodb-system-table-view : Added in 10.1.41 -innodb.innodb-wl5980-debug : Added in 10.1.41 innodb.innodb_bug14147491 : MDEV-11808 - Wrong error codes innodb.innodb_bug30423 : MDEV-7311 - Wrong number of rows in the plan innodb.innodb_bug48024 : MDEV-14352 - Assertion failure @@ -277,7 +261,6 @@ innodb.xa_recovery : MDEV-15279 - mysqld got exception innodb_fts.concurrent_insert : Modified in 10.1.42 innodb_fts.crash_recovery : Modified in 10.1.42 -innodb_fts.innodb_ft_aux_table : Added in 10.1.41 innodb_fts.innodb_fts_misc : Modified in 10.1.44 innodb_fts.innodb_fts_misc_debug : MDEV-14156 - Unexpected warning @@ -314,9 +297,8 @@ mroonga/wrapper.repair_table_no_index_file : MDEV-14807 - Wrong error message #----------------------------------------------------------------------- multi_source.gtid : MDEV-10417 - Fails on Mips -multi_source.info_logs : MDEV-10042 - Wrong result, MDEV-12629 - Valgrind warnings -multi_source.mdev-8874 : Added in 10.1.41 -multi_source.multisource : MDEV-10417 - Fails on Mips +multi_source.info_logs : MDEV-10042 - Wrong result, MDEV-12629 - Valgrind warnings, MDEV-21290 - Wrong result +multi_source.multisource : MDEV-10417 - Fails on Mips, MDEV-21289 - Wrong error code multi_source.reset_slave : MDEV-10690 - wrong result multi_source.simple : MDEV-4633 - Wrong slave status output multi_source.status_vars : MDEV-4632 - failed while waiting for Slave_received_heartbeats @@ -339,6 +321,7 @@ perfschema.connect_attrs : MDEV-17283 - Wrong result perfschema.func_file_io : MDEV-5708 - fails for s390x perfschema.func_mutex : MDEV-5708 - fails for s390x perfschema.hostcache_ipv6_ssl : MDEV-10696 - crash on shutdown +perfschema.hostcache_peer_addr : MDEV-21462 - Test condition timeout perfschema.misc : Modified in 10.1.44 perfschema.privilege_table_io : MDEV-13184 - Extra lines perfschema.rpl_gtid_func : MDEV-16897 - Wrong result @@ -364,94 +347,83 @@ roles.create_and_grant_role : MDEV-11772 - wrong result #----------------------------------------------------------------------- -rpl.circular_serverid0 : MDEV-19372 - ASAN heap-use-after-free -rpl.create_or_replace_mix : MDEV-20523 - Wrong result; include file modified in 10.1.41 -rpl.create_or_replace_row : Include file modified in 10.1.41 -rpl.create_or_replace_statement : MDEV-20523 - Wrong result; include file modified in 10.1.41 -rpl.create_select : MDEV-14121 - Assertion failure -rpl.kill_race_condition : Modified in 10.1.41 -rpl.last_insert_id : MDEV-10625 - warnings in error log -rpl.mdev_17588 : Modified in 10.1.42 -rpl.rpl_auto_increment : MDEV-10417 - Fails on Mips -rpl.rpl_auto_increment_bug45679 : MDEV-10417 - Fails on Mips -rpl.rpl_auto_increment_update_failure : MDEV-10625 - warnings in error log -rpl.rpl_binlog_index : MDEV-9501 - Warning: failed registering on master -rpl.rpl_blackhole : Modified in 10.1.41 -rpl.rpl_blackhole_row_annotate : Added in 10.1.41 -rpl.rpl_colSize : MDEV-16112 - Server crash -rpl.rpl_corruption : Include file modified in 10.1.44 -rpl.rpl_create_or_replace_fail : Added in 10.1.42 -rpl.rpl_ddl : MDEV-10417 - Fails on Mips -rpl.rpl_domain_id_filter_io_crash : MDEV-14357 - Wrong result -rpl.rpl_domain_id_filter_master_crash : MDEV-19043 - Warnings/errors -rpl.rpl_domain_id_filter_restart : MDEV-10684 - Wrong result; MDEV-19043 - Warnings/errors -rpl.rpl_drop_db_fail : MDEV-16898 - Slave fails to start -rpl.rpl_get_lock : MDEV-19368 - mysqltest failed but provided no output -rpl.rpl_gtid_basic : MDEV-10681 - server startup problem -rpl.rpl_gtid_crash : MDEV-9501 - Warning: failed registering on master -rpl.rpl_gtid_delete_domain : MDEV-14463 - Timeout in include -rpl.rpl_gtid_mdev9033 : MDEV-10680 - warnings -rpl.rpl_gtid_reconnect : MDEV-14497 - Timeout -rpl.rpl_gtid_stop_start : MDEV-10629 - Crash on shutdown, MDEV-12629 - Valgrind warnings -rpl.rpl_gtid_until : MDEV-10625 - warnings in error log -rpl.rpl_innodb_bug30888 : MDEV-10417 - Fails on Mips -rpl.rpl_insert : MDEV-9329 - Fails on Ubuntu/s390x -rpl.rpl_insert_delayed : MDEV-9329 - Fails on Ubuntu/s390x -rpl.rpl_insert_id : MDEV-15197 - Wrong result -rpl.rpl_insert_id_pk : MDEV-16567 - Assertion failure -rpl.rpl_insert_ignore : MDEV-14365 - Lost connection to MySQL server during query -rpl.rpl_invoked_features : MDEV-10417 - Fails on Mips -rpl.rpl_known_bugs_detection : Modified in 10.1.42 -rpl.rpl_mariadb_slave_capability : MDEV-11018 - sporadic wrong events in binlog -rpl.rpl_mdev12179 : MDEV-19043 - Warnings/errors -rpl.rpl_mdev6020 : MDEV-10417 - Fails on Mips -rpl.rpl_mdev_17614 : Added in 10.1.42 -rpl.rpl_mixed_mixing_engines : MDEV-14489 - Sync slave with master failed -rpl.rpl_non_direct_mixed_mixing_engines : MDEV-14489 - Sync slave with master failed -rpl.rpl_non_direct_row_mixing_engines : MDEV-16561 - Timeout in master pos wait -rpl.rpl_non_direct_stm_mixing_engines : MDEV-14489 - Sync slave with master failed -rpl.rpl_parallel : MDEV-10653 - Timeouts -rpl.rpl_parallel_ignored_errors : Added in 10.1.42 -rpl.rpl_parallel_mdev6589 : MDEV-12979 - Assertion failure -rpl.rpl_parallel_multilevel2 : MDEV-14723 - Timeout -rpl.rpl_parallel_optimistic : MDEV-10511 - Timeout -rpl.rpl_parallel_retry : MDEV-11119 - Server crash -rpl.rpl_parallel_temptable : MDEV-10356 - Crash in close_thread_tables -rpl.rpl_partition_innodb : MDEV-10417 - Fails on Mips -rpl.rpl_password_boundaries : MDEV-11534 - Slave IO warnings -rpl.rpl_row_basic_11bugs : MDEV-12171 - Server failed to start -rpl.rpl_row_basic_2myisam : MDEV-13875 - command "diff_files" failed -rpl.rpl_row_drop_create_temp_table : MDEV-14487 - Wrong result -rpl.rpl_row_drop_temp_table : Added in 10.1.41 -rpl.rpl_row_img_blobs : MDEV-13875 - command "diff_files" failed -rpl.rpl_row_img_eng_min : MDEV-13875 - command "diff_files" failed -rpl.rpl_row_img_eng_noblob : MDEV-13875 - command "diff_files" failed -rpl.rpl_row_index_choice : MDEV-15196 - Slave crash -rpl.rpl_row_mysqlbinlog : Modified in 10.1.41 -rpl.rpl_row_sp001 : MDEV-9329 - Fails on Ubuntu/s390x -rpl.rpl_semi_sync : MDEV-11220 - Wrong result -rpl.rpl_semi_sync_after_sync : MDEV-14366 - Wrong result -rpl.rpl_semi_sync_after_sync_row : MDEV-14366 - Wrong result -rpl.rpl_semi_sync_event_after_sync : MDEV-11806 - warnings -rpl.rpl_semi_sync_gtid_reconnect : Added in 10.1.44 -rpl.rpl_semi_sync_skip_repl : Modified in 10.1.41 -rpl.rpl_semi_sync_uninstall_plugin : MDEV-7140 - Wrong plugin status; modified in 10.1.41 -rpl.rpl_semi_sync_wait_point : MDEV-11807 - timeout in wait condition -rpl.rpl_show_slave_hosts : MDEV-10681 - server startup problem -rpl.rpl_skip_replication : MDEV-9268 - Fails with timeout in sync_slave_with_master on Alpha -rpl.rpl_slave_grp_exec : MDEV-10514 - Unexpected deadlock -rpl.rpl_start_stop_slave : MDEV-13567 - Replication failure -rpl.rpl_stm_mixing_engines : MDEV-14489 - Sync slave with master failed -rpl.rpl_stm_relay_ign_space : MDEV-14360 - Test assertion -rpl.rpl_sync : MDEV-10633 - Database page corruption -rpl.rpl_sync_with_innodb_thd_conc : Added in 10.1.42 -rpl.rpl_temporary_error2 : MDEV-10634 - Wrong number of retries -rpl.rpl_test_framework : MDEV-19368 - mysqltest failed but provided no output -rpl.rpl_trigger : MDEV-18055 - Wrong result -rpl.rpl_truncate_3innodb : MDEV-19454 - Syntax error in test -rpl.rpl_unsafe_statements : Modified in 10.1.42 -rpl.rpl_user_variables : MDEV-20522 - Wrong result -rpl.sec_behind_master-5114 : MDEV-13878 - Wrong result +rpl.circular_serverid0 : MDEV-19372 - ASAN heap-use-after-free +rpl.create_or_replace_mix : MDEV-20523 - Wrong result +rpl.create_or_replace_statement : MDEV-20523 - Wrong result +rpl.create_select : MDEV-14121 - Assertion failure +rpl.last_insert_id : MDEV-10625 - warnings in error log +rpl.mdev_17588 : Modified in 10.1.42 +rpl.rpl_auto_increment : MDEV-10417 - Fails on Mips +rpl.rpl_auto_increment_bug45679 : MDEV-10417 - Fails on Mips +rpl.rpl_auto_increment_update_failure : MDEV-10625 - warnings in error log +rpl.rpl_binlog_index : MDEV-9501 - Warning: failed registering on master +rpl.rpl_colSize : MDEV-16112 - Server crash +rpl.rpl_corruption : Include file modified in 10.1.44 +rpl.rpl_create_or_replace_fail : Added in 10.1.42 +rpl.rpl_ddl : MDEV-10417 - Fails on Mips +rpl.rpl_domain_id_filter_io_crash : MDEV-14357 - Wrong result +rpl.rpl_domain_id_filter_master_crash : MDEV-19043 - Warnings/errors +rpl.rpl_domain_id_filter_restart : MDEV-10684 - Wrong result; MDEV-19043 - Warnings/errors +rpl.rpl_drop_db_fail : MDEV-16898 - Slave fails to start +rpl.rpl_get_lock : MDEV-19368 - mysqltest failed but provided no output +rpl.rpl_gtid_basic : MDEV-10681 - server startup problem +rpl.rpl_gtid_crash : MDEV-9501 - Warning: failed registering on master +rpl.rpl_gtid_delete_domain : MDEV-14463 - Timeout in include +rpl.rpl_gtid_mdev9033 : MDEV-10680 - warnings +rpl.rpl_gtid_reconnect : MDEV-14497 - Timeout +rpl.rpl_gtid_stop_start : MDEV-10629 - Crash on shutdown, MDEV-12629 - Valgrind warnings +rpl.rpl_gtid_until : MDEV-10625 - warnings in error log +rpl.rpl_innodb_bug30888 : MDEV-10417 - Fails on Mips +rpl.rpl_insert : MDEV-9329 - Fails on Ubuntu/s390x +rpl.rpl_insert_delayed : MDEV-9329 - Fails on Ubuntu/s390x +rpl.rpl_insert_id : MDEV-15197 - Wrong result +rpl.rpl_insert_id_pk : MDEV-16567 - Assertion failure +rpl.rpl_insert_ignore : MDEV-14365 - Lost connection to MySQL server during query +rpl.rpl_invoked_features : MDEV-10417 - Fails on Mips +rpl.rpl_known_bugs_detection : Modified in 10.1.42 +rpl.rpl_mariadb_slave_capability : MDEV-11018 - sporadic wrong events in binlog +rpl.rpl_mdev12179 : MDEV-19043 - Warnings/errors +rpl.rpl_mdev6020 : MDEV-10417 - Fails on Mips +rpl.rpl_mdev_17614 : Added in 10.1.42 +rpl.rpl_non_direct_row_mixing_engines : MDEV-16561 - Timeout in master pos wait +rpl.rpl_parallel : MDEV-10653 - Timeouts +rpl.rpl_parallel_ignored_errors : Added in 10.1.42 +rpl.rpl_parallel_mdev6589 : MDEV-12979 - Assertion failure +rpl.rpl_parallel_multilevel2 : MDEV-14723 - Timeout +rpl.rpl_parallel_optimistic : MDEV-10511 - Timeout +rpl.rpl_parallel_retry : MDEV-11119 - Server crash +rpl.rpl_parallel_temptable : MDEV-10356 - Crash in close_thread_tables +rpl.rpl_partition_innodb : MDEV-10417 - Fails on Mips +rpl.rpl_password_boundaries : MDEV-11534 - Slave IO warnings +rpl.rpl_row_basic_11bugs : MDEV-12171 - Server failed to start +rpl.rpl_row_basic_2myisam : MDEV-13875 - command "diff_files" failed +rpl.rpl_row_drop_create_temp_table : MDEV-14487 - Wrong result +rpl.rpl_row_img_blobs : MDEV-13875 - command "diff_files" failed +rpl.rpl_row_img_eng_min : MDEV-13875 - command "diff_files" failed +rpl.rpl_row_img_eng_noblob : MDEV-13875 - command "diff_files" failed +rpl.rpl_row_index_choice : MDEV-15196 - Slave crash +rpl.rpl_row_sp001 : MDEV-9329 - Fails on Ubuntu/s390x +rpl.rpl_semi_sync : MDEV-11220 - Wrong result +rpl.rpl_semi_sync_after_sync : MDEV-14366 - Wrong result +rpl.rpl_semi_sync_after_sync_row : MDEV-14366 - Wrong result +rpl.rpl_semi_sync_event_after_sync : MDEV-11806 - warnings +rpl.rpl_semi_sync_gtid_reconnect : Added in 10.1.44 +rpl.rpl_semi_sync_uninstall_plugin : MDEV-7140 - Wrong plugin status +rpl.rpl_semi_sync_wait_point : MDEV-11807 - timeout in wait condition +rpl.rpl_show_slave_hosts : MDEV-10681 - server startup problem +rpl.rpl_skip_replication : MDEV-9268 - Fails with timeout in sync_slave_with_master on Alpha +rpl.rpl_slave_grp_exec : MDEV-10514 - Unexpected deadlock +rpl.rpl_start_stop_slave : MDEV-13567 - Replication failure +rpl.rpl_stm_relay_ign_space : MDEV-14360 - Test assertion +rpl.rpl_sync : MDEV-10633 - Database page corruption +rpl.rpl_sync_with_innodb_thd_conc : Added in 10.1.42 +rpl.rpl_temporary_error2 : MDEV-10634 - Wrong number of retries +rpl.rpl_test_framework : MDEV-19368 - mysqltest failed but provided no output +rpl.rpl_trigger : MDEV-18055 - Wrong result +rpl.rpl_truncate_3innodb : MDEV-19454 - Syntax error in test +rpl.rpl_unsafe_statements : Modified in 10.1.42 +rpl.rpl_user_variables : MDEV-20522 - Wrong result +rpl.sec_behind_master-5114 : MDEV-13878 - Wrong result #----------------------------------------------------------------------- @@ -494,14 +466,13 @@ stress.ddl_innodb : MDEV-10635 - Testcase timeout #----------------------------------------------------------------------- -sys_vars.autocommit_func2 : MDEV-9329 - Fails on Ubuntu/s390x -sys_vars.delayed_insert_limit_func : Modified in 10.1.42 -sys_vars.innodb_ft_result_cache_limit_32 : Modified in 10.1.41 -sys_vars.keep_files_on_create_basic : MDEV-10676 - timeout -sys_vars.log_slow_admin_statements_func : MDEV-12235 - Server crash -sys_vars.rpl_init_slave_func : MDEV-10149 - wrong results -sys_vars.thread_cache_size_func : MDEV-11775 - Wrong result -sys_vars.wait_timeout_func : MDEV-12896 - Wrong result +sys_vars.autocommit_func2 : MDEV-9329 - Fails on Ubuntu/s390x +sys_vars.delayed_insert_limit_func : Modified in 10.1.42 +sys_vars.keep_files_on_create_basic : MDEV-10676 - timeout +sys_vars.log_slow_admin_statements_func : MDEV-12235 - Server crash +sys_vars.rpl_init_slave_func : MDEV-10149 - wrong results +sys_vars.thread_cache_size_func : MDEV-11775 - Wrong result +sys_vars.wait_timeout_func : MDEV-12896 - Wrong result #----------------------------------------------------------------------- @@ -565,11 +536,11 @@ vcol.vcol_misc : MDEV-16651 - Wrong error message wsrep.foreign_key : MDEV-14725 - WSREP has not yet prepared node wsrep.mdev_6832 : MDEV-14195 - Failure upon check-testcase -wsrep.mysql_tzinfo_to_sql_symlink_skip : Added in 10.1.42 +wsrep.mysql_tzinfo_to_sql_symlink : Modified in 10.1.44 +wsrep.mysql_tzinfo_to_sql_symlink_skip : Modified in 10.1.44 wsrep.pool_of_threads : MDEV-17345 - WSREP has not yet prepared node for application use wsrep.variables : MDEV-17585 - Deadlock #----------------------------------------------------------------------- -wsrep_info.* : Cnf file modified in 10.1.41 wsrep_info.plugin : MDEV-12909 - Wrong result -- cgit v1.2.1 From 0a891ad6a6ba698484ba71171c3aa793705b8c6a Mon Sep 17 00:00:00 2001 From: Elena Stepanova Date: Sun, 26 Jan 2020 18:40:22 +0200 Subject: List of unstable tests for 10.2.31 release --- mysql-test/unstable-tests | 532 ++++++++++++++++++++++++++-------------------- 1 file changed, 307 insertions(+), 225 deletions(-) (limited to 'mysql-test') diff --git a/mysql-test/unstable-tests b/mysql-test/unstable-tests index ea167255c03..6b44352f555 100644 --- a/mysql-test/unstable-tests +++ b/mysql-test/unstable-tests @@ -23,60 +23,70 @@ # ############################################################################## # -# Based on 10.2 c9b9eb331570704d020fcc7c7894f19febe7f26d +# Based on 10.2 f2ccfcaca191513d12f50672ae4545f9738670f0 main.alter_table_trans : MDEV-12084 - timeout main.analyze_stmt_slow_query_log : MDEV-12237 - Wrong result main.auth_named_pipe : MDEV-14724 - System error 2 -main.compare : Modified in 10.2.28 +main.cache_temporal_4265 : Modified in 10.2.31 main.connect : MDEV-17282 - Wrong result main.connect2 : MDEV-13885 - Server crash +main.connect_debug : Modified in 10.2.31 main.count_distinct2 : MDEV-11768 - timeout main.create_delayed : MDEV-10605 - failed with timeout main.create_drop_event : MDEV-16271 - Wrong result -main.ctype_uca : Include file modified in 10.2.28 -main.ctype_uca_innodb : Include file modified in 10.2.28 +main.create_or_replace2 : Modified in 10.2.31 +main.cte_nonrecursive : Modified in 10.2.31 main.ctype_ucs : MDEV-17681 - Data too long for column main.ctype_upgrade : MDEV-16945 - Error upon mysql_upgrade main.ctype_utf16 : MDEV-10675: timeout or extra warnings -main.ctype_utf8 : Include file modified in 10.2.28 main.debug_sync : MDEV-10607 - internal error +main.default_session : Modified in 10.2.31 +main.derived_cond_pushdown : Modified in 10.2.31 main.derived_opt : MDEV-11768 - timeout main.dirty_close : MDEV-19368 - mysqltest failed but provided no output main.distinct : MDEV-14194 - Crash -main.drop_bad_db_type : MDEV-15676 - Wrong result; modified in 10.2.28 -main.drop_debug : Modified in 10.1.42 +main.drop_bad_db_type : MDEV-15676 - Wrong result; modified in 10.2.31 +main.engine_error_in_alter-8453 : Modified in 10.2.31 +main.error_simulation : Modified in 10.2.31 main.events_2 : MDEV-13277 - Crash -main.events_bugs : MDEV-12892 - Crash +main.events_bugs : MDEV-12892 - Crash; modified in 10.2.31 main.events_restart : MDEV-12236 - Server shutdown problem main.events_slowlog : MDEV-12821 - Wrong result main.flush : MDEV-19368 - mysqltest failed but provided no output -main.func_math : Modified in 10.2.28 +main.foreign_key : Modified in 10.2.31 +main.func_misc : Modified in 10.2.31 +main.func_regexp_pcre : Modified in 10.2.31 +main.func_regexp_pcre_debug : Modified in 10.2.31 +main.func_time : Modified in 10.2.31 main.gis : MDEV-13411 - wrong result on P8 +main.gis_notembedded : MDEV-21264 - Wrong result with different default charset +main.group_by : MDEV-21565 - Wrong result; modified in 10.2.31 main.host_cache_size_functionality : MDEV-10606 - sporadic failure on shutdown main.index_intersect_innodb : MDEV-10643 - failed with timeout -main.index_merge_innodb : MDEV-7142 - Plan mismatch; modified in 10.2.28 -main.index_merge_myisam : Modified in 10.2.28 -main.information_schema_db : Modified in 10.2.28 +main.index_merge_innodb : MDEV-7142 - Plan mismatch main.innodb_mysql_lock : MDEV-7861 - Wrong result -main.join : Modified in 10.1.42 -main.kill : Modified in 10.2.28 +main.insert_debug : Added in 10.2.31 main.kill-2 : MDEV-13257 - Wrong result main.kill_processlist-6619 : MDEV-10793 - Wrong result main.loaddata : MDEV-19368 - mysqltest failed but provided no output main.locale : MDEV-20521 - Missing warning main.log_slow : MDEV-13263 - Wrong result -main.log_slow_debug : Modified in 10.2.28 +main.log_slow_debug : Modified in 10.2.31 main.log_tables-big : MDEV-13408 - wrong result main.mdev-504 : MDEV-15171 - warning main.mdev375 : MDEV-10607 - sporadic "can't connect" +main.mdev6830 : Modified in 10.2.31 main.merge : MDEV-10607 - sporadic "can't connect" +main.merge-big : Modified in 10.2.31 +main.merge_debug : Modified in 10.2.31 main.multi_update_debug : MDEV-20136 - Debug sync point wait timed out -main.myisam : Modified in 10.2.28 +main.myisam_debug : Modified in 10.2.31 main.mysql_client_test : MDEV-19369 - error: 5888, status: 23, errno: 2 main.mysql_client_test_comp : MDEV-16641 - Error in exec main.mysql_client_test_nonblock : CONC-208 - Error on Power; MDEV-15096 - exec failed main.mysql_upgrade_noengine : MDEV-14355 - Wrong result +main.mysqld_option_err : MDEV-21571 - Crash on bootstrap main.mysqldump : MDEV-14800 - Stack smashing detected main.mysqlhotcopy_myisam : MDEV-10995 - Hang on debug main.mysqlslap : MDEV-11801 - timeout @@ -84,47 +94,52 @@ main.mysqltest : MDEV-9269 - fails on Alpha; MDEV-13887 - main.old-mode : MDEV-19373 - Wrong result main.openssl_6975 : MDEV-17184 - Failures with OpenSSL 1.1.1 main.order_by : Modified in 10.2.30 -main.order_by_innodb : Modified in 10.2.28 main.order_by_optimizer_innodb : MDEV-10683 - Wrong result -main.partition_debug_sync : MDEV-15669 - Deadlock found when trying to get lock; modified in 10.2.28 +main.partition_debug_sync : MDEV-15669 - Deadlock found when trying to get lock main.partition_innodb_plugin : MDEV-12901 - Valgrind warnings main.partition_innodb_semi_consistent : MDEV-19411 - Failed to start mysqld.1 -main.processlist : Modified in 10.2.28 -main.processlist_notembedded : Added in 10.2.28 +main.ps : MDEV-11017 - sporadic wrong Prepared_stmt_count main.query_cache : MDEV-16180 - Wrong result main.query_cache_debug : MDEV-15281 - Query cache is disabled +main.range_innodb : Modified in 10.2.31 +main.range_interrupted-13751 : Modified in 10.2.31 main.range_vs_index_merge_innodb : MDEV-15283 - Server has gone away +main.select_debug : Modified in 10.2.31 main.selectivity : Modified in 10.2.30 main.set_statement : MDEV-13183 - Wrong result main.set_statement_notembedded : MDEV-19414 - Wrong result main.shm : MDEV-12727 - Mismatch, ERROR 2013 -main.show_explain : MDEV-10674 - Wrong result code -main.sp : Modified in 10.2.28 -main.sp-code : Modified in 10.2.28 +main.show_explain : MDEV-10674 - Wrong result code; modified in 10.2.31 +main.show_explain_non_select : Modified in 10.2.31 +main.show_explain_ps : Modified in 10.2.31 +main.slowlog_enospace-10508 : Modified in 10.2.31 main.sp-security : MDEV-10607 - sporadic "can't connect" main.sp_notembedded : MDEV-10607 - internal error main.ssl : MDEV-17184 - Failures with OpenSSL 1.1.1 +main.ssl_7937 : Modified in 10.2.31 +main.ssl_8k_key : Modified in 10.2.31 main.ssl_ca : MDEV-10895 - SSL connection error on Power main.ssl_cipher : MDEV-17184 - Failures with OpenSSL 1.1.1 main.ssl_crl : MDEV-19119 - Wrong error code +main.ssl_crl_clients : Modified in 10.2.31 +main.ssl_system_ca : Added in 10.2.31 main.ssl_timeout : MDEV-11244 - Crash -main.stat_tables : Modified in 10.2.28 +main.stat_tables-enospc : Modified in 10.2.31 main.stat_tables_par : MDEV-13266 - Wrong result main.stat_tables_par_innodb : MDEV-14155 - Wrong rounding main.status : MDEV-13255 - Wrong result main.subselect_innodb : MDEV-10614 - Sporadic wrong results -main.subselect_sj : Modified in 10.2.28 -main.sum_distinct-big : Modified in 10.2.28 main.tc_heuristic_recover : MDEV-14189 - Wrong result main.type_blob : MDEV-15195 - Wrong result -main.type_date : Modified in 10.1.42 -main.type_datetime : Modified in 10.1.42 +main.type_datetime : Modified in 10.2.31 main.type_datetime_hires : MDEV-10687 - Timeout -main.type_int : Modified in 10.1.42 -main.type_newdecimal : Modified in 10.2.28 -main.uniques_crash-7912 : MDEV-21210 - Excessive memory consumption +main.type_int : Modified in 10.2.31 +main.type_time : Modified in 10.2.31 +main.union_crash-714 : Modified in 10.2.31 main.userstat : MDEV-12904 - SSL errors main.wait_timeout : MDEV-19023 - Lost connection to MySQL server during query +main.warnings_debug : Modified in 10.2.31 +main.win : Modified in 10.2.31 main.xa : MDEV-11769 - lock wait timeout #----------------------------------------------------------------------- @@ -140,30 +155,39 @@ archive-test_sql_discovery.discover : MDEV-16817 - Table marked as crashed #----------------------------------------------------------------------- -binlog.binlog_commit_wait : MDEV-10150 - Mismatch -binlog.binlog_killed : MDEV-12925 - Wrong result -binlog.binlog_max_extension : MDEV-19762 - Crash on shutdown -binlog.binlog_row_drop_tmp_tbl : Include file modified in 10.1.42 -binlog.binlog_stm_drop_tmp_tbl : Include file modified in 10.1.42 -binlog.binlog_xa_recover : MDEV-8517 - Extra checkpoint -binlog.flashback-largebinlog : MDEV-19764 - Out of memory -binlog.load_data_stm_view : MDEV-16948 - Wrong result +binlog.binlog_commit_wait : MDEV-10150 - Mismatch +binlog.binlog_index : Include file modified in 10.2.31 +binlog.binlog_invalid_read_in_rotate : Added in 10.2.31 +binlog.binlog_ioerr : Include file modified in 10.2.31 +binlog.binlog_killed : MDEV-12925 - Wrong result +binlog.binlog_max_extension : MDEV-19762 - Crash on shutdown +binlog.binlog_parallel_replication_marks_row : Include file modified in 10.2.31 +binlog.binlog_parallel_replication_marks_stm_mix : Include file modified in 10.2.31 +binlog.binlog_show_binlog_event_random_pos : Added in 10.2.31 +binlog.binlog_write_error : Include file Include file modified in 10.2.31 +binlog.binlog_xa_recover : MDEV-8517 - Extra checkpoint +binlog.flashback-largebinlog : MDEV-19764 - Out of memory +binlog.load_data_stm_view : MDEV-16948 - Wrong result #----------------------------------------------------------------------- -binlog_encryption.binlog_mdev_20574_old_binlog : Added in 10.2.28 +binlog_encryption.binlog_index : Include file modified in 10.2.31 +binlog_encryption.binlog_ioerr : Include file modified in 10.2.31 +binlog_encryption.binlog_write_error : Include file Include file modified in 10.2.31 binlog_encryption.binlog_xa_recover : MDEV-12908 - Extra checkpoint binlog_encryption.encrypted_master : MDEV-14201 - Extra warnings binlog_encryption.encrypted_master_switch_to_unencrypted : MDEV-14190 - Can't init tc log binlog_encryption.encryption_combo : MDEV-14199 - Table is marked as crashed -binlog_encryption.mysqlbinlog : Modified in 10.2.28 +binlog_encryption.multisource : MDEV-21289 - Wrong error code binlog_encryption.rpl_binlog_errors : MDEV-12742 - Crash -binlog_encryption.rpl_checksum : MDEV-16951 - Wrong result -binlog_encryption.rpl_corruption : Include file modified in 10.2.30 +binlog_encryption.rpl_checksum : MDEV-16951 - Wrong result; include file modified in 10.2.31 +binlog_encryption.rpl_corruption : Include file modified in 10.2.31 binlog_encryption.rpl_gtid_basic : MDEV-16947 - Server failed to start +binlog_encryption.rpl_incident : Include file modified in 10.2.31 +binlog_encryption.rpl_init_slave_errors : Include file modified in 10.2.31 binlog_encryption.rpl_loadfile : MDEV-16645 - Timeout in include -binlog_encryption.rpl_parallel : MDEV-10653 - Timeout in include -binlog_encryption.rpl_parallel_ignored_errors : Added in 10.2.28 +binlog_encryption.rpl_parallel : MDEV-10653 - Timeout in include; include file modified in 10.2.31 +binlog_encryption.rpl_parallel_ignored_errors : Include file modified in 10.2.31 binlog_encryption.rpl_relayrotate : MDEV-15194 - Timeout binlog_encryption.rpl_semi_sync : MDEV-11673 - Valgrind binlog_encryption.rpl_skip_replication : MDEV-13571 - Unexpected warning @@ -174,19 +198,19 @@ binlog_encryption.rpl_typeconv : MDEV-14362 - Lost con #----------------------------------------------------------------------- -connect.grant : Modified in 10.2.28 -connect.grant2 : Modified in 10.2.28 -connect.ini_grant : Modified in 10.2.28 -connect.mysql_grant : Modified in 10.2.28 +connect.grant : Modified in 10.1.44 +connect.grant2 : Modified in 10.1.44 +connect.ini_grant : Modified in 10.1.44 +connect.mysql_grant : Modified in 10.1.44 connect.pivot : MDEV-14803 - Failed to discover table connect.vcol : MDEV-12374 - Fails on Windows -connect.xml2_grant : Include file modified in 10.2.28 -connect.xml_grant : Include file modified in 10.2.28 +connect.xml2_grant : Include file modified in 10.1.44 +connect.xml_grant : Include file modified in 10.1.44 connect.zip : MDEV-13884 - Wrong result #----------------------------------------------------------------------- -encryption.create_or_replace : MDEV-12694 - Timeout; MDEV-16115 - Trying to access tablespace +encryption.create_or_replace : MDEV-16115 - Trying to access tablespace encryption.debug_key_management : MDEV-13841 - Timeout encryption.encrypt_and_grep : MDEV-13765 - Wrong result encryption.innochecksum : MDEV-13644 - Assertion failure @@ -198,7 +222,7 @@ encryption.innodb-first-page-read : MDEV-14356 - Timeout in wait con encryption.innodb-force-corrupt : MDEV-17286 - SSL error encryption.innodb-page_encryption : MDEV-10641 - mutex problem encryption.innodb-read-only : MDEV-16563 - Crash on startup -encryption.innodb-redo-badkey : Re-enabled in 10.2.28; modified in 10.2.28 +encryption.innodb-redo-badkey : MDEV-12898 - Server hang on startup encryption.innodb-remove-encryption : MDEV-16493 - Timeout in wait condition encryption.innodb-spatial-index : MDEV-13746 - Wrong result encryption.innodb_encrypt_key_rotation_age : MDEV-19763 - Timeout @@ -208,6 +232,7 @@ encryption.innodb_encrypt_temporary_tables : MDEV-20142 - Wrong result encryption.innodb_encryption : MDEV-15675 - Timeout encryption.innodb_encryption-page-compression : MDEV-12630 - crash or assertion failure encryption.innodb_encryption_discard_import : MDEV-16116 - Wrong result +encryption.innodb_encryption_is : MDEV-12898 - Server hang on startup encryption.innodb_encryption_row_compressed : MDEV-16113 - Crash encryption.innodb_first_page : MDEV-10689 - Crash encryption.innodb_onlinealter_encryption : MDEV-17287 - SIGABRT on server restart @@ -238,6 +263,7 @@ federated.federatedx : MDEV-10617 - Wrong checksum #----------------------------------------------------------------------- +funcs_1.is_check_constraints : Modified in 10.2.31 funcs_1.memory_views : MDEV-11773 - timeout funcs_1.processlist_val_no_prot : MDEV-11223 - Wrong result funcs_1.processlist_val_ps : MDEV-12175 - Wrong plan @@ -264,7 +290,7 @@ galera_3nodes.* : Suite is not stable yet gcol.gcol_rollback : MDEV-16954 - Unknown storage engine 'InnoDB' gcol.innodb_virtual_basic : MDEV-16950 - Failing assertion gcol.innodb_virtual_debug : MDEV-19114 - Assertion failure -gcol.innodb_virtual_debug_purge : MDEV-16952 - Wrong result; modified in 10.2.28 +gcol.innodb_virtual_debug_purge : MDEV-16952 - Wrong result; modified in 10.2.31 #----------------------------------------------------------------------- @@ -274,18 +300,17 @@ innodb.alter_crash : MDEV-16944 - The process cannot a innodb.autoinc_persist : MDEV-15282 - Assertion failure innodb.binlog_consistent : MDEV-10618 - Server fails to start innodb.blob-crash : MDEV-20481 - Failures upon recovery +innodb.blob-update-debug : Modified in 10.2.31 innodb.doublewrite : MDEV-12905 - Server crash innodb.group_commit_crash : MDEV-14191 - InnoDB registration failed innodb.group_commit_crash_no_optimize_thread : MDEV-13830 - Assertion failure innodb.ibuf_not_empty : MDEV-19021 - Wrong result; modified in 10.2.30 -innodb.information_schema_grants : Added in 10.2.28 innodb.innodb-32k-crash : Modified in 10.2.30 innodb.innodb-64k-crash : MDEV-13872 - Failure and crash on startup; modified in 10.2.30 innodb.innodb-alter-debug : MDEV-13182 - InnoDB: adjusting FSP_SPACE_FLAGS innodb.innodb-alter-table : MDEV-10619 - Testcase timeout -innodb.innodb-autoinc : Modified in 10.2.28 innodb.innodb-blob : MDEV-12053 - Client crash -innodb.innodb-change-buffer-recovery : MDEV-19115 - Lost connection to MySQL server during query; modified in 10.2.28 +innodb.innodb-change-buffer-recovery : MDEV-19115 - Lost connection to MySQL server during query innodb.innodb-fk : MDEV-13832 - Assertion failure on shutdown innodb.innodb-get-fk : MDEV-13276 - Server crash innodb.innodb-index-online : MDEV-14809 - Cannot save statistics @@ -293,28 +318,34 @@ innodb.innodb-mdev-7513 : Modified in 10.2.30 innodb.innodb-page_compression_default : MDEV-13644 - Assertion failure innodb.innodb-page_compression_lzma : MDEV-14353 - Wrong result innodb.innodb-page_compression_zip : MDEV-10641 - mutex problem +innodb.innodb-replace-debug : Modified in 10.2.31 +innodb.innodb-stats-initialize-failure : Modified in 10.2.31 innodb.innodb-table-online : MDEV-13894 - Wrong result -innodb.innodb-virtual-columns-debug : Modified in 10.2.28 innodb.innodb-wl5522-debug : MDEV-14200 - Wrong errno innodb.innodb_buffer_pool_dump_pct : MDEV-20139 - Timeout in wait_condition.inc innodb.innodb_buffer_pool_resize_with_chunks : MDEV-16964 - Assertion failure +innodb.innodb_bug11754376 : Modified in 10.2.31 innodb.innodb_bug14147491 : MDEV-11808 - Index is corrupt +innodb.innodb_bug30113362 : Added in 10.2.31 innodb.innodb_bug30423 : MDEV-7311 - Wrong result innodb.innodb_bug47167 : MDEV-20524 - Table 'user' is marked as crashed and should be repaired innodb.innodb_bug48024 : MDEV-14352 - Assertion failure +innodb.innodb_bug56947 : Modified in 10.2.31 innodb.innodb_bug59641 : MDEV-13830 - Assertion failure innodb.innodb_bulk_create_index_replication : MDEV-15273 - Slave failed to start +innodb.innodb_corrupt_bit : Modified in 10.2.31 innodb.innodb_defrag_stats_many_tables : MDEV-14198 - Table is full -innodb.innodb_force_recovery : Modified in 10.2.28 innodb.innodb_information_schema : MDEV-8851 - Wrong result innodb.innodb_max_recordsize_32k : MDEV-14801 - Operation failed; modified in 10.2.30 innodb.innodb_max_recordsize_64k : MDEV-15203 - Wrong result; modified in 10.2.30 innodb.innodb_monitor : MDEV-10939 - Testcase timeout innodb.innodb_mysql : MDEV-19873 - Wrong result innodb.innodb_stats : MDEV-10682 - wrong result -innodb.innodb_stats_persistent : Modified in 10.2.28 +innodb.innodb_stats_persistent : MDEV-21567 - Wrong result in execution plan innodb.innodb_stats_persistent_debug : MDEV-14801 - Operation failed -innodb.innodb_sys_semaphore_waits : MDEV-10331 - Semaphore wait +innodb.innodb_sys_semaphore_waits : MDEV-10331 - Semaphore wait; modified in 10.2.31 +innodb.innodb_wl6326 : Added in 10.2.31 +innodb.innodb_wl6326_big : Added in 10.2.31 innodb.innodb_zip_innochecksum2 : MDEV-13882 - Warning: difficult to find free blocks innodb.log_corruption : MDEV-13251 - Wrong result innodb.log_data_file_size : MDEV-14204 - Server failed to start @@ -325,14 +356,13 @@ innodb.purge_secondary : MDEV-15681 - Wrong result innodb.purge_thread_shutdown : MDEV-13792 - Wrong result innodb.read_only_recovery : MDEV-13886 - Server crash innodb.recovery_shutdown : MDEV-15671 - Checksum mismatch in datafile +innodb.redo_log_during_checkpoint : Modified in 10.2.31 innodb.row_format_redundant : MDEV-15192 - Trying to access missing tablespace -innodb.row_size_error_log_warnings_3 : Added in 10.2.30 -innodb.stat_tables : Added in 10.2.28 +innodb.row_size_error_log_warnings_3 : Modified in 10.2.31 innodb.table_definition_cache_debug : MDEV-14206 - Extra warning innodb.table_flags : MDEV-13572 - Wrong result; MDEV-19374 - Server failed to start innodb.temporary_table : MDEV-13265 - Wrong result -innodb.temporary_table_optimization : Modified in 10.2.28 -innodb.trx_id_future : Modified in 10.1.42 +innodb.truncate_inject : Modified in 10.2.31 innodb.undo_log : Modified in 10.2.30 innodb.undo_truncate : MDEV-17340 - Server hung innodb.undo_truncate_recover : MDEV-17679 - MySQL server has gone away @@ -341,20 +371,22 @@ innodb.xa_recovery : MDEV-15279 - mysqld got exception #----------------------------------------------------------------------- -innodb_fts.concurrent_insert : MDEV-21223 - Server crash; modified in 10.2.28 -innodb_fts.crash_recovery : Modified in 10.2.28 +innodb_fts.concurrent_insert : Modified in 10.2.31 innodb_fts.innodb_fts_misc : Modified in 10.2.30 innodb_fts.innodb_fts_misc_debug : MDEV-14156 - Unexpected warning innodb_fts.innodb_fts_plugin : MDEV-13888 - Errors in server log innodb_fts.innodb_fts_stopword_charset : MDEV-13259 - Table crashed innodb_fts.sync : MDEV-14808 - Wrong result -innodb_fts.sync_ddl : MDEV-21223 - Server crash +innodb_fts.sync_block : Modified in 10.2.31 #----------------------------------------------------------------------- innodb_gis.rtree_concurrent_srch : MDEV-15284 - Wrong result with embedded +innodb_gis.rtree_debug : Modified in 10.2.31 innodb_gis.rtree_purge : MDEV-15275 - Timeout innodb_gis.rtree_recovery : MDEV-15274 - Error on check +innodb_gis.rtree_rollback1 : Modified in 10.2.31 +innodb_gis.rtree_rollback2 : Modified in 10.2.31 innodb_gis.rtree_split : MDEV-14208 - Too many arguments innodb_gis.rtree_undo : MDEV-14456 - Timeout in include file innodb_gis.types : MDEV-15679 - Table is marked as crashed @@ -362,7 +394,7 @@ innodb_gis.types : MDEV-15679 - Table is marked as crashed #----------------------------------------------------------------------- innodb_zip.bug53591 : Modified in 10.2.30 -innodb_zip.cmp_per_index : MDEV-14490 - Table is marked as crashed +innodb_zip.cmp_per_index : MDEV-14490 - Table is marked as crashed; modified in 10.2.31 innodb_zip.innochecksum_3 : MDEV-13279 - Extra warnings innodb_zip.prefix_index_liftedlimit : Modified in 10.2.30 innodb_zip.wl5522_debug_zip : MDEV-11600 - Operating system error number 2 @@ -372,27 +404,25 @@ innodb_zip.wl6501_scale_1 : MDEV-13254 - Timeout, MDEV-14104 - Error 1 #----------------------------------------------------------------------- -maria.insert_select : MDEV-12757 - Timeout -maria.insert_select-7314 : MDEV-16492 - Timeout -maria.lock : Modified in 10.2.28 -maria.maria : MDEV-14430 - Extra warning +maria.aria_pack_mdev14183 : Added in 10.2.31 +maria.insert_select : MDEV-12757 - Timeout +maria.insert_select-7314 : MDEV-16492 - Timeout +maria.maria : MDEV-14430 - Extra warning #----------------------------------------------------------------------- -mariabackup.apply-log-only : MDEV-20135 - Timeout -mariabackup.data_directory : MDEV-15270 - Error on exec -mariabackup.extra_lsndir_stream : Added in 10.2.28 -mariabackup.full_backup : MDEV-16571 - Wrong result -mariabackup.huge_lsn : MDEV-15662 - Sequence number is in the future -mariabackup.incremental_backup : MDEV-21222 - Memory allocation failure; modified in 10.2.30 -mariabackup.incremental_encrypted : MDEV-15667 - Timeout -mariabackup.mdev-14447 : MDEV-15201 - Timeout -mariabackup.mdev-18438 : Added in 10.2.28 -mariabackup.partial : Modified in 10.2.28 -mariabackup.partial_exclude : MDEV-15270 - Error on exec -mariabackup.xb_compressed_encrypted : MDEV-14812 - Segmentation fault -mariabackup.xb_page_compress : MDEV-14810 - status: 1, errno: 11 -mariabackup.xb_partition : MDEV-17584 - Crash on shutdown +mariabackup.apply-log-only : MDEV-20135 - Timeout +mariabackup.data_directory : MDEV-15270 - Error on exec +mariabackup.full_backup : MDEV-16571 - Wrong result +mariabackup.huge_lsn : MDEV-15662 - Sequence number is in the future +mariabackup.incremental_backup : MDEV-21222 - Memory allocation failure; modified in 10.2.30 +mariabackup.incremental_encrypted : MDEV-15667 - Timeout +mariabackup.innodb_redo_log_overwrite : Added in 10.2.31 +mariabackup.mdev-14447 : MDEV-15201 - Timeout +mariabackup.partial_exclude : MDEV-15270 - Error on exec +mariabackup.xb_compressed_encrypted : MDEV-14812 - Segmentation fault +mariabackup.xb_page_compress : MDEV-14810 - status: 1, errno: 11 +mariabackup.xb_partition : MDEV-17584 - Crash on shutdown #----------------------------------------------------------------------- @@ -412,7 +442,8 @@ mroonga/wrapper.repair_table_no_index_file : MDEV-14807 - Wrong error message #----------------------------------------------------------------------- multi_source.gtid : MDEV-14202 - Crash -multi_source.info_logs : MDEV-12629 - Valgrind, MDEV-10042 - wrong result +multi_source.info_logs : MDEV-12629 - Valgrind, MDEV-10042 - Wrong result, MDEV-21290 - Wrong result +multi_source.mdev-8874 : MDEV-19415 - AddressSanitizer: heap-use-after-free multi_source.mdev-9544 : MDEV-19415 - AddressSanitizer: heap-use-after-free multi_source.multisource : MDEV-10417 - Fails on Mips multi_source.reset_slave : MDEV-10690 - Wrong result @@ -421,16 +452,25 @@ multi_source.status_vars : MDEV-4632 - failed while waiting for Slave_received_h #----------------------------------------------------------------------- +optimizer_unfixed_bugs.bug36981 : Modified in 10.2.31 +optimizer_unfixed_bugs.bug40992 : Modified in 10.2.31 +optimizer_unfixed_bugs.bug41996 : Modified in 10.2.31 +optimizer_unfixed_bugs.bug42991 : Modified in 10.2.31 +optimizer_unfixed_bugs.bug43249 : Modified in 10.2.31 +optimizer_unfixed_bugs.bug43360 : Modified in 10.2.31 +optimizer_unfixed_bugs.bug43448 : Modified in 10.2.31 +optimizer_unfixed_bugs.bug43617 : Modified in 10.2.31 + +#----------------------------------------------------------------------- + parts.partition_alter2_2_maria : MDEV-14364 - Lost connection to MySQL server during query parts.partition_auto_increment_archive : MDEV-16491 - Marked as crashed and should be repaired parts.partition_auto_increment_maria : MDEV-14430 - Extra warning -parts.partition_debug : Modified in 10.2.28 -parts.partition_debug_innodb : MDEV-10891 - Can't create UNIX socket; MDEV-15095 - Table doesn't exist; modified in 10.2.28 -parts.partition_debug_myisam : Modified in 10.2.28 +parts.partition_debug : Modified in 10.2.31 +parts.partition_debug_innodb : MDEV-10891 - Can't create UNIX socket; MDEV-15095 - Table doesn't exist; modified in 10.2.31 parts.partition_exch_qa_10 : MDEV-11765 - wrong result parts.partition_innodb_status_file : MDEV-12901 - Valgrind parts.partition_special_innodb : MDEV-16942 - Timeout -parts.reorganize_partition_innodb : Added in 10.2.28 #----------------------------------------------------------------------- @@ -438,26 +478,58 @@ percona.* : MDEV-10997 - Not maintained #----------------------------------------------------------------------- -perfschema.connect_attrs : MDEV-17283 - Wrong result -perfschema.dml_file_instances : MDEV-15179 - Wrong result -perfschema.dml_threads : MDEV-17746 - Wrong errno -perfschema.func_file_io : MDEV-5708 - fails for s390x -perfschema.func_mutex : MDEV-5708 - fails for s390x -perfschema.hostcache_ipv4_addrinfo_again_allow : MDEV-12759 - Crash -perfschema.hostcache_ipv6_addrinfo_again_allow : MDEV-12752 - Crash -perfschema.hostcache_ipv6_addrinfo_bad_allow : MDEV-13260 - Crash -perfschema.hostcache_ipv6_ssl : MDEV-10696 - Crash -perfschema.misc : Modified in 10.2.30 -perfschema.privilege_table_io : MDEV-13184 - Extra lines -perfschema.rpl_gtid_func : MDEV-16897 - Wrong result -perfschema.socket_instances_func : MDEV-20140 - Wrong result -perfschema.socket_summary_by_event_name_func : MDEV-10622 - Wrong result -perfschema.socket_summary_by_instance_func : MDEV-19413 - Wrong result -perfschema.stage_mdl_global : MDEV-11803 - wrong result on slow builders -perfschema.stage_mdl_procedure : MDEV-11545 - Missing row -perfschema.stage_mdl_table : MDEV-12638 - Wrong result -perfschema.start_server_low_digest : MDEV-21221 - Wrong result -perfschema.threads_mysql : MDEV-10677 - Wrong result +perfschema.connect_attrs : MDEV-17283 - Wrong result +perfschema.dml_file_instances : MDEV-15179 - Wrong result +perfschema.dml_threads : MDEV-17746 - Wrong errno +perfschema.func_file_io : MDEV-5708 - fails for s390x +perfschema.func_mutex : MDEV-5708 - fails for s390x +perfschema.hostcache_ipv4_addrinfo_again_allow : MDEV-12759 - Crash; modified in 10.2.31 +perfschema.hostcache_ipv4_addrinfo_again_deny : Modified in 10.2.31 +perfschema.hostcache_ipv4_addrinfo_bad_allow : Modified in 10.2.31 +perfschema.hostcache_ipv4_addrinfo_bad_deny : Modified in 10.2.31 +perfschema.hostcache_ipv4_addrinfo_good_allow : Modified in 10.2.31 +perfschema.hostcache_ipv4_addrinfo_good_deny : Modified in 10.2.31 +perfschema.hostcache_ipv4_addrinfo_noname_allow : Modified in 10.2.31 +perfschema.hostcache_ipv4_addrinfo_noname_deny : Modified in 10.2.31 +perfschema.hostcache_ipv4_auth_plugin : Modified in 10.2.31 +perfschema.hostcache_ipv4_blocked : Modified in 10.2.31 +perfschema.hostcache_ipv4_format : Modified in 10.2.31 +perfschema.hostcache_ipv4_max_con : Modified in 10.2.31 +perfschema.hostcache_ipv4_nameinfo_again_allow : Modified in 10.2.31 +perfschema.hostcache_ipv4_nameinfo_again_deny : Modified in 10.2.31 +perfschema.hostcache_ipv4_nameinfo_noname_allow : Modified in 10.2.31 +perfschema.hostcache_ipv4_nameinfo_noname_deny : Modified in 10.2.31 +perfschema.hostcache_ipv4_passwd : Modified in 10.2.31 +perfschema.hostcache_ipv4_ssl : Modified in 10.2.31 +perfschema.hostcache_ipv6_addrinfo_again_allow : MDEV-12752 - Crash; modified in 10.2.31 +perfschema.hostcache_ipv6_addrinfo_again_deny : Modified in 10.2.31 +perfschema.hostcache_ipv6_addrinfo_bad_allow : MDEV-13260 - Crash; modified in 10.2.31 +perfschema.hostcache_ipv6_addrinfo_bad_deny : Modified in 10.2.31 +perfschema.hostcache_ipv6_addrinfo_good_allow : Modified in 10.2.31 +perfschema.hostcache_ipv6_addrinfo_good_deny : Modified in 10.2.31 +perfschema.hostcache_ipv6_addrinfo_noname_allow : Modified in 10.2.31 +perfschema.hostcache_ipv6_addrinfo_noname_deny : Modified in 10.2.31 +perfschema.hostcache_ipv6_auth_plugin : Modified in 10.2.31 +perfschema.hostcache_ipv6_blocked : Modified in 10.2.31 +perfschema.hostcache_ipv6_max_con : Modified in 10.2.31 +perfschema.hostcache_ipv6_nameinfo_again_allow : Modified in 10.2.31 +perfschema.hostcache_ipv6_nameinfo_again_deny : Modified in 10.2.31 +perfschema.hostcache_ipv6_nameinfo_noname_allow : Modified in 10.2.31 +perfschema.hostcache_ipv6_nameinfo_noname_deny : Modified in 10.2.31 +perfschema.hostcache_ipv6_passwd : Modified in 10.2.31 +perfschema.hostcache_ipv6_ssl : MDEV-10696 - Crash; modified in 10.2.31 +perfschema.hostcache_peer_addr : MDEV-21462 - Test condition timeout; modified in 10.2.31 +perfschema.misc : Modified in 10.2.30 +perfschema.privilege_table_io : MDEV-13184 - Extra lines +perfschema.rpl_gtid_func : MDEV-16897 - Wrong result +perfschema.socket_instances_func : MDEV-20140 - Wrong result +perfschema.socket_summary_by_event_name_func : MDEV-10622 - Wrong result +perfschema.socket_summary_by_instance_func : MDEV-19413 - Wrong result +perfschema.stage_mdl_global : MDEV-11803 - wrong result on slow builders +perfschema.stage_mdl_procedure : MDEV-11545 - Missing row +perfschema.stage_mdl_table : MDEV-12638 - Wrong result +perfschema.start_server_low_digest : MDEV-21221 - Wrong result +perfschema.threads_mysql : MDEV-10677 - Wrong result #----------------------------------------------------------------------- @@ -465,7 +537,6 @@ perfschema_stress.* : MDEV-10996 - Not maintained #----------------------------------------------------------------------- -plugins.feedback_plugin_load : Modified in 10.2.28 plugins.feedback_plugin_send : MDEV-7932, MDEV-11118 - Connection problems and such plugins.processlist : MDEV-16574 - Wrong result plugins.server_audit : MDEV-9562 - crashes on sol10-sparc; modified in 10.2.30 @@ -484,7 +555,6 @@ rocksdb.drop_index_inplace : MDEV-14162 - Crash on shutdown rocksdb.drop_table : MDEV-14308 - Timeout rocksdb.drop_table3 : MDEV-16949 - Server crash rocksdb.dup_key_update : MDEV-17284 - Wrong result -rocksdb.index_merge_rocksdb2 : Include file modified in 10.2.28 rocksdb.locking_issues : MDEV-14464 - Wrong result rocksdb.mariadb_ignore_dirs : MDEV-16639 - Server crash rocksdb.mariadb_port_fixes : MDEV-16387 - Wrong plan @@ -509,105 +579,114 @@ roles.create_and_grant_role : MDEV-11772 - wrong result #----------------------------------------------------------------------- -rpl.circular_serverid0 : MDEV-19372 - ASAN heap-use-after-free -rpl.create_or_replace2 : MDEV-19412 - Lost connection to MySQL server -rpl.create_or_replace_mix : MDEV-20523 - Wrong result -rpl.create_or_replace_statement : MDEV-20523 - Wrong result -rpl.create_select : MDEV-14121 - Assertion failure -rpl.last_insert_id : MDEV-10625 - warnings in error log -rpl.mdev_17588 : Modified in 10.1.42 -rpl.rpl_auto_increment : MDEV-10417 - Fails on Mips -rpl.rpl_auto_increment_bug45679 : MDEV-10417 - Fails on Mips -rpl.rpl_auto_increment_update_failure : MDEV-10625 - warnings in error log -rpl.rpl_binlog_errors : MDEV-12742 - Crash -rpl.rpl_binlog_index : MDEV-9501 - Failed registering on master -rpl.rpl_colSize : MDEV-16112 - Server crash -rpl.rpl_corruption : Include file modified in 10.2.30 -rpl.rpl_create_or_replace_fail : Added in 10.1.42 -rpl.rpl_ctype_latin1 : MDEV-14813 - Wrong result on Mac -rpl.rpl_ddl : MDEV-10417 - Fails on Mips -rpl.rpl_domain_id_filter_io_crash : MDEV-12729 - Timeout in include file, MDEV-13677 - Server crash -rpl.rpl_domain_id_filter_master_crash : MDEV-19043 - Warnings/errors -rpl.rpl_domain_id_filter_restart : MDEV-10684 - Wrong result -rpl.rpl_drop_db_fail : MDEV-16898 - Slave fails to start -rpl.rpl_extra_col_master_innodb : MDEV-16570 - Extra warning -rpl.rpl_extra_col_master_myisam : MDEV-14203 - Extra warning -rpl.rpl_get_lock : MDEV-19368 - mysqltest failed but provided no output -rpl.rpl_gtid_basic : MDEV-10681 - server startup problem -rpl.rpl_gtid_crash : MDEV-9501 - Failed registering on master, MDEV-13643 - Lost connection -rpl.rpl_gtid_delete_domain : MDEV-14463 - Timeout -rpl.rpl_gtid_errorhandling : MDEV-13261 - Crash -rpl.rpl_gtid_mdev9033 : MDEV-10680 - warnings -rpl.rpl_gtid_reconnect : MDEV-14497 - Crash -rpl.rpl_gtid_startpos : MDEV-20141 - mysqltest failed but provided no output -rpl.rpl_gtid_stop_start : MDEV-10629 - Crash on shutdown, MDEV-12629 - Valgrind warnings -rpl.rpl_gtid_until : MDEV-10625 - warnings in error log -rpl.rpl_innodb_bug30888 : MDEV-10417 - Fails on Mips -rpl.rpl_insert : MDEV-9329 - Fails on Ubuntu/s390x -rpl.rpl_insert_delayed : MDEV-9329 - Fails on Ubuntu/s390x -rpl.rpl_insert_id : MDEV-15197 - Wrong result -rpl.rpl_insert_id_pk : MDEV-16567 - Assertion failure -rpl.rpl_insert_ignore : MDEV-14365 - Lost connection to MySQL server during query -rpl.rpl_invoked_features : MDEV-10417 - Fails on Mips -rpl.rpl_known_bugs_detection : Modified in 10.1.42 -rpl.rpl_mariadb_slave_capability : MDEV-11018 - Extra lines in binlog -rpl.rpl_mdev12179 : MDEV-19043 - Warnings/errors -rpl.rpl_mdev6020 : MDEV-15272 - Server crash -rpl.rpl_mdev_17614 : Added in 10.1.42 -rpl.rpl_mixed_mixing_engines : MDEV-14489 - Sync slave with master failed -rpl.rpl_non_direct_mixed_mixing_engines : MDEV-14489 - Sync slave with master failed -rpl.rpl_non_direct_row_mixing_engines : MDEV-16561 - Timeout in master_pos_wait -rpl.rpl_non_direct_stm_mixing_engines : MDEV-14489 - Failed sync_slave_with_master -rpl.rpl_parallel : MDEV-10653 - Timeouts -rpl.rpl_parallel_conflicts : MDEV-15272 - Server crash -rpl.rpl_parallel_ignored_errors : Added in 10.2.28 -rpl.rpl_parallel_mdev6589 : MDEV-12979 - Assertion failure -rpl.rpl_parallel_multilevel2 : MDEV-14723 - Timeout -rpl.rpl_parallel_optimistic : MDEV-15278 - Failed to sync with master -rpl.rpl_parallel_optimistic_nobinlog : MDEV-15278 - Failed to sync with master -rpl.rpl_parallel_retry : MDEV-11119 - Crash; MDEV-17109 - Timeout -rpl.rpl_parallel_temptable : MDEV-10356 - Crash; MDEV-19076 - Wrong result -rpl.rpl_partition_innodb : MDEV-10417 - Fails on Mips -rpl.rpl_password_boundaries : MDEV-11534 - Slave IO warnings -rpl.rpl_row_001 : MDEV-16653 - Internal check fails -rpl.rpl_row_basic_11bugs : MDEV-12171 - Server failed to start -rpl.rpl_row_basic_2myisam : MDEV-13875 - command "diff_files" failed -rpl.rpl_row_drop_create_temp_table : MDEV-14487 - Wrong result -rpl.rpl_row_img_blobs : MDEV-13875 - command "diff_files" failed -rpl.rpl_row_img_eng_min : MDEV-13875 - diff_files failed -rpl.rpl_row_img_eng_noblob : MDEV-13875 - command "diff_files" failed -rpl.rpl_row_index_choice : MDEV-15196 - Slave crash -rpl.rpl_row_sp001 : MDEV-9329 - Fails on Ubuntu/s390x -rpl.rpl_row_until : MDEV-14052 - Master will not send events with checksum -rpl.rpl_semi_sync : MDEV-11220 - Wrong result -rpl.rpl_semi_sync_after_sync : MDEV-14366 - Wrong result -rpl.rpl_semi_sync_after_sync_row : MDEV-14366 - Wrong result -rpl.rpl_semi_sync_event_after_sync : MDEV-11806 - warnings -rpl.rpl_semi_sync_gtid_reconnect : Added in 10.2.30 -rpl.rpl_semi_sync_uninstall_plugin : MDEV-7140 - Assorted failures -rpl.rpl_semi_sync_wait_point : MDEV-11807 - timeout in wait condition -rpl.rpl_set_statement_default_master : MDEV-13258 - Extra warning -rpl.rpl_show_slave_hosts : MDEV-10681 - Crash -rpl.rpl_skip_replication : MDEV-13258 - Extra warning -rpl.rpl_slave_grp_exec : MDEV-10514 - Deadlock -rpl.rpl_slave_load_tmpdir_not_exist : MDEV-14203 - Extra warning -rpl.rpl_slow_query_log : MDEV-13250 - Test abort -rpl.rpl_sp_effects : MDEV-13249 - Crash -rpl.rpl_start_stop_slave : MDEV-13567 - Sync slave timeout -rpl.rpl_stm_mixing_engines : MDEV-14489 - Sync slave with master failed -rpl.rpl_stm_multi_query : MDEV-9501 - Failed registering on master -rpl.rpl_stm_relay_ign_space : MDEV-14360 - Test assertion -rpl.rpl_stm_stop_middle_group : MDEV-13791 - Server crash -rpl.rpl_sync : MDEV-13830 - Assertion failure -rpl.rpl_sync_with_innodb_thd_conc : Added in 10.1.42 -rpl.rpl_temporal_mysql56_to_mariadb53 : MDEV-9501 - Failed registering on master -rpl.rpl_temporary_error2 : MDEV-10634 - Wrong number of retries -rpl.rpl_test_framework : MDEV-19368 - mysqltest failed but provided no output -rpl.rpl_trigger : MDEV-18055 - Wrong result -rpl.rpl_truncate_3innodb : MDEV-19454 - Sporadic syntax error -rpl.rpl_unsafe_statements : Modified in 10.1.42 -rpl.rpl_user_variables : MDEV-20522 - Wrong result -rpl.sec_behind_master-5114 : MDEV-13878 - Wrong result +rpl.circular_serverid0 : MDEV-19372 - ASAN heap-use-after-free; modified in 10.2.31 +rpl.create_or_replace2 : MDEV-19412 - Lost connection to MySQL server +rpl.create_or_replace_mix : MDEV-20523 - Wrong result +rpl.create_or_replace_statement : MDEV-20523 - Wrong result +rpl.create_select : MDEV-14121 - Assertion failure +rpl.kill_race_condition : Modified in 10.2.31 +rpl.last_insert_id : MDEV-10625 - warnings in error log +rpl.rpl_auto_increment : MDEV-10417 - Fails on Mips +rpl.rpl_auto_increment_bug45679 : MDEV-10417 - Fails on Mips +rpl.rpl_auto_increment_update_failure : MDEV-10625 - warnings in error log +rpl.rpl_binlog_errors : MDEV-12742 - Crash +rpl.rpl_binlog_index : MDEV-9501 - Failed registering on master +rpl.rpl_binlog_rollback_cleanup : Added in 10.2.31 +rpl.rpl_bug33931 : Modified in 10.2.31 +rpl.rpl_bug41902 : Modified in 10.2.31 +rpl.rpl_checksum : Include file modified in 10.2.31 +rpl.rpl_colSize : MDEV-16112 - Server crash +rpl.rpl_corruption : Include file modified in 10.2.31 +rpl.rpl_ctype_latin1 : MDEV-14813 - Wrong result on Mac +rpl.rpl_ddl : MDEV-10417 - Fails on Mips +rpl.rpl_domain_id_filter_io_crash : MDEV-12729 - Timeout in include file, MDEV-13677 - Server crash; modified in 10.2.31 +rpl.rpl_domain_id_filter_master_crash : MDEV-19043 - Warnings/errors; modified in 10.2.31 +rpl.rpl_domain_id_filter_restart : MDEV-10684 - Wrong result +rpl.rpl_drop_db_fail : MDEV-16898 - Slave fails to start +rpl.rpl_extra_col_master_innodb : MDEV-16570 - Extra warning +rpl.rpl_extra_col_master_myisam : MDEV-14203 - Extra warning +rpl.rpl_flushlog_loop : MDEV-21570 - Server crash +rpl.rpl_get_lock : MDEV-19368 - mysqltest failed but provided no output +rpl.rpl_get_master_version_and_clock : Modified in 10.2.31 +rpl.rpl_gtid_basic : MDEV-10681 - server startup problem +rpl.rpl_gtid_crash : MDEV-9501 - Failed registering on master, MDEV-13643 - Lost connection +rpl.rpl_gtid_delete_domain : MDEV-14463 - Timeout +rpl.rpl_gtid_errorhandling : MDEV-13261 - Crash +rpl.rpl_gtid_mdev9033 : MDEV-10680 - warnings +rpl.rpl_gtid_reconnect : MDEV-14497 - Crash; modified in 10.2.31 +rpl.rpl_gtid_startpos : MDEV-20141 - mysqltest failed but provided no output +rpl.rpl_gtid_stop_start : MDEV-10629 - Crash on shutdown, MDEV-12629 - Valgrind warnings +rpl.rpl_gtid_until : MDEV-10625 - warnings in error log +rpl.rpl_heartbeat_debug : Modified in 10.2.31 +rpl.rpl_incident : Include file modified in 10.2.31 +rpl.rpl_init_slave_errors : Include file modified in 10.2.31 +rpl.rpl_innodb_bug30888 : MDEV-10417 - Fails on Mips +rpl.rpl_insert : MDEV-9329 - Fails on Ubuntu/s390x +rpl.rpl_insert_delayed : MDEV-9329 - Fails on Ubuntu/s390x +rpl.rpl_insert_id : MDEV-15197 - Wrong result +rpl.rpl_insert_id_pk : MDEV-16567 - Assertion failure +rpl.rpl_insert_ignore : MDEV-14365 - Lost connection to MySQL server during query +rpl.rpl_invoked_features : MDEV-10417 - Fails on Mips +rpl.rpl_mariadb_slave_capability : MDEV-11018 - Extra lines in binlog; modified in 10.2.31 +rpl.rpl_mdev12179 : MDEV-19043 - Warnings/errors +rpl.rpl_mdev6020 : MDEV-15272 - Server crash +rpl.rpl_mixed_mixing_engines : MDEV-21266 - Timeout +rpl.rpl_non_direct_row_mixing_engines : MDEV-16561 - Timeout in master_pos_wait +rpl.rpl_parallel : MDEV-10653 - Timeouts; include file modified in 10.2.31 +rpl.rpl_parallel_conflicts : MDEV-15272 - Server crash +rpl.rpl_parallel_mdev6589 : MDEV-12979 - Assertion failure +rpl.rpl_parallel_multilevel2 : MDEV-14723 - Timeout +rpl.rpl_parallel_optimistic : MDEV-15278 - Failed to sync with master; modified in 10.2.31 +rpl.rpl_parallel_optimistic_nobinlog : MDEV-15278 - Failed to sync with master +rpl.rpl_parallel_retry : MDEV-11119 - Crash; MDEV-17109 - Timeout +rpl.rpl_parallel_temptable : MDEV-10356 - Crash; MDEV-19076 - Wrong result +rpl.rpl_partition_innodb : MDEV-10417 - Fails on Mips +rpl.rpl_password_boundaries : MDEV-11534 - Slave IO warnings +rpl.rpl_row_001 : MDEV-16653 - Internal check fails +rpl.rpl_row_basic_11bugs : MDEV-12171 - Server failed to start +rpl.rpl_row_basic_2myisam : MDEV-13875 - command "diff_files" failed +rpl.rpl_row_big_table_id : Modified in 10.2.31 +rpl.rpl_row_corruption : MDEV-21569 - mutex: LOCK_global_system_variables unlocking +rpl.rpl_row_drop_create_temp_table : MDEV-14487 - Wrong result +rpl.rpl_row_find_row_debug : Modified in 10.2.31 +rpl.rpl_row_img_blobs : MDEV-13875 - command "diff_files" failed +rpl.rpl_row_img_eng_min : MDEV-13875 - diff_files failed +rpl.rpl_row_img_eng_noblob : MDEV-13875 - command "diff_files" failed +rpl.rpl_row_index_choice : MDEV-15196 - Slave crash; modified in 10.2.31 +rpl.rpl_row_sp001 : MDEV-9329 - Fails on Ubuntu/s390x +rpl.rpl_row_until : MDEV-14052 - Master will not send events with checksum +rpl.rpl_semi_sync : MDEV-11220 - Wrong result +rpl.rpl_semi_sync_after_sync : MDEV-14366 - Wrong result +rpl.rpl_semi_sync_after_sync_row : MDEV-14366 - Wrong result +rpl.rpl_semi_sync_event_after_sync : MDEV-11806 - warnings +rpl.rpl_semi_sync_gtid_reconnect : Added in 10.2.30 +rpl.rpl_semi_sync_skip_repl : Modified in 10.2.31 +rpl.rpl_semi_sync_uninstall_plugin : MDEV-7140 - Assorted failures +rpl.rpl_semi_sync_wait_point : MDEV-11807 - timeout in wait condition +rpl.rpl_set_statement_default_master : MDEV-13258 - Extra warning +rpl.rpl_show_slave_hosts : MDEV-10681 - Crash +rpl.rpl_show_slave_running : Modified in 10.2.31 +rpl.rpl_skip_replication : MDEV-13258 - Extra warning +rpl.rpl_slave_grp_exec : MDEV-10514 - Deadlock +rpl.rpl_slave_load_remove_tmpfile : Modified in 10.2.31 +rpl.rpl_slave_load_tmpdir_not_exist : MDEV-14203 - Extra warning +rpl.rpl_slow_query_log : MDEV-13250 - Test abort +rpl.rpl_sp_effects : MDEV-13249 - Crash +rpl.rpl_start_stop_slave : MDEV-13567 - Sync slave timeout +rpl.rpl_stm_lcase_tblnames : Modified in 10.2.31 +rpl.rpl_stm_multi_query : MDEV-9501 - Failed registering on master +rpl.rpl_stm_relay_ign_space : MDEV-14360 - Test assertion +rpl.rpl_stm_stop_middle_group : MDEV-13791 - Server crash; include file modified in 10.2.31 +rpl.rpl_stop_slave : Modified in 10.2.31 +rpl.rpl_sync : MDEV-13830 - Assertion failure +rpl.rpl_temporal_mysql56_to_mariadb53 : MDEV-9501 - Failed registering on master +rpl.rpl_temporary_error2 : MDEV-10634 - Wrong number of retries +rpl.rpl_test_framework : MDEV-19368 - mysqltest failed but provided no output +rpl.rpl_trigger : MDEV-18055 - Wrong result +rpl.rpl_truncate_3innodb : MDEV-19454 - Sporadic syntax error +rpl.rpl_user_variables : MDEV-20522 - Wrong result +rpl.rpl_view_debug : Modified in 10.2.31 +rpl.sec_behind_master-5114 : MDEV-13878 - Wrong result #----------------------------------------------------------------------- @@ -619,8 +698,7 @@ rpl/extra/rpl_tests.* : MDEV-10994 - Not maintained #----------------------------------------------------------------------- -sphinx.* : MDEV-10986 - Tests have not been maintained -sphinx.sphinx : Modified in 10.2.28 +sphinx.* : MDEV-10986 - Tests have not been maintained #----------------------------------------------------------------------- @@ -655,14 +733,14 @@ stress.ddl_innodb : MDEV-10635 - Testcase timeout #----------------------------------------------------------------------- sys_vars.autocommit_func2 : MDEV-9329 - Fails on Ubuntu/s390x -sys_vars.delayed_insert_limit_func : Modified in 10.2.28 +sys_vars.debug_dbug_func : Modified in 10.2.31 sys_vars.innodb_buffer_pool_dump_at_shutdown_basic : MDEV-14280 - Unexpected error -sys_vars.innodb_change_buffering_debug_basic : Modified in 10.2.28 +sys_vars.innodb_buffer_pool_size_basic : Modified in 10.2.31 +sys_vars.innodb_checksum_algorithm_basic : MDEV-21568 - Errno: 2000 sys_vars.keep_files_on_create_basic : MDEV-10676 - timeout sys_vars.log_slow_admin_statements_func : MDEV-12235 - Server crash sys_vars.rpl_init_slave_func : MDEV-10149 - Test assertion sys_vars.slow_query_log_func : MDEV-14273 - Wrong result -sys_vars.sysvars_innodb : Modified in 10.2.28 sys_vars.thread_cache_size_func : MDEV-11775 - Wrong result sys_vars.wait_timeout_func : MDEV-12896 - Wrong result @@ -710,7 +788,6 @@ tokudb_bugs.xa : MDEV-11804 - Lock wait timeout #----------------------------------------------------------------------- tokudb_parts.partition_alter4_tokudb : MDEV-12640 - Lost connection -tokudb_parts.partition_debug_tokudb : Include file modified in 10.2.28 #----------------------------------------------------------------------- @@ -734,17 +811,22 @@ unit.ma_test_loghandler : MDEV-10638 - record read not ok #----------------------------------------------------------------------- vcol.not_supported : MDEV-10639 - Testcase timeout -vcol.vcol_keys_innodb : MDEV-10639 - Testcase timeout; modified in 10.2.28 +vcol.vcol_keys_innodb : MDEV-10639 - Testcase timeout vcol.vcol_misc : MDEV-16651 - Wrong error message #----------------------------------------------------------------------- -wsrep.foreign_key : MDEV-14725 - WSREP has not yet prepared node +wsrep.* : Config file changed in 10.2.31 +wsrep.alter_table_innodb : Configuration deleted in 10.2.31 +wsrep.binlog_format : Configuration modified in 10.2.31 +wsrep.foreign_key : MDEV-14725 - WSREP has not yet prepared node; re-enabled in 10.2.31 +wsrep.mdev_10186 : Configuration added in 10.2.31 wsrep.mdev_6832 : MDEV-14195 - Check testcase failed -wsrep.mysql_tzinfo_to_sql_symlink_skip : Added in 10.1.42 -wsrep.pool_of_threads : MDEV-17345 - WSREP has not yet prepared node for application use; configuration modified in 10.2.30 -wsrep.variables : MDEV-14311 - Wrong result; MDEV-17585 - Deadlock +wsrep.mysql_tzinfo_to_sql_symlink : Modified in 10.2.31 +wsrep.mysql_tzinfo_to_sql_symlink_skip : Modified in 10.2.31 +wsrep.pool_of_threads : MDEV-17345 - WSREP has not yet prepared node for application use; re-enabled in 10.2.31; configuration modified in 10.2.31 +wsrep.variables : MDEV-17585 - Deadlock; modified in 10.2.31 #----------------------------------------------------------------------- -wsrep_info.plugin : MDEV-13569 - No nodes coming from prim view +wsrep_info.* : Config file changed in 10.2.31 -- cgit v1.2.1 From 0152704ae3f857668dbc05803950adcf131b8685 Mon Sep 17 00:00:00 2001 From: Elena Stepanova Date: Sun, 26 Jan 2020 20:34:09 +0200 Subject: List of unstable tests for 10.3.22 release --- mysql-test/unstable-tests | 606 +++++++++++++++++++++++++--------------------- 1 file changed, 326 insertions(+), 280 deletions(-) (limited to 'mysql-test') diff --git a/mysql-test/unstable-tests b/mysql-test/unstable-tests index 6463c4a6d9a..07b4db37504 100644 --- a/mysql-test/unstable-tests +++ b/mysql-test/unstable-tests @@ -23,133 +23,142 @@ # ############################################################################## # -# Based on 10.3 be92dce61353952da593b32f3f52b81b89ee7219 +# Based on bb-10.3-release e10e922afd138aec491c646682f4989922527cfb main.alter_table_trans : MDEV-12084 - timeout main.analyze_stmt_slow_query_log : MDEV-12237 - Wrong result main.auth_named_pipe : MDEV-14724 - System error 2 -main.auto_increment_ranges_innodb : Include file modified in 10.3.19 -main.auto_increment_ranges_myisam : Include file modified in 10.3.19 -main.compare : Modified in 10.3.19 +main.cache_temporal_4265 : Modified in 10.3.22 main.connect : MDEV-17282 - Wrong result main.connect2 : MDEV-13885 - Server crash +main.connect_debug : Modified in 10.3.22 main.count_distinct2 : MDEV-11768 - timeout main.create_delayed : MDEV-10605 - failed with timeout main.create_drop_event : MDEV-16271 - Wrong result -main.ctype_uca : Include file modified in 10.3.19 -main.ctype_uca_innodb : Include file modified in 10.3.19 +main.create_or_replace2 : Modified in 10.3.22 +main.cte_nonrecursive : Modified in 10.3.22 main.ctype_ucs : MDEV-17681 - Data too long for column main.ctype_upgrade : MDEV-16945 - Error upon mysql_upgrade main.ctype_utf16 : MDEV-10675: timeout or extra warnings main.ctype_utf16le : MDEV-10675: timeout or extra warnings -main.ctype_utf8 : Include file modified in 10.3.19 main.ctype_utf8mb4_innodb : MDEV-17744 - Timeout; MDEV-18567 - ASAN use-after-poison main.debug_sync : MDEV-10607 - internal error -main.derived_cond_pushdown : MDEV-20532 - Floating point differences +main.default_session : Modified in 10.3.22 +main.delete_use_source : Modified in 10.3.22 +main.derived_cond_pushdown : MDEV-20532 - Floating point differences; modified in 10.3.22 main.derived_opt : MDEV-11768 - timeout main.dirty_close : MDEV-19368 - mysqltest failed but provided no output main.distinct : MDEV-14194 - Crash -main.drop_bad_db_type : MDEV-15676 - Wrong result; modified in 10.3.19 -main.drop_debug : Modified in 10.1.42 +main.drop_bad_db_type : MDEV-15676 - Wrong result; modified in 10.3.22 main.dyncol : MDEV-19455 - Extra warning +main.engine_error_in_alter-8453 : Modified in 10.3.22 +main.error_simulation : Modified in 10.3.22 main.events_2 : MDEV-13277 - Crash -main.events_bugs : MDEV-12892 - Crash +main.events_bugs : MDEV-12892 - Crash; modified in 10.3.22 main.events_restart : MDEV-12236 - Server shutdown problem main.events_slowlog : MDEV-12821 - Wrong result main.flush : MDEV-19368 - mysqltest failed but provided no output -main.func_json : Modified in 10.3.19 -main.func_math : MDEV-20532 - Floating point differences; modified in 10.3.19 -main.func_misc : Modified in 10.3.19 +main.foreign_key : Modified in 10.3.22 +main.func_math : MDEV-20532 - Floating point differences +main.func_misc : Modified in 10.3.22 +main.func_regexp_pcre : Modified in 10.3.22 +main.func_regexp_pcre_debug : Modified in 10.3.22 +main.func_time : Modified in 10.3.22 main.gis : MDEV-13411 - wrong result on P8 +main.gis_notembedded : MDEV-21264 - Wrong result with different default charset +main.group_by : Modified in 10.3.22 main.host_cache_size_functionality : MDEV-10606 - sporadic failure on shutdown main.index_intersect_innodb : MDEV-10643 - failed with timeout -main.index_merge_innodb : MDEV-7142 - Plan mismatch; modified in 10.3.19 -main.index_merge_myisam : Modified in 10.3.19 -main.information_schema_db : Modified in 10.3.19 +main.index_merge_innodb : MDEV-7142 - Plan mismatch main.innodb_mysql_lock : MDEV-7861 - Wrong result -main.join : Modified in 10.1.42 -main.join_cache : MDEV-17743 - Bad address from storage engine MyISAM -main.kill : Modified in 10.2.28 +main.insert_debug : Added in 10.3.22 +main.join : Modified in 10.3.22 +main.join_cache : MDEV-17743 - Bad address from storage engine MyISAM; modified in 10.3.22 main.kill-2 : MDEV-13257 - Wrong result main.kill_processlist-6619 : MDEV-10793 - Wrong result main.loaddata : MDEV-19368 - mysqltest failed but provided no output main.locale : MDEV-20521 - Missing warning main.log_slow : MDEV-13263 - Wrong result -main.log_slow_debug : Modified in 10.3.19 +main.log_slow_debug : Modified in 10.3.22 main.log_tables-big : MDEV-13408 - wrong result main.mdev-504 : MDEV-15171 - warning main.mdev375 : MDEV-10607 - sporadic "can't connect" +main.mdev6830 : Modified in 10.3.22 main.merge : MDEV-10607 - sporadic "can't connect" +main.merge-big : Modified in 10.3.22 +main.merge_debug : Modified in 10.3.22 main.multi_update_debug : MDEV-20136 - Debug sync point wait timed out -main.myisam : Modified in 10.3.19 +main.myisam_debug : Modified in 10.3.22 main.mysql_client_test : MDEV-19369 - error: 5888, status: 23, errno: 2 main.mysql_client_test_comp : MDEV-16641 - Error in exec main.mysql_client_test_nonblock : CONC-208 - Error on Power; MDEV-15096 - exec failed main.mysql_upgrade_noengine : MDEV-14355 - Wrong result -main.mysqld_option_err : MDEV-21236 - Wrong error +main.mysqld_option_err : MDEV-21236 - Wrong error; MDEV-21571 - Crash on bootstrap main.mysqldump : MDEV-14800 - Stack smashing detected main.mysqlhotcopy_myisam : MDEV-10995 - Hang on debug main.mysqlslap : MDEV-11801 - timeout main.mysqltest : MDEV-13887 - Wrong result main.old-mode : MDEV-19373 - Wrong result main.openssl_6975 : MDEV-17184 - Failures with OpenSSL 1.1.1 +main.opt_tvc : Modified in 10.3.22 main.order_by : Modified in 10.3.21 -main.order_by_innodb : Modified in 10.3.19 main.order_by_optimizer_innodb : MDEV-10683 - Wrong result -main.partition_debug_sync : MDEV-15669 - Deadlock found when trying to get lock; modified in 10.3.19 -main.partition_innodb : Modified in 10.3.19 +main.partition_debug_sync : MDEV-15669 - Deadlock found when trying to get lock main.partition_innodb_plugin : MDEV-12901 - Valgrind warnings main.partition_innodb_semi_consistent : MDEV-19411 - Failed to start mysqld.1 main.partition_mrr_aria : Added in 10.3.21 main.partition_mrr_innodb : Added in 10.3.21 main.partition_mrr_myisam : Added in 10.3.21 main.partition_pruning : Modified in 10.3.21 -main.partition_ucs2 : Added in 10.3.19 -main.partition_utf8 : Modified in 10.3.19 main.pool_of_threads : MDEV-18135 - SSL error: key too small -main.processlist : Modified in 10.3.19 -main.processlist_notembedded : Added in 10.3.19 main.ps : MDEV-11017 - Sporadic wrong Prepared_stmt_count main.query_cache : MDEV-16180 - Wrong result main.query_cache_debug : MDEV-15281 - Query cache is disabled +main.range_innodb : Modified in 10.3.22 +main.range_interrupted-13751 : Modified in 10.3.22 main.range_vs_index_merge_innodb : MDEV-15283 - Server has gone away main.select : MDEV-20532 - Floating point differences +main.select_debug : Modified in 10.3.22 main.select_jcl6 : MDEV-20532 - Floating point differences main.select_pkeycache : MDEV-20532 - Floating point differences main.selectivity : Modified in 10.3.21 main.set_statement : MDEV-13183 - Wrong result main.set_statement_notembedded : MDEV-19414 - Wrong result main.shm : MDEV-12727 - Mismatch, ERROR 2013 -main.show_explain : MDEV-10674 - Wrong result code -main.sp : MDEV-7866 - Mismatch; modified in 10.3.19 -main.sp-code : Modified in 10.3.19 +main.show_explain : MDEV-10674 - Wrong result code; modified in 10.3.22 +main.show_explain_non_select : Modified in 10.3.22 +main.show_explain_ps : Modified in 10.3.22 +main.slowlog_enospace-10508 : Modified in 10.3.22 +main.sp : MDEV-7866 - Mismatch main.sp-security : MDEV-10607 - sporadic "can't connect" main.sp_notembedded : MDEV-10607 - internal error main.ssl : MDEV-17184 - Failures with OpenSSL 1.1.1 +main.ssl_7937 : Modified in 10.3.22 +main.ssl_8k_key : Modified in 10.3.22 main.ssl_ca : MDEV-10895 - SSL connection error on Power main.ssl_cipher : MDEV-17184 - Failures with OpenSSL 1.1.1 main.ssl_crl : MDEV-19119 - Wrong error code; modified in 10.3.21 +main.ssl_crl_clients : Modified in 10.3.22 +main.ssl_system_ca : Added in 10.3.22 main.ssl_timeout : MDEV-11244 - Crash -main.stat_tables : Modified in 10.3.19 +main.stat_tables-enospc : Modified in 10.3.22 main.stat_tables_par : MDEV-13266 - Wrong result main.stat_tables_par_innodb : MDEV-14155 - Wrong rounding main.status : MDEV-13255 - Wrong result main.subselect : MDEV-20551 - Valgrind failure main.subselect_innodb : MDEV-10614 - Wrong result -main.subselect_sj : Modified in 10.3.19 -main.sum_distinct-big : Modified in 10.3.19 -main.table_value_constr : Modified in 10.3.19 main.tc_heuristic_recover : MDEV-14189 - Wrong result main.type_blob : MDEV-15195 - Wrong result -main.type_date : Modified in 10.1.42 -main.type_datetime : Modified in 10.1.42 +main.type_datetime : Modified in 10.3.22 main.type_datetime_hires : MDEV-10687 - Timeout main.type_float : MDEV-20532 - Floating point differences -main.type_int : Modified in 10.1.42 -main.type_newdecimal : Modified in 10.3.19 -main.uniques_crash-7912 : MDEV-21210 - Excessive memory consumption +main.type_int : Modified in 10.3.22 +main.type_time : Modified in 10.3.22 +main.union_crash-714 : Modified in 10.3.22 main.userstat : MDEV-12904 - SSL errors main.wait_timeout : MDEV-19023 - Lost connection to MySQL server during query +main.warnings_debug : Modified in 10.3.22 +main.win : Modified in 10.3.22 main.xa : MDEV-11769 - lock wait timeout #----------------------------------------------------------------------- @@ -165,35 +174,42 @@ archive-test_sql_discovery.discover : MDEV-16817 - Table marked as crashed #----------------------------------------------------------------------- -binlog.binlog_commit_wait : MDEV-10150 - Mismatch -binlog.binlog_killed : MDEV-12925 - Wrong result -binlog.binlog_max_extension : MDEV-19762 - Crash on shutdown -binlog.binlog_mysqlbinlog_row : Modified in 10.3.19 -binlog.binlog_mysqlbinlog_row_innodb : MDEV-20530 - Binary files differ -binlog.binlog_mysqlbinlog_row_myisam : MDEV-20530 - Binary files differ -binlog.binlog_row_drop_tmp_tbl : Include file modified in 10.1.42 -binlog.binlog_stm_drop_tmp_tbl : Include file modified in 10.1.42 -binlog.binlog_xa_recover : MDEV-8517 - Extra checkpoint -binlog.flashback-largebinlog : MDEV-19764 - Out of memory -binlog.load_data_stm_view : MDEV-16948 - Wrong result -binlog.read_only : Added in 10.3.19 -binlog.read_only_statement : Added in 10.3.19 +binlog.binlog_commit_wait : MDEV-10150 - Mismatch +binlog.binlog_index : Include file modified in 10.2.31 +binlog.binlog_invalid_read_in_rotate : Added in 10.3.22 +binlog.binlog_ioerr : Include file modified in 10.2.31 +binlog.binlog_killed : MDEV-12925 - Wrong result +binlog.binlog_max_extension : MDEV-19762 - Crash on shutdown +binlog.binlog_mysqlbinlog_row_innodb : MDEV-20530 - Binary files differ +binlog.binlog_mysqlbinlog_row_myisam : MDEV-20530 - Binary files differ +binlog.binlog_parallel_replication_marks_row : Include file modified in 10.3.22 +binlog.binlog_parallel_replication_marks_stm_mix : Include file modified in 10.3.22 +binlog.binlog_show_binlog_event_random_pos : Added in 10.3.22 +binlog.binlog_write_error : Include file Include file modified in 10.2.31 +binlog.binlog_xa_recover : MDEV-8517 - Extra checkpoint +binlog.flashback-largebinlog : MDEV-19764 - Out of memory +binlog.load_data_stm_view : MDEV-16948 - Wrong result #----------------------------------------------------------------------- -binlog_encryption.binlog_mdev_20574_old_binlog : Added in 10.3.19 +binlog_encryption.binlog_index : Include file modified in 10.3.22 +binlog_encryption.binlog_ioerr : Include file modified in 10.3.22 +binlog_encryption.binlog_write_error : Include file Include file modified in 10.3.22 binlog_encryption.binlog_xa_recover : MDEV-12908 - Extra checkpoint binlog_encryption.encrypted_master : MDEV-14201 - Extra warnings binlog_encryption.encrypted_master_switch_to_unencrypted : MDEV-14190 - Can't init tc log binlog_encryption.encrypted_slave : MDEV-18135 - SSL error: key too small binlog_encryption.encryption_combo : MDEV-14199 - Table is marked as crashed -binlog_encryption.mysqlbinlog : Modified in 10.3.19 -binlog_encryption.rpl_binlog_errors : MDEV-12742 - Crash; include file modified in 10.3.19 -binlog_encryption.rpl_checksum : MDEV-16951 - Wrong result +binlog_encryption.multisource : MDEV-21289 - Wrong error code +binlog_encryption.rpl_binlog_errors : MDEV-12742 - Crash +binlog_encryption.rpl_checksum : MDEV-16951 - Wrong result; include file modified in 10.3.22 +binlog_encryption.rpl_corruption : Include file modified in 10.3.22 binlog_encryption.rpl_gtid_basic : MDEV-16947 - Server failed to start +binlog_encryption.rpl_incident : Include file modified in 10.3.22 +binlog_encryption.rpl_init_slave_errors : Include file modified in 10.3.22 binlog_encryption.rpl_loadfile : MDEV-16645 - Timeout in include -binlog_encryption.rpl_parallel : MDEV-10653 - Timeout in include -binlog_encryption.rpl_parallel_ignored_errors : Added in 10.3.19 +binlog_encryption.rpl_parallel : MDEV-10653 - Timeout in include; include file modified in 10.3.22 +binlog_encryption.rpl_parallel_ignored_errors : Include file modified in 10.3.22 binlog_encryption.rpl_relayrotate : MDEV-15194 - Timeout binlog_encryption.rpl_semi_sync : MDEV-11673 - Valgrind binlog_encryption.rpl_skip_replication : MDEV-13571 - Unexpected warning; MDEV-20573 - Wrong result @@ -204,25 +220,30 @@ binlog_encryption.rpl_typeconv : MDEV-14362 - Lost con #----------------------------------------------------------------------- +compat/oracle.sp-goto : Modified in 10.3.22 +compat/oracle.sp-goto-debug : Added in 10.3.22 + +#----------------------------------------------------------------------- + connect.alter : MDEV-18135 - SSL error: key too small connect.drop-open-error : MDEV-18135 - SSL error: key too small -connect.grant : Modified in 10.3.19 -connect.grant2 : Modified in 10.3.19 -connect.ini_grant : Modified in 10.3.19 +connect.grant : Modified in 10.1.44 +connect.grant2 : Modified in 10.1.44 +connect.ini_grant : Modified in 10.1.44 connect.json : MDEV-18135 - SSL error: key too small -connect.mysql_grant : Modified in 10.3.19 +connect.mysql_grant : Modified in 10.1.44 connect.part_file : MDEV-18135 - SSL error: key too small connect.part_table : MDEV-18135 - SSL error: key too small connect.pivot : MDEV-14803 - Failed to discover table connect.secure_file_priv : MDEV-18135 - SSL error: key too small connect.vcol : MDEV-12374 - Fails on Windows -connect.xml2_grant : Include file modified in 10.3.19 -connect.xml_grant : Include file modified in 10.3.19 +connect.xml2_grant : Include file modified in 10.1.44 +connect.xml_grant : Include file modified in 10.1.44 connect.zip : MDEV-13884 - Wrong result #----------------------------------------------------------------------- -encryption.create_or_replace : MDEV-12694 - Timeout; MDEV-16115 - Trying to access tablespace +encryption.create_or_replace : MDEV-16115 - Trying to access tablespace encryption.debug_key_management : MDEV-13841 - Timeout encryption.encrypt_and_grep : MDEV-13765 - Wrong result encryption.innochecksum : MDEV-13644 - Assertion failure @@ -236,7 +257,7 @@ encryption.innodb-missing-key : MDEV-14728 - SSL error encryption.innodb-page_encryption : MDEV-10641 - mutex problem encryption.innodb-page_encryption_log_encryption : MDEV-17339 - Crash on restart encryption.innodb-read-only : MDEV-16563 - Crash on startup -encryption.innodb-redo-badkey : Re-enabled in 10.3.19; modified in 10.3.19 +encryption.innodb-redo-badkey : MDEV-12898 - Server hang on startup encryption.innodb-remove-encryption : MDEV-16493 - Timeout in wait condition encryption.innodb-spatial-index : MDEV-13746 - Wrong result encryption.innodb_encrypt_key_rotation_age : MDEV-19763 - Timeout @@ -247,6 +268,7 @@ encryption.innodb_encryption : MDEV-15675 - Timeout encryption.innodb_encryption-page-compression : MDEV-12630 - crash or assertion failure encryption.innodb_encryption_discard_import : MDEV-16116 - Wrong result encryption.innodb_encryption_filekeys : MDEV-15673 - Timeout +encryption.innodb_encryption_is : MDEV-12898 - Server hang on startup encryption.innodb_encryption_row_compressed : MDEV-16113 - Crash encryption.innodb_encryption_tables : MDEV-17339 - Crash on restart encryption.innodb_first_page : MDEV-10689 - Crash @@ -275,10 +297,10 @@ federated.federated_innodb : MDEV-10617 - Wrong checksum federated.federated_partition : MDEV-10417 - Fails on Mips federated.federated_transactions : MDEV-10617 - Wrong checksum federated.federatedx : MDEV-10617 - Wrong checksum; modified in 10.3.21 -federated.federatedx_versioning : Modified in 10.3.19 #----------------------------------------------------------------------- +funcs_1.is_check_constraints : Modified in 10.3.22 funcs_1.memory_views : MDEV-11773 - timeout funcs_1.processlist_val_no_prot : MDEV-11223 - Wrong result funcs_1.processlist_val_ps : MDEV-12175 - Wrong plan @@ -305,33 +327,30 @@ galera_3nodes.* : Suite is not stable yet gcol.gcol_rollback : MDEV-16954 - Unknown storage engine 'InnoDB' gcol.innodb_virtual_basic : MDEV-16950 - Failing assertion gcol.innodb_virtual_debug : MDEV-19114 - Assertion failure -gcol.innodb_virtual_debug_purge : MDEV-16952 - Wrong result; modified in 10.3.19 +gcol.innodb_virtual_debug_purge : MDEV-16952 - Wrong result; modified in 10.3.22 gcol.innodb_virtual_fk_restart : MDEV-17466 - Assertion failure #----------------------------------------------------------------------- innodb.101_compatibility : MDEV-13891 - Wrong result -innodb.alter_algorithm : Modified in 10.3.19 innodb.alter_copy : MDEV-16181 - Assertion failure innodb.alter_crash : MDEV-16944 - The process cannot access the file innodb.alter_large_dml : MDEV-20148 - Debug sync point wait timed out innodb.autoinc_persist : MDEV-15282 - Assertion failure innodb.binlog_consistent : MDEV-10618 - Server fails to start innodb.blob-crash : MDEV-20481 - Crash during recovery +innodb.blob-update-debug : Modified in 10.3.22 innodb.doublewrite : MDEV-12905 - Server crash innodb.group_commit_crash : MDEV-14191 - InnoDB registration failed innodb.group_commit_crash_no_optimize_thread : MDEV-13830 - Assertion failure innodb.ibuf_not_empty : MDEV-19021 - Wrong result; modified in 10.3.21 -innodb.information_schema_grants : Added in 10.3.19 innodb.innodb-32k-crash : MDEV-20194 - Extra warning; modified in 10.3.21 innodb.innodb-64k-crash : MDEV-13872 - Failure and crash on startup; modified in 10.3.21 innodb.innodb-alter-debug : MDEV-13182 - InnoDB: adjusting FSP_SPACE_FLAGS -innodb.innodb-alter-nullable : Modified in 10.3.19 innodb.innodb-alter-table : MDEV-10619 - Testcase timeout -innodb.innodb-autoinc : Modified in 10.3.19 innodb.innodb-bigblob : MDEV-18655 - ASAN unknown crash innodb.innodb-blob : MDEV-12053 - Client crash -innodb.innodb-change-buffer-recovery : MDEV-19115 - Lost connection to MySQL server during query; modified in 10.3.19 +innodb.innodb-change-buffer-recovery : MDEV-19115 - Lost connection to MySQL server during query innodb.innodb-fk : MDEV-13832 - Assertion failure on shutdown innodb.innodb-get-fk : MDEV-13276 - Server crash innodb.innodb-index-online : MDEV-14809 - Cannot save statistics @@ -341,21 +360,25 @@ innodb.innodb-page_compression_lzma : MDEV-14353 - Wrong result innodb.innodb-page_compression_snappy : MDEV-13644 - Assertion failure innodb.innodb-page_compression_tables : MDEV-13644 - Assertion failure innodb.innodb-page_compression_zip : MDEV-10641 - mutex problem +innodb.innodb-replace-debug : Modified in 10.3.22 +innodb.innodb-stats-initialize-failure : Modified in 10.3.22 innodb.innodb-table-online : MDEV-13894 - Wrong result -innodb.innodb-virtual-columns-debug : Modified in 10.3.19 innodb.innodb-wl5522 : MDEV-13644 - Assertion failure innodb.innodb-wl5522-debug : MDEV-14200 - Wrong errno innodb.innodb_buffer_pool_dump_pct : MDEV-20139 - Timeout in wait_condition.inc innodb.innodb_buffer_pool_resize : MDEV-16964 - Assertion failure innodb.innodb_buffer_pool_resize_with_chunks : MDEV-16964 - Assertion failure +innodb.innodb_bug11754376 : Modified in 10.3.22 innodb.innodb_bug14147491 : MDEV-11808 - Index is corrupt +innodb.innodb_bug30113362 : Added in 10.3.22 innodb.innodb_bug30423 : MDEV-7311 - Wrong result innodb.innodb_bug47167 : MDEV-20524 - Table 'user' is marked as crashed and should be repaired innodb.innodb_bug48024 : MDEV-14352 - Assertion failure +innodb.innodb_bug56947 : Modified in 10.3.22 innodb.innodb_bug59641 : MDEV-13830 - Assertion failure innodb.innodb_bulk_create_index_replication : MDEV-15273 - Slave failed to start +innodb.innodb_corrupt_bit : Modified in 10.3.22 innodb.innodb_defrag_stats_many_tables : MDEV-14198 - Table is full -innodb.innodb_force_recovery : Modified in 10.3.19 innodb.innodb_information_schema : MDEV-8851 - Wrong result innodb.innodb_max_recordsize_32k : MDEV-14801 - Operation failed; modified in 10.3.21 innodb.innodb_max_recordsize_64k : MDEV-15203 - Wrong result; modified in 10.3.21 @@ -363,13 +386,15 @@ innodb.innodb_monitor : MDEV-10939 - Testcase timeout innodb.innodb_mysql : MDEV-19873 - Wrong result innodb.innodb_simulate_comp_failures_small : MDEV-20526 - ASAN use-after-poison innodb.innodb_stats : MDEV-10682 - wrong result -innodb.innodb_stats_persistent : MDEV-17745 - Wrong result; modified in 10.3.19 +innodb.innodb_stats_persistent : MDEV-17745 - Wrong result; MDEV-21567 - Wrong result in execution plan innodb.innodb_stats_persistent_debug : MDEV-14801 - Operation failed -innodb.innodb_sys_semaphore_waits : MDEV-10331 - Semaphore wait +innodb.innodb_sys_semaphore_waits : MDEV-10331 - Semaphore wait; modified in 10.3.22 +innodb.innodb_wl6326 : Added in 10.3.22 +innodb.innodb_wl6326_big : Added in 10.3.22 innodb.innodb_zip_innochecksum2 : MDEV-13882 - Warning: difficult to find free blocks innodb.instant_alter : Modified in 10.3.21 -innodb.instant_alter_bugs : Modified in 10.3.19 innodb.instant_alter_debug : Modified in 10.3.21 +innodb.leaf_page_corrupted_during_recovery : MDEV-21572 - Server crash innodb.log_corruption : MDEV-13251 - Wrong result innodb.log_data_file_size : MDEV-14204 - Server failed to start innodb.log_file_name : MDEV-14193 - Exception @@ -380,14 +405,13 @@ innodb.purge_secondary_mdev-16222 : MDEV-20528 - Debug sync point wai innodb.purge_thread_shutdown : MDEV-13792 - Wrong result innodb.read_only_recovery : MDEV-13886 - Server crash innodb.recovery_shutdown : MDEV-15671 - Checksum mismatch in datafile +innodb.redo_log_during_checkpoint : Modified in 10.3.22 innodb.row_format_redundant : MDEV-15192 - Trying to access missing tablespace -innodb.row_size_error_log_warnings_3 : Added in 10.3.21 -innodb.stat_tables : Added in 10.3.19 +innodb.row_size_error_log_warnings_3 : Modified in 10.3.22 innodb.table_definition_cache_debug : MDEV-14206 - Extra warning innodb.table_flags : MDEV-13572 - Wrong result; MDEV-19374 - Server failed to start innodb.temporary_table : MDEV-13265 - Wrong result -innodb.temporary_table_optimization : Modified in 10.3.19 -innodb.trx_id_future : Modified in 10.1.42 +innodb.truncate_inject : Modified in 10.2.31 innodb.undo_log : Modified in 10.3.21 innodb.undo_truncate : MDEV-17340 - Server hung; MDEV-20840 - Sporadic timeout innodb.undo_truncate_recover : MDEV-17679 - Server has gone away @@ -396,22 +420,25 @@ innodb.xa_recovery : MDEV-15279 - mysqld got exception #----------------------------------------------------------------------- -innodb_fts.concurrent_insert : MDEV-21223 - Server crash; modified in 10.3.19 -innodb_fts.crash_recovery : Modified in 10.3.19 +innodb_fts.concurrent_insert : Modified in 10.3.22 innodb_fts.innodb_fts_misc : Modified in 10.3.21 innodb_fts.innodb_fts_misc_debug : MDEV-14156 - Unexpected warning innodb_fts.innodb_fts_plugin : MDEV-13888 - Errors in server log innodb_fts.innodb_fts_stopword_charset : MDEV-13259 - Table crashed innodb_fts.sync : MDEV-14808 - Wrong result -innodb_fts.sync_ddl : MDEV-21223 - Server crash; MDEV-18654 - Assertion failure +innodb_fts.sync_block : Modified in 10.3.22 +innodb_fts.sync_ddl : MDEV-18654 - Assertion failure #----------------------------------------------------------------------- innodb_gis.alter_spatial_index : MDEV-13745 - Server crash innodb_gis.rtree_compress2 : MDEV-16269 - Wrong result innodb_gis.rtree_concurrent_srch : MDEV-15284 - Wrong result with embedded +innodb_gis.rtree_debug : Modified in 10.3.22 innodb_gis.rtree_purge : MDEV-15275 - Timeout innodb_gis.rtree_recovery : MDEV-15274 - Error on check +innodb_gis.rtree_rollback1 : Modified in 10.3.22 +innodb_gis.rtree_rollback2 : Modified in 10.3.22 innodb_gis.rtree_split : MDEV-14208 - Too many arguments innodb_gis.rtree_undo : MDEV-14456 - Timeout in include file innodb_gis.types : MDEV-15679 - Table is marked as crashed @@ -419,7 +446,7 @@ innodb_gis.types : MDEV-15679 - Table is marked as crashed #----------------------------------------------------------------------- innodb_zip.bug53591 : Modified in 10.3.21 -innodb_zip.cmp_per_index : MDEV-14490 - Table is marked as crashed +innodb_zip.cmp_per_index : MDEV-14490 - Table is marked as crashed; modified in 10.3.22 innodb_zip.innochecksum_3 : MDEV-13279 - Extra warnings innodb_zip.prefix_index_liftedlimit : Modified in 10.3.21 innodb_zip.wl5522_debug_zip : MDEV-11600 - Operating system error number 2 @@ -429,27 +456,25 @@ innodb_zip.wl6501_scale_1 : MDEV-13254 - Timeout, MDEV-14104 - Error 1 #----------------------------------------------------------------------- -maria.insert_select : MDEV-12757 - Timeout -maria.insert_select-7314 : MDEV-16492 - Timeout -maria.lock : Modified in 10.3.19 -maria.maria : MDEV-14430 - Extra warning -maria.maria-no-logging : MDEV-20196 - Crash on shutdown or server can't start +maria.aria_pack_mdev14183 : Added in 10.3.22 +maria.insert_select : MDEV-12757 - Timeout +maria.insert_select-7314 : MDEV-16492 - Timeout +maria.maria : MDEV-14430 - Extra warning +maria.maria-no-logging : MDEV-20196 - Crash on shutdown or server can't start #----------------------------------------------------------------------- mariabackup.absolute_ibdata_paths : MDEV-16571 - Wrong result mariabackup.apply-log-only : MDEV-20135 - Timeout mariabackup.data_directory : MDEV-15270 - Error on exec -mariabackup.extra_lsndir_stream : Added in 10.3.19 mariabackup.full_backup : MDEV-16571 - Wrong result mariabackup.huge_lsn : MDEV-15662 - Sequence number is in the future; MDEV-18569 - Table doesn't exist mariabackup.incremental_backup : MDEV-21222 - Memory allocation failure; modified in 10.3.21 mariabackup.incremental_encrypted : MDEV-15667 - timeout mariabackup.incremental_rocksdb : MDEV-20954 - Cannot access the file +mariabackup.innodb_redo_log_overwrite : Added in 10.3.22 mariabackup.log_checksum_mismatch : MDEV-16571 - Wrong result mariabackup.mdev-14447 : MDEV-15201 - Timeout -mariabackup.mdev-18438 : Added in 10.3.19 -mariabackup.partial : Modified in 10.3.19 mariabackup.partial_exclude : MDEV-15270 - Error on exec mariabackup.unencrypted_page_compressed : MDEV-18653 - Wrong error mariabackup.xb_compressed_encrypted : MDEV-14812 - Segmentation fault @@ -476,8 +501,9 @@ mroonga/wrapper.repair_table_no_index_file : MDEV-14807 - Wrong error message #----------------------------------------------------------------------- multi_source.gtid : MDEV-14202 - Crash -multi_source.info_logs : MDEV-12629 - Valgrind, MDEV-10042 - wrong result +multi_source.info_logs : MDEV-12629 - Valgrind, MDEV-10042 - wrong result; MDEV-21290 - Wrong result multi_source.load_data : MDEV-21235 - Slave crash +multi_source.mdev-8874 : MDEV-19415 - AddressSanitizer: heap-use-after-free multi_source.mdev-9544 : MDEV-19415 - AddressSanitizer: heap-use-after-free multi_source.multisource : MDEV-10417 - Fails on Mips multi_source.reset_slave : MDEV-10690 - Wrong result @@ -486,19 +512,28 @@ multi_source.status_vars : MDEV-4632 - failed while waiting for Slave_received_h #----------------------------------------------------------------------- +optimizer_unfixed_bugs.bug36981 : Modified in 10.3.22 +optimizer_unfixed_bugs.bug40992 : Modified in 10.3.22 +optimizer_unfixed_bugs.bug41996 : Modified in 10.3.22 +optimizer_unfixed_bugs.bug42991 : Modified in 10.3.22 +optimizer_unfixed_bugs.bug43249 : Modified in 10.3.22 +optimizer_unfixed_bugs.bug43360 : Modified in 10.3.22 +optimizer_unfixed_bugs.bug43448 : Modified in 10.3.22 +optimizer_unfixed_bugs.bug43617 : Modified in 10.3.22 + +#----------------------------------------------------------------------- + parts.partition_alter1_1_2_innodb : MDEV-18655 - ASAN unknown crash parts.partition_alter1_1_innodb : MDEV-18655 - ASAN unknown crash parts.partition_alter1_2_innodb : MDEV-18655 - ASAN unknown crash parts.partition_alter2_2_maria : MDEV-14364 - Lost connection to MySQL server during query parts.partition_auto_increment_archive : MDEV-16491 - Marked as crashed and should be repaired parts.partition_auto_increment_maria : MDEV-14430 - Extra warning -parts.partition_debug : Modified in 10.3.19 -parts.partition_debug_innodb : MDEV-10891 - Can't create UNIX socket; MDEV-15095 - Table doesn't exist; modified in 10.3.19 -parts.partition_debug_myisam : Modified in 10.3.19 +parts.partition_debug : Modified in 10.3.22 +parts.partition_debug_innodb : MDEV-10891 - Can't create UNIX socket; MDEV-15095 - Table doesn't exist; modified in 10.3.22 parts.partition_exch_qa_10 : MDEV-11765 - wrong result parts.partition_innodb_status_file : MDEV-12901 - Valgrind parts.partition_special_innodb : MDEV-16942 - Timeout -parts.reorganize_partition_innodb : Added in 10.3.19 #----------------------------------------------------------------------- @@ -506,27 +541,59 @@ percona.* : MDEV-10997 - Not maintained #----------------------------------------------------------------------- -perfschema.connect_attrs : MDEV-17283 - Wrong result -perfschema.dml_file_instances : MDEV-15179 - Wrong result -perfschema.dml_threads : MDEV-17746 - Wrong errno -perfschema.func_file_io : MDEV-5708 - fails for s390x -perfschema.func_mutex : MDEV-5708 - fails for s390x -perfschema.hostcache_ipv4_addrinfo_again_allow : MDEV-12759 - Crash -perfschema.hostcache_ipv6_addrinfo_again_allow : MDEV-12752 - Crash -perfschema.hostcache_ipv6_addrinfo_bad_allow : MDEV-13260 - Crash -perfschema.hostcache_ipv6_ssl : MDEV-10696 - Crash -perfschema.misc : Modified in 10.3.21 -perfschema.privilege_table_io : MDEV-13184 - Extra lines -perfschema.relaylog : MDEV-18134 - Wrong result -perfschema.rpl_gtid_func : MDEV-16897 - Wrong result -perfschema.socket_instances_func : MDEV-20140 - Wrong result -perfschema.socket_summary_by_event_name_func : MDEV-10622 - Wrong result -perfschema.socket_summary_by_instance_func : MDEV-19413 - Wrong result -perfschema.stage_mdl_global : MDEV-11803 - wrong result on slow builders -perfschema.stage_mdl_procedure : MDEV-11545 - Missing row -perfschema.stage_mdl_table : MDEV-12638 - Wrong result -perfschema.start_server_low_digest : MDEV-21221 - Wrong result -perfschema.threads_mysql : MDEV-10677 - Wrong result +perfschema.connect_attrs : MDEV-17283 - Wrong result +perfschema.dml_file_instances : MDEV-15179 - Wrong result +perfschema.dml_threads : MDEV-17746 - Wrong errno +perfschema.func_file_io : MDEV-5708 - fails for s390x +perfschema.func_mutex : MDEV-5708 - fails for s390x +perfschema.hostcache_ipv4_addrinfo_again_allow : MDEV-12759 - Crash; modified in 10.3.22 +perfschema.hostcache_ipv4_addrinfo_again_deny : Modified in 10.3.22 +perfschema.hostcache_ipv4_addrinfo_bad_allow : Modified in 10.3.22 +perfschema.hostcache_ipv4_addrinfo_bad_deny : Modified in 10.3.22 +perfschema.hostcache_ipv4_addrinfo_good_allow : Modified in 10.3.22 +perfschema.hostcache_ipv4_addrinfo_good_deny : Modified in 10.3.22 +perfschema.hostcache_ipv4_addrinfo_noname_allow : Modified in 10.3.22 +perfschema.hostcache_ipv4_addrinfo_noname_deny : Modified in 10.3.22 +perfschema.hostcache_ipv4_auth_plugin : Modified in 10.3.22 +perfschema.hostcache_ipv4_blocked : Modified in 10.3.22 +perfschema.hostcache_ipv4_format : Modified in 10.3.22 +perfschema.hostcache_ipv4_max_con : Modified in 10.3.22 +perfschema.hostcache_ipv4_nameinfo_again_allow : Modified in 10.3.22 +perfschema.hostcache_ipv4_nameinfo_again_deny : Modified in 10.3.22 +perfschema.hostcache_ipv4_nameinfo_noname_allow : Modified in 10.3.22 +perfschema.hostcache_ipv4_nameinfo_noname_deny : Modified in 10.3.22 +perfschema.hostcache_ipv4_passwd : Modified in 10.3.22 +perfschema.hostcache_ipv4_ssl : Modified in 10.3.22 +perfschema.hostcache_ipv6_addrinfo_again_allow : MDEV-12752 - Crash; modified in 10.3.22 +perfschema.hostcache_ipv6_addrinfo_again_deny : Modified in 10.3.22 +perfschema.hostcache_ipv6_addrinfo_bad_allow : MDEV-13260 - Crash; modified in 10.3.22 +perfschema.hostcache_ipv6_addrinfo_bad_deny : Modified in 10.3.22 +perfschema.hostcache_ipv6_addrinfo_good_allow : Modified in 10.3.22 +perfschema.hostcache_ipv6_addrinfo_good_deny : Modified in 10.3.22 +perfschema.hostcache_ipv6_addrinfo_noname_allow : Modified in 10.3.22 +perfschema.hostcache_ipv6_addrinfo_noname_deny : Modified in 10.3.22 +perfschema.hostcache_ipv6_auth_plugin : Modified in 10.3.22 +perfschema.hostcache_ipv6_blocked : Modified in 10.3.22 +perfschema.hostcache_ipv6_max_con : Modified in 10.3.22 +perfschema.hostcache_ipv6_nameinfo_again_allow : Modified in 10.3.22 +perfschema.hostcache_ipv6_nameinfo_again_deny : Modified in 10.3.22 +perfschema.hostcache_ipv6_nameinfo_noname_allow : Modified in 10.3.22 +perfschema.hostcache_ipv6_nameinfo_noname_deny : Modified in 10.3.22 +perfschema.hostcache_ipv6_passwd : Modified in 10.3.22 +perfschema.hostcache_ipv6_ssl : MDEV-10696 - Crash; modified in 10.3.22 +perfschema.hostcache_peer_addr : MDEV-21462 - Test condition timeout; modified in 10.3.22 +perfschema.misc : Modified in 10.3.21 +perfschema.privilege_table_io : MDEV-13184 - Extra lines +perfschema.relaylog : MDEV-18134 - Wrong result +perfschema.rpl_gtid_func : MDEV-16897 - Wrong result +perfschema.socket_instances_func : MDEV-20140 - Wrong result +perfschema.socket_summary_by_event_name_func : MDEV-10622 - Wrong result +perfschema.socket_summary_by_instance_func : MDEV-19413 - Wrong result +perfschema.stage_mdl_global : MDEV-11803 - wrong result on slow builders +perfschema.stage_mdl_procedure : MDEV-11545 - Missing row +perfschema.stage_mdl_table : MDEV-12638 - Wrong result +perfschema.start_server_low_digest : MDEV-21221 - Wrong result +perfschema.threads_mysql : MDEV-10677 - Wrong result #----------------------------------------------------------------------- @@ -534,7 +601,6 @@ perfschema_stress.* : MDEV-10996 - Not maintained #----------------------------------------------------------------------- -plugins.feedback_plugin_load : Modified in 10.3.19 plugins.feedback_plugin_send : MDEV-7932, MDEV-11118 - Connection problems and such plugins.processlist : MDEV-16574 - Wrong result plugins.server_audit : MDEV-14295 - Wrong result; modified in 10.3.21 @@ -553,7 +619,6 @@ rocksdb.drop_index_inplace : MDEV-14162 - Crash on shutdown rocksdb.drop_table : MDEV-14308 - Timeout rocksdb.drop_table3 : MDEV-16949 - Server crash rocksdb.dup_key_update : MDEV-17284 - Wrong result -rocksdb.index_merge_rocksdb2 : Include file modified in 10.3.19 rocksdb.locking_issues : MDEV-14464 - Wrong result rocksdb.mariadb_ignore_dirs : MDEV-16639 - Server crash rocksdb.mariadb_port_fixes : MDEV-16387 - Wrong plan @@ -582,120 +647,120 @@ roles.create_and_grant_role : MDEV-11772 - wrong result #----------------------------------------------------------------------- -rpl.circular_serverid0 : MDEV-19372 - ASAN heap-use-after-free -rpl.create_or_replace2 : MDEV-19412 - Lost connection to MySQL server -rpl.create_or_replace_mix : MDEV-20523 - Wrong result -rpl.create_or_replace_statement : MDEV-20523 - Wrong result -rpl.create_select : MDEV-14121 - Assertion failure -rpl.last_insert_id : MDEV-10625 - warnings in error log -rpl.mdev_17588 : Modified in 10.1.42 -rpl.rpl_000011 : Modified in 10.3.19 -rpl.rpl_auto_increment : MDEV-10417 - Fails on Mips -rpl.rpl_auto_increment_bug45679 : MDEV-10417 - Fails on Mips -rpl.rpl_auto_increment_update_failure : MDEV-10625 - warnings in error log -rpl.rpl_binlog_errors : MDEV-12742 - Crash -rpl.rpl_binlog_index : MDEV-9501 - Failed registering on master -rpl.rpl_colSize : MDEV-16112 - Server crash -rpl.rpl_corruption : MDEV-20527 - Slave stopped with wrong error code -rpl.rpl_create_or_replace_fail : Added in 10.1.42 -rpl.rpl_ctype_latin1 : MDEV-14813 - Wrong result on Mac -rpl.rpl_ddl : MDEV-10417 - Fails on Mips -rpl.rpl_domain_id_filter_io_crash : MDEV-12729 - Timeout in include file, MDEV-13677 - Server crash -rpl.rpl_domain_id_filter_master_crash : MDEV-19043 - Table marked as crashed -rpl.rpl_domain_id_filter_restart : MDEV-10684 - Wrong result; MDEV-19043 - Table marked as crashed -rpl.rpl_drop_db_fail : MDEV-16898 - Slave fails to start -rpl.rpl_extra_col_master_innodb : MDEV-16570 - Extra warning -rpl.rpl_extra_col_master_myisam : MDEV-14203 - Extra warning -rpl.rpl_get_lock : MDEV-19368 - mysqltest failed but provided no output -rpl.rpl_gtid_basic : MDEV-10681 - server startup problem -rpl.rpl_gtid_crash : MDEV-9501 - Failed registering on master, MDEV-13643 - Lost connection -rpl.rpl_gtid_delete_domain : MDEV-14463 - Timeout -rpl.rpl_gtid_errorhandling : MDEV-13261 - Crash -rpl.rpl_gtid_mdev9033 : MDEV-10680 - warnings -rpl.rpl_gtid_reconnect : MDEV-14497 - Crash -rpl.rpl_gtid_startpos : MDEV-20141 - mysqltest failed but provided no output -rpl.rpl_gtid_stop_start : MDEV-10629 - Crash on shutdown, MDEV-12629 - Valgrind warnings -rpl.rpl_gtid_until : MDEV-10625 - warnings in error log -rpl.rpl_innodb_bug30888 : MDEV-10417 - Fails on Mips -rpl.rpl_insert : MDEV-9329 - Fails on Ubuntu/s390x -rpl.rpl_insert_delayed : MDEV-9329 - Fails on Ubuntu/s390x -rpl.rpl_insert_id : MDEV-15197 - Wrong result -rpl.rpl_insert_id_pk : MDEV-16567 - Assertion failure -rpl.rpl_insert_ignore : MDEV-14365 - Lost connection to MySQL server during query -rpl.rpl_invoked_features : MDEV-10417 - Fails on Mips -rpl.rpl_ip_mix : Modified in 10.3.19 -rpl.rpl_ip_mix2 : Modified in 10.3.19 -rpl.rpl_ipv4_as_ipv6 : MDEV-20147 - Incorrect checksum for freed object -rpl.rpl_known_bugs_detection : Modified in 10.1.42 -rpl.rpl_mariadb_slave_capability : MDEV-11018 - Extra lines in binlog -rpl.rpl_mdev12179 : MDEV-19043 - Table marked as crashed -rpl.rpl_mdev6020 : MDEV-15272 - Server crash -rpl.rpl_mdev_17614 : Added in 10.1.42 -rpl.rpl_mixed_mixing_engines : MDEV-14489 - Sync slave with master failed -rpl.rpl_non_direct_mixed_mixing_engines : MDEV-14489 - Sync slave with master failed -rpl.rpl_non_direct_row_mixing_engines : MDEV-16561 - Timeout in master_pos_wait -rpl.rpl_non_direct_stm_mixing_engines : MDEV-14489 - Failed sync_slave_with_master -rpl.rpl_parallel : MDEV-10653 - Timeouts -rpl.rpl_parallel2 : MDEV-17390 - Operation cannot be performed -rpl.rpl_parallel_conflicts : MDEV-15272 - Server crash -rpl.rpl_parallel_ignored_errors : Added in 10.3.19 -rpl.rpl_parallel_mdev6589 : MDEV-12979 - Assertion failure -rpl.rpl_parallel_multilevel2 : MDEV-14723 - Timeout -rpl.rpl_parallel_optimistic : MDEV-15278 - Failed to sync with master -rpl.rpl_parallel_optimistic_nobinlog : MDEV-15278 - Failed to sync with master -rpl.rpl_parallel_retry : MDEV-11119 - Crash; MDEV-17109 - Timeout -rpl.rpl_parallel_temptable : MDEV-10356 - Crash; MDEV-19076 - Wrong result -rpl.rpl_partition_innodb : MDEV-10417 - Fails on Mips -rpl.rpl_password_boundaries : MDEV-11534 - Slave IO warnings -rpl.rpl_read_only2 : Added in 10.3.19 -rpl.rpl_rotate_logs : Modified in 10.3.19 -rpl.rpl_row_001 : MDEV-16653 - MTR's internal check fails -rpl.rpl_row_basic_11bugs : MDEV-12171 - Server failed to start -rpl.rpl_row_basic_2myisam : MDEV-13875 - command "diff_files" failed -rpl.rpl_row_drop_create_temp_table : MDEV-14487 - Wrong result -rpl.rpl_row_end_of_statement_loss : MDEV-21237 - Server crash -rpl.rpl_row_find_row_debug : Modified in 10.3.19 -rpl.rpl_row_img_blobs : MDEV-13875 - command "diff_files" failed -rpl.rpl_row_img_eng_min : MDEV-13875 - diff_files failed -rpl.rpl_row_img_eng_noblob : MDEV-13875 - command "diff_files" failed -rpl.rpl_row_index_choice : MDEV-15196 - Slave crash -rpl.rpl_row_sp001 : MDEV-9329 - Fails on Ubuntu/s390x -rpl.rpl_row_until : MDEV-14052 - Master will not send events with checksum -rpl.rpl_semi_sync : MDEV-11220 - Wrong result -rpl.rpl_semi_sync_after_sync : MDEV-14366 - Wrong result -rpl.rpl_semi_sync_after_sync_row : MDEV-21031 - Wrong result; MDEV-14366 - Wrong result -rpl.rpl_semi_sync_event_after_sync : MDEV-11806 - warnings -rpl.rpl_semi_sync_gtid_reconnect : Added in 10.3.21 -rpl.rpl_semi_sync_skip_repl : MDEV-21223 - Server crash -rpl.rpl_semi_sync_slave_reply_fail : Added in 10.3.19 -rpl.rpl_semi_sync_uninstall_plugin : MDEV-7140 - Assorted failures -rpl.rpl_semi_sync_wait_point : MDEV-11807 - timeout in wait condition -rpl.rpl_semisync_ali_issues : MDEV-16272 - Wrong result -rpl.rpl_set_statement_default_master : MDEV-13258 - Extra warning -rpl.rpl_show_slave_hosts : MDEV-10681 - Crash -rpl.rpl_skip_error : Modified in 10.3.19 -rpl.rpl_skip_replication : MDEV-13258 - Extra warning -rpl.rpl_slave_grp_exec : MDEV-10514 - Deadlock -rpl.rpl_slave_load_tmpdir_not_exist : MDEV-14203 - Extra warning -rpl.rpl_slow_query_log : MDEV-13250 - Test abort -rpl.rpl_sp_effects : MDEV-13249 - Crash -rpl.rpl_start_stop_slave : MDEV-13567 - Sync slave timeout -rpl.rpl_stm_mixing_engines : MDEV-14489 - Sync slave with master failed -rpl.rpl_stm_multi_query : MDEV-9501 - Failed registering on master -rpl.rpl_stm_relay_ign_space : MDEV-14360 - Test assertion -rpl.rpl_stm_stop_middle_group : MDEV-13791 - Server crash -rpl.rpl_sync : MDEV-13830 - Assertion failure -rpl.rpl_sync_with_innodb_thd_conc : Added in 10.1.42 -rpl.rpl_temporal_mysql56_to_mariadb53 : MDEV-9501 - Failed registering on master -rpl.rpl_temporary_error2 : MDEV-10634 - Wrong number of retries -rpl.rpl_test_framework : MDEV-19368 - mysqltest failed but provided no output -rpl.rpl_trigger : MDEV-18055 - Wrong result -rpl.rpl_truncate_3innodb : MDEV-19454 - Syntax error -rpl.rpl_unsafe_statements : Modified in 10.1.42 -rpl.rpl_user_variables : MDEV-20522 - Wrong result -rpl.rpl_variables : MDEV-20150 - Server crash -rpl.sec_behind_master-5114 : MDEV-13878 - Wrong result -rpl.show_status_stop_slave_race-7126 : MDEV-17438 - Timeout +rpl.circular_serverid0 : MDEV-19372 - ASAN heap-use-after-free; modified in 10.3.22 +rpl.create_or_replace2 : MDEV-19412 - Lost connection to MySQL server +rpl.create_or_replace_mix : MDEV-20523 - Wrong result +rpl.create_or_replace_statement : MDEV-20523 - Wrong result +rpl.create_select : MDEV-14121 - Assertion failure +rpl.kill_race_condition : Modified in 10.3.22 +rpl.last_insert_id : MDEV-10625 - warnings in error log +rpl.rpl_auto_increment : MDEV-10417 - Fails on Mips +rpl.rpl_auto_increment_bug45679 : MDEV-10417 - Fails on Mips +rpl.rpl_auto_increment_update_failure : MDEV-10625 - warnings in error log +rpl.rpl_binlog_errors : MDEV-12742 - Crash +rpl.rpl_binlog_index : MDEV-9501 - Failed registering on master +rpl.rpl_binlog_rollback_cleanup : Added in 10.3.22 +rpl.rpl_bug33931 : Modified in 10.3.22 +rpl.rpl_bug41902 : Modified in 10.3.22 +rpl.rpl_checksum : Include file modified in 10.2.31 +rpl.rpl_colSize : MDEV-16112 - Server crash +rpl.rpl_corruption : MDEV-20527 - Slave stopped with wrong error code +rpl.rpl_ctype_latin1 : MDEV-14813 - Wrong result on Mac +rpl.rpl_ddl : MDEV-10417 - Fails on Mips +rpl.rpl_domain_id_filter_io_crash : MDEV-12729 - Timeout in include file, MDEV-13677 - Server crash; modified in 10.3.22 +rpl.rpl_domain_id_filter_master_crash : MDEV-19043 - Table marked as crashed; modified in 10.3.22 +rpl.rpl_domain_id_filter_restart : MDEV-10684 - Wrong result; MDEV-19043 - Table marked as crashed +rpl.rpl_drop_db_fail : MDEV-16898 - Slave fails to start +rpl.rpl_extra_col_master_innodb : MDEV-16570 - Extra warning +rpl.rpl_extra_col_master_myisam : MDEV-14203 - Extra warning +rpl.rpl_flushlog_loop : MDEV-21570 - Server crash +rpl.rpl_get_lock : MDEV-19368 - mysqltest failed but provided no output +rpl.rpl_get_master_version_and_clock : Modified in 10.3.22 +rpl.rpl_gtid_basic : MDEV-10681 - server startup problem +rpl.rpl_gtid_crash : MDEV-9501 - Failed registering on master, MDEV-13643 - Lost connection +rpl.rpl_gtid_delete_domain : MDEV-14463 - Timeout +rpl.rpl_gtid_errorhandling : MDEV-13261 - Crash +rpl.rpl_gtid_mdev9033 : MDEV-10680 - warnings +rpl.rpl_gtid_reconnect : MDEV-14497 - Crash; modified in 10.3.22 +rpl.rpl_gtid_startpos : MDEV-20141 - mysqltest failed but provided no output +rpl.rpl_gtid_stop_start : MDEV-10629 - Crash on shutdown, MDEV-12629 - Valgrind warnings +rpl.rpl_gtid_until : MDEV-10625 - warnings in error log +rpl.rpl_heartbeat_debug : Modified in 10.3.22 +rpl.rpl_incident : Include file modified in 10.2.31 +rpl.rpl_init_slave_errors : Include file modified in 10.2.31 +rpl.rpl_innodb_bug30888 : MDEV-10417 - Fails on Mips +rpl.rpl_insert : MDEV-9329 - Fails on Ubuntu/s390x +rpl.rpl_insert_delayed : MDEV-9329 - Fails on Ubuntu/s390x +rpl.rpl_insert_id : MDEV-15197 - Wrong result +rpl.rpl_insert_id_pk : MDEV-16567 - Assertion failure +rpl.rpl_insert_ignore : MDEV-14365 - Lost connection to MySQL server during query +rpl.rpl_invoked_features : MDEV-10417 - Fails on Mips +rpl.rpl_ipv4_as_ipv6 : MDEV-20147 - Incorrect checksum for freed object +rpl.rpl_mariadb_slave_capability : MDEV-11018 - Extra lines in binlog; modified in 10.3.22 +rpl.rpl_mdev12179 : MDEV-19043 - Table marked as crashed +rpl.rpl_mdev6020 : MDEV-15272 - Server crash +rpl.rpl_mixed_mixing_engines : MDEV-21266 - Timeout +rpl.rpl_non_direct_row_mixing_engines : MDEV-16561 - Timeout in master_pos_wait +rpl.rpl_parallel : MDEV-10653 - Timeouts +rpl.rpl_parallel2 : MDEV-17390 - Operation cannot be performed +rpl.rpl_parallel_conflicts : MDEV-15272 - Server crash +rpl.rpl_parallel_mdev6589 : MDEV-12979 - Assertion failure +rpl.rpl_parallel_multilevel2 : MDEV-14723 - Timeout +rpl.rpl_parallel_optimistic : MDEV-15278 - Failed to sync with master; modified in 10.3.22 +rpl.rpl_parallel_optimistic_nobinlog : MDEV-15278 - Failed to sync with master +rpl.rpl_parallel_retry : MDEV-11119 - Crash; MDEV-17109 - Timeout +rpl.rpl_parallel_temptable : MDEV-10356 - Crash; MDEV-19076 - Wrong result +rpl.rpl_partition_innodb : MDEV-10417 - Fails on Mips +rpl.rpl_password_boundaries : MDEV-11534 - Slave IO warnings +rpl.rpl_row_001 : MDEV-16653 - MTR's internal check fails +rpl.rpl_row_basic_11bugs : MDEV-12171 - Server failed to start +rpl.rpl_row_basic_2myisam : MDEV-13875 - command "diff_files" failed +rpl.rpl_row_big_table_id : Modified in 10.3.22 +rpl.rpl_row_corruption : MDEV-21569 - mutex: LOCK_global_system_variables unlocking +rpl.rpl_row_drop_create_temp_table : MDEV-14487 - Wrong result +rpl.rpl_row_end_of_statement_loss : MDEV-21237 - Server crash +rpl.rpl_row_find_row_debug : Modified in 10.3.22 +rpl.rpl_row_img_blobs : MDEV-13875 - command "diff_files" failed +rpl.rpl_row_img_eng_min : MDEV-13875 - diff_files failed +rpl.rpl_row_img_eng_noblob : MDEV-13875 - command "diff_files" failed +rpl.rpl_row_index_choice : MDEV-15196 - Slave crash; modified in 10.3.22 +rpl.rpl_row_sp001 : MDEV-9329 - Fails on Ubuntu/s390x +rpl.rpl_row_until : MDEV-14052 - Master will not send events with checksum +rpl.rpl_semi_sync : MDEV-11220 - Wrong result +rpl.rpl_semi_sync_after_sync : MDEV-14366 - Wrong result +rpl.rpl_semi_sync_after_sync_row : MDEV-21031 - Wrong result; MDEV-14366 - Wrong result +rpl.rpl_semi_sync_event_after_sync : MDEV-11806 - warnings +rpl.rpl_semi_sync_gtid_reconnect : Added in 10.3.21 +rpl.rpl_semi_sync_skip_repl : Modified in 10.3.22 +rpl.rpl_semi_sync_uninstall_plugin : MDEV-7140 - Assorted failures +rpl.rpl_semi_sync_wait_point : MDEV-11807 - timeout in wait condition +rpl.rpl_semisync_ali_issues : MDEV-16272 - Wrong result +rpl.rpl_set_statement_default_master : MDEV-13258 - Extra warning +rpl.rpl_show_slave_hosts : MDEV-10681 - Crash +rpl.rpl_show_slave_running : Modified in 10.3.22 +rpl.rpl_skip_replication : MDEV-13258 - Extra warning +rpl.rpl_slave_grp_exec : MDEV-10514 - Deadlock +rpl.rpl_slave_load_remove_tmpfile : Modified in 10.3.22 +rpl.rpl_slave_load_tmpdir_not_exist : MDEV-14203 - Extra warning +rpl.rpl_slow_query_log : MDEV-13250 - Test abort +rpl.rpl_sp_effects : MDEV-13249 - Crash +rpl.rpl_start_stop_slave : MDEV-13567 - Sync slave timeout +rpl.rpl_stm_lcase_tblnames : Modified in 10.3.22 +rpl.rpl_stm_multi_query : MDEV-9501 - Failed registering on master +rpl.rpl_stm_relay_ign_space : MDEV-14360 - Test assertion +rpl.rpl_stm_stop_middle_group : MDEV-13791 - Server crash; include file modified in 10.3.22 +rpl.rpl_stop_slave : Modified in 10.3.22 +rpl.rpl_sync : MDEV-13830 - Assertion failure +rpl.rpl_temporal_mysql56_to_mariadb53 : MDEV-9501 - Failed registering on master +rpl.rpl_temporary_error2 : MDEV-10634 - Wrong number of retries +rpl.rpl_test_framework : MDEV-19368 - mysqltest failed but provided no output +rpl.rpl_trigger : MDEV-18055 - Wrong result +rpl.rpl_truncate_3innodb : MDEV-19454 - Syntax error +rpl.rpl_user_variables : MDEV-20522 - Wrong result +rpl.rpl_variables : MDEV-20150 - Server crash +rpl.rpl_view_debug : Modified in 10.3.22 +rpl.sec_behind_master-5114 : MDEV-13878 - Wrong result +rpl.show_status_stop_slave_race-7126 : MDEV-17438 - Timeout #----------------------------------------------------------------------- @@ -709,12 +774,8 @@ rpl/extra/rpl_tests.* : MDEV-10994 - Not maintained #----------------------------------------------------------------------- -sequence.group_by : Modified in 10.3.19 - -#----------------------------------------------------------------------- - -sphinx.* : MDEV-10986 - Tests have not been maintained; suite.pm modified in 10.3.19 -sphinx.sphinx : MDEV-10986 - Sporadic failures; modified in 10.3.19 +sphinx.* : MDEV-10986 - Tests have not been maintained +sphinx.sphinx : MDEV-10986 - Sporadic failures sphinx.union-5539 : MDEV-10986 - Sporadic failures #----------------------------------------------------------------------- @@ -737,16 +798,11 @@ spider/bg.vp_fixes : MDEV-9329 - Fails on Ubuntu/s390x #----------------------------------------------------------------------- -spider/bugfix.select_by_null : Added in 10.3.19 - -#----------------------------------------------------------------------- - spider/handler.* : MDEV-10987, MDEV-10990 - Tests have not been maintained #----------------------------------------------------------------------- sql_sequence.concurrent_create : MDEV-16635 - Server crash -sql_sequence.other : Modified in 10.3.19 sql_sequence.rebuild : Added in 10.3.21 sql_sequence.view : Modified in 10.3.21 @@ -761,17 +817,16 @@ stress.ddl_innodb : MDEV-10635 - Testcase timeout #----------------------------------------------------------------------- sys_vars.autocommit_func2 : MDEV-9329 - Fails on Ubuntu/s390x -sys_vars.delayed_insert_limit_func : Modified in 10.3.19 +sys_vars.debug_dbug_func : Modified in 10.3.22 sys_vars.innodb_buffer_pool_dump_at_shutdown_basic : MDEV-14280 - Unexpected error -sys_vars.innodb_change_buffering_debug_basic : Modified in 10.3.19 +sys_vars.innodb_buffer_pool_size_basic : Modified in 10.3.22 +sys_vars.innodb_checksum_algorithm_basic : MDEV-21568 - Errno: 2000 sys_vars.keep_files_on_create_basic : MDEV-10676 - timeout sys_vars.log_slow_admin_statements_func : MDEV-12235 - Server crash sys_vars.rpl_init_slave_func : MDEV-10149 - Test assertion sys_vars.slow_query_log_func : MDEV-14273 - Wrong result -sys_vars.sysvars_innodb : Modified in 10.2.28 sys_vars.thread_cache_size_func : MDEV-11775 - Wrong result sys_vars.wait_timeout_func : MDEV-12896 - Wrong result -sys_vars.wsrep_provider_basic : MDEV-19457 - Assertion failure #----------------------------------------------------------------------- @@ -817,7 +872,6 @@ tokudb_bugs.xa : MDEV-11804 - Lock wait timeout #----------------------------------------------------------------------- tokudb_parts.partition_alter4_tokudb : MDEV-12640 - Lost connection -tokudb_parts.partition_debug_tokudb : Include file modified in 10.3.19 #----------------------------------------------------------------------- @@ -842,39 +896,31 @@ unit.mf_iocache : MDEV-20952 - ASAN stack-buffer-overflow #----------------------------------------------------------------------- vcol.not_supported : MDEV-10639 - Testcase timeout -vcol.vcol_keys_innodb : MDEV-10639 - Testcase timeout; modified in 10.3.19 +vcol.vcol_keys_innodb : MDEV-10639 - Testcase timeout vcol.vcol_misc : MDEV-16651 - Wrong error message #----------------------------------------------------------------------- -versioning.alter : Modified in 10.3.19 -versioning.auto_increment : Include file modified in 10.3.19 -versioning.commit_id : Include file modified in 10.3.19 -versioning.create : Modified in 10.3.19 -versioning.delete : Modified in 10.3.21 -versioning.delete_history : Include file modified in 10.3.19 -versioning.foreign : Modified in 10.3.19 -versioning.insert : Include file modified in 10.3.19 -versioning.key_type : Combinations added in 10.3.19 -versioning.online : Modified in 10.3.19 -versioning.partition : Modified in 10.3.21 -versioning.partition_innodb : Modified in 10.3.19 -versioning.replace : Modified in 10.3.19 -versioning.select : Modified in 10.3.21 -versioning.select2 : Include file modified in 10.3.19 -versioning.trx_id : Modified in 10.3.19 -versioning.update : MDEV-20955 - Wrong result code; modified in 10.3.21 -versioning.update-big : Modified in 10.3.19 -versioning.view : Modified in 10.3.21 +versioning.delete : Modified in 10.3.21 +versioning.partition : Modified in 10.3.21 +versioning.select : Modified in 10.3.21 +versioning.trx_id : Modified in 10.3.22 +versioning.update : MDEV-20955 - Wrong result code; modified in 10.3.21 +versioning.view : Modified in 10.3.21 #----------------------------------------------------------------------- -wsrep.foreign_key : MDEV-14725 - WSREP has not yet prepared node +wsrep.* : Config file changed in 10.2.31; Config file changed in 10.3.22 +wsrep.alter_table_innodb : Configuration deleted in 10.3.22 +wsrep.binlog_format : Configuration modified in 10.3.22 +wsrep.foreign_key : MDEV-14725 - WSREP has not yet prepared node; re-enabled in 10.3.22 +wsrep.mdev_10186 : Configuration changed in 10.2.31; configuration added in 10.3.22 wsrep.mdev_6832 : MDEV-14195 - Check testcase failed -wsrep.mysql_tzinfo_to_sql_symlink_skip : Added in 10.1.42 -wsrep.pool_of_threads : MDEV-17345 - WSREP has not yet prepared node for application use; configuration modified in 10.3.21 -wsrep.variables : MDEV-14311 - Wrong result; MDEV-17585 - Deadlock; modified in 10.3.19 +wsrep.mysql_tzinfo_to_sql_symlink : Modified in 10.3.22 +wsrep.mysql_tzinfo_to_sql_symlink_skip : Modified in 10.3.22 +wsrep.pool_of_threads : MDEV-17345 - WSREP has not yet prepared node for application use; re-enabled in 10.3.22; configuration modified in 10.3.22 +wsrep.variables : MDEV-17585 - Deadlock; modified in 10.3.22 #----------------------------------------------------------------------- -wsrep_info.plugin : MDEV-13569 - No nodes coming from prim view +wsrep_info.* : Config file changed in 10.2.31; Config file changed in 10.3.22 -- cgit v1.2.1 From a134ec37364bf7f006a73cf8eda212cec6a4f2cc Mon Sep 17 00:00:00 2001 From: Thirunarayanan Balathandayuthapani Date: Tue, 28 Jan 2020 18:00:19 +0530 Subject: MDEV-21550 Assertion `!table->fts->in_queue' failed in fts_optimize_remove_table Problem: ======= The problem is that InnoDB doesn't add the table in fts slots if drop table fails. InnoDB marks the table is in fts slots while processing sync message. So the consecutive alter statement assumes that table is in queue and tries to remove it. But InnoDB can't find the table in fts_slots. Solution: ========= i) Removal of in_queue in fts_t while processing the fts sync message. ii) Add the table to fts_slots when drop table fails. --- mysql-test/suite/innodb_fts/r/misc_debug.result | 9 +++++++++ mysql-test/suite/innodb_fts/t/misc_debug.test | 13 +++++++++++++ 2 files changed, 22 insertions(+) (limited to 'mysql-test') diff --git a/mysql-test/suite/innodb_fts/r/misc_debug.result b/mysql-test/suite/innodb_fts/r/misc_debug.result index 1fcc89b165b..8ef2ac425fc 100644 --- a/mysql-test/suite/innodb_fts/r/misc_debug.result +++ b/mysql-test/suite/innodb_fts/r/misc_debug.result @@ -17,3 +17,12 @@ ALTER TABLE t ADD FULLTEXT INDEX (b(64)); ERROR HY000: Unknown error SET SESSION debug_dbug=@saved_debug_dbug; DROP TABLE t; +CREATE TABLE t1 (pk INT, a VARCHAR(8), PRIMARY KEY(pk), +FULLTEXT KEY(a)) ENGINE=InnoDB; +CREATE TABLE t2 (b INT, FOREIGN KEY(b) REFERENCES t1(pk)) ENGINE=InnoDB; +DROP TABLE t1; +ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails +SET DEBUG_DBUG="+d,fts_instrument_sync"; +INSERT INTO t1 VALUES(1, "mariadb"); +ALTER TABLE t1 FORCE; +DROP TABLE t2, t1; diff --git a/mysql-test/suite/innodb_fts/t/misc_debug.test b/mysql-test/suite/innodb_fts/t/misc_debug.test index 4b32afb848c..aaf628abe6d 100644 --- a/mysql-test/suite/innodb_fts/t/misc_debug.test +++ b/mysql-test/suite/innodb_fts/t/misc_debug.test @@ -39,3 +39,16 @@ ALTER TABLE t ADD FULLTEXT INDEX (b(64)); SET SESSION debug_dbug=@saved_debug_dbug; DROP TABLE t; + +# MDEV-21550 Assertion `!table->fts->in_queue' failed in +# fts_optimize_remove_table +CREATE TABLE t1 (pk INT, a VARCHAR(8), PRIMARY KEY(pk), + FULLTEXT KEY(a)) ENGINE=InnoDB; +CREATE TABLE t2 (b INT, FOREIGN KEY(b) REFERENCES t1(pk)) ENGINE=InnoDB; +--error ER_ROW_IS_REFERENCED_2 +DROP TABLE t1; +SET DEBUG_DBUG="+d,fts_instrument_sync"; +INSERT INTO t1 VALUES(1, "mariadb"); +ALTER TABLE t1 FORCE; +# Cleanup +DROP TABLE t2, t1; -- cgit v1.2.1 From f37a56de3cb795883f5a799f6de9fc475d5feaae Mon Sep 17 00:00:00 2001 From: Vladislav Vaintroub Date: Thu, 30 Jan 2020 18:42:51 +0100 Subject: MDEV-21586 Server does not start if lc_messages setting was not english. Fixed a bug introduced in MDEV-11345, server did not start if non-english error messages were set in startup parameters. Added lc_messages=de_DE option into an existing test case. --- mysql-test/r/locale.result | 2 +- mysql-test/t/locale.opt | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) create mode 100644 mysql-test/t/locale.opt (limited to 'mysql-test') diff --git a/mysql-test/r/locale.result b/mysql-test/r/locale.result index a02e80ed21e..b08913fa390 100644 --- a/mysql-test/r/locale.result +++ b/mysql-test/r/locale.result @@ -51,7 +51,7 @@ DROP TABLE t1; # SET lc_messages=sr_YU; Warnings: -Warning 1287 'sr_YU' is deprecated and will be removed in a future release. Please use sr_RS instead +Warning 1287 'sr_YU' ist veraltet. Bitte benutzen Sie 'sr_RS' SHOW VARIABLES LIKE 'lc_messages'; Variable_name Value lc_messages sr_RS diff --git a/mysql-test/t/locale.opt b/mysql-test/t/locale.opt new file mode 100644 index 00000000000..0ea17c2e0a8 --- /dev/null +++ b/mysql-test/t/locale.opt @@ -0,0 +1 @@ +--lc-messages=de_DE -- cgit v1.2.1 From 14e6f0251ccc0056ade6637ea34bb40e72024fcd Mon Sep 17 00:00:00 2001 From: Aleksey Midenkov Date: Sun, 2 Feb 2020 15:13:29 +0300 Subject: MDEV-20955 versioning.update failed in buildbot with wrong result code Race condition when innodb_lock_wait_timeout (default 50 seconds) exceeds for 'send update', but information_schema.innodb_lock_waits still sees this wait or it my exit by timeout. My occur on overloaded host. --- mysql-test/suite/versioning/r/update.result | 3 +++ mysql-test/suite/versioning/t/update.test | 3 +++ 2 files changed, 6 insertions(+) (limited to 'mysql-test') diff --git a/mysql-test/suite/versioning/r/update.result b/mysql-test/suite/versioning/r/update.result index e7c617f9196..a2ec02a7ec1 100644 --- a/mysql-test/suite/versioning/r/update.result +++ b/mysql-test/suite/versioning/r/update.result @@ -249,6 +249,8 @@ replace t1 values (1,2),(1,3),(2,4); # # MDEV-14829 Assertion `0' failed in Protocol::end_statement upon concurrent UPDATE # +set @old_lock_wait_timeout= @@innodb_lock_wait_timeout; +set @@innodb_lock_wait_timeout= 1073741824; create or replace table t1 (pk int, a char(3), b char(3), primary key(pk)) engine=innodb with system versioning; insert into t1 (pk) values (1); @@ -265,6 +267,7 @@ ERROR 40001: Deadlock found when trying to get lock; try restarting transaction disconnect con1; connection default; drop table t1; +set @@innodb_lock_wait_timeout= @old_lock_wait_timeout; # # MDEV-19406 Assertion on updating view of join with versioned table # diff --git a/mysql-test/suite/versioning/t/update.test b/mysql-test/suite/versioning/t/update.test index 548505bd39a..71e946e6c2b 100644 --- a/mysql-test/suite/versioning/t/update.test +++ b/mysql-test/suite/versioning/t/update.test @@ -157,6 +157,8 @@ replace t1 values (1,2),(1,3),(2,4); --echo # --echo # MDEV-14829 Assertion `0' failed in Protocol::end_statement upon concurrent UPDATE --echo # +set @old_lock_wait_timeout= @@innodb_lock_wait_timeout; +set @@innodb_lock_wait_timeout= 1073741824; create or replace table t1 (pk int, a char(3), b char(3), primary key(pk)) engine=innodb with system versioning; @@ -175,6 +177,7 @@ disconnect con1; connection default; reap; drop table t1; +set @@innodb_lock_wait_timeout= @old_lock_wait_timeout; --echo # --echo # MDEV-19406 Assertion on updating view of join with versioned table -- cgit v1.2.1 From 006f6f97b10703426c497827c370f84db72c31ef Mon Sep 17 00:00:00 2001 From: Aleksey Midenkov Date: Sun, 2 Feb 2020 15:13:29 +0300 Subject: MDEV-17798 System variable system_versioning_asof accepts wrong values --- mysql-test/suite/versioning/r/sysvars.result | 16 ++++++++++++++++ mysql-test/suite/versioning/t/sysvars.test | 16 ++++++++++++++++ 2 files changed, 32 insertions(+) (limited to 'mysql-test') diff --git a/mysql-test/suite/versioning/r/sysvars.result b/mysql-test/suite/versioning/r/sysvars.result index b23742462d1..899eda91a81 100644 --- a/mysql-test/suite/versioning/r/sysvars.result +++ b/mysql-test/suite/versioning/r/sysvars.result @@ -31,6 +31,14 @@ set global system_versioning_asof= 1; ERROR 42000: Incorrect argument type to variable 'system_versioning_asof' set global system_versioning_asof= 1.1; ERROR 42000: Incorrect argument type to variable 'system_versioning_asof' +set global system_versioning_asof= '2011-02-29 00:00'; +ERROR 42000: Variable 'system_versioning_asof' can't be set to the value of '2011-02-29 00:00' +set global system_versioning_asof= '2011-02-28 24:00'; +ERROR 42000: Variable 'system_versioning_asof' can't be set to the value of '2011-02-28 24:00' +set global system_versioning_asof= '2011-00-28 00:00'; +ERROR 42000: Variable 'system_versioning_asof' can't be set to the value of '2011-00-28 00:00' +set global system_versioning_asof= '0000-00-00 00:00'; +ERROR 42000: Variable 'system_versioning_asof' can't be set to the value of '0000-00-00 00:00' set system_versioning_asof= 'alley'; ERROR 42000: Variable 'system_versioning_asof' can't be set to the value of 'alley' set system_versioning_asof= null; @@ -39,6 +47,14 @@ set system_versioning_asof= 1; ERROR 42000: Incorrect argument type to variable 'system_versioning_asof' set system_versioning_asof= 1.1; ERROR 42000: Incorrect argument type to variable 'system_versioning_asof' +set system_versioning_asof= '2011-02-29 00:00'; +ERROR 42000: Variable 'system_versioning_asof' can't be set to the value of '2011-02-29 00:00' +set system_versioning_asof= '2011-02-28 24:00'; +ERROR 42000: Variable 'system_versioning_asof' can't be set to the value of '2011-02-28 24:00' +set system_versioning_asof= '2011-00-28 00:00'; +ERROR 42000: Variable 'system_versioning_asof' can't be set to the value of '2011-00-28 00:00' +set system_versioning_asof= '0000-00-00 00:00'; +ERROR 42000: Variable 'system_versioning_asof' can't be set to the value of '0000-00-00 00:00' # GLOBAL @@system_versioning_asof set global system_versioning_asof= '1911-11-11 11:11:11.1111119'; Warnings: diff --git a/mysql-test/suite/versioning/t/sysvars.test b/mysql-test/suite/versioning/t/sysvars.test index 160af12fe02..8c8311d66fc 100644 --- a/mysql-test/suite/versioning/t/sysvars.test +++ b/mysql-test/suite/versioning/t/sysvars.test @@ -23,6 +23,14 @@ set global system_versioning_asof= null; set global system_versioning_asof= 1; --error ER_WRONG_TYPE_FOR_VAR set global system_versioning_asof= 1.1; +--error ER_WRONG_VALUE_FOR_VAR +set global system_versioning_asof= '2011-02-29 00:00'; +--error ER_WRONG_VALUE_FOR_VAR +set global system_versioning_asof= '2011-02-28 24:00'; +--error ER_WRONG_VALUE_FOR_VAR +set global system_versioning_asof= '2011-00-28 00:00'; +--error ER_WRONG_VALUE_FOR_VAR +set global system_versioning_asof= '0000-00-00 00:00'; # session --error ER_WRONG_VALUE_FOR_VAR @@ -33,6 +41,14 @@ set system_versioning_asof= null; set system_versioning_asof= 1; --error ER_WRONG_TYPE_FOR_VAR set system_versioning_asof= 1.1; +--error ER_WRONG_VALUE_FOR_VAR +set system_versioning_asof= '2011-02-29 00:00'; +--error ER_WRONG_VALUE_FOR_VAR +set system_versioning_asof= '2011-02-28 24:00'; +--error ER_WRONG_VALUE_FOR_VAR +set system_versioning_asof= '2011-00-28 00:00'; +--error ER_WRONG_VALUE_FOR_VAR +set system_versioning_asof= '0000-00-00 00:00'; --echo # GLOBAL @@system_versioning_asof set global system_versioning_asof= '1911-11-11 11:11:11.1111119'; -- cgit v1.2.1 From e13e49e5ab15e984806191d6721a9704c33d54a4 Mon Sep 17 00:00:00 2001 From: Aleksey Midenkov Date: Sun, 2 Feb 2020 15:13:29 +0300 Subject: MDEV-20528 innodb.purge_secondary_mdev-16222 failed in buildbot, debug sync point wait timed out --- mysql-test/suite/gcol/r/innodb_virtual_debug_purge.result | 3 ++- mysql-test/suite/gcol/t/innodb_virtual_debug_purge.test | 5 +++-- 2 files changed, 5 insertions(+), 3 deletions(-) (limited to 'mysql-test') diff --git a/mysql-test/suite/gcol/r/innodb_virtual_debug_purge.result b/mysql-test/suite/gcol/r/innodb_virtual_debug_purge.result index 837f72129ca..ffc821b6ecc 100644 --- a/mysql-test/suite/gcol/r/innodb_virtual_debug_purge.result +++ b/mysql-test/suite/gcol/r/innodb_virtual_debug_purge.result @@ -208,7 +208,8 @@ DROP TABLE t1, t2; # MDEV-16222 Assertion `0' failed in row_purge_remove_sec_if_poss_leaf # on table with virtual columns and indexes # -SET @saved_dbug= @@GLOBAL.debug_dbug; +InnoDB 0 transactions not purged +set @saved_dbug= @@global.debug_dbug; set global debug_dbug= "+d,ib_purge_virtual_mdev_16222_1,ib_purge_virtual_mdev_16222_2"; create table t1 ( pk serial, vb tinyblob as (b) virtual, b tinyblob, diff --git a/mysql-test/suite/gcol/t/innodb_virtual_debug_purge.test b/mysql-test/suite/gcol/t/innodb_virtual_debug_purge.test index ca9d016fdcc..a384e0667de 100644 --- a/mysql-test/suite/gcol/t/innodb_virtual_debug_purge.test +++ b/mysql-test/suite/gcol/t/innodb_virtual_debug_purge.test @@ -264,8 +264,9 @@ DROP TABLE t1, t2; --echo # on table with virtual columns and indexes --echo # +--source suite/innodb/include/wait_all_purged.inc --let $datadir= `select @@datadir` -SET @saved_dbug= @@GLOBAL.debug_dbug; +set @saved_dbug= @@global.debug_dbug; set global debug_dbug= "+d,ib_purge_virtual_mdev_16222_1,ib_purge_virtual_mdev_16222_2"; create table t1 ( @@ -373,4 +374,4 @@ SELECT * FROM t1; # Cleanup DROP TABLE t1; SET debug_sync= reset; -set global debug_dbug= @saved_dbug; \ No newline at end of file +set global debug_dbug= @saved_dbug; -- cgit v1.2.1 From b0fa30808622fe12d474a70af1838906e60b9897 Mon Sep 17 00:00:00 2001 From: Aleksey Midenkov Date: Sun, 2 Feb 2020 15:13:29 +0300 Subject: MDEV-21195 INSERT chooses wrong partition for RANGE partitioning by DECIMAL column Use FLOOR rounding for DECIMAL_RESULT item_expr in partition function. --- mysql-test/main/partition_range.result | 44 ++++++++++++++++++++++++++++++++ mysql-test/main/partition_range.test | 46 ++++++++++++++++++++++++++++++++++ 2 files changed, 90 insertions(+) (limited to 'mysql-test') diff --git a/mysql-test/main/partition_range.result b/mysql-test/main/partition_range.result index 00171e3e0bd..2c72d9f1865 100644 --- a/mysql-test/main/partition_range.result +++ b/mysql-test/main/partition_range.result @@ -1009,3 +1009,47 @@ select * from t1 partition (p1); d 2000-01-01 00:00:01.000000 DROP TABLE t1, t2; +# +# MDEV-21195 INSERT chooses wrong partition for RANGE partitioning by DECIMAL column +# +create or replace table t ( +d decimal(2,1)) partition by range (d) +(partition p1 values less than (10)); +insert into t values (9.9); +create or replace table t ( +d decimal(2,1)) partition by range (d) +(partition p1 values less than (10), +partition p2 values less than (20)); +insert into t values (9.9); +select * from t partition (p1); +d +9.9 +select * from t partition (p2); +d +create or replace table t ( +d decimal(2,1)) partition by range (d) +(partition p1 values less than (-3)); +insert into t values (-3.3); +create or replace table t ( +d decimal(2,1)) partition by range (d+1) +(partition p1 values less than (10), +partition p2 values less than (20)); +insert into t values (8.9); +select * from t partition (p1); +d +8.9 +select * from t partition (p2); +d +set time_zone='+00:00'; +create or replace table t ( +d timestamp(1)) partition by range (unix_timestamp(d)) +(partition p1 values less than (1577836800), +partition p2 values less than (2000000000)); +insert into t values (from_unixtime(1577836799.9)); +select * from t partition (p1); +d +2019-12-31 23:59:59.9 +select * from t partition (p2); +d +set time_zone=default; +drop table t; diff --git a/mysql-test/main/partition_range.test b/mysql-test/main/partition_range.test index 628602ffa25..abba4c5f374 100644 --- a/mysql-test/main/partition_range.test +++ b/mysql-test/main/partition_range.test @@ -999,3 +999,49 @@ select * from t1 partition (p0); select * from t1 partition (p1); DROP TABLE t1, t2; + +--echo # +--echo # MDEV-21195 INSERT chooses wrong partition for RANGE partitioning by DECIMAL column +--echo # +create or replace table t ( + d decimal(2,1)) partition by range (d) + (partition p1 values less than (10)); + +insert into t values (9.9); + +create or replace table t ( + d decimal(2,1)) partition by range (d) + (partition p1 values less than (10), + partition p2 values less than (20)); + +insert into t values (9.9); +select * from t partition (p1); +select * from t partition (p2); + +create or replace table t ( + d decimal(2,1)) partition by range (d) + (partition p1 values less than (-3)); + +insert into t values (-3.3); + +create or replace table t ( + d decimal(2,1)) partition by range (d+1) + (partition p1 values less than (10), + partition p2 values less than (20)); + +insert into t values (8.9); +select * from t partition (p1); +select * from t partition (p2); + +set time_zone='+00:00'; +create or replace table t ( + d timestamp(1)) partition by range (unix_timestamp(d)) + (partition p1 values less than (1577836800), + partition p2 values less than (2000000000)); + +insert into t values (from_unixtime(1577836799.9)); +select * from t partition (p1); +select * from t partition (p2); + +set time_zone=default; +drop table t; -- cgit v1.2.1 From a241d411951f72d6cdbe8fa15a3f4c4adf7b0261 Mon Sep 17 00:00:00 2001 From: Oleksandr Byelkin Date: Wed, 10 Jul 2019 13:40:54 +0200 Subject: MDEV-18027: Running out of file descriptors and eventual crash For automatic number of opened files limit take into account number of table instances for table cache --- mysql-test/r/mysqld--help.result | 2 +- mysql-test/suite/sys_vars/r/host_cache_size_auto.result | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'mysql-test') diff --git a/mysql-test/r/mysqld--help.result b/mysql-test/r/mysqld--help.result index 6ac6f34f74e..283d7a9a3cf 100644 --- a/mysql-test/r/mysqld--help.result +++ b/mysql-test/r/mysqld--help.result @@ -1519,7 +1519,7 @@ sysdate-is-now FALSE table-cache 421 table-definition-cache 400 table-open-cache 421 -table-open-cache-instances 8 +table-open-cache-instances 1 tc-heuristic-recover OFF thread-cache-size 151 thread-pool-idle-timeout 60 diff --git a/mysql-test/suite/sys_vars/r/host_cache_size_auto.result b/mysql-test/suite/sys_vars/r/host_cache_size_auto.result index a0a849c1d7a..a9a683e017b 100644 --- a/mysql-test/suite/sys_vars/r/host_cache_size_auto.result +++ b/mysql-test/suite/sys_vars/r/host_cache_size_auto.result @@ -1,3 +1,3 @@ select @@global.host_cache_size; @@global.host_cache_size -632 +653 -- cgit v1.2.1 From fafb35ee517f309d9e507f6e3908caca5d8cd257 Mon Sep 17 00:00:00 2001 From: Oleksandr Byelkin Date: Wed, 6 Nov 2019 12:35:19 +0100 Subject: MDEV-20076: SHOW GRANTS does not quote role names properly Quotes added to output. --- mysql-test/main/connect.result | 4 +- mysql-test/main/events_bugs.result | 8 +- mysql-test/main/events_grant.result | 6 +- mysql-test/main/fix_priv_tables.result | 16 +- mysql-test/main/grant.result | 562 ++++++++++----------- mysql-test/main/grant2.result | 52 +- mysql-test/main/grant3.result | 16 +- mysql-test/main/grant5.result | 101 +++- mysql-test/main/grant5.test | 50 ++ mysql-test/main/grant_cache_no_prot.result | 14 +- mysql-test/main/grant_cache_ps_prot.result | 14 +- mysql-test/main/information_schema.result | 14 +- .../main/invisible_field_grant_completely.result | 2 +- .../main/invisible_field_grant_system.result | 2 +- mysql-test/main/ipv4_and_ipv6.result | 8 +- mysql-test/main/ipv4_as_ipv6.result | 24 +- mysql-test/main/ipv6.result | 12 +- mysql-test/main/lowercase_table_grant.result | 8 +- mysql-test/main/mysql_upgrade.result | 8 +- mysql-test/main/mysqlbinlog.result | 4 +- .../main/no_password_column-mdev-11170.result | 30 +- mysql-test/main/partition_grant.result | 4 +- mysql-test/main/plugin_auth.result | 6 +- mysql-test/main/ps_grant.result | 36 +- mysql-test/main/set_password.result | 2 +- mysql-test/main/show_create_user.result | 14 +- .../main/show_grants_with_plugin-7985.result | 60 +-- mysql-test/main/skip_name_resolve.result | 4 +- mysql-test/main/sp-security.result | 36 +- mysql-test/main/sp_notembedded.result | 22 +- mysql-test/main/timezone_grant.result | 10 +- mysql-test/main/trigger_notembedded.result | 4 +- mysql-test/main/user_limits.result | 4 +- mysql-test/main/view_grant.result | 6 +- mysql-test/suite/binlog/r/binlog_grant.result | 2 +- .../compat/oracle/r/sp-package-security.result | 36 +- mysql-test/suite/funcs_1/r/innodb_trig_03.result | 116 ++--- mysql-test/suite/funcs_1/r/innodb_trig_03e.result | 176 +++---- mysql-test/suite/funcs_1/r/is_basics_mixed.result | 2 +- .../suite/funcs_1/r/is_check_constraints.result | 8 +- .../suite/funcs_1/r/is_column_privileges.result | 64 +-- .../suite/funcs_1/r/is_schema_privileges.result | 32 +- mysql-test/suite/funcs_1/r/is_statistics.result | 32 +- .../suite/funcs_1/r/is_table_constraints.result | 8 +- .../suite/funcs_1/r/is_table_privileges.result | 40 +- mysql-test/suite/funcs_1/r/is_triggers.result | 10 +- .../suite/funcs_1/r/is_user_privileges.result | 38 +- mysql-test/suite/funcs_1/r/memory_trig_03.result | 116 ++--- mysql-test/suite/funcs_1/r/memory_trig_03e.result | 172 +++---- mysql-test/suite/funcs_1/r/myisam_trig_03.result | 116 ++--- mysql-test/suite/funcs_1/r/myisam_trig_03e.result | 172 +++---- .../funcs_1/r/processlist_priv_no_prot.result | 30 +- .../suite/funcs_1/r/processlist_priv_ps.result | 30 +- .../galera/r/galera_forced_binlog_format.result | 4 +- mysql-test/suite/galera/r/galera_roles.result | 12 +- .../parts/r/partition_exch_qa_5_innodb.result | 12 +- .../parts/r/partition_exch_qa_5_myisam.result | 12 +- .../suite/parts/r/partition_exch_qa_6.result | 16 +- .../suite/perfschema/r/column_privilege.result | 2 +- mysql-test/suite/perfschema/r/privilege.result | 2 +- mysql-test/suite/perfschema/r/read_only.result | 12 +- mysql-test/suite/plugins/r/auth_ed25519.result | 2 +- mysql-test/suite/roles/admin.result | 92 ++-- mysql-test/suite/roles/create_and_drop_role.result | 6 +- .../suite/roles/create_and_grant_role.result | 8 +- mysql-test/suite/roles/definer.result | 10 +- mysql-test/suite/roles/drop_routines.result | 64 +-- mysql-test/suite/roles/flush_roles-17898.result | 14 +- mysql-test/suite/roles/grant-5771.result | 14 +- mysql-test/suite/roles/grant_empty.result | 4 +- mysql-test/suite/roles/grant_proxy-5526.result | 2 +- mysql-test/suite/roles/grant_revoke_current.result | 20 +- mysql-test/suite/roles/ip-6401.result | 4 +- .../suite/roles/prepare_stmt_with_role.result | 26 +- mysql-test/suite/roles/rebuild_role_grants.result | 18 +- mysql-test/suite/roles/recursive.result | 224 ++++---- mysql-test/suite/roles/recursive_dbug.result | 224 ++++---- mysql-test/suite/roles/revoke_all.result | 204 ++++---- .../suite/roles/role_case_sensitive-10744.result | 10 +- mysql-test/suite/roles/rpl_definer.result | 28 +- mysql-test/suite/roles/set_and_drop.result | 8 +- .../suite/roles/set_default_role_clear.result | 10 +- mysql-test/suite/roles/set_default_role_for.result | 18 +- .../suite/roles/set_default_role_invalid.result | 10 +- .../roles/set_default_role_new_connection.result | 20 +- mysql-test/suite/roles/set_role-13655.result | 22 +- mysql-test/suite/roles/set_role-9614.result | 20 +- .../suite/roles/set_role-database-recursive.result | 24 +- .../suite/roles/set_role-multiple-role.result | 52 +- mysql-test/suite/roles/set_role-recursive.result | 64 +-- .../suite/roles/set_role-routine-simple.result | 38 +- mysql-test/suite/roles/set_role-simple.result | 12 +- .../suite/roles/set_role-table-column-priv.result | 28 +- .../suite/roles/set_role-table-simple.result | 28 +- mysql-test/suite/roles/show_grants.result | 92 ++-- .../suite/roles/show_grants_replicated.result | 18 +- mysql-test/suite/rpl/r/rpl_binlog_grant.result | 6 +- mysql-test/suite/rpl/r/rpl_do_grant.result | 58 +-- mysql-test/suite/rpl/r/rpl_ignore_grant.result | 4 +- mysql-test/suite/rpl/r/rpl_ignore_table.result | 66 +-- .../suite/versioning/r/truncate_privilege.result | 14 +- 101 files changed, 2083 insertions(+), 1938 deletions(-) (limited to 'mysql-test') diff --git a/mysql-test/main/connect.result b/mysql-test/main/connect.result index 057105d192f..82007994eed 100644 --- a/mysql-test/main/connect.result +++ b/mysql-test/main/connect.result @@ -108,12 +108,12 @@ update mysql.user set password=old_password("gambling2") where user=_binary"test flush privileges; show grants for test@localhost; Grants for test@localhost -GRANT ALL PRIVILEGES ON *.* TO 'test'@'localhost' IDENTIFIED BY PASSWORD '2f27438961437573' +GRANT ALL PRIVILEGES ON *.* TO `test`@`localhost` IDENTIFIED BY PASSWORD '2f27438961437573' update mysql.user set plugin='mysql_old_password' where user='test'; flush privileges; show grants for test@localhost; Grants for test@localhost -GRANT ALL PRIVILEGES ON *.* TO 'test'@'localhost' IDENTIFIED BY PASSWORD '2f27438961437573' +GRANT ALL PRIVILEGES ON *.* TO `test`@`localhost` IDENTIFIED BY PASSWORD '2f27438961437573' connect con10,localhost,test,gambling2,; connect con5,localhost,test,gambling2,mysql; connection con5; diff --git a/mysql-test/main/events_bugs.result b/mysql-test/main/events_bugs.result index 4870c464fff..666361188b9 100644 --- a/mysql-test/main/events_bugs.result +++ b/mysql-test/main/events_bugs.result @@ -618,7 +618,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp USE test; SHOW GRANTS FOR CURRENT_USER; Grants for root@localhost -GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION +GRANT ALL PRIVILEGES ON *.* TO `root`@`localhost` WITH GRANT OPTION GRANT PROXY ON ''@'%' TO 'root'@'localhost' WITH GRANT OPTION SET GLOBAL event_scheduler = ON; CREATE TABLE events_test.event_log @@ -632,9 +632,9 @@ GRANT create, insert, select, event ON events_test.* TO evtest1@localhost; GRANT select,insert ON test.* TO evtest1@localhost; SHOW GRANTS FOR evtest1@localhost; Grants for evtest1@localhost -GRANT USAGE ON *.* TO 'evtest1'@'localhost' IDENTIFIED BY PASSWORD '*3170F3644E31580C25DE4A08F4C07CC9A2D40C32' -GRANT SELECT, INSERT ON `test`.* TO 'evtest1'@'localhost' -GRANT SELECT, INSERT, CREATE, EVENT ON `events_test`.* TO 'evtest1'@'localhost' +GRANT USAGE ON *.* TO `evtest1`@`localhost` IDENTIFIED BY PASSWORD '*3170F3644E31580C25DE4A08F4C07CC9A2D40C32' +GRANT SELECT, INSERT ON `test`.* TO `evtest1`@`localhost` +GRANT SELECT, INSERT, CREATE, EVENT ON `events_test`.* TO `evtest1`@`localhost` connect e1,localhost,evtest1,ev1,events_test,$MASTER_MYPORT,$MASTER_MYSOCK; CREATE EVENT ev_sched_1823 ON SCHEDULE EVERY 2 SECOND DO BEGIN diff --git a/mysql-test/main/events_grant.result b/mysql-test/main/events_grant.result index c4f459dbe5b..5bdbbf0f8f1 100644 --- a/mysql-test/main/events_grant.result +++ b/mysql-test/main/events_grant.result @@ -23,9 +23,9 @@ USER() DATABASE() ev_test@localhost events_test2 SHOW GRANTS; Grants for ev_test@localhost -GRANT USAGE ON *.* TO 'ev_test'@'localhost' -GRANT ALL PRIVILEGES ON `events_test`.* TO 'ev_test'@'localhost' -GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, TRIGGER, DELETE HISTORY ON `events_test2`.* TO 'ev_test'@'localhost' +GRANT USAGE ON *.* TO `ev_test`@`localhost` +GRANT ALL PRIVILEGES ON `events_test`.* TO `ev_test`@`localhost` +GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, TRIGGER, DELETE HISTORY ON `events_test2`.* TO `ev_test`@`localhost` "Here comes an error:"; SHOW EVENTS; ERROR 42000: Access denied for user 'ev_test'@'localhost' to database 'events_test2' diff --git a/mysql-test/main/fix_priv_tables.result b/mysql-test/main/fix_priv_tables.result index dea1ccdbd18..3f1830aadbc 100644 --- a/mysql-test/main/fix_priv_tables.result +++ b/mysql-test/main/fix_priv_tables.result @@ -10,25 +10,25 @@ SELECT * FROM testdb.t1; GRANT CREATE VIEW, SHOW VIEW ON testdb.v1 TO 'show_view_tbl'@'localhost'; SHOW GRANTS FOR 'show_view_tbl'@'localhost'; Grants for show_view_tbl@localhost -GRANT USAGE ON *.* TO 'show_view_tbl'@'localhost' -GRANT CREATE VIEW, SHOW VIEW ON `testdb`.`v1` TO 'show_view_tbl'@'localhost' +GRANT USAGE ON *.* TO `show_view_tbl`@`localhost` +GRANT CREATE VIEW, SHOW VIEW ON `testdb`.`v1` TO `show_view_tbl`@`localhost` GRANT SELECT(c1) on testdb.v1 to 'select_only_c1'@localhost; SHOW GRANTS FOR 'select_only_c1'@'localhost'; Grants for select_only_c1@localhost -GRANT USAGE ON *.* TO 'select_only_c1'@'localhost' -GRANT SELECT (c1) ON `testdb`.`v1` TO 'select_only_c1'@'localhost' +GRANT USAGE ON *.* TO `select_only_c1`@`localhost` +GRANT SELECT (c1) ON `testdb`.`v1` TO `select_only_c1`@`localhost` "after fix privs" SHOW GRANTS FOR 'show_view_tbl'@'localhost'; Grants for show_view_tbl@localhost -GRANT USAGE ON *.* TO 'show_view_tbl'@'localhost' -GRANT CREATE VIEW, SHOW VIEW ON `testdb`.`v1` TO 'show_view_tbl'@'localhost' +GRANT USAGE ON *.* TO `show_view_tbl`@`localhost` +GRANT CREATE VIEW, SHOW VIEW ON `testdb`.`v1` TO `show_view_tbl`@`localhost` SHOW GRANTS FOR 'select_only_c1'@'localhost'; Grants for select_only_c1@localhost -GRANT USAGE ON *.* TO 'select_only_c1'@'localhost' -GRANT SELECT (c1) ON `testdb`.`v1` TO 'select_only_c1'@'localhost' +GRANT USAGE ON *.* TO `select_only_c1`@`localhost` +GRANT SELECT (c1) ON `testdb`.`v1` TO `select_only_c1`@`localhost` DROP USER 'show_view_tbl'@'localhost'; DROP USER 'select_only_c1'@'localhost'; diff --git a/mysql-test/main/grant.result b/mysql-test/main/grant.result index ccbabab8019..d89afbc320c 100644 --- a/mysql-test/main/grant.result +++ b/mysql-test/main/grant.result @@ -13,8 +13,8 @@ flush privileges; grant select on mysqltest.* to mysqltest_1@localhost require cipher "EDH-RSA-DES-CBC3-SHA"; show grants for mysqltest_1@localhost; Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' REQUIRE CIPHER 'EDH-RSA-DES-CBC3-SHA' -GRANT SELECT ON `mysqltest`.* TO 'mysqltest_1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` REQUIRE CIPHER 'EDH-RSA-DES-CBC3-SHA' +GRANT SELECT ON `mysqltest`.* TO `mysqltest_1`@`localhost` grant delete on mysqltest.* to mysqltest_1@localhost; select * from mysql.user where user="mysqltest_1"; Host localhost @@ -66,27 +66,27 @@ default_role max_statement_time 0.000000 show grants for mysqltest_1@localhost; Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' REQUIRE CIPHER 'EDH-RSA-DES-CBC3-SHA' -GRANT SELECT, DELETE ON `mysqltest`.* TO 'mysqltest_1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` REQUIRE CIPHER 'EDH-RSA-DES-CBC3-SHA' +GRANT SELECT, DELETE ON `mysqltest`.* TO `mysqltest_1`@`localhost` revoke delete on mysqltest.* from mysqltest_1@localhost; show grants for mysqltest_1@localhost; Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' REQUIRE CIPHER 'EDH-RSA-DES-CBC3-SHA' -GRANT SELECT ON `mysqltest`.* TO 'mysqltest_1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` REQUIRE CIPHER 'EDH-RSA-DES-CBC3-SHA' +GRANT SELECT ON `mysqltest`.* TO `mysqltest_1`@`localhost` grant select on mysqltest.* to mysqltest_1@localhost require NONE; show grants for mysqltest_1@localhost; Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' -GRANT SELECT ON `mysqltest`.* TO 'mysqltest_1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` +GRANT SELECT ON `mysqltest`.* TO `mysqltest_1`@`localhost` grant USAGE on mysqltest.* to mysqltest_1@localhost require cipher "EDH-RSA-DES-CBC3-SHA" AND SUBJECT "testsubject" ISSUER "Monty Program Ab"; show grants for mysqltest_1@localhost; Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' REQUIRE ISSUER 'Monty Program Ab' SUBJECT 'testsubject' CIPHER 'EDH-RSA-DES-CBC3-SHA' -GRANT SELECT ON `mysqltest`.* TO 'mysqltest_1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` REQUIRE ISSUER 'Monty Program Ab' SUBJECT 'testsubject' CIPHER 'EDH-RSA-DES-CBC3-SHA' +GRANT SELECT ON `mysqltest`.* TO `mysqltest_1`@`localhost` revoke all privileges on mysqltest.* from mysqltest_1@localhost; show grants for mysqltest_1@localhost; Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' REQUIRE ISSUER 'Monty Program Ab' SUBJECT 'testsubject' CIPHER 'EDH-RSA-DES-CBC3-SHA' +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` REQUIRE ISSUER 'Monty Program Ab' SUBJECT 'testsubject' CIPHER 'EDH-RSA-DES-CBC3-SHA' delete from mysql.user where user='mysqltest_1'; flush privileges; delete from mysql.user where user='mysqltest_1'; @@ -142,7 +142,7 @@ default_role max_statement_time 60.000000 show grants for mysqltest_1@localhost; Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' WITH MAX_QUERIES_PER_HOUR 10 MAX_STATEMENT_TIME 60.000000 +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` WITH MAX_QUERIES_PER_HOUR 10 MAX_STATEMENT_TIME 60.000000 grant usage on *.* to mysqltest_1@localhost with max_updates_per_hour 20 max_connections_per_hour 30 max_statement_time 0; select * from mysql.user where user="mysqltest_1"; Host localhost @@ -194,48 +194,48 @@ default_role max_statement_time 0.000000 show grants for mysqltest_1@localhost; Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' WITH MAX_QUERIES_PER_HOUR 10 MAX_UPDATES_PER_HOUR 20 MAX_CONNECTIONS_PER_HOUR 30 +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` WITH MAX_QUERIES_PER_HOUR 10 MAX_UPDATES_PER_HOUR 20 MAX_CONNECTIONS_PER_HOUR 30 flush privileges; show grants for mysqltest_1@localhost; Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' WITH MAX_QUERIES_PER_HOUR 10 MAX_UPDATES_PER_HOUR 20 MAX_CONNECTIONS_PER_HOUR 30 +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` WITH MAX_QUERIES_PER_HOUR 10 MAX_UPDATES_PER_HOUR 20 MAX_CONNECTIONS_PER_HOUR 30 delete from mysql.user where user='mysqltest_1'; flush privileges; grant CREATE TEMPORARY TABLES, LOCK TABLES on mysqltest.* to mysqltest_1@localhost; show grants for mysqltest_1@localhost; Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' -GRANT CREATE TEMPORARY TABLES, LOCK TABLES ON `mysqltest`.* TO 'mysqltest_1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` +GRANT CREATE TEMPORARY TABLES, LOCK TABLES ON `mysqltest`.* TO `mysqltest_1`@`localhost` flush privileges; show grants for mysqltest_1@localhost; Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' -GRANT CREATE TEMPORARY TABLES, LOCK TABLES ON `mysqltest`.* TO 'mysqltest_1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` +GRANT CREATE TEMPORARY TABLES, LOCK TABLES ON `mysqltest`.* TO `mysqltest_1`@`localhost` revoke CREATE TEMPORARY TABLES on mysqltest.* from mysqltest_1@localhost; show grants for mysqltest_1@localhost; Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' -GRANT LOCK TABLES ON `mysqltest`.* TO 'mysqltest_1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` +GRANT LOCK TABLES ON `mysqltest`.* TO `mysqltest_1`@`localhost` grant ALL PRIVILEGES on mysqltest.* to mysqltest_1@localhost with GRANT OPTION; flush privileges; show grants for mysqltest_1@localhost; Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' -GRANT ALL PRIVILEGES ON `mysqltest`.* TO 'mysqltest_1'@'localhost' WITH GRANT OPTION +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` +GRANT ALL PRIVILEGES ON `mysqltest`.* TO `mysqltest_1`@`localhost` WITH GRANT OPTION revoke LOCK TABLES, ALTER on mysqltest.* from mysqltest_1@localhost; show grants for mysqltest_1@localhost; Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' -GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, CREATE TEMPORARY TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, TRIGGER, DELETE HISTORY ON `mysqltest`.* TO 'mysqltest_1'@'localhost' WITH GRANT OPTION +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` +GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, CREATE TEMPORARY TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, TRIGGER, DELETE HISTORY ON `mysqltest`.* TO `mysqltest_1`@`localhost` WITH GRANT OPTION revoke all privileges on mysqltest.* from mysqltest_1@localhost; delete from mysql.user where user='mysqltest_1'; flush privileges; grant usage on test.* to mysqltest_1@localhost with grant option; show grants for mysqltest_1@localhost; Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' -GRANT USAGE ON `mysqltest`.* TO 'mysqltest_1'@'localhost' WITH GRANT OPTION -GRANT USAGE ON `test`.* TO 'mysqltest_1'@'localhost' WITH GRANT OPTION +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` +GRANT USAGE ON `mysqltest`.* TO `mysqltest_1`@`localhost` WITH GRANT OPTION +GRANT USAGE ON `test`.* TO `mysqltest_1`@`localhost` WITH GRANT OPTION delete from mysql.user where user='mysqltest_1'; delete from mysql.db where user='mysqltest_1'; delete from mysql.tables_priv where user='mysqltest_1'; @@ -248,21 +248,21 @@ GRANT select,update,insert on t1 to mysqltest_1@localhost; GRANT select (a), update (a),insert(a), references(a) on t1 to mysqltest_1@localhost; show grants for mysqltest_1@localhost; Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' -GRANT SELECT, SELECT (a), INSERT, INSERT (a), UPDATE, UPDATE (a), REFERENCES (a) ON `test`.`t1` TO 'mysqltest_1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` +GRANT SELECT, SELECT (a), INSERT, INSERT (a), UPDATE, UPDATE (a), REFERENCES (a) ON `test`.`t1` TO `mysqltest_1`@`localhost` select table_priv,column_priv from mysql.tables_priv where user="mysqltest_1"; table_priv column_priv Select,Insert,Update Select,Insert,Update,References REVOKE select (a), update on t1 from mysqltest_1@localhost; show grants for mysqltest_1@localhost; Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' -GRANT SELECT, INSERT, INSERT (a), REFERENCES (a) ON `test`.`t1` TO 'mysqltest_1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` +GRANT SELECT, INSERT, INSERT (a), REFERENCES (a) ON `test`.`t1` TO `mysqltest_1`@`localhost` REVOKE select,update,insert,insert (a) on t1 from mysqltest_1@localhost; show grants for mysqltest_1@localhost; Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' -GRANT REFERENCES (a) ON `test`.`t1` TO 'mysqltest_1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` +GRANT REFERENCES (a) ON `test`.`t1` TO `mysqltest_1`@`localhost` GRANT select,references on t1 to mysqltest_1@localhost; select table_priv,column_priv from mysql.tables_priv where user="mysqltest_1"; table_priv column_priv @@ -271,22 +271,22 @@ grant all on test.* to mysqltest_3@localhost with grant option; revoke all on test.* from mysqltest_3@localhost; show grants for mysqltest_3@localhost; Grants for mysqltest_3@localhost -GRANT USAGE ON *.* TO 'mysqltest_3'@'localhost' -GRANT USAGE ON `test`.* TO 'mysqltest_3'@'localhost' WITH GRANT OPTION +GRANT USAGE ON *.* TO `mysqltest_3`@`localhost` +GRANT USAGE ON `test`.* TO `mysqltest_3`@`localhost` WITH GRANT OPTION revoke grant option on test.* from mysqltest_3@localhost; show grants for mysqltest_3@localhost; Grants for mysqltest_3@localhost -GRANT USAGE ON *.* TO 'mysqltest_3'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_3`@`localhost` grant all on test.t1 to mysqltest_2@localhost with grant option; revoke all on test.t1 from mysqltest_2@localhost; show grants for mysqltest_2@localhost; Grants for mysqltest_2@localhost -GRANT USAGE ON *.* TO 'mysqltest_2'@'localhost' -GRANT USAGE ON `test`.`t1` TO 'mysqltest_2'@'localhost' WITH GRANT OPTION +GRANT USAGE ON *.* TO `mysqltest_2`@`localhost` +GRANT USAGE ON `test`.`t1` TO `mysqltest_2`@`localhost` WITH GRANT OPTION revoke grant option on test.t1 from mysqltest_2@localhost; show grants for mysqltest_2@localhost; Grants for mysqltest_2@localhost -GRANT USAGE ON *.* TO 'mysqltest_2'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_2`@`localhost` delete from mysql.user where user='mysqltest_1' or user="mysqltest_2" or user="mysqltest_3"; delete from mysql.db where user='mysqltest_1' or user="mysqltest_2" or user="mysqltest_3"; delete from mysql.tables_priv where user='mysqltest_1' or user="mysqltest_2" or user="mysqltest_3"; @@ -310,16 +310,16 @@ alter table mysql.db order by db asc; flush privileges; show grants for test11@localhost; Grants for test11@localhost -GRANT USAGE ON *.* TO 'test11'@'localhost' -GRANT SELECT ON `ab%`.* TO 'test11'@'localhost' -GRANT SELECT ON `a%`.* TO 'test11'@'localhost' +GRANT USAGE ON *.* TO `test11`@`localhost` +GRANT SELECT ON `ab%`.* TO `test11`@`localhost` +GRANT SELECT ON `a%`.* TO `test11`@`localhost` alter table mysql.db order by db desc; flush privileges; show grants for test11@localhost; Grants for test11@localhost -GRANT USAGE ON *.* TO 'test11'@'localhost' -GRANT SELECT ON `ab%`.* TO 'test11'@'localhost' -GRANT SELECT ON `a%`.* TO 'test11'@'localhost' +GRANT USAGE ON *.* TO `test11`@`localhost` +GRANT SELECT ON `ab%`.* TO `test11`@`localhost` +GRANT SELECT ON `a%`.* TO `test11`@`localhost` delete from mysql.user where user='test11'; delete from mysql.db where user='test11'; create database mysqltest1; @@ -332,7 +332,7 @@ create table t1 (a int); grant ALL PRIVILEGES on *.* to drop_user2@localhost with GRANT OPTION; show grants for drop_user2@localhost; Grants for drop_user2@localhost -GRANT ALL PRIVILEGES ON *.* TO 'drop_user2'@'localhost' WITH GRANT OPTION +GRANT ALL PRIVILEGES ON *.* TO `drop_user2`@`localhost` WITH GRANT OPTION revoke all privileges, grant option from drop_user2@localhost; drop user drop_user2@localhost; grant ALL PRIVILEGES on *.* to drop_user@localhost with GRANT OPTION; @@ -340,44 +340,44 @@ grant ALL PRIVILEGES on test.* to drop_user@localhost with GRANT OPTION; grant select(a) on test.t1 to drop_user@localhost; show grants for drop_user@localhost; Grants for drop_user@localhost -GRANT ALL PRIVILEGES ON *.* TO 'drop_user'@'localhost' WITH GRANT OPTION -GRANT ALL PRIVILEGES ON `test`.* TO 'drop_user'@'localhost' WITH GRANT OPTION -GRANT SELECT (a) ON `test`.`t1` TO 'drop_user'@'localhost' +GRANT ALL PRIVILEGES ON *.* TO `drop_user`@`localhost` WITH GRANT OPTION +GRANT ALL PRIVILEGES ON `test`.* TO `drop_user`@`localhost` WITH GRANT OPTION +GRANT SELECT (a) ON `test`.`t1` TO `drop_user`@`localhost` set sql_mode=ansi_quotes; show grants for drop_user@localhost; Grants for drop_user@localhost -GRANT ALL PRIVILEGES ON *.* TO 'drop_user'@'localhost' WITH GRANT OPTION -GRANT ALL PRIVILEGES ON "test".* TO 'drop_user'@'localhost' WITH GRANT OPTION -GRANT SELECT (a) ON "test"."t1" TO 'drop_user'@'localhost' +GRANT ALL PRIVILEGES ON *.* TO "drop_user"@"localhost" WITH GRANT OPTION +GRANT ALL PRIVILEGES ON "test".* TO "drop_user"@"localhost" WITH GRANT OPTION +GRANT SELECT (a) ON "test"."t1" TO "drop_user"@"localhost" set sql_mode=default; set sql_quote_show_create=0; show grants for drop_user@localhost; Grants for drop_user@localhost -GRANT ALL PRIVILEGES ON *.* TO 'drop_user'@'localhost' WITH GRANT OPTION -GRANT ALL PRIVILEGES ON test.* TO 'drop_user'@'localhost' WITH GRANT OPTION -GRANT SELECT (a) ON test.t1 TO 'drop_user'@'localhost' +GRANT ALL PRIVILEGES ON *.* TO drop_user@localhost WITH GRANT OPTION +GRANT ALL PRIVILEGES ON test.* TO drop_user@localhost WITH GRANT OPTION +GRANT SELECT (a) ON test.t1 TO drop_user@localhost set sql_mode="ansi_quotes"; show grants for drop_user@localhost; Grants for drop_user@localhost -GRANT ALL PRIVILEGES ON *.* TO 'drop_user'@'localhost' WITH GRANT OPTION -GRANT ALL PRIVILEGES ON test.* TO 'drop_user'@'localhost' WITH GRANT OPTION -GRANT SELECT (a) ON test.t1 TO 'drop_user'@'localhost' +GRANT ALL PRIVILEGES ON *.* TO drop_user@localhost WITH GRANT OPTION +GRANT ALL PRIVILEGES ON test.* TO drop_user@localhost WITH GRANT OPTION +GRANT SELECT (a) ON test.t1 TO drop_user@localhost set sql_quote_show_create=1; show grants for drop_user@localhost; Grants for drop_user@localhost -GRANT ALL PRIVILEGES ON *.* TO 'drop_user'@'localhost' WITH GRANT OPTION -GRANT ALL PRIVILEGES ON "test".* TO 'drop_user'@'localhost' WITH GRANT OPTION -GRANT SELECT (a) ON "test"."t1" TO 'drop_user'@'localhost' +GRANT ALL PRIVILEGES ON *.* TO "drop_user"@"localhost" WITH GRANT OPTION +GRANT ALL PRIVILEGES ON "test".* TO "drop_user"@"localhost" WITH GRANT OPTION +GRANT SELECT (a) ON "test"."t1" TO "drop_user"@"localhost" set sql_mode=""; show grants for drop_user@localhost; Grants for drop_user@localhost -GRANT ALL PRIVILEGES ON *.* TO 'drop_user'@'localhost' WITH GRANT OPTION -GRANT ALL PRIVILEGES ON `test`.* TO 'drop_user'@'localhost' WITH GRANT OPTION -GRANT SELECT (a) ON `test`.`t1` TO 'drop_user'@'localhost' +GRANT ALL PRIVILEGES ON *.* TO `drop_user`@`localhost` WITH GRANT OPTION +GRANT ALL PRIVILEGES ON `test`.* TO `drop_user`@`localhost` WITH GRANT OPTION +GRANT SELECT (a) ON `test`.`t1` TO `drop_user`@`localhost` revoke all privileges, grant option from drop_user@localhost; show grants for drop_user@localhost; Grants for drop_user@localhost -GRANT USAGE ON *.* TO 'drop_user'@'localhost' +GRANT USAGE ON *.* TO `drop_user`@`localhost` drop user drop_user@localhost; revoke all privileges, grant option from drop_user@localhost; ERROR HY000: Can't revoke all privileges for one or more of the requested users @@ -398,8 +398,8 @@ grant usage on *.* to mysqltest_1@localhost identified by "password"; grant select, update, insert on test.* to mysqltest_1@localhost; show grants for mysqltest_1@localhost; Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' IDENTIFIED BY PASSWORD '*2470C0C06DEE42FD1618BB99005ADCA2EC9D1E19' -GRANT SELECT, INSERT, UPDATE ON `test`.* TO 'mysqltest_1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` IDENTIFIED BY PASSWORD '*2470C0C06DEE42FD1618BB99005ADCA2EC9D1E19' +GRANT SELECT, INSERT, UPDATE ON `test`.* TO `mysqltest_1`@`localhost` drop user mysqltest_1@localhost; SET NAMES koi8r; CREATE DATABASE ÂÄ; @@ -408,20 +408,20 @@ CREATE TABLE GRANT SELECT ON ÂÄ.* TO ÀÚÅÒ@localhost; SHOW GRANTS FOR ÀÚÅÒ@localhost; Grants for ÀÚÅÒ@localhost -GRANT USAGE ON *.* TO 'ÀÚÅÒ'@'localhost' -GRANT SELECT ON `ÂÄ`.* TO 'ÀÚÅÒ'@'localhost' +GRANT USAGE ON *.* TO `ÀÚÅÒ`@`localhost` +GRANT SELECT ON `ÂÄ`.* TO `ÀÚÅÒ`@`localhost` REVOKE SELECT ON ÂÄ.* FROM ÀÚÅÒ@localhost; GRANT SELECT ON ÂÄ.ÔÁÂ TO ÀÚÅÒ@localhost; SHOW GRANTS FOR ÀÚÅÒ@localhost; Grants for ÀÚÅÒ@localhost -GRANT USAGE ON *.* TO 'ÀÚÅÒ'@'localhost' -GRANT SELECT ON `ÂÄ`.`ÔÁÂ` TO 'ÀÚÅÒ'@'localhost' +GRANT USAGE ON *.* TO `ÀÚÅÒ`@`localhost` +GRANT SELECT ON `ÂÄ`.`ÔÁÂ` TO `ÀÚÅÒ`@`localhost` REVOKE SELECT ON ÂÄ.ÔÁÂ FROM ÀÚÅÒ@localhost; GRANT SELECT (ËÏÌ) ON ÂÄ.ÔÁÂ TO ÀÚÅÒ@localhost; SHOW GRANTS FOR ÀÚÅÒ@localhost; Grants for ÀÚÅÒ@localhost -GRANT USAGE ON *.* TO 'ÀÚÅÒ'@'localhost' -GRANT SELECT (ËÏÌ) ON `ÂÄ`.`ÔÁÂ` TO 'ÀÚÅÒ'@'localhost' +GRANT USAGE ON *.* TO `ÀÚÅÒ`@`localhost` +GRANT SELECT (ËÏÌ) ON `ÂÄ`.`ÔÁÂ` TO `ÀÚÅÒ`@`localhost` REVOKE SELECT (ËÏÌ) ON ÂÄ.ÔÁÂ FROM ÀÚÅÒ@localhost; DROP USER ÀÚÅÒ@localhost; DROP DATABASE ÂÄ; @@ -480,7 +480,7 @@ GRANT SELECT (a) ON test.t10 TO testuser@localhost; REVOKE ALL PRIVILEGES, GRANT OPTION FROM testuser@localhost; SHOW GRANTS FOR testuser@localhost; Grants for testuser@localhost -GRANT USAGE ON *.* TO 'testuser'@'localhost' +GRANT USAGE ON *.* TO `testuser`@`localhost` DROP USER testuser@localhost; DROP TABLE t1,t2,t3,t4,t5,t6,t7,t8,t9,t10; DROP DATABASE testdb1; @@ -497,8 +497,8 @@ create table t1(a int, b int, c int, d int); grant insert(b), insert(c), insert(d), insert(a) on t1 to grant_user@localhost; show grants for grant_user@localhost; Grants for grant_user@localhost -GRANT USAGE ON *.* TO 'grant_user'@'localhost' -GRANT INSERT (a, d, c, b) ON `test`.`t1` TO 'grant_user'@'localhost' +GRANT USAGE ON *.* TO `grant_user`@`localhost` +GRANT INSERT (a, d, c, b) ON `test`.`t1` TO `grant_user`@`localhost` select Host,Db,User,Table_name,Column_name,Column_priv from mysql.columns_priv order by Column_name; Host Db User Table_name Column_name Column_priv localhost test grant_user t1 a Insert @@ -508,7 +508,7 @@ localhost test grant_user t1 d Insert revoke ALL PRIVILEGES on t1 from grant_user@localhost; show grants for grant_user@localhost; Grants for grant_user@localhost -GRANT USAGE ON *.* TO 'grant_user'@'localhost' +GRANT USAGE ON *.* TO `grant_user`@`localhost` select Host,Db,User,Table_name,Column_name,Column_priv from mysql.columns_priv; Host Db User Table_name Column_name Column_priv drop user grant_user@localhost; @@ -660,9 +660,9 @@ GRANT ALL PRIVILEGES ON mysqltest.dummytable TO dummy@localhost; GRANT ALL PRIVILEGES ON mysqltest.dummyview TO dummy@localhost; SHOW GRANTS FOR dummy@localhost; Grants for dummy@localhost -GRANT USAGE ON *.* TO 'dummy'@'localhost' -GRANT ALL PRIVILEGES ON `mysqltest`.`dummyview` TO 'dummy'@'localhost' -GRANT ALL PRIVILEGES ON `mysqltest`.`dummytable` TO 'dummy'@'localhost' +GRANT USAGE ON *.* TO `dummy`@`localhost` +GRANT ALL PRIVILEGES ON `mysqltest`.`dummyview` TO `dummy`@`localhost` +GRANT ALL PRIVILEGES ON `mysqltest`.`dummytable` TO `dummy`@`localhost` use INFORMATION_SCHEMA; SELECT TABLE_SCHEMA, TABLE_NAME, GROUP_CONCAT(PRIVILEGE_TYPE ORDER BY PRIVILEGE_TYPE SEPARATOR ', ') AS PRIVILEGES FROM TABLE_PRIVILEGES WHERE GRANTEE @@ -673,9 +673,9 @@ mysqltest dummyview ALTER, CREATE, CREATE VIEW, DELETE, DELETE HISTORY, DROP, IN FLUSH PRIVILEGES; SHOW GRANTS FOR dummy@localhost; Grants for dummy@localhost -GRANT USAGE ON *.* TO 'dummy'@'localhost' -GRANT ALL PRIVILEGES ON `mysqltest`.`dummyview` TO 'dummy'@'localhost' -GRANT ALL PRIVILEGES ON `mysqltest`.`dummytable` TO 'dummy'@'localhost' +GRANT USAGE ON *.* TO `dummy`@`localhost` +GRANT ALL PRIVILEGES ON `mysqltest`.`dummyview` TO `dummy`@`localhost` +GRANT ALL PRIVILEGES ON `mysqltest`.`dummytable` TO `dummy`@`localhost` SELECT TABLE_SCHEMA, TABLE_NAME, GROUP_CONCAT(PRIVILEGE_TYPE ORDER BY PRIVILEGE_TYPE SEPARATOR ', ') AS PRIVILEGES FROM TABLE_PRIVILEGES WHERE GRANTEE = '\'dummy\'@\'localhost\'' GROUP BY TABLE_SCHEMA, TABLE_NAME; @@ -704,9 +704,9 @@ GRANT CREATE VIEW ON mysqltest.dummytable TO dummy@localhost; GRANT CREATE VIEW ON mysqltest.dummyview TO dummy@localhost; SHOW GRANTS FOR dummy@localhost; Grants for dummy@localhost -GRANT USAGE ON *.* TO 'dummy'@'localhost' -GRANT CREATE VIEW ON `mysqltest`.`dummyview` TO 'dummy'@'localhost' -GRANT CREATE VIEW ON `mysqltest`.`dummytable` TO 'dummy'@'localhost' +GRANT USAGE ON *.* TO `dummy`@`localhost` +GRANT CREATE VIEW ON `mysqltest`.`dummyview` TO `dummy`@`localhost` +GRANT CREATE VIEW ON `mysqltest`.`dummytable` TO `dummy`@`localhost` use INFORMATION_SCHEMA; SELECT TABLE_SCHEMA, TABLE_NAME, GROUP_CONCAT(PRIVILEGE_TYPE ORDER BY PRIVILEGE_TYPE SEPARATOR ', ') AS PRIVILEGES FROM TABLE_PRIVILEGES WHERE GRANTEE @@ -717,9 +717,9 @@ mysqltest dummyview CREATE VIEW FLUSH PRIVILEGES; SHOW GRANTS FOR dummy@localhost; Grants for dummy@localhost -GRANT USAGE ON *.* TO 'dummy'@'localhost' -GRANT CREATE VIEW ON `mysqltest`.`dummyview` TO 'dummy'@'localhost' -GRANT CREATE VIEW ON `mysqltest`.`dummytable` TO 'dummy'@'localhost' +GRANT USAGE ON *.* TO `dummy`@`localhost` +GRANT CREATE VIEW ON `mysqltest`.`dummyview` TO `dummy`@`localhost` +GRANT CREATE VIEW ON `mysqltest`.`dummytable` TO `dummy`@`localhost` SELECT TABLE_SCHEMA, TABLE_NAME, GROUP_CONCAT(PRIVILEGE_TYPE ORDER BY PRIVILEGE_TYPE SEPARATOR ', ') AS PRIVILEGES FROM TABLE_PRIVILEGES WHERE GRANTEE = '\'dummy\'@\'localhost\'' GROUP BY TABLE_SCHEMA, TABLE_NAME; @@ -738,9 +738,9 @@ GRANT SHOW VIEW ON mysqltest.dummytable TO dummy@localhost; GRANT SHOW VIEW ON mysqltest.dummyview TO dummy@localhost; SHOW GRANTS FOR dummy@localhost; Grants for dummy@localhost -GRANT USAGE ON *.* TO 'dummy'@'localhost' -GRANT SHOW VIEW ON `mysqltest`.`dummyview` TO 'dummy'@'localhost' -GRANT SHOW VIEW ON `mysqltest`.`dummytable` TO 'dummy'@'localhost' +GRANT USAGE ON *.* TO `dummy`@`localhost` +GRANT SHOW VIEW ON `mysqltest`.`dummyview` TO `dummy`@`localhost` +GRANT SHOW VIEW ON `mysqltest`.`dummytable` TO `dummy`@`localhost` use INFORMATION_SCHEMA; SELECT TABLE_SCHEMA, TABLE_NAME, GROUP_CONCAT(PRIVILEGE_TYPE ORDER BY PRIVILEGE_TYPE SEPARATOR ', ') AS PRIVILEGES FROM TABLE_PRIVILEGES WHERE GRANTEE @@ -751,9 +751,9 @@ mysqltest dummyview SHOW VIEW FLUSH PRIVILEGES; SHOW GRANTS FOR dummy@localhost; Grants for dummy@localhost -GRANT USAGE ON *.* TO 'dummy'@'localhost' -GRANT SHOW VIEW ON `mysqltest`.`dummyview` TO 'dummy'@'localhost' -GRANT SHOW VIEW ON `mysqltest`.`dummytable` TO 'dummy'@'localhost' +GRANT USAGE ON *.* TO `dummy`@`localhost` +GRANT SHOW VIEW ON `mysqltest`.`dummyview` TO `dummy`@`localhost` +GRANT SHOW VIEW ON `mysqltest`.`dummytable` TO `dummy`@`localhost` SELECT TABLE_SCHEMA, TABLE_NAME, GROUP_CONCAT(PRIVILEGE_TYPE ORDER BY PRIVILEGE_TYPE SEPARATOR ', ') AS PRIVILEGES FROM TABLE_PRIVILEGES WHERE GRANTEE = '\'dummy\'@\'localhost\'' GROUP BY TABLE_SCHEMA, TABLE_NAME; @@ -782,27 +782,27 @@ hex(Db) D0B1D0B4 show grants for root@localhost; Grants for root@localhost -GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION -GRANT SELECT ON `ÂÄ`.* TO 'root'@'localhost' +GRANT ALL PRIVILEGES ON *.* TO `root`@`localhost` WITH GRANT OPTION +GRANT SELECT ON `ÂÄ`.* TO `root`@`localhost` GRANT PROXY ON ''@'%' TO 'root'@'localhost' WITH GRANT OPTION flush privileges; show grants for root@localhost; Grants for root@localhost -GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION -GRANT SELECT ON `ÂÄ`.* TO 'root'@'localhost' +GRANT ALL PRIVILEGES ON *.* TO `root`@`localhost` WITH GRANT OPTION +GRANT SELECT ON `ÂÄ`.* TO `root`@`localhost` GRANT PROXY ON ''@'%' TO 'root'@'localhost' WITH GRANT OPTION drop database ÂÄ; revoke all privileges on ÂÄ.* from root@localhost; show grants for root@localhost; Grants for root@localhost -GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION +GRANT ALL PRIVILEGES ON *.* TO `root`@`localhost` WITH GRANT OPTION GRANT PROXY ON ''@'%' TO 'root'@'localhost' WITH GRANT OPTION set names latin1; create user mysqltest_7@; set password for mysqltest_7@ = password('systpass'); show grants for mysqltest_7@; Grants for mysqltest_7@% -GRANT USAGE ON *.* TO 'mysqltest_7'@'%' IDENTIFIED BY PASSWORD '*2FB071A056F9BB745219D9C876814231DAF46517' +GRANT USAGE ON *.* TO `mysqltest_7`@`%` IDENTIFIED BY PASSWORD '*2FB071A056F9BB745219D9C876814231DAF46517' drop user mysqltest_7@; show grants for mysqltest_7@; ERROR 42000: There is no such grant defined for user 'mysqltest_7' on host '%' @@ -813,12 +813,12 @@ GRANT DELETE ON mysqltest.t1 TO mysqltest1@'%'; GRANT SELECT ON mysqltest.t1 TO mysqltest1@'192.%'; show grants for mysqltest1@'192.%'; Grants for mysqltest1@192.% -GRANT USAGE ON *.* TO 'mysqltest1'@'192.%' -GRANT SELECT ON `mysqltest`.`t1` TO 'mysqltest1'@'192.%' +GRANT USAGE ON *.* TO `mysqltest1`@`192.%` +GRANT SELECT ON `mysqltest`.`t1` TO `mysqltest1`@`192.%` show grants for mysqltest1@'%'; Grants for mysqltest1@% -GRANT USAGE ON *.* TO 'mysqltest1'@'%' -GRANT DELETE ON `mysqltest`.`t1` TO 'mysqltest1'@'%' +GRANT USAGE ON *.* TO `mysqltest1`@`%` +GRANT DELETE ON `mysqltest`.`t1` TO `mysqltest1`@`%` delete from mysql.user where user='mysqltest1'; delete from mysql.db where user='mysqltest1'; delete from mysql.tables_priv where user='mysqltest1'; @@ -861,18 +861,18 @@ Schema privileges grant select on mysqltest.* to mysqltest_8@''; show grants for mysqltest_8@''; Grants for mysqltest_8@% -GRANT USAGE ON *.* TO 'mysqltest_8'@'%' -GRANT SELECT ON `mysqltest`.* TO 'mysqltest_8'@'%' +GRANT USAGE ON *.* TO `mysqltest_8`@`%` +GRANT SELECT ON `mysqltest`.* TO `mysqltest_8`@`%` grant select on mysqltest.* to mysqltest_8@; show grants for mysqltest_8@; Grants for mysqltest_8@% -GRANT USAGE ON *.* TO 'mysqltest_8'@'%' -GRANT SELECT ON `mysqltest`.* TO 'mysqltest_8'@'%' +GRANT USAGE ON *.* TO `mysqltest_8`@`%` +GRANT SELECT ON `mysqltest`.* TO `mysqltest_8`@`%` grant select on mysqltest.* to mysqltest_8; show grants for mysqltest_8; Grants for mysqltest_8@% -GRANT USAGE ON *.* TO 'mysqltest_8'@'%' -GRANT SELECT ON `mysqltest`.* TO 'mysqltest_8'@'%' +GRANT USAGE ON *.* TO `mysqltest_8`@`%` +GRANT SELECT ON `mysqltest`.* TO `mysqltest_8`@`%` select * from information_schema.schema_privileges where grantee like "'mysqltest_8'%"; GRANTEE TABLE_CATALOG TABLE_SCHEMA PRIVILEGE_TYPE IS_GRANTABLE @@ -885,26 +885,26 @@ connection master; revoke select on mysqltest.* from mysqltest_8@''; show grants for mysqltest_8@''; Grants for mysqltest_8@% -GRANT USAGE ON *.* TO 'mysqltest_8'@'%' +GRANT USAGE ON *.* TO `mysqltest_8`@`%` show grants for mysqltest_8; Grants for mysqltest_8@% -GRANT USAGE ON *.* TO 'mysqltest_8'@'%' +GRANT USAGE ON *.* TO `mysqltest_8`@`%` select * from information_schema.schema_privileges where grantee like "'mysqltest_8'%"; GRANTEE TABLE_CATALOG TABLE_SCHEMA PRIVILEGE_TYPE IS_GRANTABLE flush privileges; show grants for mysqltest_8@''; Grants for mysqltest_8@% -GRANT USAGE ON *.* TO 'mysqltest_8'@'%' +GRANT USAGE ON *.* TO `mysqltest_8`@`%` show grants for mysqltest_8@; Grants for mysqltest_8@% -GRANT USAGE ON *.* TO 'mysqltest_8'@'%' +GRANT USAGE ON *.* TO `mysqltest_8`@`%` grant select on mysqltest.* to mysqltest_8@''; flush privileges; show grants for mysqltest_8@; Grants for mysqltest_8@% -GRANT USAGE ON *.* TO 'mysqltest_8'@'%' -GRANT SELECT ON `mysqltest`.* TO 'mysqltest_8'@'%' +GRANT USAGE ON *.* TO `mysqltest_8`@`%` +GRANT SELECT ON `mysqltest`.* TO `mysqltest_8`@`%` revoke select on mysqltest.* from mysqltest_8@''; flush privileges; Column privileges @@ -912,21 +912,21 @@ grant update (a) on t1 to mysqltest_8@''; grant update (a) on t1 to mysqltest_8; show grants for mysqltest_8@''; Grants for mysqltest_8@% -GRANT USAGE ON *.* TO 'mysqltest_8'@'%' -GRANT UPDATE (a) ON `test`.`t1` TO 'mysqltest_8'@'%' +GRANT USAGE ON *.* TO `mysqltest_8`@`%` +GRANT UPDATE (a) ON `test`.`t1` TO `mysqltest_8`@`%` show grants for mysqltest_8; Grants for mysqltest_8@% -GRANT USAGE ON *.* TO 'mysqltest_8'@'%' -GRANT UPDATE (a) ON `test`.`t1` TO 'mysqltest_8'@'%' +GRANT USAGE ON *.* TO `mysqltest_8`@`%` +GRANT UPDATE (a) ON `test`.`t1` TO `mysqltest_8`@`%` flush privileges; show grants for mysqltest_8@''; Grants for mysqltest_8@% -GRANT USAGE ON *.* TO 'mysqltest_8'@'%' -GRANT UPDATE (a) ON `test`.`t1` TO 'mysqltest_8'@'%' +GRANT USAGE ON *.* TO `mysqltest_8`@`%` +GRANT UPDATE (a) ON `test`.`t1` TO `mysqltest_8`@`%` show grants for mysqltest_8; Grants for mysqltest_8@% -GRANT USAGE ON *.* TO 'mysqltest_8'@'%' -GRANT UPDATE (a) ON `test`.`t1` TO 'mysqltest_8'@'%' +GRANT USAGE ON *.* TO `mysqltest_8`@`%` +GRANT UPDATE (a) ON `test`.`t1` TO `mysqltest_8`@`%` select * from information_schema.column_privileges; GRANTEE TABLE_CATALOG TABLE_SCHEMA TABLE_NAME COLUMN_NAME PRIVILEGE_TYPE IS_GRANTABLE 'mysqltest_8'@'%' def test t1 a UPDATE NO @@ -938,39 +938,39 @@ connection master; revoke update (a) on t1 from mysqltest_8@''; show grants for mysqltest_8@''; Grants for mysqltest_8@% -GRANT USAGE ON *.* TO 'mysqltest_8'@'%' +GRANT USAGE ON *.* TO `mysqltest_8`@`%` show grants for mysqltest_8; Grants for mysqltest_8@% -GRANT USAGE ON *.* TO 'mysqltest_8'@'%' +GRANT USAGE ON *.* TO `mysqltest_8`@`%` select * from information_schema.column_privileges; GRANTEE TABLE_CATALOG TABLE_SCHEMA TABLE_NAME COLUMN_NAME PRIVILEGE_TYPE IS_GRANTABLE flush privileges; show grants for mysqltest_8@''; Grants for mysqltest_8@% -GRANT USAGE ON *.* TO 'mysqltest_8'@'%' +GRANT USAGE ON *.* TO `mysqltest_8`@`%` show grants for mysqltest_8; Grants for mysqltest_8@% -GRANT USAGE ON *.* TO 'mysqltest_8'@'%' +GRANT USAGE ON *.* TO `mysqltest_8`@`%` Table privileges grant update on t1 to mysqltest_8@''; grant update on t1 to mysqltest_8; show grants for mysqltest_8@''; Grants for mysqltest_8@% -GRANT USAGE ON *.* TO 'mysqltest_8'@'%' -GRANT UPDATE ON `test`.`t1` TO 'mysqltest_8'@'%' +GRANT USAGE ON *.* TO `mysqltest_8`@`%` +GRANT UPDATE ON `test`.`t1` TO `mysqltest_8`@`%` show grants for mysqltest_8; Grants for mysqltest_8@% -GRANT USAGE ON *.* TO 'mysqltest_8'@'%' -GRANT UPDATE ON `test`.`t1` TO 'mysqltest_8'@'%' +GRANT USAGE ON *.* TO `mysqltest_8`@`%` +GRANT UPDATE ON `test`.`t1` TO `mysqltest_8`@`%` flush privileges; show grants for mysqltest_8@''; Grants for mysqltest_8@% -GRANT USAGE ON *.* TO 'mysqltest_8'@'%' -GRANT UPDATE ON `test`.`t1` TO 'mysqltest_8'@'%' +GRANT USAGE ON *.* TO `mysqltest_8`@`%` +GRANT UPDATE ON `test`.`t1` TO `mysqltest_8`@`%` show grants for mysqltest_8; Grants for mysqltest_8@% -GRANT USAGE ON *.* TO 'mysqltest_8'@'%' -GRANT UPDATE ON `test`.`t1` TO 'mysqltest_8'@'%' +GRANT USAGE ON *.* TO `mysqltest_8`@`%` +GRANT UPDATE ON `test`.`t1` TO `mysqltest_8`@`%` select * from information_schema.table_privileges; GRANTEE TABLE_CATALOG TABLE_SCHEMA TABLE_NAME PRIVILEGE_TYPE IS_GRANTABLE 'mysqltest_8'@'%' def test t1 UPDATE NO @@ -982,19 +982,19 @@ connection master; revoke update on t1 from mysqltest_8@''; show grants for mysqltest_8@''; Grants for mysqltest_8@% -GRANT USAGE ON *.* TO 'mysqltest_8'@'%' +GRANT USAGE ON *.* TO `mysqltest_8`@`%` show grants for mysqltest_8; Grants for mysqltest_8@% -GRANT USAGE ON *.* TO 'mysqltest_8'@'%' +GRANT USAGE ON *.* TO `mysqltest_8`@`%` select * from information_schema.table_privileges; GRANTEE TABLE_CATALOG TABLE_SCHEMA TABLE_NAME PRIVILEGE_TYPE IS_GRANTABLE flush privileges; show grants for mysqltest_8@''; Grants for mysqltest_8@% -GRANT USAGE ON *.* TO 'mysqltest_8'@'%' +GRANT USAGE ON *.* TO `mysqltest_8`@`%` show grants for mysqltest_8; Grants for mysqltest_8@% -GRANT USAGE ON *.* TO 'mysqltest_8'@'%' +GRANT USAGE ON *.* TO `mysqltest_8`@`%` "DROP USER" should clear privileges grant all privileges on mysqltest.* to mysqltest_8@''; grant select on mysqltest.* to mysqltest_8@''; @@ -1003,14 +1003,14 @@ grant update (a) on t1 to mysqltest_8@''; grant all privileges on mysqltest.* to mysqltest_8; show grants for mysqltest_8@''; Grants for mysqltest_8@% -GRANT USAGE ON *.* TO 'mysqltest_8'@'%' -GRANT ALL PRIVILEGES ON `mysqltest`.* TO 'mysqltest_8'@'%' -GRANT UPDATE, UPDATE (a) ON `test`.`t1` TO 'mysqltest_8'@'%' +GRANT USAGE ON *.* TO `mysqltest_8`@`%` +GRANT ALL PRIVILEGES ON `mysqltest`.* TO `mysqltest_8`@`%` +GRANT UPDATE, UPDATE (a) ON `test`.`t1` TO `mysqltest_8`@`%` show grants for mysqltest_8; Grants for mysqltest_8@% -GRANT USAGE ON *.* TO 'mysqltest_8'@'%' -GRANT ALL PRIVILEGES ON `mysqltest`.* TO 'mysqltest_8'@'%' -GRANT UPDATE, UPDATE (a) ON `test`.`t1` TO 'mysqltest_8'@'%' +GRANT USAGE ON *.* TO `mysqltest_8`@`%` +GRANT ALL PRIVILEGES ON `mysqltest`.* TO `mysqltest_8`@`%` +GRANT UPDATE, UPDATE (a) ON `test`.`t1` TO `mysqltest_8`@`%` select * from information_schema.user_privileges where grantee like "'mysqltest_8'%"; GRANTEE TABLE_CATALOG PRIVILEGE_TYPE IS_GRANTABLE @@ -1024,14 +1024,14 @@ connection master; flush privileges; show grants for mysqltest_8@''; Grants for mysqltest_8@% -GRANT USAGE ON *.* TO 'mysqltest_8'@'%' -GRANT ALL PRIVILEGES ON `mysqltest`.* TO 'mysqltest_8'@'%' -GRANT UPDATE, UPDATE (a) ON `test`.`t1` TO 'mysqltest_8'@'%' +GRANT USAGE ON *.* TO `mysqltest_8`@`%` +GRANT ALL PRIVILEGES ON `mysqltest`.* TO `mysqltest_8`@`%` +GRANT UPDATE, UPDATE (a) ON `test`.`t1` TO `mysqltest_8`@`%` show grants for mysqltest_8; Grants for mysqltest_8@% -GRANT USAGE ON *.* TO 'mysqltest_8'@'%' -GRANT ALL PRIVILEGES ON `mysqltest`.* TO 'mysqltest_8'@'%' -GRANT UPDATE, UPDATE (a) ON `test`.`t1` TO 'mysqltest_8'@'%' +GRANT USAGE ON *.* TO `mysqltest_8`@`%` +GRANT ALL PRIVILEGES ON `mysqltest`.* TO `mysqltest_8`@`%` +GRANT UPDATE, UPDATE (a) ON `test`.`t1` TO `mysqltest_8`@`%` drop user mysqltest_8@''; show grants for mysqltest_8@''; ERROR 42000: There is no such grant defined for user 'mysqltest_8' on host '%' @@ -1149,8 +1149,8 @@ USER() mysqltest_1@localhost SHOW GRANTS; Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' -GRANT SELECT ON `mysqltest1`.`t1` TO 'mysqltest_1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` +GRANT SELECT ON `mysqltest1`.`t1` TO `mysqltest_1`@`localhost` RENAME TABLE t1 TO t2; ERROR 42000: DROP, ALTER command denied to user 'mysqltest_1'@'localhost' for table 't1' ALTER TABLE t1 RENAME TO t2; @@ -1169,8 +1169,8 @@ GRANT ALTER ON mysqltest1.t1 TO mysqltest_1@localhost; connect conn42,localhost,mysqltest_1,,mysqltest1; SHOW GRANTS; Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' -GRANT SELECT, DROP, ALTER ON `mysqltest1`.`t1` TO 'mysqltest_1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` +GRANT SELECT, DROP, ALTER ON `mysqltest1`.`t1` TO `mysqltest_1`@`localhost` RENAME TABLE t1 TO t2; ERROR 42000: INSERT, CREATE command denied to user 'mysqltest_1'@'localhost' for table 't2' ALTER TABLE t1 RENAME TO t2; @@ -1181,8 +1181,8 @@ GRANT INSERT, CREATE ON mysqltest1.t1 TO mysqltest_1@localhost; connect conn42,localhost,mysqltest_1,,mysqltest1; SHOW GRANTS; Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' -GRANT SELECT, INSERT, CREATE, DROP, ALTER ON `mysqltest1`.`t1` TO 'mysqltest_1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` +GRANT SELECT, INSERT, CREATE, DROP, ALTER ON `mysqltest1`.`t1` TO `mysqltest_1`@`localhost` disconnect conn42; connection default; GRANT INSERT, SELECT, CREATE, ALTER, DROP ON mysqltest1.t2 TO mysqltest_1@localhost; @@ -1190,9 +1190,9 @@ DROP TABLE mysqltest1.t2; connect conn42,localhost,mysqltest_1,,mysqltest1; SHOW GRANTS; Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' -GRANT SELECT, INSERT, CREATE, DROP, ALTER ON `mysqltest1`.`t1` TO 'mysqltest_1'@'localhost' -GRANT SELECT, INSERT, CREATE, DROP, ALTER ON `mysqltest1`.`t2` TO 'mysqltest_1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` +GRANT SELECT, INSERT, CREATE, DROP, ALTER ON `mysqltest1`.`t1` TO `mysqltest_1`@`localhost` +GRANT SELECT, INSERT, CREATE, DROP, ALTER ON `mysqltest1`.`t2` TO `mysqltest_1`@`localhost` RENAME TABLE t1 TO t2; RENAME TABLE t2 TO t1; ALTER TABLE t1 RENAME TO t2; @@ -1204,9 +1204,9 @@ REVOKE DROP, INSERT ON mysqltest1.t2 FROM mysqltest_1@localhost; connect conn42,localhost,mysqltest_1,,mysqltest1; SHOW GRANTS; Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' -GRANT SELECT, CREATE, ALTER ON `mysqltest1`.`t1` TO 'mysqltest_1'@'localhost' -GRANT SELECT, CREATE, ALTER ON `mysqltest1`.`t2` TO 'mysqltest_1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` +GRANT SELECT, CREATE, ALTER ON `mysqltest1`.`t1` TO `mysqltest_1`@`localhost` +GRANT SELECT, CREATE, ALTER ON `mysqltest1`.`t2` TO `mysqltest_1`@`localhost` RENAME TABLE t1 TO t2; ERROR 42000: DROP command denied to user 'mysqltest_1'@'localhost' for table 't1' ALTER TABLE t1 RENAME TO t2; @@ -1541,9 +1541,9 @@ grant execute on procedure mysqltest1.p1 to mysqluser1@localhost; # in privilege tables and in in-memory structures. show grants for mysqluser1@localhost; Grants for mysqluser1@localhost -GRANT USAGE ON *.* TO 'mysqluser1'@'localhost' -GRANT EXECUTE ON PROCEDURE `mysqltest1`.`p1` TO 'mysqluser1'@'localhost' -GRANT EXECUTE ON FUNCTION `mysqltest1`.`f1` TO 'mysqluser1'@'localhost' +GRANT USAGE ON *.* TO `mysqluser1`@`localhost` +GRANT EXECUTE ON PROCEDURE `mysqltest1`.`p1` TO `mysqluser1`@`localhost` +GRANT EXECUTE ON FUNCTION `mysqltest1`.`f1` TO `mysqluser1`@`localhost` select db, routine_name, routine_type, proc_priv from mysql.procs_priv where user='mysqluser1' and host='localhost'; db routine_name routine_type proc_priv mysqltest1 f1 FUNCTION Execute @@ -1574,7 +1574,7 @@ connection default; create user mysqluser1@localhost; show grants for mysqluser1@localhost; Grants for mysqluser1@localhost -GRANT USAGE ON *.* TO 'mysqluser1'@'localhost' +GRANT USAGE ON *.* TO `mysqluser1`@`localhost` select db, routine_name, routine_type, proc_priv from mysql.procs_priv where user='mysqluser1' and host='localhost'; db routine_name routine_type proc_priv connect bug36544_con2,localhost,mysqluser1,,; @@ -1608,11 +1608,11 @@ grant select on mysqltest1.t11 to mysqluser1@localhost; # in privilege tables and in in-memory structures. show grants for mysqluser1@localhost; Grants for mysqluser1@localhost -GRANT USAGE ON *.* TO 'mysqluser1'@'localhost' -GRANT SELECT ON `mysqltest1`.`t11` TO 'mysqluser1'@'localhost' -GRANT SELECT ON `mysqltest1`.`t22` TO 'mysqluser1'@'localhost' -GRANT EXECUTE ON PROCEDURE `mysqltest1`.`p1` TO 'mysqluser1'@'localhost' -GRANT EXECUTE ON FUNCTION `mysqltest1`.`f1` TO 'mysqluser1'@'localhost' +GRANT USAGE ON *.* TO `mysqluser1`@`localhost` +GRANT SELECT ON `mysqltest1`.`t11` TO `mysqluser1`@`localhost` +GRANT SELECT ON `mysqltest1`.`t22` TO `mysqluser1`@`localhost` +GRANT EXECUTE ON PROCEDURE `mysqltest1`.`p1` TO `mysqluser1`@`localhost` +GRANT EXECUTE ON FUNCTION `mysqltest1`.`f1` TO `mysqluser1`@`localhost` select db, routine_name, routine_type, proc_priv from mysql.procs_priv where user='mysqluser1' and host='localhost'; db routine_name routine_type proc_priv mysqltest1 f1 FUNCTION Execute @@ -1654,7 +1654,7 @@ connection default; create user mysqluser1@localhost; show grants for mysqluser1@localhost; Grants for mysqluser1@localhost -GRANT USAGE ON *.* TO 'mysqluser1'@'localhost' +GRANT USAGE ON *.* TO `mysqluser1`@`localhost` select db, routine_name, routine_type, proc_priv from mysql.procs_priv where user='mysqluser1' and host='localhost'; db routine_name routine_type proc_priv select db, table_name, table_priv from mysql.tables_priv where user='mysqluser1' and host='localhost'; @@ -1678,11 +1678,11 @@ connection default; # show grants for mysqluser10@localhost; Grants for mysqluser10@localhost -GRANT USAGE ON *.* TO 'mysqluser10'@'localhost' -GRANT SELECT ON `mysqltest1`.`t11` TO 'mysqluser10'@'localhost' -GRANT SELECT ON `mysqltest1`.`t22` TO 'mysqluser10'@'localhost' -GRANT EXECUTE ON PROCEDURE `mysqltest1`.`p1` TO 'mysqluser10'@'localhost' -GRANT EXECUTE ON FUNCTION `mysqltest1`.`f1` TO 'mysqluser10'@'localhost' +GRANT USAGE ON *.* TO `mysqluser10`@`localhost` +GRANT SELECT ON `mysqltest1`.`t11` TO `mysqluser10`@`localhost` +GRANT SELECT ON `mysqltest1`.`t22` TO `mysqluser10`@`localhost` +GRANT EXECUTE ON PROCEDURE `mysqltest1`.`p1` TO `mysqluser10`@`localhost` +GRANT EXECUTE ON FUNCTION `mysqltest1`.`f1` TO `mysqluser10`@`localhost` select db, routine_name, routine_type, proc_priv from mysql.procs_priv where user='mysqluser10' and host='localhost'; db routine_name routine_type proc_priv mysqltest1 f1 FUNCTION Execute @@ -1822,8 +1822,8 @@ GRANT CREATE ROUTINE ON db1.* TO 'user2'@'%'; FLUSH PRIVILEGES; SHOW GRANTS FOR 'user1'@'localhost'; Grants for user1@localhost -GRANT USAGE ON *.* TO 'user1'@'localhost' -GRANT CREATE, CREATE ROUTINE ON `db1`.* TO 'user1'@'localhost' +GRANT USAGE ON *.* TO `user1`@`localhost` +GRANT CREATE, CREATE ROUTINE ON `db1`.* TO `user1`@`localhost` connect con1,localhost,user1,,; ** Connect as user1 and create a procedure. ** The creation will imply implicitly assigned @@ -1854,14 +1854,14 @@ END ;|| connection default; SHOW GRANTS FOR 'user1'@'localhost'; Grants for user1@localhost -GRANT USAGE ON *.* TO 'user1'@'localhost' -GRANT CREATE, CREATE ROUTINE ON `db1`.* TO 'user1'@'localhost' -GRANT EXECUTE, ALTER ROUTINE ON PROCEDURE `db1`.`proc1` TO 'user1'@'localhost' +GRANT USAGE ON *.* TO `user1`@`localhost` +GRANT CREATE, CREATE ROUTINE ON `db1`.* TO `user1`@`localhost` +GRANT EXECUTE, ALTER ROUTINE ON PROCEDURE `db1`.`proc1` TO `user1`@`localhost` SHOW GRANTS FOR 'user2'; Grants for user2@% -GRANT USAGE ON *.* TO 'user2'@'%' -GRANT CREATE, CREATE ROUTINE ON `db1`.* TO 'user2'@'%' -GRANT EXECUTE, ALTER ROUTINE ON PROCEDURE `db1`.`proc2` TO 'user2'@'%' +GRANT USAGE ON *.* TO `user2`@`%` +GRANT CREATE, CREATE ROUTINE ON `db1`.* TO `user2`@`%` +GRANT EXECUTE, ALTER ROUTINE ON PROCEDURE `db1`.`proc2` TO `user2`@`%` disconnect con1; disconnect con2; DROP PROCEDURE db1.proc1; @@ -1882,19 +1882,19 @@ ERROR 3D000: No database selected GRANT ALL ON *.* TO mysqltest_1; SHOW GRANTS FOR mysqltest_1; Grants for mysqltest_1@% -GRANT ALL PRIVILEGES ON *.* TO 'mysqltest_1'@'%' +GRANT ALL PRIVILEGES ON *.* TO `mysqltest_1`@`%` DROP USER mysqltest_1; USE test; GRANT ALL ON * TO mysqltest_1; SHOW GRANTS FOR mysqltest_1; Grants for mysqltest_1@% -GRANT USAGE ON *.* TO 'mysqltest_1'@'%' -GRANT ALL PRIVILEGES ON `test`.* TO 'mysqltest_1'@'%' +GRANT USAGE ON *.* TO `mysqltest_1`@`%` +GRANT ALL PRIVILEGES ON `test`.* TO `mysqltest_1`@`%` DROP USER mysqltest_1; GRANT ALL ON *.* TO mysqltest_1; SHOW GRANTS FOR mysqltest_1; Grants for mysqltest_1@% -GRANT ALL PRIVILEGES ON *.* TO 'mysqltest_1'@'%' +GRANT ALL PRIVILEGES ON *.* TO `mysqltest_1`@`%` DROP USER mysqltest_1; connection default; disconnect conn1; @@ -1967,8 +1967,8 @@ GRANT USAGE ON *.* TO mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT RELOAD, SHUTDOWN, PROCESS, FILE, SHOW DATABASES, REPLICATION SLAVE, REPLICATION CLIENT, CREATE USER ON *.* TO 'mysqltest_u1'@'localhost' -GRANT CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE ROUTINE, ALTER ROUTINE, EVENT ON `mysqltest_db1`.* TO 'mysqltest_u1'@'localhost' +GRANT RELOAD, SHUTDOWN, PROCESS, FILE, SHOW DATABASES, REPLICATION SLAVE, REPLICATION CLIENT, CREATE USER ON *.* TO `mysqltest_u1`@`localhost` +GRANT CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE ROUTINE, ALTER ROUTINE, EVENT ON `mysqltest_db1`.* TO `mysqltest_u1`@`localhost` connect con1,localhost,mysqltest_u1,,mysqltest_db1; connection con1; @@ -1980,7 +1980,7 @@ disconnect con1; REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` # -- # -- Check that global SELECT allows SHOW CREATE TABLE. @@ -1990,8 +1990,8 @@ GRANT SELECT ON mysqltest_db1.* TO mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' -GRANT SELECT ON `mysqltest_db1`.* TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` +GRANT SELECT ON `mysqltest_db1`.* TO `mysqltest_u1`@`localhost` connect con1,localhost,mysqltest_u1,,mysqltest_db1; connection con1; @@ -2006,7 +2006,7 @@ disconnect con1; REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` # -- # -- Check that global INSERT allows SHOW CREATE TABLE. @@ -2016,8 +2016,8 @@ GRANT INSERT ON mysqltest_db1.* TO mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' -GRANT INSERT ON `mysqltest_db1`.* TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` +GRANT INSERT ON `mysqltest_db1`.* TO `mysqltest_u1`@`localhost` connect con1,localhost,mysqltest_u1,,mysqltest_db1; connection con1; @@ -2032,7 +2032,7 @@ disconnect con1; REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` # -- # -- Check that global UPDATE allows SHOW CREATE TABLE. @@ -2042,8 +2042,8 @@ GRANT UPDATE ON mysqltest_db1.* TO mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' -GRANT UPDATE ON `mysqltest_db1`.* TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` +GRANT UPDATE ON `mysqltest_db1`.* TO `mysqltest_u1`@`localhost` connect con1,localhost,mysqltest_u1,,mysqltest_db1; connection con1; @@ -2058,7 +2058,7 @@ disconnect con1; REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` # -- # -- Check that global DELETE allows SHOW CREATE TABLE. @@ -2068,8 +2068,8 @@ GRANT DELETE ON mysqltest_db1.* TO mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' -GRANT DELETE ON `mysqltest_db1`.* TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` +GRANT DELETE ON `mysqltest_db1`.* TO `mysqltest_u1`@`localhost` connect con1,localhost,mysqltest_u1,,mysqltest_db1; connection con1; @@ -2084,7 +2084,7 @@ disconnect con1; REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` # -- # -- Check that global CREATE allows SHOW CREATE TABLE. @@ -2094,8 +2094,8 @@ GRANT CREATE ON mysqltest_db1.* TO mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' -GRANT CREATE ON `mysqltest_db1`.* TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` +GRANT CREATE ON `mysqltest_db1`.* TO `mysqltest_u1`@`localhost` connect con1,localhost,mysqltest_u1,,mysqltest_db1; connection con1; @@ -2110,7 +2110,7 @@ disconnect con1; REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` # -- # -- Check that global DROP allows SHOW CREATE TABLE. @@ -2120,8 +2120,8 @@ GRANT DROP ON mysqltest_db1.* TO mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' -GRANT DROP ON `mysqltest_db1`.* TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` +GRANT DROP ON `mysqltest_db1`.* TO `mysqltest_u1`@`localhost` connect con1,localhost,mysqltest_u1,,mysqltest_db1; connection con1; @@ -2136,7 +2136,7 @@ disconnect con1; REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` # -- # -- Check that global ALTER allows SHOW CREATE TABLE. @@ -2146,8 +2146,8 @@ GRANT ALTER ON mysqltest_db1.* TO mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' -GRANT ALTER ON `mysqltest_db1`.* TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` +GRANT ALTER ON `mysqltest_db1`.* TO `mysqltest_u1`@`localhost` connect con1,localhost,mysqltest_u1,,mysqltest_db1; connection con1; @@ -2162,7 +2162,7 @@ disconnect con1; REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` # -- # -- Check that global INDEX allows SHOW CREATE TABLE. @@ -2172,8 +2172,8 @@ GRANT INDEX ON mysqltest_db1.* TO mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' -GRANT INDEX ON `mysqltest_db1`.* TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` +GRANT INDEX ON `mysqltest_db1`.* TO `mysqltest_u1`@`localhost` connect con1,localhost,mysqltest_u1,,mysqltest_db1; connection con1; @@ -2188,7 +2188,7 @@ disconnect con1; REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` # -- # -- Check that global REFERENCES allows SHOW CREATE TABLE. @@ -2198,8 +2198,8 @@ GRANT REFERENCES ON mysqltest_db1.* TO mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' -GRANT REFERENCES ON `mysqltest_db1`.* TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` +GRANT REFERENCES ON `mysqltest_db1`.* TO `mysqltest_u1`@`localhost` connect con1,localhost,mysqltest_u1,,mysqltest_db1; connection con1; @@ -2214,7 +2214,7 @@ disconnect con1; REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` # -- # -- Check that global GRANT OPTION allows SHOW CREATE TABLE. @@ -2224,8 +2224,8 @@ GRANT GRANT OPTION ON mysqltest_db1.* TO mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' -GRANT USAGE ON `mysqltest_db1`.* TO 'mysqltest_u1'@'localhost' WITH GRANT OPTION +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` +GRANT USAGE ON `mysqltest_db1`.* TO `mysqltest_u1`@`localhost` WITH GRANT OPTION connect con1,localhost,mysqltest_u1,,mysqltest_db1; connection con1; @@ -2240,7 +2240,7 @@ disconnect con1; REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` # -- # -- Check that global CREATE VIEW allows SHOW CREATE TABLE. @@ -2250,8 +2250,8 @@ GRANT CREATE VIEW ON mysqltest_db1.* TO mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' -GRANT CREATE VIEW ON `mysqltest_db1`.* TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` +GRANT CREATE VIEW ON `mysqltest_db1`.* TO `mysqltest_u1`@`localhost` connect con1,localhost,mysqltest_u1,,mysqltest_db1; connection con1; @@ -2266,7 +2266,7 @@ disconnect con1; REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` # -- # -- Check that global SHOW VIEW allows SHOW CREATE TABLE. @@ -2276,8 +2276,8 @@ GRANT SHOW VIEW ON mysqltest_db1.* TO mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' -GRANT SHOW VIEW ON `mysqltest_db1`.* TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` +GRANT SHOW VIEW ON `mysqltest_db1`.* TO `mysqltest_u1`@`localhost` connect con1,localhost,mysqltest_u1,,mysqltest_db1; connection con1; @@ -2292,7 +2292,7 @@ disconnect con1; REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` # -- # -- Check that table-level SELECT allows SHOW CREATE TABLE. @@ -2302,8 +2302,8 @@ GRANT SELECT ON mysqltest_db1.t1 TO mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' -GRANT SELECT ON `mysqltest_db1`.`t1` TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` +GRANT SELECT ON `mysqltest_db1`.`t1` TO `mysqltest_u1`@`localhost` connect con1,localhost,mysqltest_u1,,mysqltest_db1; connection con1; @@ -2318,7 +2318,7 @@ disconnect con1; REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` # -- # -- Check that table-level INSERT allows SHOW CREATE TABLE. @@ -2328,8 +2328,8 @@ GRANT INSERT ON mysqltest_db1.t1 TO mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' -GRANT INSERT ON `mysqltest_db1`.`t1` TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` +GRANT INSERT ON `mysqltest_db1`.`t1` TO `mysqltest_u1`@`localhost` connect con1,localhost,mysqltest_u1,,mysqltest_db1; connection con1; @@ -2344,7 +2344,7 @@ disconnect con1; REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` # -- # -- Check that table-level UPDATE allows SHOW CREATE TABLE. @@ -2354,8 +2354,8 @@ GRANT UPDATE ON mysqltest_db1.t1 TO mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' -GRANT UPDATE ON `mysqltest_db1`.`t1` TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` +GRANT UPDATE ON `mysqltest_db1`.`t1` TO `mysqltest_u1`@`localhost` connect con1,localhost,mysqltest_u1,,mysqltest_db1; connection con1; @@ -2370,7 +2370,7 @@ disconnect con1; REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` # -- # -- Check that table-level DELETE allows SHOW CREATE TABLE. @@ -2380,8 +2380,8 @@ GRANT DELETE ON mysqltest_db1.t1 TO mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' -GRANT DELETE ON `mysqltest_db1`.`t1` TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` +GRANT DELETE ON `mysqltest_db1`.`t1` TO `mysqltest_u1`@`localhost` connect con1,localhost,mysqltest_u1,,mysqltest_db1; connection con1; @@ -2396,7 +2396,7 @@ disconnect con1; REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` # -- # -- Check that table-level CREATE allows SHOW CREATE TABLE. @@ -2406,8 +2406,8 @@ GRANT CREATE ON mysqltest_db1.t1 TO mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' -GRANT CREATE ON `mysqltest_db1`.`t1` TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` +GRANT CREATE ON `mysqltest_db1`.`t1` TO `mysqltest_u1`@`localhost` connect con1,localhost,mysqltest_u1,,mysqltest_db1; connection con1; @@ -2422,7 +2422,7 @@ disconnect con1; REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` # -- # -- Check that table-level DROP allows SHOW CREATE TABLE. @@ -2432,8 +2432,8 @@ GRANT DROP ON mysqltest_db1.t1 TO mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' -GRANT DROP ON `mysqltest_db1`.`t1` TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` +GRANT DROP ON `mysqltest_db1`.`t1` TO `mysqltest_u1`@`localhost` connect con1,localhost,mysqltest_u1,,mysqltest_db1; connection con1; @@ -2448,7 +2448,7 @@ disconnect con1; REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` # -- # -- Check that table-level ALTER allows SHOW CREATE TABLE. @@ -2458,8 +2458,8 @@ GRANT ALTER ON mysqltest_db1.t1 TO mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' -GRANT ALTER ON `mysqltest_db1`.`t1` TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` +GRANT ALTER ON `mysqltest_db1`.`t1` TO `mysqltest_u1`@`localhost` connect con1,localhost,mysqltest_u1,,mysqltest_db1; connection con1; @@ -2474,7 +2474,7 @@ disconnect con1; REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` # -- # -- Check that table-level INDEX allows SHOW CREATE TABLE. @@ -2484,8 +2484,8 @@ GRANT INDEX ON mysqltest_db1.t1 TO mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' -GRANT INDEX ON `mysqltest_db1`.`t1` TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` +GRANT INDEX ON `mysqltest_db1`.`t1` TO `mysqltest_u1`@`localhost` connect con1,localhost,mysqltest_u1,,mysqltest_db1; connection con1; @@ -2500,7 +2500,7 @@ disconnect con1; REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` # -- # -- Check that table-level REFERENCES allows SHOW CREATE TABLE. @@ -2510,8 +2510,8 @@ GRANT REFERENCES ON mysqltest_db1.t1 TO mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' -GRANT REFERENCES ON `mysqltest_db1`.`t1` TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` +GRANT REFERENCES ON `mysqltest_db1`.`t1` TO `mysqltest_u1`@`localhost` connect con1,localhost,mysqltest_u1,,mysqltest_db1; connection con1; @@ -2526,7 +2526,7 @@ disconnect con1; REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` # -- # -- Check that table-level GRANT OPTION allows SHOW CREATE TABLE. @@ -2536,8 +2536,8 @@ GRANT GRANT OPTION ON mysqltest_db1.t1 TO mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' -GRANT USAGE ON `mysqltest_db1`.`t1` TO 'mysqltest_u1'@'localhost' WITH GRANT OPTION +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` +GRANT USAGE ON `mysqltest_db1`.`t1` TO `mysqltest_u1`@`localhost` WITH GRANT OPTION connect con1,localhost,mysqltest_u1,,mysqltest_db1; connection con1; @@ -2552,7 +2552,7 @@ disconnect con1; REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` # -- # -- Check that table-level CREATE VIEW allows SHOW CREATE TABLE. @@ -2562,8 +2562,8 @@ GRANT CREATE VIEW ON mysqltest_db1.t1 TO mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' -GRANT CREATE VIEW ON `mysqltest_db1`.`t1` TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` +GRANT CREATE VIEW ON `mysqltest_db1`.`t1` TO `mysqltest_u1`@`localhost` connect con1,localhost,mysqltest_u1,,mysqltest_db1; connection con1; @@ -2578,7 +2578,7 @@ disconnect con1; REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` # -- # -- Check that table-level SHOW VIEW allows SHOW CREATE TABLE. @@ -2588,8 +2588,8 @@ GRANT SHOW VIEW ON mysqltest_db1.t1 TO mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' -GRANT SHOW VIEW ON `mysqltest_db1`.`t1` TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` +GRANT SHOW VIEW ON `mysqltest_db1`.`t1` TO `mysqltest_u1`@`localhost` connect con1,localhost,mysqltest_u1,,mysqltest_db1; connection con1; @@ -2604,7 +2604,7 @@ disconnect con1; REVOKE ALL PRIVILEGES, GRANT OPTION FROM mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` # -- # -- Cleanup. @@ -2634,7 +2634,7 @@ grant select on mysqltest_db1.t1 to mysqltest_u1; ERROR 42S02: Table 'mysqltest_db1.t1' doesn't exist show grants for mysqltest_u1; Grants for mysqltest_u1@% -GRANT USAGE ON *.* TO 'mysqltest_u1'@'%' +GRANT USAGE ON *.* TO `mysqltest_u1`@`%` drop database mysqltest_db1; drop user mysqltest_u1; # @@ -2677,28 +2677,28 @@ connect con1,localhost,foo; create procedure fooproc() select 'i am fooproc'; show grants; Grants for foo@localhost -GRANT USAGE ON *.* TO 'foo'@'localhost' -GRANT CREATE ROUTINE ON `foodb`.* TO 'foo'@'localhost' -GRANT EXECUTE, ALTER ROUTINE ON PROCEDURE `test`.`fooproc` TO 'foo'@'localhost' +GRANT USAGE ON *.* TO `foo`@`localhost` +GRANT CREATE ROUTINE ON `foodb`.* TO `foo`@`localhost` +GRANT EXECUTE, ALTER ROUTINE ON PROCEDURE `test`.`fooproc` TO `foo`@`localhost` disconnect con1; connection default; rename table mysql.procs_priv to mysql.procs_priv1; flush privileges; show grants for foo@localhost; Grants for foo@localhost -GRANT USAGE ON *.* TO 'foo'@'localhost' -GRANT CREATE ROUTINE ON `foodb`.* TO 'foo'@'localhost' +GRANT USAGE ON *.* TO `foo`@`localhost` +GRANT CREATE ROUTINE ON `foodb`.* TO `foo`@`localhost` rename table mysql.procs_priv1 to mysql.procs_priv; show grants for foo@localhost; Grants for foo@localhost -GRANT USAGE ON *.* TO 'foo'@'localhost' -GRANT CREATE ROUTINE ON `foodb`.* TO 'foo'@'localhost' +GRANT USAGE ON *.* TO `foo`@`localhost` +GRANT CREATE ROUTINE ON `foodb`.* TO `foo`@`localhost` flush privileges; show grants for foo@localhost; Grants for foo@localhost -GRANT USAGE ON *.* TO 'foo'@'localhost' -GRANT CREATE ROUTINE ON `foodb`.* TO 'foo'@'localhost' -GRANT EXECUTE, ALTER ROUTINE ON PROCEDURE `test`.`fooproc` TO 'foo'@'localhost' +GRANT USAGE ON *.* TO `foo`@`localhost` +GRANT CREATE ROUTINE ON `foodb`.* TO `foo`@`localhost` +GRANT EXECUTE, ALTER ROUTINE ON PROCEDURE `test`.`fooproc` TO `foo`@`localhost` drop user foo@localhost; drop procedure fooproc; drop database foodb; @@ -2713,7 +2713,7 @@ GRANT USAGE ON *.* TO untrusted@localhost; connect con1, localhost, untrusted; SHOW GRANTS; Grants for untrusted@localhost -GRANT USAGE ON *.* TO 'untrusted'@'localhost' +GRANT USAGE ON *.* TO `untrusted`@`localhost` SHOW DATABASES; Database information_schema @@ -2779,11 +2779,11 @@ CREATE USER ten2; GRANT ALL ON *.* TO ten2; SHOW GRANTS FOR ten2; Grants for ten2@% -GRANT ALL PRIVILEGES ON *.* TO 'ten2'@'%' +GRANT ALL PRIVILEGES ON *.* TO `ten2`@`%` FLUSH PRIVILEGES; SHOW GRANTS FOR ten2; Grants for ten2@% -GRANT ALL PRIVILEGES ON *.* TO 'ten2'@'%' +GRANT ALL PRIVILEGES ON *.* TO `ten2`@`%` DROP USER ten2; ALTER TABLE mysql.user ADD Delete_history_priv enum('N','Y') COLLATE utf8_general_ci NOT NULL DEFAULT 'N' after Create_tablespace_priv; UPDATE mysql.user SET Delete_history_priv = Super_priv WHERE @had_user_delete_history_priv = 1; diff --git a/mysql-test/main/grant2.result b/mysql-test/main/grant2.result index ffb41c1b5f8..022b94d641b 100644 --- a/mysql-test/main/grant2.result +++ b/mysql-test/main/grant2.result @@ -59,12 +59,12 @@ disconnect user1; connection default; show grants for mysqltest_1@localhost; Grants for mysqltest_1@localhost -GRANT CREATE USER ON *.* TO 'mysqltest_1'@'localhost' -GRANT ALL PRIVILEGES ON `my\_%`.* TO 'mysqltest_1'@'localhost' WITH GRANT OPTION +GRANT CREATE USER ON *.* TO `mysqltest_1`@`localhost` +GRANT ALL PRIVILEGES ON `my\_%`.* TO `mysqltest_1`@`localhost` WITH GRANT OPTION show grants for mysqltest_2@localhost; Grants for mysqltest_2@localhost -GRANT USAGE ON *.* TO 'mysqltest_2'@'localhost' -GRANT ALL PRIVILEGES ON `my\_1`.* TO 'mysqltest_2'@'localhost' WITH GRANT OPTION +GRANT USAGE ON *.* TO `mysqltest_2`@`localhost` +GRANT ALL PRIVILEGES ON `my\_1`.* TO `mysqltest_2`@`localhost` WITH GRANT OPTION show grants for mysqltest_3@localhost; ERROR 42000: There is no such grant defined for user 'mysqltest_3' on host 'localhost' delete from mysql.user where user like 'mysqltest\_%'; @@ -88,8 +88,8 @@ disconnect user2; connection default; show grants for mysqltest_1@localhost; Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' -GRANT ALL PRIVILEGES ON `mysqltest\_1`.* TO 'mysqltest_1'@'localhost' WITH GRANT OPTION +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` +GRANT ALL PRIVILEGES ON `mysqltest\_1`.* TO `mysqltest_1`@`localhost` WITH GRANT OPTION delete from mysql.user where user like 'mysqltest\_%'; delete from mysql.db where user like 'mysqltest\_%'; drop database mysqltest_1; @@ -103,8 +103,8 @@ connect mrbad, localhost, mysqltest_1,,mysqltest; connection mrbad; show grants for current_user(); Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' -GRANT SELECT, INSERT ON `mysqltest`.* TO 'mysqltest_1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` +GRANT SELECT, INSERT ON `mysqltest`.* TO `mysqltest_1`@`localhost` insert into t1 values (1, 'I can''t change it!'); update t1 set data='I can change it!' where id = 1; ERROR 42000: UPDATE command denied to user 'mysqltest_1'@'localhost' for table 't1' @@ -198,13 +198,13 @@ host db user table_name column_name % test mysqltest_2 t2 c2 show grants for 'mysqltest_1'; Grants for mysqltest_1@% -GRANT USAGE ON *.* TO 'mysqltest_1'@'%' +GRANT USAGE ON *.* TO "mysqltest_1"@"%" show grants for 'mysqltest_2'; Grants for mysqltest_2@% -GRANT SELECT ON *.* TO 'mysqltest_2'@'%' IDENTIFIED BY PASSWORD '*BD447CBA355AF58578D3AE33BA2E2CD388BA08D1' -GRANT INSERT ON "test".* TO 'mysqltest_2'@'%' -GRANT UPDATE (c2) ON "test"."t2" TO 'mysqltest_2'@'%' -GRANT UPDATE ON "test"."t1" TO 'mysqltest_2'@'%' +GRANT SELECT ON *.* TO "mysqltest_2"@"%" IDENTIFIED BY PASSWORD '*BD447CBA355AF58578D3AE33BA2E2CD388BA08D1' +GRANT INSERT ON "test".* TO "mysqltest_2"@"%" +GRANT UPDATE (c2) ON "test"."t2" TO "mysqltest_2"@"%" +GRANT UPDATE ON "test"."t1" TO "mysqltest_2"@"%" drop user 'mysqltest_1'; select host,user,password from mysql.user where user like 'mysqltest_%' order by host,user,password; host user password @@ -239,10 +239,10 @@ host db user table_name column_name % test mysqltest_1 t2 c2 show grants for 'mysqltest_1'; Grants for mysqltest_1@% -GRANT SELECT ON *.* TO 'mysqltest_1'@'%' IDENTIFIED BY PASSWORD '*BD447CBA355AF58578D3AE33BA2E2CD388BA08D1' -GRANT INSERT ON "test".* TO 'mysqltest_1'@'%' -GRANT UPDATE (c2) ON "test"."t2" TO 'mysqltest_1'@'%' -GRANT UPDATE ON "test"."t1" TO 'mysqltest_1'@'%' +GRANT SELECT ON *.* TO "mysqltest_1"@"%" IDENTIFIED BY PASSWORD '*BD447CBA355AF58578D3AE33BA2E2CD388BA08D1' +GRANT INSERT ON "test".* TO "mysqltest_1"@"%" +GRANT UPDATE (c2) ON "test"."t2" TO "mysqltest_1"@"%" +GRANT UPDATE ON "test"."t1" TO "mysqltest_1"@"%" drop user 'mysqltest_1', 'mysqltest_3'; drop user 'mysqltest_1'; ERROR HY000: Operation DROP USER failed for 'mysqltest_1'@'%' @@ -292,19 +292,19 @@ drop user 'mysqltest_2'; create user '%@b'@'b'; show grants for '%@b'@'b'; Grants for %@b@b -GRANT USAGE ON *.* TO '%@b'@'b' +GRANT USAGE ON *.* TO "%@b"@"b" grant select on mysql.* to '%@b'@'b'; show grants for '%@b'@'b'; Grants for %@b@b -GRANT USAGE ON *.* TO '%@b'@'b' -GRANT SELECT ON "mysql".* TO '%@b'@'b' +GRANT USAGE ON *.* TO "%@b"@"b" +GRANT SELECT ON "mysql".* TO "%@b"@"b" rename user '%@b'@'b' to '%@a'@'a'; show grants for '%@b'@'b'; ERROR 42000: There is no such grant defined for user '%@b' on host 'b' show grants for '%@a'@'a'; Grants for %@a@a -GRANT USAGE ON *.* TO '%@a'@'a' -GRANT SELECT ON "mysql".* TO '%@a'@'a' +GRANT USAGE ON *.* TO "%@a"@"a" +GRANT SELECT ON "mysql".* TO "%@a"@"a" drop user '%@a'@'a'; create user mysqltest_2@localhost; grant create user on *.* to mysqltest_2@localhost; @@ -324,8 +324,8 @@ connect user4,localhost,mysqltest_3,,; connection user4; show grants; Grants for mysqltest_3@localhost -GRANT USAGE ON *.* TO 'mysqltest_3'@'localhost' -GRANT INSERT, UPDATE, DELETE ON `mysql`.* TO 'mysqltest_3'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_3`@`localhost` +GRANT INSERT, UPDATE, DELETE ON `mysql`.* TO `mysqltest_3`@`localhost` select host,user,password from mysql.user where user like 'mysqltest_%' order by host,user,password; ERROR 42000: SELECT command denied to user 'mysqltest_3'@'localhost' for table 'user' insert into mysql.user set host='%', user='mysqltest_B'; @@ -350,8 +350,8 @@ connect n1,127.0.0.1,mysqltest_1,,mysqltest_1,$MASTER_MYPORT,$MASTER_MYSOCK; connection n1; show grants for current_user(); Grants for mysqltest_1@127.0.0.0/255.0.0.0 -GRANT USAGE ON *.* TO 'mysqltest_1'@'127.0.0.0/255.0.0.0' -GRANT ALL PRIVILEGES ON `mysqltest_1`.`t1` TO 'mysqltest_1'@'127.0.0.0/255.0.0.0' +GRANT USAGE ON *.* TO `mysqltest_1`@`127.0.0.0/255.0.0.0` +GRANT ALL PRIVILEGES ON `mysqltest_1`.`t1` TO `mysqltest_1`@`127.0.0.0/255.0.0.0` select * from t1; i 1 diff --git a/mysql-test/main/grant3.result b/mysql-test/main/grant3.result index 4c99fb02f19..e26f19ee492 100644 --- a/mysql-test/main/grant3.result +++ b/mysql-test/main/grant3.result @@ -143,9 +143,9 @@ connect conn1,localhost,mysqltest1,,; connection conn1; SHOW GRANTS; Grants for mysqltest1@% -GRANT USAGE ON *.* TO 'mysqltest1'@'%' -GRANT SELECT, UPDATE ON `mysqltest\_1`.* TO 'mysqltest1'@'%' -GRANT UPDATE ON `mysqltest_1`.* TO 'mysqltest1'@'%' +GRANT USAGE ON *.* TO `mysqltest1`@`%` +GRANT SELECT, UPDATE ON `mysqltest\_1`.* TO `mysqltest1`@`%` +GRANT UPDATE ON `mysqltest_1`.* TO `mysqltest1`@`%` SELECT * FROM mysqltest_1.t1; a disconnect conn1; @@ -166,20 +166,20 @@ RENAME USER 'user1'@'%' TO 'user2'@'%'; # Show privileges after rename and BEFORE grant SHOW GRANTS FOR 'user2'@'%'; Grants for user2@% -GRANT USAGE ON *.* TO 'user2'@'%' +GRANT USAGE ON *.* TO `user2`@`%` GRANT SELECT (a), INSERT (b) ON `temp`.`t1` TO 'user2'@'%'; # Show privileges after rename and grant SHOW GRANTS FOR 'user2'@'%'; Grants for user2@% -GRANT USAGE ON *.* TO 'user2'@'%' -GRANT SELECT (a), INSERT (b) ON `temp`.`t1` TO 'user2'@'%' +GRANT USAGE ON *.* TO `user2`@`%` +GRANT SELECT (a), INSERT (b) ON `temp`.`t1` TO `user2`@`%` # Connect as the renamed user connect conn1, localhost, user2,,; connection conn1; SHOW GRANTS; Grants for user2@% -GRANT USAGE ON *.* TO 'user2'@'%' -GRANT SELECT (a), INSERT (b) ON `temp`.`t1` TO 'user2'@'%' +GRANT USAGE ON *.* TO `user2`@`%` +GRANT SELECT (a), INSERT (b) ON `temp`.`t1` TO `user2`@`%` SELECT a FROM temp.t1; a 1 diff --git a/mysql-test/main/grant5.result b/mysql-test/main/grant5.result index c0fecf0c369..6f474e3d52a 100644 --- a/mysql-test/main/grant5.result +++ b/mysql-test/main/grant5.result @@ -8,11 +8,11 @@ connect conn_1, localhost, test,,; set role foo; show grants for test; Grants for test@% -GRANT foo TO 'test'@'%' -GRANT USAGE ON *.* TO 'test'@'%' +GRANT `foo` TO `test`@`%` +GRANT USAGE ON *.* TO `test`@`%` show grants for foo; Grants for foo -GRANT USAGE ON *.* TO 'foo' +GRANT USAGE ON *.* TO `foo` show grants for foo@'%'; ERROR 42000: Access denied for user 'test'@'%' to database 'mysql' connection default; @@ -25,3 +25,98 @@ ERROR HY000: Table 'user' was not locked with LOCK TABLES REVOKE PROCESS ON *.* FROM u; ERROR HY000: Table 'user' was not locked with LOCK TABLES DROP TABLE t1; +# +# MDEV-20076: SHOW GRANTS does not quote role names properly +# +create role 'role1'; +create role 'fetch'; +create role 'role-1'; +create role 'rock\'n\'roll'; +create user 'user1'@'localhost'; +create user 'fetch'@'localhost'; +create user 'user-1'@'localhost'; +create user 'O\'Brien'@'localhost'; +grant select on mysql.user to role1; +grant select on mysql.user to 'fetch'; +grant select on mysql.user to 'role-1'; +grant select on mysql.user to 'rock\'n\'roll'; +GRANT 'role1' TO 'user1'@'localhost'; +GRANT 'fetch' TO 'fetch'@'localhost'; +GRANT 'role-1' TO 'user-1'@'localhost'; +GRANT 'rock\'n\'roll' TO 'O\'Brien'@'localhost'; +show grants for 'role1'; +Grants for role1 +GRANT USAGE ON *.* TO `role1` +GRANT SELECT ON `mysql`.`user` TO `role1` +show grants for 'fetch'; +Grants for fetch +GRANT USAGE ON *.* TO `fetch` +GRANT SELECT ON `mysql`.`user` TO `fetch` +show grants for 'role-1'; +Grants for role-1 +GRANT USAGE ON *.* TO `role-1` +GRANT SELECT ON `mysql`.`user` TO `role-1` +show grants for 'rock\'n\'roll'; +Grants for rock'n'roll +GRANT USAGE ON *.* TO `rock'n'roll` +GRANT SELECT ON `mysql`.`user` TO `rock'n'roll` +show grants for 'user1'@'localhost'; +Grants for user1@localhost +GRANT `role1` TO `user1`@`localhost` +GRANT USAGE ON *.* TO `user1`@`localhost` +show grants for 'fetch'@'localhost'; +Grants for fetch@localhost +GRANT `fetch` TO `fetch`@`localhost` +GRANT USAGE ON *.* TO `fetch`@`localhost` +show grants for 'user-1'@'localhost'; +Grants for user-1@localhost +GRANT `role-1` TO `user-1`@`localhost` +GRANT USAGE ON *.* TO `user-1`@`localhost` +show grants for 'O\'Brien'@'localhost'; +Grants for O'Brien@localhost +GRANT `rock'n'roll` TO `O'Brien`@`localhost` +GRANT USAGE ON *.* TO `O'Brien`@`localhost` +set @save_sql_quote_show_create= @@sql_quote_show_create; +set @@sql_quote_show_create= OFF; +show grants for 'role1'; +Grants for role1 +GRANT USAGE ON *.* TO role1 +GRANT SELECT ON `mysql`.`user` TO role1 +show grants for 'fetch'; +Grants for fetch +GRANT USAGE ON *.* TO `fetch` +GRANT SELECT ON `mysql`.`user` TO `fetch` +show grants for 'role-1'; +Grants for role-1 +GRANT USAGE ON *.* TO `role-1` +GRANT SELECT ON `mysql`.`user` TO `role-1` +show grants for 'rock\'n\'roll'; +Grants for rock'n'roll +GRANT USAGE ON *.* TO `rock'n'roll` +GRANT SELECT ON `mysql`.`user` TO `rock'n'roll` +show grants for 'user1'@'localhost'; +Grants for user1@localhost +GRANT role1 TO user1@localhost +GRANT USAGE ON *.* TO user1@localhost +show grants for 'fetch'@'localhost'; +Grants for fetch@localhost +GRANT `fetch` TO `fetch`@localhost +GRANT USAGE ON *.* TO `fetch`@localhost +show grants for 'user-1'@'localhost'; +Grants for user-1@localhost +GRANT `role-1` TO `user-1`@localhost +GRANT USAGE ON *.* TO `user-1`@localhost +show grants for 'O\'Brien'@'localhost'; +Grants for O'Brien@localhost +GRANT `rock'n'roll` TO `O'Brien`@localhost +GRANT USAGE ON *.* TO `O'Brien`@localhost +set @@sql_quote_show_create= @save_sql_quote_show_create; +drop role 'role1'; +drop role 'fetch'; +drop role 'role-1'; +drop role 'rock\'n\'roll'; +drop user 'user1'@'localhost'; +drop user 'fetch'@'localhost'; +drop user 'user-1'@'localhost'; +drop user 'O\'Brien'@'localhost'; +# End of 10.3 tests diff --git a/mysql-test/main/grant5.test b/mysql-test/main/grant5.test index 649bba7d1ca..63ea5590235 100644 --- a/mysql-test/main/grant5.test +++ b/mysql-test/main/grant5.test @@ -33,3 +33,53 @@ REVOKE EXECUTE ON PROCEDURE sp FROM u; --error ER_TABLE_NOT_LOCKED REVOKE PROCESS ON *.* FROM u; DROP TABLE t1; + +--echo # +--echo # MDEV-20076: SHOW GRANTS does not quote role names properly +--echo # + +create role 'role1'; +create role 'fetch'; +create role 'role-1'; +create role 'rock\'n\'roll'; +create user 'user1'@'localhost'; +create user 'fetch'@'localhost'; +create user 'user-1'@'localhost'; +create user 'O\'Brien'@'localhost'; +grant select on mysql.user to role1; +grant select on mysql.user to 'fetch'; +grant select on mysql.user to 'role-1'; +grant select on mysql.user to 'rock\'n\'roll'; +GRANT 'role1' TO 'user1'@'localhost'; +GRANT 'fetch' TO 'fetch'@'localhost'; +GRANT 'role-1' TO 'user-1'@'localhost'; +GRANT 'rock\'n\'roll' TO 'O\'Brien'@'localhost'; +show grants for 'role1'; +show grants for 'fetch'; +show grants for 'role-1'; +show grants for 'rock\'n\'roll'; +show grants for 'user1'@'localhost'; +show grants for 'fetch'@'localhost'; +show grants for 'user-1'@'localhost'; +show grants for 'O\'Brien'@'localhost'; +set @save_sql_quote_show_create= @@sql_quote_show_create; +set @@sql_quote_show_create= OFF; +show grants for 'role1'; +show grants for 'fetch'; +show grants for 'role-1'; +show grants for 'rock\'n\'roll'; +show grants for 'user1'@'localhost'; +show grants for 'fetch'@'localhost'; +show grants for 'user-1'@'localhost'; +show grants for 'O\'Brien'@'localhost'; +set @@sql_quote_show_create= @save_sql_quote_show_create; +drop role 'role1'; +drop role 'fetch'; +drop role 'role-1'; +drop role 'rock\'n\'roll'; +drop user 'user1'@'localhost'; +drop user 'fetch'@'localhost'; +drop user 'user-1'@'localhost'; +drop user 'O\'Brien'@'localhost'; + +--echo # End of 10.3 tests diff --git a/mysql-test/main/grant_cache_no_prot.result b/mysql-test/main/grant_cache_no_prot.result index 04eb2469732..780fb254b76 100644 --- a/mysql-test/main/grant_cache_no_prot.result +++ b/mysql-test/main/grant_cache_no_prot.result @@ -14,11 +14,11 @@ connect root,localhost,root,,test,$MASTER_MYPORT,$MASTER_MYSOCK; connection root; show grants for current_user; Grants for root@localhost -GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION +GRANT ALL PRIVILEGES ON *.* TO `root`@`localhost` WITH GRANT OPTION GRANT PROXY ON ''@'%' TO 'root'@'localhost' WITH GRANT OPTION show grants; Grants for root@localhost -GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION +GRANT ALL PRIVILEGES ON *.* TO `root`@`localhost` WITH GRANT OPTION GRANT PROXY ON ''@'%' TO 'root'@'localhost' WITH GRANT OPTION create database if not exists mysqltest; create table mysqltest.t1 (a int,b int,c int); @@ -65,8 +65,8 @@ connect user1,localhost,mysqltest_1,,mysqltest,$MASTER_MYPORT,$MASTER_MYSOCK; connection user1; show grants for current_user(); Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' -GRANT SELECT ON `mysqltest`.* TO 'mysqltest_1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` +GRANT SELECT ON `mysqltest`.* TO `mysqltest_1`@`localhost` show status like "Qcache_queries_in_cache"; Variable_name Value Qcache_queries_in_cache 6 @@ -131,7 +131,7 @@ connect unkuser,localhost,unkuser,,,$MASTER_MYPORT,$MASTER_MYSOCK; connection unkuser; show grants for current_user(); Grants for @localhost -GRANT USAGE ON *.* TO ''@'localhost' +GRANT USAGE ON *.* TO ``@`localhost` connect user2,localhost,mysqltest_2,,mysqltest,$MASTER_MYPORT,$MASTER_MYSOCK; connection user2; select "user2"; @@ -197,8 +197,8 @@ user4 user4 show grants; Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' -GRANT SELECT ON `mysqltest`.* TO 'mysqltest_1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` +GRANT SELECT ON `mysqltest`.* TO `mysqltest_1`@`localhost` select a from t1; ERROR 3D000: No database selected select * from mysqltest.t1,test.t1; diff --git a/mysql-test/main/grant_cache_ps_prot.result b/mysql-test/main/grant_cache_ps_prot.result index 3bc51430fd0..9dcf8c4aa8f 100644 --- a/mysql-test/main/grant_cache_ps_prot.result +++ b/mysql-test/main/grant_cache_ps_prot.result @@ -14,11 +14,11 @@ connect root,localhost,root,,test,$MASTER_MYPORT,$MASTER_MYSOCK; connection root; show grants for current_user; Grants for root@localhost -GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION +GRANT ALL PRIVILEGES ON *.* TO `root`@`localhost` WITH GRANT OPTION GRANT PROXY ON ''@'%' TO 'root'@'localhost' WITH GRANT OPTION show grants; Grants for root@localhost -GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION +GRANT ALL PRIVILEGES ON *.* TO `root`@`localhost` WITH GRANT OPTION GRANT PROXY ON ''@'%' TO 'root'@'localhost' WITH GRANT OPTION create database if not exists mysqltest; create table mysqltest.t1 (a int,b int,c int); @@ -65,8 +65,8 @@ connect user1,localhost,mysqltest_1,,mysqltest,$MASTER_MYPORT,$MASTER_MYSOCK; connection user1; show grants for current_user(); Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' -GRANT SELECT ON `mysqltest`.* TO 'mysqltest_1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` +GRANT SELECT ON `mysqltest`.* TO `mysqltest_1`@`localhost` show status like "Qcache_queries_in_cache"; Variable_name Value Qcache_queries_in_cache 6 @@ -131,7 +131,7 @@ connect unkuser,localhost,unkuser,,,$MASTER_MYPORT,$MASTER_MYSOCK; connection unkuser; show grants for current_user(); Grants for @localhost -GRANT USAGE ON *.* TO ''@'localhost' +GRANT USAGE ON *.* TO ``@`localhost` connect user2,localhost,mysqltest_2,,mysqltest,$MASTER_MYPORT,$MASTER_MYSOCK; connection user2; select "user2"; @@ -197,8 +197,8 @@ user4 user4 show grants; Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' -GRANT SELECT ON `mysqltest`.* TO 'mysqltest_1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` +GRANT SELECT ON `mysqltest`.* TO `mysqltest_1`@`localhost` select a from t1; ERROR 3D000: No database selected select * from mysqltest.t1,test.t1; diff --git a/mysql-test/main/information_schema.result b/mysql-test/main/information_schema.result index bca22b4885e..b11d8d432e0 100644 --- a/mysql-test/main/information_schema.result +++ b/mysql-test/main/information_schema.result @@ -1039,8 +1039,8 @@ GRANTEE TABLE_CATALOG PRIVILEGE_TYPE IS_GRANTABLE 'user1'@'localhost' def USAGE NO show grants; Grants for user1@localhost -GRANT USAGE ON *.* TO 'user1'@'localhost' -GRANT SELECT (f1) ON `mysqltest`.`t1` TO 'user1'@'localhost' +GRANT USAGE ON *.* TO `user1`@`localhost` +GRANT SELECT (f1) ON `mysqltest`.`t1` TO `user1`@`localhost` connection con2; select * from information_schema.column_privileges order by grantee; GRANTEE TABLE_CATALOG TABLE_SCHEMA TABLE_NAME COLUMN_NAME PRIVILEGE_TYPE IS_GRANTABLE @@ -1054,8 +1054,8 @@ GRANTEE TABLE_CATALOG PRIVILEGE_TYPE IS_GRANTABLE 'user2'@'localhost' def USAGE NO show grants; Grants for user2@localhost -GRANT USAGE ON *.* TO 'user2'@'localhost' -GRANT SELECT ON `mysqltest`.`t2` TO 'user2'@'localhost' +GRANT USAGE ON *.* TO `user2`@`localhost` +GRANT SELECT ON `mysqltest`.`t2` TO `user2`@`localhost` connection con3; select * from information_schema.column_privileges order by grantee; GRANTEE TABLE_CATALOG TABLE_SCHEMA TABLE_NAME COLUMN_NAME PRIVILEGE_TYPE IS_GRANTABLE @@ -1069,8 +1069,8 @@ GRANTEE TABLE_CATALOG PRIVILEGE_TYPE IS_GRANTABLE 'user3'@'localhost' def USAGE NO show grants; Grants for user3@localhost -GRANT USAGE ON *.* TO 'user3'@'localhost' -GRANT SELECT ON `mysqltest`.* TO 'user3'@'localhost' +GRANT USAGE ON *.* TO `user3`@`localhost` +GRANT SELECT ON `mysqltest`.* TO `user3`@`localhost` connection con4; select * from information_schema.column_privileges where grantee like '\'user%' order by grantee; @@ -1093,7 +1093,7 @@ GRANTEE TABLE_CATALOG PRIVILEGE_TYPE IS_GRANTABLE 'user4'@'localhost' def SELECT NO show grants; Grants for user4@localhost -GRANT SELECT ON *.* TO 'user4'@'localhost' +GRANT SELECT ON *.* TO `user4`@`localhost` connection default; disconnect con1; disconnect con2; diff --git a/mysql-test/main/invisible_field_grant_completely.result b/mysql-test/main/invisible_field_grant_completely.result index 208a9f24ddf..aa0a768c51c 100644 --- a/mysql-test/main/invisible_field_grant_completely.result +++ b/mysql-test/main/invisible_field_grant_completely.result @@ -2,7 +2,7 @@ set @old_debug= @@debug_dbug; create user user_1; show grants for user_1; Grants for user_1@% -GRANT USAGE ON *.* TO 'user_1'@'%' +GRANT USAGE ON *.* TO `user_1`@`%` # create user create database d; use d; diff --git a/mysql-test/main/invisible_field_grant_system.result b/mysql-test/main/invisible_field_grant_system.result index 77acfdae744..b69478c58b3 100644 --- a/mysql-test/main/invisible_field_grant_system.result +++ b/mysql-test/main/invisible_field_grant_system.result @@ -1,7 +1,7 @@ create user user_1; show grants for user_1; Grants for user_1@% -GRANT USAGE ON *.* TO 'user_1'@'%' +GRANT USAGE ON *.* TO `user_1`@`%` # create user create database d; use d; diff --git a/mysql-test/main/ipv4_and_ipv6.result b/mysql-test/main/ipv4_and_ipv6.result index 447c20536e2..9ae55c56f65 100644 --- a/mysql-test/main/ipv4_and_ipv6.result +++ b/mysql-test/main/ipv4_and_ipv6.result @@ -4,8 +4,8 @@ CREATE USER testuser@'::1' identified by '1234'; GRANT ALL ON test.* TO testuser@'::1'; SHOW GRANTS FOR testuser@'::1'; Grants for testuser@::1 -GRANT USAGE ON *.* TO 'testuser'@'::1' IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF' -GRANT ALL PRIVILEGES ON `test`.* TO 'testuser'@'::1' +GRANT USAGE ON *.* TO `testuser`@`::1` IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF' +GRANT ALL PRIVILEGES ON `test`.* TO `testuser`@`::1` SET @nip= inet_aton('::1'); SELECT @nip; @nip @@ -36,8 +36,8 @@ CREATE USER testuser@'127.0.0.1' identified by '1234'; GRANT ALL ON test.* TO testuser@'127.0.0.1'; SHOW GRANTS FOR testuser@'127.0.0.1'; Grants for testuser@127.0.0.1 -GRANT USAGE ON *.* TO 'testuser'@'127.0.0.1' IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF' -GRANT ALL PRIVILEGES ON `test`.* TO 'testuser'@'127.0.0.1' +GRANT USAGE ON *.* TO `testuser`@`127.0.0.1` IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF' +GRANT ALL PRIVILEGES ON `test`.* TO `testuser`@`127.0.0.1` SET @nip= inet_aton('127.0.0.1'); SELECT @nip; @nip diff --git a/mysql-test/main/ipv4_as_ipv6.result b/mysql-test/main/ipv4_as_ipv6.result index b92b545da86..3b523454b3b 100644 --- a/mysql-test/main/ipv4_as_ipv6.result +++ b/mysql-test/main/ipv4_as_ipv6.result @@ -4,8 +4,8 @@ CREATE USER testuser@'127.0.0.1' identified by '1234'; GRANT ALL ON test.* TO testuser@'127.0.0.1'; SHOW GRANTS FOR testuser@'127.0.0.1'; Grants for testuser@127.0.0.1 -GRANT USAGE ON *.* TO 'testuser'@'127.0.0.1' IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF' -GRANT ALL PRIVILEGES ON `test`.* TO 'testuser'@'127.0.0.1' +GRANT USAGE ON *.* TO `testuser`@`127.0.0.1` IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF' +GRANT ALL PRIVILEGES ON `test`.* TO `testuser`@`127.0.0.1` SET @nip= inet_aton('127.0.0.1'); SELECT @nip; @nip @@ -36,8 +36,8 @@ CREATE USER testuser@'0:0:0:0:0:FFFF:127.0.0.1' identified by '1234'; GRANT ALL ON test.* TO testuser@'0:0:0:0:0:FFFF:127.0.0.1'; SHOW GRANTS FOR testuser@'0:0:0:0:0:FFFF:127.0.0.1'; Grants for testuser@0:0:0:0:0:ffff:127.0.0.1 -GRANT USAGE ON *.* TO 'testuser'@'0:0:0:0:0:ffff:127.0.0.1' IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF' -GRANT ALL PRIVILEGES ON `test`.* TO 'testuser'@'0:0:0:0:0:ffff:127.0.0.1' +GRANT USAGE ON *.* TO `testuser`@`0:0:0:0:0:ffff:127.0.0.1` IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF' +GRANT ALL PRIVILEGES ON `test`.* TO `testuser`@`0:0:0:0:0:ffff:127.0.0.1` SET @nip= inet_aton('0:0:0:0:0:FFFF:127.0.0.1'); SELECT @nip; @nip @@ -68,8 +68,8 @@ CREATE USER testuser@'0000:0000:0000:0000:0000:FFFF:127.0.0.1' identified by '12 GRANT ALL ON test.* TO testuser@'0000:0000:0000:0000:0000:FFFF:127.0.0.1'; SHOW GRANTS FOR testuser@'0000:0000:0000:0000:0000:FFFF:127.0.0.1'; Grants for testuser@0000:0000:0000:0000:0000:ffff:127.0.0.1 -GRANT USAGE ON *.* TO 'testuser'@'0000:0000:0000:0000:0000:ffff:127.0.0.1' IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF' -GRANT ALL PRIVILEGES ON `test`.* TO 'testuser'@'0000:0000:0000:0000:0000:ffff:127.0.0.1' +GRANT USAGE ON *.* TO `testuser`@`0000:0000:0000:0000:0000:ffff:127.0.0.1` IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF' +GRANT ALL PRIVILEGES ON `test`.* TO `testuser`@`0000:0000:0000:0000:0000:ffff:127.0.0.1` SET @nip= inet_aton('0000:0000:0000:0000:0000:FFFF:127.0.0.1'); SELECT @nip; @nip @@ -100,8 +100,8 @@ CREATE USER testuser@'0:0000:0000:0:0000:FFFF:127.0.0.1' identified by '1234'; GRANT ALL ON test.* TO testuser@'0:0000:0000:0:0000:FFFF:127.0.0.1'; SHOW GRANTS FOR testuser@'0:0000:0000:0:0000:FFFF:127.0.0.1'; Grants for testuser@0:0000:0000:0:0000:ffff:127.0.0.1 -GRANT USAGE ON *.* TO 'testuser'@'0:0000:0000:0:0000:ffff:127.0.0.1' IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF' -GRANT ALL PRIVILEGES ON `test`.* TO 'testuser'@'0:0000:0000:0:0000:ffff:127.0.0.1' +GRANT USAGE ON *.* TO `testuser`@`0:0000:0000:0:0000:ffff:127.0.0.1` IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF' +GRANT ALL PRIVILEGES ON `test`.* TO `testuser`@`0:0000:0000:0:0000:ffff:127.0.0.1` SET @nip= inet_aton('0:0000:0000:0:0000:FFFF:127.0.0.1'); SELECT @nip; @nip @@ -132,8 +132,8 @@ CREATE USER testuser@'0::0000:FFFF:127.0.0.1' identified by '1234'; GRANT ALL ON test.* TO testuser@'0::0000:FFFF:127.0.0.1'; SHOW GRANTS FOR testuser@'0::0000:FFFF:127.0.0.1'; Grants for testuser@0::0000:ffff:127.0.0.1 -GRANT USAGE ON *.* TO 'testuser'@'0::0000:ffff:127.0.0.1' IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF' -GRANT ALL PRIVILEGES ON `test`.* TO 'testuser'@'0::0000:ffff:127.0.0.1' +GRANT USAGE ON *.* TO `testuser`@`0::0000:ffff:127.0.0.1` IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF' +GRANT ALL PRIVILEGES ON `test`.* TO `testuser`@`0::0000:ffff:127.0.0.1` SET @nip= inet_aton('0::0000:FFFF:127.0.0.1'); SELECT @nip; @nip @@ -165,8 +165,8 @@ CREATE USER testuser@'::FFFF:127.0.0.1' identified by '1234'; GRANT ALL ON test.* TO testuser@'::FFFF:127.0.0.1'; SHOW GRANTS FOR testuser@'::FFFF:127.0.0.1'; Grants for testuser@::ffff:127.0.0.1 -GRANT USAGE ON *.* TO 'testuser'@'::ffff:127.0.0.1' IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF' -GRANT ALL PRIVILEGES ON `test`.* TO 'testuser'@'::ffff:127.0.0.1' +GRANT USAGE ON *.* TO `testuser`@`::ffff:127.0.0.1` IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF' +GRANT ALL PRIVILEGES ON `test`.* TO `testuser`@`::ffff:127.0.0.1` SET @nip= inet_aton('::FFFF:127.0.0.1'); SELECT @nip; @nip diff --git a/mysql-test/main/ipv6.result b/mysql-test/main/ipv6.result index 1540b4825e5..31a4857659c 100644 --- a/mysql-test/main/ipv6.result +++ b/mysql-test/main/ipv6.result @@ -4,8 +4,8 @@ CREATE USER testuser@'::1' identified by '1234'; GRANT ALL ON test.* TO testuser@'::1'; SHOW GRANTS FOR testuser@'::1'; Grants for testuser@::1 -GRANT USAGE ON *.* TO 'testuser'@'::1' IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF' -GRANT ALL PRIVILEGES ON `test`.* TO 'testuser'@'::1' +GRANT USAGE ON *.* TO `testuser`@`::1` IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF' +GRANT ALL PRIVILEGES ON `test`.* TO `testuser`@`::1` SET @nip= inet_aton('::1'); SELECT @nip; @nip @@ -37,8 +37,8 @@ CREATE USER testuser@'0000:0000:0000:0000:0000:0000:0000:0001' identified by '12 GRANT ALL ON test.* TO testuser@'0000:0000:0000:0000:0000:0000:0000:0001'; SHOW GRANTS FOR testuser@'0000:0000:0000:0000:0000:0000:0000:0001'; Grants for testuser@0000:0000:0000:0000:0000:0000:0000:0001 -GRANT USAGE ON *.* TO 'testuser'@'0000:0000:0000:0000:0000:0000:0000:0001' IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF' -GRANT ALL PRIVILEGES ON `test`.* TO 'testuser'@'0000:0000:0000:0000:0000:0000:0000:0001' +GRANT USAGE ON *.* TO `testuser`@`0000:0000:0000:0000:0000:0000:0000:0001` IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF' +GRANT ALL PRIVILEGES ON `test`.* TO `testuser`@`0000:0000:0000:0000:0000:0000:0000:0001` SET @nip= inet_aton('0000:0000:0000:0000:0000:0000:0000:0001'); SELECT @nip; @nip @@ -69,8 +69,8 @@ CREATE USER testuser@'0:0:0:0:0:0:0:1' identified by '1234'; GRANT ALL ON test.* TO testuser@'0:0:0:0:0:0:0:1'; SHOW GRANTS FOR testuser@'0:0:0:0:0:0:0:1'; Grants for testuser@0:0:0:0:0:0:0:1 -GRANT USAGE ON *.* TO 'testuser'@'0:0:0:0:0:0:0:1' IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF' -GRANT ALL PRIVILEGES ON `test`.* TO 'testuser'@'0:0:0:0:0:0:0:1' +GRANT USAGE ON *.* TO `testuser`@`0:0:0:0:0:0:0:1` IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF' +GRANT ALL PRIVILEGES ON `test`.* TO `testuser`@`0:0:0:0:0:0:0:1` SET @nip= inet_aton('0:0:0:0:0:0:0:1'); SELECT @nip; @nip diff --git a/mysql-test/main/lowercase_table_grant.result b/mysql-test/main/lowercase_table_grant.result index 9ba542ec22d..45b6ab0410f 100644 --- a/mysql-test/main/lowercase_table_grant.result +++ b/mysql-test/main/lowercase_table_grant.result @@ -4,8 +4,8 @@ create database MYSQLtest; grant all on MySQLtest.* to mysqltest_1@localhost; show grants for mysqltest_1@localhost; Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' -GRANT ALL PRIVILEGES ON `mysqltest`.* TO 'mysqltest_1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` +GRANT ALL PRIVILEGES ON `mysqltest`.* TO `mysqltest_1`@`localhost` select * from db where user = 'mysqltest_1'; Host Db User Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Grant_priv References_priv Index_priv Alter_priv Create_tmp_table_priv Lock_tables_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Execute_priv Event_priv Trigger_priv Delete_history_priv localhost mysqltest mysqltest_1 Y Y Y Y Y Y N Y Y Y Y Y Y Y Y Y Y Y Y Y @@ -13,8 +13,8 @@ update db set db = 'MYSQLtest' where db = 'mysqltest' and user = 'mysqltest_1' a flush privileges; show grants for mysqltest_1@localhost; Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' -GRANT ALL PRIVILEGES ON `mysqltest`.* TO 'mysqltest_1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` +GRANT ALL PRIVILEGES ON `mysqltest`.* TO `mysqltest_1`@`localhost` select * from db where user = 'mysqltest_1'; Host Db User Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Grant_priv References_priv Index_priv Alter_priv Create_tmp_table_priv Lock_tables_priv Create_view_priv Show_view_priv Create_routine_priv Alter_routine_priv Execute_priv Event_priv Trigger_priv Delete_history_priv localhost MYSQLtest mysqltest_1 Y Y Y Y Y Y N Y Y Y Y Y Y Y Y Y Y Y Y Y diff --git a/mysql-test/main/mysql_upgrade.result b/mysql-test/main/mysql_upgrade.result index 08efe0e8bc8..aa58440747a 100644 --- a/mysql-test/main/mysql_upgrade.result +++ b/mysql-test/main/mysql_upgrade.result @@ -313,8 +313,8 @@ Phase 7/7: Running 'FLUSH PRIVILEGES' OK SHOW GRANTS FOR 'user3'@'%'; Grants for user3@% -GRANT USAGE ON *.* TO 'user3'@'%' -GRANT ALL PRIVILEGES ON `roelt`.`test2` TO 'user3'@'%' +GRANT USAGE ON *.* TO `user3`@`%` +GRANT ALL PRIVILEGES ON `roelt`.`test2` TO `user3`@`%` DROP USER 'user3'@'%'; End of 5.1 tests The --upgrade-system-tables option was used, user tables won't be touched. @@ -586,7 +586,7 @@ Run mysql_upgrade with all privileges on a user flush privileges; SHOW GRANTS FOR 'user3'@'%'; Grants for user3@% -GRANT USAGE ON *.* TO 'user3'@'%' -GRANT ALL PRIVILEGES ON `roelt`.`test2` TO 'user3'@'%' +GRANT USAGE ON *.* TO `user3`@`%` +GRANT ALL PRIVILEGES ON `roelt`.`test2` TO `user3`@`%` DROP USER 'user3'@'%'; update mysql.db set Delete_history_priv='Y' where db like 'test%'; diff --git a/mysql-test/main/mysqlbinlog.result b/mysql-test/main/mysqlbinlog.result index c4d95dc6ff7..decd095bbdf 100644 --- a/mysql-test/main/mysqlbinlog.result +++ b/mysql-test/main/mysqlbinlog.result @@ -654,8 +654,8 @@ CREATE USER untrusted@localhost; GRANT SELECT ON mysqltest1.* TO untrusted@localhost; SHOW GRANTS FOR untrusted@localhost; Grants for untrusted@localhost -GRANT USAGE ON *.* TO 'untrusted'@'localhost' -GRANT SELECT ON `mysqltest1`.* TO 'untrusted'@'localhost' +GRANT USAGE ON *.* TO `untrusted`@`localhost` +GRANT SELECT ON `mysqltest1`.* TO `untrusted`@`localhost` USE mysqltest1; CREATE TABLE t1 (a INT, b CHAR(64)); flush logs; diff --git a/mysql-test/main/no_password_column-mdev-11170.result b/mysql-test/main/no_password_column-mdev-11170.result index 6195100436d..6de44dffe42 100644 --- a/mysql-test/main/no_password_column-mdev-11170.result +++ b/mysql-test/main/no_password_column-mdev-11170.result @@ -76,13 +76,13 @@ create user ioo identified with "mysql_old_password" as "7a8f886d28473e85"; # show grants for foo; Grants for foo@% -GRANT USAGE ON *.* TO 'foo'@'%' +GRANT USAGE ON *.* TO `foo`@`%` show grants for goo; Grants for goo@% -GRANT USAGE ON *.* TO 'goo'@'%' IDENTIFIED BY PASSWORD '*F3A2A51A9B0F2BE2468926B4132313728C250DBF' +GRANT USAGE ON *.* TO `goo`@`%` IDENTIFIED BY PASSWORD '*F3A2A51A9B0F2BE2468926B4132313728C250DBF' show grants for ioo; Grants for ioo@% -GRANT USAGE ON *.* TO 'ioo'@'%' IDENTIFIED BY PASSWORD '7a8f886d28473e85' +GRANT USAGE ON *.* TO `ioo`@`%` IDENTIFIED BY PASSWORD '7a8f886d28473e85' select user, host, select_priv, plugin, authentication_string from mysql.user where user like "%oo" order by user; @@ -96,13 +96,13 @@ ioo % N mysql_old_password 7a8f886d28473e85 SET PASSWORD FOR foo=PASSWORD("bar"); show grants for foo; Grants for foo@% -GRANT USAGE ON *.* TO 'foo'@'%' IDENTIFIED BY PASSWORD '*E8D46CE25265E545D225A8A6F1BAF642FEBEE5CB' +GRANT USAGE ON *.* TO `foo`@`%` IDENTIFIED BY PASSWORD '*E8D46CE25265E545D225A8A6F1BAF642FEBEE5CB' show grants for goo; Grants for goo@% -GRANT USAGE ON *.* TO 'goo'@'%' IDENTIFIED BY PASSWORD '*F3A2A51A9B0F2BE2468926B4132313728C250DBF' +GRANT USAGE ON *.* TO `goo`@`%` IDENTIFIED BY PASSWORD '*F3A2A51A9B0F2BE2468926B4132313728C250DBF' show grants for ioo; Grants for ioo@% -GRANT USAGE ON *.* TO 'ioo'@'%' IDENTIFIED BY PASSWORD '7a8f886d28473e85' +GRANT USAGE ON *.* TO `ioo`@`%` IDENTIFIED BY PASSWORD '7a8f886d28473e85' select user, host, select_priv, plugin, authentication_string from mysql.user where user like "%oo" order by user; @@ -116,13 +116,13 @@ ioo % N mysql_old_password 7a8f886d28473e85 flush privileges; show grants for foo; Grants for foo@% -GRANT USAGE ON *.* TO 'foo'@'%' IDENTIFIED BY PASSWORD '*E8D46CE25265E545D225A8A6F1BAF642FEBEE5CB' +GRANT USAGE ON *.* TO `foo`@`%` IDENTIFIED BY PASSWORD '*E8D46CE25265E545D225A8A6F1BAF642FEBEE5CB' show grants for goo; Grants for goo@% -GRANT USAGE ON *.* TO 'goo'@'%' IDENTIFIED BY PASSWORD '*F3A2A51A9B0F2BE2468926B4132313728C250DBF' +GRANT USAGE ON *.* TO `goo`@`%` IDENTIFIED BY PASSWORD '*F3A2A51A9B0F2BE2468926B4132313728C250DBF' show grants for ioo; Grants for ioo@% -GRANT USAGE ON *.* TO 'ioo'@'%' IDENTIFIED BY PASSWORD '7a8f886d28473e85' +GRANT USAGE ON *.* TO `ioo`@`%` IDENTIFIED BY PASSWORD '7a8f886d28473e85' # # Test granting of privileges. # @@ -131,26 +131,26 @@ grant select on *.* to goo; grant select on *.* to ioo; show grants for foo; Grants for foo@% -GRANT SELECT ON *.* TO 'foo'@'%' IDENTIFIED BY PASSWORD '*E8D46CE25265E545D225A8A6F1BAF642FEBEE5CB' +GRANT SELECT ON *.* TO `foo`@`%` IDENTIFIED BY PASSWORD '*E8D46CE25265E545D225A8A6F1BAF642FEBEE5CB' show grants for goo; Grants for goo@% -GRANT SELECT ON *.* TO 'goo'@'%' IDENTIFIED BY PASSWORD '*F3A2A51A9B0F2BE2468926B4132313728C250DBF' +GRANT SELECT ON *.* TO `goo`@`%` IDENTIFIED BY PASSWORD '*F3A2A51A9B0F2BE2468926B4132313728C250DBF' show grants for ioo; Grants for ioo@% -GRANT SELECT ON *.* TO 'ioo'@'%' IDENTIFIED BY PASSWORD '7a8f886d28473e85' +GRANT SELECT ON *.* TO `ioo`@`%` IDENTIFIED BY PASSWORD '7a8f886d28473e85' # # Check to see if grants are stable on flush. # flush privileges; show grants for foo; Grants for foo@% -GRANT SELECT ON *.* TO 'foo'@'%' IDENTIFIED BY PASSWORD '*E8D46CE25265E545D225A8A6F1BAF642FEBEE5CB' +GRANT SELECT ON *.* TO `foo`@`%` IDENTIFIED BY PASSWORD '*E8D46CE25265E545D225A8A6F1BAF642FEBEE5CB' show grants for goo; Grants for goo@% -GRANT SELECT ON *.* TO 'goo'@'%' IDENTIFIED BY PASSWORD '*F3A2A51A9B0F2BE2468926B4132313728C250DBF' +GRANT SELECT ON *.* TO `goo`@`%` IDENTIFIED BY PASSWORD '*F3A2A51A9B0F2BE2468926B4132313728C250DBF' show grants for ioo; Grants for ioo@% -GRANT SELECT ON *.* TO 'ioo'@'%' IDENTIFIED BY PASSWORD '7a8f886d28473e85' +GRANT SELECT ON *.* TO `ioo`@`%` IDENTIFIED BY PASSWORD '7a8f886d28473e85' # # Check internal table representation. # diff --git a/mysql-test/main/partition_grant.result b/mysql-test/main/partition_grant.result index cd8f8a970d0..41934896aeb 100644 --- a/mysql-test/main/partition_grant.result +++ b/mysql-test/main/partition_grant.result @@ -10,8 +10,8 @@ grant select,alter on mysqltest_1.* to mysqltest_1@localhost; connect conn1,localhost,mysqltest_1,,mysqltest_1; show grants for current_user; Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' -GRANT SELECT, ALTER ON `mysqltest_1`.* TO 'mysqltest_1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` +GRANT SELECT, ALTER ON `mysqltest_1`.* TO `mysqltest_1`@`localhost` alter table t1 add b int; alter table t1 drop partition p2; ERROR 42000: DROP command denied to user 'mysqltest_1'@'localhost' for table 't1' diff --git a/mysql-test/main/plugin_auth.result b/mysql-test/main/plugin_auth.result index eeb65187fea..66495da65e7 100644 --- a/mysql-test/main/plugin_auth.result +++ b/mysql-test/main/plugin_auth.result @@ -185,18 +185,18 @@ in default connection disconnect proxy_admin_con; SHOW GRANTS FOR grant_plug; Grants for grant_plug@% -GRANT ALL PRIVILEGES ON *.* TO 'grant_plug'@'%' IDENTIFIED VIA test_plugin_server USING 'grant_plug_dest' +GRANT ALL PRIVILEGES ON *.* TO `grant_plug`@`%` IDENTIFIED VIA test_plugin_server USING 'grant_plug_dest' GRANT PROXY ON 'future_user'@'%' TO 'grant_plug'@'%' REVOKE PROXY ON future_user FROM grant_plug; SHOW GRANTS FOR grant_plug; Grants for grant_plug@% -GRANT ALL PRIVILEGES ON *.* TO 'grant_plug'@'%' IDENTIFIED VIA test_plugin_server USING 'grant_plug_dest' +GRANT ALL PRIVILEGES ON *.* TO `grant_plug`@`%` IDENTIFIED VIA test_plugin_server USING 'grant_plug_dest' ## testing drop user CREATE USER test_drop@localhost; GRANT PROXY ON future_user TO test_drop@localhost; SHOW GRANTS FOR test_drop@localhost; Grants for test_drop@localhost -GRANT USAGE ON *.* TO 'test_drop'@'localhost' +GRANT USAGE ON *.* TO `test_drop`@`localhost` GRANT PROXY ON 'future_user'@'%' TO 'test_drop'@'localhost' DROP USER test_drop@localhost; SELECT * FROM mysql.proxies_priv WHERE Host = 'test_drop' AND User = 'localhost'; diff --git a/mysql-test/main/ps_grant.result b/mysql-test/main/ps_grant.result index 0e296cdc699..ab21c198b98 100644 --- a/mysql-test/main/ps_grant.result +++ b/mysql-test/main/ps_grant.result @@ -11,8 +11,8 @@ grant select on mysqltest.t9 to second_user@localhost identified by 'looser' ; show grants for second_user@localhost ; Grants for second_user@localhost -GRANT USAGE ON *.* TO 'second_user'@'localhost' IDENTIFIED BY PASSWORD '*13843FE600B19A81E32AF50D4A6FED25875FF1F3' -GRANT SELECT ON `mysqltest`.`t9` TO 'second_user'@'localhost' +GRANT USAGE ON *.* TO `second_user`@`localhost` IDENTIFIED BY PASSWORD '*13843FE600B19A81E32AF50D4A6FED25875FF1F3' +GRANT SELECT ON `mysqltest`.`t9` TO `second_user`@`localhost` connect con3,localhost,second_user,looser,mysqltest; connection con3; select current_user(); @@ -20,8 +20,8 @@ current_user() second_user@localhost show grants for current_user(); Grants for second_user@localhost -GRANT USAGE ON *.* TO 'second_user'@'localhost' IDENTIFIED BY PASSWORD '*13843FE600B19A81E32AF50D4A6FED25875FF1F3' -GRANT SELECT ON `mysqltest`.`t9` TO 'second_user'@'localhost' +GRANT USAGE ON *.* TO `second_user`@`localhost` IDENTIFIED BY PASSWORD '*13843FE600B19A81E32AF50D4A6FED25875FF1F3' +GRANT SELECT ON `mysqltest`.`t9` TO `second_user`@`localhost` prepare s_t9 from 'select c1 as my_col from t9 where c1= 1' ; execute s_t9 ; @@ -34,21 +34,21 @@ grant select on mysqltest.t1 to second_user@localhost identified by 'looser' ; show grants for second_user@localhost ; Grants for second_user@localhost -GRANT USAGE ON *.* TO 'second_user'@'localhost' IDENTIFIED BY PASSWORD '*13843FE600B19A81E32AF50D4A6FED25875FF1F3' -GRANT SELECT ON `mysqltest`.`t9` TO 'second_user'@'localhost' -GRANT SELECT ON `mysqltest`.`t1` TO 'second_user'@'localhost' +GRANT USAGE ON *.* TO `second_user`@`localhost` IDENTIFIED BY PASSWORD '*13843FE600B19A81E32AF50D4A6FED25875FF1F3' +GRANT SELECT ON `mysqltest`.`t9` TO `second_user`@`localhost` +GRANT SELECT ON `mysqltest`.`t1` TO `second_user`@`localhost` drop table mysqltest.t9 ; show grants for second_user@localhost ; Grants for second_user@localhost -GRANT USAGE ON *.* TO 'second_user'@'localhost' IDENTIFIED BY PASSWORD '*13843FE600B19A81E32AF50D4A6FED25875FF1F3' -GRANT SELECT ON `mysqltest`.`t9` TO 'second_user'@'localhost' -GRANT SELECT ON `mysqltest`.`t1` TO 'second_user'@'localhost' +GRANT USAGE ON *.* TO `second_user`@`localhost` IDENTIFIED BY PASSWORD '*13843FE600B19A81E32AF50D4A6FED25875FF1F3' +GRANT SELECT ON `mysqltest`.`t9` TO `second_user`@`localhost` +GRANT SELECT ON `mysqltest`.`t1` TO `second_user`@`localhost` connection con3; show grants for second_user@localhost ; Grants for second_user@localhost -GRANT USAGE ON *.* TO 'second_user'@'localhost' IDENTIFIED BY PASSWORD '*13843FE600B19A81E32AF50D4A6FED25875FF1F3' -GRANT SELECT ON `mysqltest`.`t9` TO 'second_user'@'localhost' -GRANT SELECT ON `mysqltest`.`t1` TO 'second_user'@'localhost' +GRANT USAGE ON *.* TO `second_user`@`localhost` IDENTIFIED BY PASSWORD '*13843FE600B19A81E32AF50D4A6FED25875FF1F3' +GRANT SELECT ON `mysqltest`.`t9` TO `second_user`@`localhost` +GRANT SELECT ON `mysqltest`.`t1` TO `second_user`@`localhost` prepare s_t1 from 'select a as my_col from t1' ; execute s_t1 ; my_col @@ -63,13 +63,13 @@ connection default; revoke all privileges on mysqltest.t1 from second_user@localhost; show grants for second_user@localhost ; Grants for second_user@localhost -GRANT USAGE ON *.* TO 'second_user'@'localhost' IDENTIFIED BY PASSWORD '*13843FE600B19A81E32AF50D4A6FED25875FF1F3' -GRANT SELECT ON `mysqltest`.`t9` TO 'second_user'@'localhost' +GRANT USAGE ON *.* TO `second_user`@`localhost` IDENTIFIED BY PASSWORD '*13843FE600B19A81E32AF50D4A6FED25875FF1F3' +GRANT SELECT ON `mysqltest`.`t9` TO `second_user`@`localhost` connection con3; show grants for second_user@localhost ; Grants for second_user@localhost -GRANT USAGE ON *.* TO 'second_user'@'localhost' IDENTIFIED BY PASSWORD '*13843FE600B19A81E32AF50D4A6FED25875FF1F3' -GRANT SELECT ON `mysqltest`.`t9` TO 'second_user'@'localhost' +GRANT USAGE ON *.* TO `second_user`@`localhost` IDENTIFIED BY PASSWORD '*13843FE600B19A81E32AF50D4A6FED25875FF1F3' +GRANT SELECT ON `mysqltest`.`t9` TO `second_user`@`localhost` execute s_t1 ; ERROR 42000: SELECT command denied to user 'second_user'@'localhost' for table 't1' connection default; @@ -77,7 +77,7 @@ disconnect con3; revoke all privileges, grant option from second_user@localhost ; show grants for second_user@localhost ; Grants for second_user@localhost -GRANT USAGE ON *.* TO 'second_user'@'localhost' IDENTIFIED BY PASSWORD '*13843FE600B19A81E32AF50D4A6FED25875FF1F3' +GRANT USAGE ON *.* TO `second_user`@`localhost` IDENTIFIED BY PASSWORD '*13843FE600B19A81E32AF50D4A6FED25875FF1F3' drop user second_user@localhost ; commit ; show grants for second_user@localhost ; diff --git a/mysql-test/main/set_password.result b/mysql-test/main/set_password.result index 733d9c96187..11432a40d28 100644 --- a/mysql-test/main/set_password.result +++ b/mysql-test/main/set_password.result @@ -168,7 +168,7 @@ user() current_user() foo@localhost foo@localhost show grants; Grants for foo@localhost -GRANT USAGE ON *.* TO 'foo'@'localhost' IDENTIFIED BY PASSWORD '*E8D46CE25265E545D225A8A6F1BAF642FEBEE5CB' +GRANT USAGE ON *.* TO `foo`@`localhost` IDENTIFIED BY PASSWORD '*E8D46CE25265E545D225A8A6F1BAF642FEBEE5CB' disconnect foo; connection default; select user,host,password,plugin,authentication_string from mysql.user where user='foo'; diff --git a/mysql-test/main/show_create_user.result b/mysql-test/main/show_create_user.result index 63013eca074..63acc38295a 100644 --- a/mysql-test/main/show_create_user.result +++ b/mysql-test/main/show_create_user.result @@ -1,27 +1,27 @@ create user foo; show create user foo; CREATE USER for foo@% -CREATE USER 'foo'@'%' +CREATE USER `foo`@`%` create user foo@test; show create user foo@test; CREATE USER for foo@test -CREATE USER 'foo'@'test' +CREATE USER `foo`@`test` create user foo2@test identified by 'password'; show create user foo2@test; CREATE USER for foo2@test -CREATE USER 'foo2'@'test' IDENTIFIED BY PASSWORD '*2470C0C06DEE42FD1618BB99005ADCA2EC9D1E19' +CREATE USER `foo2`@`test` IDENTIFIED BY PASSWORD '*2470C0C06DEE42FD1618BB99005ADCA2EC9D1E19' alter user foo2@test identified with 'someplugin' as 'somepassword'; show create user foo2@test; CREATE USER for foo2@test -CREATE USER 'foo2'@'test' IDENTIFIED VIA someplugin USING 'somepassword' +CREATE USER `foo2`@`test` IDENTIFIED VIA someplugin USING 'somepassword' create user foo3@test require SSL; show create user foo3@test; CREATE USER for foo3@test -CREATE USER 'foo3'@'test' REQUIRE SSL +CREATE USER `foo3`@`test` REQUIRE SSL create user foo4@test require cipher 'text' issuer 'foo_issuer' subject 'foo_subject'; show create user foo4@test; CREATE USER for foo4@test -CREATE USER 'foo4'@'test' REQUIRE ISSUER 'foo_issuer' SUBJECT 'foo_subject' CIPHER 'text' +CREATE USER `foo4`@`test` REQUIRE ISSUER 'foo_issuer' SUBJECT 'foo_subject' CIPHER 'text' create user foo5@test require SSL with MAX_QUERIES_PER_HOUR 10 MAX_UPDATES_PER_HOUR 20 @@ -30,7 +30,7 @@ MAX_USER_CONNECTIONS 40 MAX_STATEMENT_TIME 0.5; show create user foo5@test; CREATE USER for foo5@test -CREATE USER 'foo5'@'test' REQUIRE SSL WITH MAX_QUERIES_PER_HOUR 10 MAX_UPDATES_PER_HOUR 20 MAX_CONNECTIONS_PER_HOUR 30 MAX_USER_CONNECTIONS 40 MAX_STATEMENT_TIME 0.500000 +CREATE USER `foo5`@`test` REQUIRE SSL WITH MAX_QUERIES_PER_HOUR 10 MAX_UPDATES_PER_HOUR 20 MAX_CONNECTIONS_PER_HOUR 30 MAX_USER_CONNECTIONS 40 MAX_STATEMENT_TIME 0.500000 drop user foo5@test; drop user foo4@test; drop user foo3@test; diff --git a/mysql-test/main/show_grants_with_plugin-7985.result b/mysql-test/main/show_grants_with_plugin-7985.result index bb475b7cba9..b07603aaf91 100644 --- a/mysql-test/main/show_grants_with_plugin-7985.result +++ b/mysql-test/main/show_grants_with_plugin-7985.result @@ -13,16 +13,16 @@ u1 % # show grants for u1; Grants for u1@% -GRANT USAGE ON *.* TO 'u1'@'%' -GRANT SELECT ON `mysql`.* TO 'u1'@'%' +GRANT USAGE ON *.* TO `u1`@`%` +GRANT SELECT ON `mysql`.* TO `u1`@`%` # # Test to see if connecting with no password is succesful. # connect con1, localhost, u1,,; show grants; Grants for u1@% -GRANT USAGE ON *.* TO 'u1'@'%' -GRANT SELECT ON `mysql`.* TO 'u1'@'%' +GRANT USAGE ON *.* TO `u1`@`%` +GRANT SELECT ON `mysql`.* TO `u1`@`%` disconnect con1; connection default; # @@ -32,8 +32,8 @@ flush privileges; connect con1, localhost, u1,,; show grants; Grants for u1@% -GRANT USAGE ON *.* TO 'u1'@'%' -GRANT SELECT ON `mysql`.* TO 'u1'@'%' +GRANT USAGE ON *.* TO `u1`@`%` +GRANT SELECT ON `mysql`.* TO `u1`@`%` disconnect con1; connection default; # @@ -50,8 +50,8 @@ u1 % *7AFEFD08B6B720E781FB000CAA418F54FA662626 connect con1, localhost, u1,'SOMETHING',; show grants; Grants for u1@% -GRANT USAGE ON *.* TO 'u1'@'%' IDENTIFIED BY PASSWORD '*7AFEFD08B6B720E781FB000CAA418F54FA662626' -GRANT SELECT ON `mysql`.* TO 'u1'@'%' +GRANT USAGE ON *.* TO `u1`@`%` IDENTIFIED BY PASSWORD '*7AFEFD08B6B720E781FB000CAA418F54FA662626' +GRANT SELECT ON `mysql`.* TO `u1`@`%` disconnect con1; connection default; # @@ -61,8 +61,8 @@ flush privileges; connect con1, localhost, u1,'SOMETHING',; show grants; Grants for u1@% -GRANT USAGE ON *.* TO 'u1'@'%' IDENTIFIED BY PASSWORD '*7AFEFD08B6B720E781FB000CAA418F54FA662626' -GRANT SELECT ON `mysql`.* TO 'u1'@'%' +GRANT USAGE ON *.* TO `u1`@`%` IDENTIFIED BY PASSWORD '*7AFEFD08B6B720E781FB000CAA418F54FA662626' +GRANT SELECT ON `mysql`.* TO `u1`@`%` disconnect con1; connection default; # @@ -78,16 +78,16 @@ u1 % *054B7BBD2B9A553DA560520DCD3F76DA2D81B7C6 mysql_native_password *054B7BBD2B # show grants for u1; Grants for u1@% -GRANT USAGE ON *.* TO 'u1'@'%' IDENTIFIED BY PASSWORD '*054B7BBD2B9A553DA560520DCD3F76DA2D81B7C6' -GRANT SELECT ON `mysql`.* TO 'u1'@'%' +GRANT USAGE ON *.* TO `u1`@`%` IDENTIFIED BY PASSWORD '*054B7BBD2B9A553DA560520DCD3F76DA2D81B7C6' +GRANT SELECT ON `mysql`.* TO `u1`@`%` # # Logging in with the user's password should work. # connect con1, localhost, u1,'SOMETHINGELSE',; show grants; Grants for u1@% -GRANT USAGE ON *.* TO 'u1'@'%' IDENTIFIED BY PASSWORD '*054B7BBD2B9A553DA560520DCD3F76DA2D81B7C6' -GRANT SELECT ON `mysql`.* TO 'u1'@'%' +GRANT USAGE ON *.* TO `u1`@`%` IDENTIFIED BY PASSWORD '*054B7BBD2B9A553DA560520DCD3F76DA2D81B7C6' +GRANT SELECT ON `mysql`.* TO `u1`@`%` disconnect con1; connection default; # @@ -96,16 +96,16 @@ connection default; flush privileges; show grants for u1; Grants for u1@% -GRANT USAGE ON *.* TO 'u1'@'%' IDENTIFIED BY PASSWORD '*054B7BBD2B9A553DA560520DCD3F76DA2D81B7C6' -GRANT SELECT ON `mysql`.* TO 'u1'@'%' +GRANT USAGE ON *.* TO `u1`@`%` IDENTIFIED BY PASSWORD '*054B7BBD2B9A553DA560520DCD3F76DA2D81B7C6' +GRANT SELECT ON `mysql`.* TO `u1`@`%` # # Here we connect via the user's password again. # connect con1, localhost, u1,'SOMETHINGELSE',; show grants; Grants for u1@% -GRANT USAGE ON *.* TO 'u1'@'%' IDENTIFIED BY PASSWORD '*054B7BBD2B9A553DA560520DCD3F76DA2D81B7C6' -GRANT SELECT ON `mysql`.* TO 'u1'@'%' +GRANT USAGE ON *.* TO `u1`@`%` IDENTIFIED BY PASSWORD '*054B7BBD2B9A553DA560520DCD3F76DA2D81B7C6' +GRANT SELECT ON `mysql`.* TO `u1`@`%` disconnect con1; connection default; # @@ -119,8 +119,8 @@ u1 % *054B7BBD2B9A553DA560520DCD3F76DA2D81B7C6 flush privileges; show grants for u1; Grants for u1@% -GRANT USAGE ON *.* TO 'u1'@'%' IDENTIFIED BY PASSWORD '*054B7BBD2B9A553DA560520DCD3F76DA2D81B7C6' -GRANT SELECT ON `mysql`.* TO 'u1'@'%' +GRANT USAGE ON *.* TO `u1`@`%` IDENTIFIED BY PASSWORD '*054B7BBD2B9A553DA560520DCD3F76DA2D81B7C6' +GRANT SELECT ON `mysql`.* TO `u1`@`%` # # Here we connect via the user's password. # @@ -143,16 +143,16 @@ GRANT SELECT ON mysql.* to u1 IDENTIFIED VIA mysql_native_password USING '*7AFEFD08B6B720E781FB000CAA418F54FA662626'; show grants for u1; Grants for u1@% -GRANT USAGE ON *.* TO 'u1'@'%' IDENTIFIED BY PASSWORD '*7AFEFD08B6B720E781FB000CAA418F54FA662626' -GRANT SELECT ON `mysql`.* TO 'u1'@'%' +GRANT USAGE ON *.* TO `u1`@`%` IDENTIFIED BY PASSWORD '*7AFEFD08B6B720E781FB000CAA418F54FA662626' +GRANT SELECT ON `mysql`.* TO `u1`@`%` # # Test if the user can now use that password instead. # connect con1, localhost, u1,'SOMETHING',; show grants; Grants for u1@% -GRANT USAGE ON *.* TO 'u1'@'%' IDENTIFIED BY PASSWORD '*7AFEFD08B6B720E781FB000CAA418F54FA662626' -GRANT SELECT ON `mysql`.* TO 'u1'@'%' +GRANT USAGE ON *.* TO `u1`@`%` IDENTIFIED BY PASSWORD '*7AFEFD08B6B720E781FB000CAA418F54FA662626' +GRANT SELECT ON `mysql`.* TO `u1`@`%` disconnect con1; # # Test if the user can now use that password instead, after flushing privileges; @@ -162,8 +162,8 @@ flush privileges; connect con1, localhost, u1,'SOMETHING',; show grants; Grants for u1@% -GRANT USAGE ON *.* TO 'u1'@'%' IDENTIFIED BY PASSWORD '*7AFEFD08B6B720E781FB000CAA418F54FA662626' -GRANT SELECT ON `mysql`.* TO 'u1'@'%' +GRANT USAGE ON *.* TO `u1`@`%` IDENTIFIED BY PASSWORD '*7AFEFD08B6B720E781FB000CAA418F54FA662626' +GRANT SELECT ON `mysql`.* TO `u1`@`%` disconnect con1; connection default; # @@ -179,8 +179,8 @@ u1 % mysql_native_password connect con1, localhost, u1,,; show grants; Grants for u1@% -GRANT USAGE ON *.* TO 'u1'@'%' -GRANT SELECT ON `mysql`.* TO 'u1'@'%' +GRANT USAGE ON *.* TO `u1`@`%` +GRANT SELECT ON `mysql`.* TO `u1`@`%` disconnect con1; connection default; # @@ -190,8 +190,8 @@ flush privileges; connect con1, localhost, u1,,; show grants; Grants for u1@% -GRANT USAGE ON *.* TO 'u1'@'%' -GRANT SELECT ON `mysql`.* TO 'u1'@'%' +GRANT USAGE ON *.* TO `u1`@`%` +GRANT SELECT ON `mysql`.* TO `u1`@`%` disconnect con1; connection default; drop user u1; diff --git a/mysql-test/main/skip_name_resolve.result b/mysql-test/main/skip_name_resolve.result index 1362e482717..9a903ebf472 100644 --- a/mysql-test/main/skip_name_resolve.result +++ b/mysql-test/main/skip_name_resolve.result @@ -2,8 +2,8 @@ CREATE USER mysqltest_1@'127.0.0.1/255.255.255.255'; GRANT ALL ON test.* TO mysqltest_1@'127.0.0.1/255.255.255.255'; SHOW GRANTS FOR mysqltest_1@'127.0.0.1/255.255.255.255'; Grants for mysqltest_1@127.0.0.1/255.255.255.255 -GRANT USAGE ON *.* TO 'mysqltest_1'@'127.0.0.1/255.255.255.255' -GRANT ALL PRIVILEGES ON `test`.* TO 'mysqltest_1'@'127.0.0.1/255.255.255.255' +GRANT USAGE ON *.* TO `mysqltest_1`@`127.0.0.1/255.255.255.255` +GRANT ALL PRIVILEGES ON `test`.* TO `mysqltest_1`@`127.0.0.1/255.255.255.255` REVOKE ALL ON test.* FROM mysqltest_1@'127.0.0.1/255.255.255.255'; DROP USER mysqltest_1@'127.0.0.1/255.255.255.255'; connect con1, localhost, root, , test, $MASTER_MYPORT, ; diff --git a/mysql-test/main/sp-security.result b/mysql-test/main/sp-security.result index de33c11a28f..1dea23a5271 100644 --- a/mysql-test/main/sp-security.result +++ b/mysql-test/main/sp-security.result @@ -195,14 +195,14 @@ grant insert on t1 to usera@localhost; grant execute on procedure sptest.p1 to usera@localhost; show grants for usera@localhost; Grants for usera@localhost -GRANT USAGE ON *.* TO 'usera'@'localhost' -GRANT INSERT ON `test`.`t1` TO 'usera'@'localhost' -GRANT EXECUTE ON PROCEDURE `sptest`.`p1` TO 'usera'@'localhost' +GRANT USAGE ON *.* TO `usera`@`localhost` +GRANT INSERT ON `test`.`t1` TO `usera`@`localhost` +GRANT EXECUTE ON PROCEDURE `sptest`.`p1` TO `usera`@`localhost` grant execute on procedure sptest.p1 to userc@localhost with grant option; show grants for userc@localhost; Grants for userc@localhost -GRANT USAGE ON *.* TO 'userc'@'localhost' -GRANT EXECUTE ON PROCEDURE `sptest`.`p1` TO 'userc'@'localhost' WITH GRANT OPTION +GRANT USAGE ON *.* TO `userc`@`localhost` +GRANT EXECUTE ON PROCEDURE `sptest`.`p1` TO `userc`@`localhost` WITH GRANT OPTION connect con2usera,localhost,usera,,; connect con3userb,localhost,userb,,; connect con4userc,localhost,userc,,; @@ -239,18 +239,18 @@ userb@localhost 4 grant all privileges on procedure sptest.p1 to userc@localhost; show grants for userc@localhost; Grants for userc@localhost -GRANT USAGE ON *.* TO 'userc'@'localhost' -GRANT EXECUTE, ALTER ROUTINE ON PROCEDURE `sptest`.`p1` TO 'userc'@'localhost' WITH GRANT OPTION +GRANT USAGE ON *.* TO `userc`@`localhost` +GRANT EXECUTE, ALTER ROUTINE ON PROCEDURE `sptest`.`p1` TO `userc`@`localhost` WITH GRANT OPTION show grants for userb@localhost; Grants for userb@localhost -GRANT USAGE ON *.* TO 'userb'@'localhost' -GRANT EXECUTE ON PROCEDURE `sptest`.`p1` TO 'userb'@'localhost' +GRANT USAGE ON *.* TO `userb`@`localhost` +GRANT EXECUTE ON PROCEDURE `sptest`.`p1` TO `userb`@`localhost` connection con4userc; revoke all privileges on procedure sptest.p1 from userb@localhost; connection con1root; show grants for userb@localhost; Grants for userb@localhost -GRANT USAGE ON *.* TO 'userb'@'localhost' +GRANT USAGE ON *.* TO `userb`@`localhost` disconnect con4userc; disconnect con3userb; disconnect con2usera; @@ -723,14 +723,14 @@ user() current_user() foo@localhost foo@local_ost show grants; Grants for foo@local_ost -GRANT USAGE ON *.* TO 'foo'@'local_ost' -GRANT CREATE ROUTINE ON `foodb`.* TO 'foo'@'local_ost' +GRANT USAGE ON *.* TO `foo`@`local_ost` +GRANT CREATE ROUTINE ON `foodb`.* TO `foo`@`local_ost` create procedure fooproc() select 'i am fooproc'; show grants; Grants for foo@local_ost -GRANT USAGE ON *.* TO 'foo'@'local_ost' -GRANT CREATE ROUTINE ON `foodb`.* TO 'foo'@'local_ost' -GRANT EXECUTE, ALTER ROUTINE ON PROCEDURE `test`.`fooproc` TO 'foo'@'local_ost' +GRANT USAGE ON *.* TO `foo`@`local_ost` +GRANT CREATE ROUTINE ON `foodb`.* TO `foo`@`local_ost` +GRANT EXECUTE, ALTER ROUTINE ON PROCEDURE `test`.`fooproc` TO `foo`@`local_ost` disconnect con1; connection default; drop user foo@local_ost; @@ -772,13 +772,13 @@ set password=password('foobar'); create procedure sp1() select 1; show grants; Grants for root@localhost -GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY PASSWORD '*9B500343BC52E2911172EB52AE5CF4847604C6E5' WITH GRANT OPTION +GRANT ALL PRIVILEGES ON *.* TO `root`@`localhost` IDENTIFIED BY PASSWORD '*9B500343BC52E2911172EB52AE5CF4847604C6E5' WITH GRANT OPTION GRANT PROXY ON ''@'%' TO 'root'@'localhost' WITH GRANT OPTION grant execute on procedure sp1 to current_user() identified by 'barfoo'; show grants; Grants for root@localhost -GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY PASSWORD '*343915A8181B5728EADBDC73E1F7E6B0C3998483' WITH GRANT OPTION -GRANT EXECUTE ON PROCEDURE `test`.`sp1` TO 'root'@'localhost' +GRANT ALL PRIVILEGES ON *.* TO `root`@`localhost` IDENTIFIED BY PASSWORD '*343915A8181B5728EADBDC73E1F7E6B0C3998483' WITH GRANT OPTION +GRANT EXECUTE ON PROCEDURE `test`.`sp1` TO `root`@`localhost` GRANT PROXY ON ''@'%' TO 'root'@'localhost' WITH GRANT OPTION drop procedure sp1; set password=''; diff --git a/mysql-test/main/sp_notembedded.result b/mysql-test/main/sp_notembedded.result index fe95508cb9d..0d04f23326d 100644 --- a/mysql-test/main/sp_notembedded.result +++ b/mysql-test/main/sp_notembedded.result @@ -8,11 +8,11 @@ show grants for 'root'@'localhost'; end| call bug4902()| Grants for root@localhost -GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION +GRANT ALL PRIVILEGES ON *.* TO `root`@`localhost` WITH GRANT OPTION GRANT PROXY ON ''@'%' TO 'root'@'localhost' WITH GRANT OPTION call bug4902()| Grants for root@localhost -GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION +GRANT ALL PRIVILEGES ON *.* TO `root`@`localhost` WITH GRANT OPTION GRANT PROXY ON ''@'%' TO 'root'@'localhost' WITH GRANT OPTION drop procedure bug4902| drop procedure if exists bug4902_2| @@ -159,11 +159,11 @@ create procedure 15298_2 () sql security definer show grants; connect con1,localhost,mysqltest_1,,test; call 15298_1(); Grants for root@localhost -GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION +GRANT ALL PRIVILEGES ON *.* TO `root`@`localhost` WITH GRANT OPTION GRANT PROXY ON ''@'%' TO 'root'@'localhost' WITH GRANT OPTION call 15298_2(); Grants for root@localhost -GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION +GRANT ALL PRIVILEGES ON *.* TO `root`@`localhost` WITH GRANT OPTION GRANT PROXY ON ''@'%' TO 'root'@'localhost' WITH GRANT OPTION connection default; disconnect con1; @@ -330,21 +330,21 @@ update mysql.user set password = replace(password, '*', '-') where user='foo1'; connect foo,localhost,foo1,foo; show grants; Grants for foo1@localhost -GRANT USAGE ON *.* TO 'foo1'@'localhost' IDENTIFIED BY PASSWORD '*F3A2A51A9B0F2BE2468926B4132313728C250DBF' -GRANT CREATE ROUTINE ON `test`.* TO 'foo1'@'localhost' +GRANT USAGE ON *.* TO `foo1`@`localhost` IDENTIFIED BY PASSWORD '*F3A2A51A9B0F2BE2468926B4132313728C250DBF' +GRANT CREATE ROUTINE ON `test`.* TO `foo1`@`localhost` connection default; flush privileges; connection foo; show grants; Grants for foo1@localhost -GRANT USAGE ON *.* TO 'foo1'@'localhost' IDENTIFIED BY PASSWORD '-F3A2A51A9B0F2BE2468926B4132313728C250DBF' -GRANT CREATE ROUTINE ON `test`.* TO 'foo1'@'localhost' +GRANT USAGE ON *.* TO `foo1`@`localhost` IDENTIFIED BY PASSWORD '-F3A2A51A9B0F2BE2468926B4132313728C250DBF' +GRANT CREATE ROUTINE ON `test`.* TO `foo1`@`localhost` create procedure spfoo() select 1; show grants; Grants for foo1@localhost -GRANT USAGE ON *.* TO 'foo1'@'localhost' IDENTIFIED BY PASSWORD '-F3A2A51A9B0F2BE2468926B4132313728C250DBF' -GRANT CREATE ROUTINE ON `test`.* TO 'foo1'@'localhost' -GRANT EXECUTE, ALTER ROUTINE ON PROCEDURE `test`.`spfoo` TO 'foo1'@'localhost' +GRANT USAGE ON *.* TO `foo1`@`localhost` IDENTIFIED BY PASSWORD '-F3A2A51A9B0F2BE2468926B4132313728C250DBF' +GRANT CREATE ROUTINE ON `test`.* TO `foo1`@`localhost` +GRANT EXECUTE, ALTER ROUTINE ON PROCEDURE `test`.`spfoo` TO `foo1`@`localhost` connection default; disconnect foo; drop procedure spfoo; diff --git a/mysql-test/main/timezone_grant.result b/mysql-test/main/timezone_grant.result index 42ce458d00f..bacc8348e89 100644 --- a/mysql-test/main/timezone_grant.result +++ b/mysql-test/main/timezone_grant.result @@ -13,8 +13,8 @@ connect tzuser, localhost, mysqltest_1,,; connection tzuser; show grants for current_user(); Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' -GRANT ALL PRIVILEGES ON `test`.* TO 'mysqltest_1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` +GRANT ALL PRIVILEGES ON `test`.* TO `mysqltest_1`@`localhost` set time_zone= '+00:00'; set time_zone= 'Europe/Moscow'; select convert_tz('2004-10-21 19:00:00', 'Europe/Moscow', 'UTC'); @@ -39,9 +39,9 @@ connect tzuser2, localhost, mysqltest_1,,; connection tzuser2; show grants for current_user(); Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' -GRANT ALL PRIVILEGES ON `test`.`t2` TO 'mysqltest_1'@'localhost' -GRANT ALL PRIVILEGES ON `test`.`t1` TO 'mysqltest_1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` +GRANT ALL PRIVILEGES ON `test`.`t2` TO `mysqltest_1`@`localhost` +GRANT ALL PRIVILEGES ON `test`.`t1` TO `mysqltest_1`@`localhost` set time_zone= '+00:00'; set time_zone= 'Europe/Moscow'; select convert_tz('2004-11-31 12:00:00', 'Europe/Moscow', 'UTC'); diff --git a/mysql-test/main/trigger_notembedded.result b/mysql-test/main/trigger_notembedded.result index 3ee84c3c308..94e651b1340 100644 --- a/mysql-test/main/trigger_notembedded.result +++ b/mysql-test/main/trigger_notembedded.result @@ -194,8 +194,8 @@ use mysqltest_db1; GRANT DELETE ON mysqltest_db1.* TO mysqltest_u1@localhost; SHOW GRANTS FOR mysqltest_u1@localhost; Grants for mysqltest_u1@localhost -GRANT USAGE ON *.* TO 'mysqltest_u1'@'localhost' -GRANT DELETE, TRIGGER ON `mysqltest_db1`.* TO 'mysqltest_u1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_u1`@`localhost` +GRANT DELETE, TRIGGER ON `mysqltest_db1`.* TO `mysqltest_u1`@`localhost` connection bug15166_u1_con; use mysqltest_db1; CREATE TRIGGER t1_trg_after_delete AFTER DELETE ON t1 diff --git a/mysql-test/main/user_limits.result b/mysql-test/main/user_limits.result index bbf73d7c617..ffb8bb204a6 100644 --- a/mysql-test/main/user_limits.result +++ b/mysql-test/main/user_limits.result @@ -108,11 +108,11 @@ connection default; grant usage on *.* to mysqltest_1@localhost with max_user_connections -1; show grants for mysqltest_1@localhost; Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' WITH MAX_USER_CONNECTIONS -1 +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` WITH MAX_USER_CONNECTIONS -1 flush user_resources; show grants for mysqltest_1@localhost; Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' WITH MAX_USER_CONNECTIONS -1 +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` WITH MAX_USER_CONNECTIONS -1 connect(localhost,mysqltest_1,,test,MYSQL_PORT,MYSQL_SOCK); connect muc5, localhost, mysqltest_1,,; ERROR 42000: User 'mysqltest_1' has exceeded the 'max_user_connections' resource (current value: -1) diff --git a/mysql-test/main/view_grant.result b/mysql-test/main/view_grant.result index 6d22f93fd49..00a93488919 100644 --- a/mysql-test/main/view_grant.result +++ b/mysql-test/main/view_grant.result @@ -4,12 +4,12 @@ create user test@localhost; grant create view on test.* to test@localhost; show grants for test@localhost; Grants for test@localhost -GRANT USAGE ON *.* TO 'test'@'localhost' -GRANT CREATE VIEW ON `test`.* TO 'test'@'localhost' +GRANT USAGE ON *.* TO `test`@`localhost` +GRANT CREATE VIEW ON `test`.* TO `test`@`localhost` revoke create view on test.* from test@localhost; show grants for test@localhost; Grants for test@localhost -GRANT USAGE ON *.* TO 'test'@'localhost' +GRANT USAGE ON *.* TO `test`@`localhost` drop user test@localhost; connect root,localhost,root,,test; connection root; diff --git a/mysql-test/suite/binlog/r/binlog_grant.result b/mysql-test/suite/binlog/r/binlog_grant.result index 201e7b9e722..e077182fe8b 100644 --- a/mysql-test/suite/binlog/r/binlog_grant.result +++ b/mysql-test/suite/binlog/r/binlog_grant.result @@ -4,7 +4,7 @@ set @saved_binlog_format = @@global.binlog_format; create user mysqltest_1@localhost; show grants for mysqltest_1@localhost; Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` connect plain,localhost,mysqltest_1,,test; connect root,localhost,root,,test; **** Variable SQL_LOG_BIN **** diff --git a/mysql-test/suite/compat/oracle/r/sp-package-security.result b/mysql-test/suite/compat/oracle/r/sp-package-security.result index 6cb580e0c46..c08b78cb8cf 100644 --- a/mysql-test/suite/compat/oracle/r/sp-package-security.result +++ b/mysql-test/suite/compat/oracle/r/sp-package-security.result @@ -132,15 +132,15 @@ END; $$ SHOW GRANTS; Grants for u1@localhost -GRANT USAGE ON *.* TO 'u1'@'localhost' -GRANT SELECT, CREATE ROUTINE ON "db1".* TO 'u1'@'localhost' -GRANT EXECUTE, ALTER ROUTINE ON PROCEDURE "db1"."p1" TO 'u1'@'localhost' +GRANT USAGE ON *.* TO "u1"@"localhost" +GRANT SELECT, CREATE ROUTINE ON "db1".* TO "u1"@"localhost" +GRANT EXECUTE, ALTER ROUTINE ON PROCEDURE "db1"."p1" TO "u1"@"localhost" CALL p1; DROP PROCEDURE p1; SHOW GRANTS; Grants for u1@localhost -GRANT USAGE ON *.* TO 'u1'@'localhost' -GRANT SELECT, CREATE ROUTINE ON "db1".* TO 'u1'@'localhost' +GRANT USAGE ON *.* TO "u1"@"localhost" +GRANT SELECT, CREATE ROUTINE ON "db1".* TO "u1"@"localhost" # # Now u1 can also CREATE, DROP its own package specifications # @@ -157,14 +157,14 @@ FUNCTION f1 RETURN TEXT; END latin1 latin1_swedish_ci latin1_swedish_ci SHOW GRANTS; Grants for u1@localhost -GRANT USAGE ON *.* TO 'u1'@'localhost' -GRANT SELECT, CREATE ROUTINE ON "db1".* TO 'u1'@'localhost' -GRANT EXECUTE, ALTER ROUTINE ON PACKAGE "db1"."pkg2" TO 'u1'@'localhost' +GRANT USAGE ON *.* TO "u1"@"localhost" +GRANT SELECT, CREATE ROUTINE ON "db1".* TO "u1"@"localhost" +GRANT EXECUTE, ALTER ROUTINE ON PACKAGE "db1"."pkg2" TO "u1"@"localhost" DROP PACKAGE pkg2; SHOW GRANTS; Grants for u1@localhost -GRANT USAGE ON *.* TO 'u1'@'localhost' -GRANT SELECT, CREATE ROUTINE ON "db1".* TO 'u1'@'localhost' +GRANT USAGE ON *.* TO "u1"@"localhost" +GRANT SELECT, CREATE ROUTINE ON "db1".* TO "u1"@"localhost" # # Now u1 can also CREATE, DROP package bodies and EXECUTE package body routines # @@ -184,9 +184,9 @@ FUNCTION f1 RETURN TEXT AS BEGIN RETURN 'This is pkg1.f1'; END; END latin1 latin1_swedish_ci latin1_swedish_ci SHOW GRANTS; Grants for u1@localhost -GRANT USAGE ON *.* TO 'u1'@'localhost' -GRANT SELECT, CREATE ROUTINE ON "db1".* TO 'u1'@'localhost' -GRANT EXECUTE, ALTER ROUTINE ON PACKAGE BODY "db1"."pkg1" TO 'u1'@'localhost' +GRANT USAGE ON *.* TO "u1"@"localhost" +GRANT SELECT, CREATE ROUTINE ON "db1".* TO "u1"@"localhost" +GRANT EXECUTE, ALTER ROUTINE ON PACKAGE BODY "db1"."pkg1" TO "u1"@"localhost" CALL pkg1.p1; comment This is pkg1.p1 @@ -196,8 +196,8 @@ This is pkg1.f1 DROP PACKAGE BODY pkg1; SHOW GRANTS; Grants for u1@localhost -GRANT USAGE ON *.* TO 'u1'@'localhost' -GRANT SELECT, CREATE ROUTINE ON "db1".* TO 'u1'@'localhost' +GRANT USAGE ON *.* TO "u1"@"localhost" +GRANT SELECT, CREATE ROUTINE ON "db1".* TO "u1"@"localhost" # # Now create a PACKAGE BODY by root. # u1 does not have EXECUTE access by default. @@ -232,9 +232,9 @@ u1@localhost SET sql_mode=ORACLE; SHOW GRANTS; Grants for u1@localhost -GRANT USAGE ON *.* TO 'u1'@'localhost' -GRANT SELECT, CREATE ROUTINE ON "db1".* TO 'u1'@'localhost' -GRANT EXECUTE ON PACKAGE BODY "db1"."pkg1" TO 'u1'@'localhost' +GRANT USAGE ON *.* TO "u1"@"localhost" +GRANT SELECT, CREATE ROUTINE ON "db1".* TO "u1"@"localhost" +GRANT EXECUTE ON PACKAGE BODY "db1"."pkg1" TO "u1"@"localhost" CALL pkg1.p1; comment This is pkg1.p1 diff --git a/mysql-test/suite/funcs_1/r/innodb_trig_03.result b/mysql-test/suite/funcs_1/r/innodb_trig_03.result index be235c2d4ae..9f9bf1ca4de 100644 --- a/mysql-test/suite/funcs_1/r/innodb_trig_03.result +++ b/mysql-test/suite/funcs_1/r/innodb_trig_03.result @@ -78,14 +78,14 @@ grant ALL on *.* to test_noprivs@localhost; revoke TRIGGER on *.* from test_noprivs@localhost; show grants for test_noprivs@localhost; Grants for test_noprivs@localhost -GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, CREATE TABLESPACE, DELETE HISTORY ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, CREATE TABLESPACE, DELETE HISTORY ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' revoke ALL PRIVILEGES, GRANT OPTION FROM test_yesprivs@localhost; grant TRIGGER on *.* to test_yesprivs@localhost; grant SELECT on priv_db.t1 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` connect no_privs,localhost,test_noprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connect yes_privs,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connection default; @@ -168,12 +168,12 @@ grant ALL on *.* to test_noprivs@localhost; revoke UPDATE on *.* from test_noprivs@localhost; show grants for test_noprivs@localhost; Grants for test_noprivs@localhost -GRANT SELECT, INSERT, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER, CREATE TABLESPACE, DELETE HISTORY ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER, CREATE TABLESPACE, DELETE HISTORY ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' revoke ALL PRIVILEGES, GRANT OPTION FROM test_yesprivs@localhost; grant TRIGGER, UPDATE on *.* to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT UPDATE, TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT UPDATE, TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' connect no_privs_424a,localhost,test_noprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connect yes_privs_424a,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connection no_privs_424a; @@ -183,7 +183,7 @@ test_noprivs@localhost use priv_db; show grants; Grants for test_noprivs@localhost -GRANT SELECT, INSERT, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER, CREATE TABLESPACE, DELETE HISTORY ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER, CREATE TABLESPACE, DELETE HISTORY ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' select f1 from t1 order by f1; f1 insert 3.5.3.2-no @@ -209,7 +209,7 @@ current_user test_yesprivs@localhost show grants; Grants for test_yesprivs@localhost -GRANT UPDATE, TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT UPDATE, TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' create trigger trg4a_2 before INSERT on t1 for each row set new.f1 = 'trig 3.5.3.7-2a'; connection default; @@ -233,22 +233,22 @@ grant ALL on priv_db.* to test_noprivs@localhost; revoke UPDATE on priv_db.* from test_noprivs@localhost; show grants for test_noprivs; Grants for test_noprivs@% -GRANT TRIGGER ON *.* TO 'test_noprivs'@'%' +GRANT TRIGGER ON *.* TO `test_noprivs`@`%` revoke ALL PRIVILEGES, GRANT OPTION FROM test_yesprivs@localhost; grant TRIGGER on *.* to test_yesprivs@localhost; grant UPDATE on priv_db.* to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT UPDATE ON `priv_db`.* TO 'test_yesprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT UPDATE ON `priv_db`.* TO `test_yesprivs`@`localhost` connect no_privs_424b,localhost,test_noprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connect yes_privs_424b,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connection default; connection no_privs_424b; show grants; Grants for test_noprivs@localhost -GRANT USAGE ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, TRIGGER, DELETE HISTORY ON `priv_db`.* TO 'test_noprivs'@'localhost' +GRANT USAGE ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, TRIGGER, DELETE HISTORY ON `priv_db`.* TO `test_noprivs`@`localhost` use priv_db; create trigger trg4b_1 before UPDATE on t1 for each row set new.f1 = 'trig 3.5.3.7-1b'; @@ -276,8 +276,8 @@ drop trigger trg4b_1; connection yes_privs_424b; show grants; Grants for test_yesprivs@localhost -GRANT TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT UPDATE ON `priv_db`.* TO 'test_yesprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT UPDATE ON `priv_db`.* TO `test_yesprivs`@`localhost` use priv_db; create trigger trg4b_2 before UPDATE on t1 for each row set new.f1 = 'trig 3.5.3.7-2b'; @@ -314,22 +314,22 @@ grant ALL on priv_db.t1 to test_noprivs@localhost; revoke UPDATE on priv_db.t1 from test_noprivs@localhost; show grants for test_noprivs; Grants for test_noprivs@% -GRANT TRIGGER ON *.* TO 'test_noprivs'@'%' +GRANT TRIGGER ON *.* TO `test_noprivs`@`%` revoke ALL PRIVILEGES, GRANT OPTION FROM test_yesprivs@localhost; grant TRIGGER on *.* to test_yesprivs@localhost; grant UPDATE on priv_db.t1 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT UPDATE ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT UPDATE ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` connect no_privs_424c,localhost,test_noprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connect yes_privs_424c,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connection default; connection no_privs_424c; show grants; Grants for test_noprivs@localhost -GRANT TRIGGER ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE VIEW, SHOW VIEW, TRIGGER, DELETE HISTORY ON `priv_db`.`t1` TO 'test_noprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE VIEW, SHOW VIEW, TRIGGER, DELETE HISTORY ON `priv_db`.`t1` TO `test_noprivs`@`localhost` use priv_db; create trigger trg4c_1 before INSERT on t1 for each row set new.f1 = 'trig 3.5.3.7-1c'; @@ -349,8 +349,8 @@ drop trigger trg4c_1; connection yes_privs_424c; show grants; Grants for test_yesprivs@localhost -GRANT TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT UPDATE ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT UPDATE ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` use priv_db; create trigger trg4c_2 before INSERT on t1 for each row set new.f1 = 'trig 3.5.3.7-2c'; @@ -377,21 +377,21 @@ grant TRIGGER on *.* to test_noprivs@localhost; grant SELECT (f1), INSERT (f1) on priv_db.t1 to test_noprivs@localhost; show grants for test_noprivs; Grants for test_noprivs@% -GRANT TRIGGER ON *.* TO 'test_noprivs'@'%' +GRANT TRIGGER ON *.* TO `test_noprivs`@`%` revoke ALL PRIVILEGES, GRANT OPTION FROM test_yesprivs@localhost; grant TRIGGER on *.* to test_yesprivs@localhost; grant UPDATE (f1) on priv_db.t1 to test_yesprivs@localhost; show grants for test_noprivs; Grants for test_noprivs@% -GRANT TRIGGER ON *.* TO 'test_noprivs'@'%' +GRANT TRIGGER ON *.* TO `test_noprivs`@`%` connect no_privs_424d,localhost,test_noprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connect yes_privs_424d,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connection default; connection no_privs_424d; show grants; Grants for test_noprivs@localhost -GRANT TRIGGER ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT (f1), INSERT (f1) ON `priv_db`.`t1` TO 'test_noprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT (f1), INSERT (f1) ON `priv_db`.`t1` TO `test_noprivs`@`localhost` use priv_db; create trigger trg4d_1 before INSERT on t1 for each row set new.f1 = 'trig 3.5.3.7-1d'; @@ -412,8 +412,8 @@ drop trigger trg4d_1; connection yes_privs_424d; show grants; Grants for test_yesprivs@localhost -GRANT TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT UPDATE (f1) ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT UPDATE (f1) ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` use priv_db; create trigger trg4d_2 before INSERT on t1 for each row set new.f1 = 'trig 3.5.3.7-2d'; @@ -441,12 +441,12 @@ grant ALL on *.* to test_noprivs@localhost; revoke SELECT on *.* from test_noprivs@localhost; show grants for test_noprivs@localhost; Grants for test_noprivs@localhost -GRANT INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER, CREATE TABLESPACE, DELETE HISTORY ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER, CREATE TABLESPACE, DELETE HISTORY ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' revoke ALL PRIVILEGES, GRANT OPTION FROM test_yesprivs@localhost; grant TRIGGER, SELECT on *.* to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT SELECT, TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' connect no_privs_425a,localhost,test_noprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connect yes_privs_425a,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connection default; @@ -457,7 +457,7 @@ test_noprivs@localhost use priv_db; show grants; Grants for test_noprivs@localhost -GRANT INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER, CREATE TABLESPACE, DELETE HISTORY ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER, CREATE TABLESPACE, DELETE HISTORY ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' create trigger trg5a_1 before INSERT on t1 for each row set @test_var = new.f1; connection default; @@ -478,7 +478,7 @@ current_user test_yesprivs@localhost show grants; Grants for test_yesprivs@localhost -GRANT SELECT, TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' create trigger trg5a_2 before INSERT on t1 for each row set @test_var= new.f1; connection default; @@ -502,23 +502,23 @@ grant ALL on priv_db.* to test_noprivs@localhost; revoke SELECT on priv_db.* from test_noprivs@localhost; show grants for test_noprivs@localhost; Grants for test_noprivs@localhost -GRANT TRIGGER ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, TRIGGER, DELETE HISTORY ON `priv_db`.* TO 'test_noprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, TRIGGER, DELETE HISTORY ON `priv_db`.* TO `test_noprivs`@`localhost` revoke ALL PRIVILEGES, GRANT OPTION FROM test_yesprivs@localhost; grant TRIGGER on *.* to test_yesprivs@localhost; grant SELECT on priv_db.* to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT ON `priv_db`.* TO 'test_yesprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT ON `priv_db`.* TO `test_yesprivs`@`localhost` connect no_privs_425b,localhost,test_noprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connect yes_privs_425b,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connection default; connection no_privs_425b; show grants; Grants for test_noprivs@localhost -GRANT TRIGGER ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, TRIGGER, DELETE HISTORY ON `priv_db`.* TO 'test_noprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, TRIGGER, DELETE HISTORY ON `priv_db`.* TO `test_noprivs`@`localhost` use priv_db; create trigger trg5b_1 before UPDATE on t1 for each row set @test_var= new.f1; @@ -537,8 +537,8 @@ drop trigger trg5b_1; connection yes_privs_425b; show grants; Grants for test_yesprivs@localhost -GRANT TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT ON `priv_db`.* TO 'test_yesprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT ON `priv_db`.* TO `test_yesprivs`@`localhost` use priv_db; create trigger trg5b_2 before UPDATE on t1 for each row set @test_var= new.f1; @@ -564,23 +564,23 @@ grant ALL on priv_db.t1 to test_noprivs@localhost; revoke SELECT on priv_db.t1 from test_noprivs@localhost; show grants for test_noprivs@localhost; Grants for test_noprivs@localhost -GRANT TRIGGER ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE VIEW, SHOW VIEW, TRIGGER, DELETE HISTORY ON `priv_db`.`t1` TO 'test_noprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE VIEW, SHOW VIEW, TRIGGER, DELETE HISTORY ON `priv_db`.`t1` TO `test_noprivs`@`localhost` revoke ALL PRIVILEGES, GRANT OPTION FROM test_yesprivs@localhost; grant TRIGGER on *.* to test_yesprivs@localhost; grant SELECT on priv_db.t1 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` connect no_privs_425c,localhost,test_noprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connect yes_privs_425c,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connection default; connection no_privs_425c; show grants; Grants for test_noprivs@localhost -GRANT TRIGGER ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE VIEW, SHOW VIEW, TRIGGER, DELETE HISTORY ON `priv_db`.`t1` TO 'test_noprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE VIEW, SHOW VIEW, TRIGGER, DELETE HISTORY ON `priv_db`.`t1` TO `test_noprivs`@`localhost` use priv_db; create trigger trg5c_1 before INSERT on t1 for each row set @test_var= new.f1; @@ -595,8 +595,8 @@ drop trigger trg5c_1; connection yes_privs_425c; show grants; Grants for test_yesprivs@localhost -GRANT TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` use priv_db; create trigger trg5c_2 before INSERT on t1 for each row set @test_var= new.f1; @@ -617,23 +617,23 @@ grant TRIGGER on *.* to test_noprivs@localhost; grant UPDATE (f1), INSERT (f1) on priv_db.t1 to test_noprivs@localhost; show grants for test_noprivs@localhost; Grants for test_noprivs@localhost -GRANT TRIGGER ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT INSERT (f1), UPDATE (f1) ON `priv_db`.`t1` TO 'test_noprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT INSERT (f1), UPDATE (f1) ON `priv_db`.`t1` TO `test_noprivs`@`localhost` revoke ALL PRIVILEGES, GRANT OPTION FROM test_yesprivs@localhost; grant TRIGGER on *.* to test_yesprivs@localhost; grant SELECT (f1) on priv_db.t1 to test_yesprivs@localhost; show grants for test_noprivs@localhost; Grants for test_noprivs@localhost -GRANT TRIGGER ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT INSERT (f1), UPDATE (f1) ON `priv_db`.`t1` TO 'test_noprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT INSERT (f1), UPDATE (f1) ON `priv_db`.`t1` TO `test_noprivs`@`localhost` connect no_privs_425d,localhost,test_noprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connect yes_privs_425d,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connection default; connection no_privs_425d; show grants; Grants for test_noprivs@localhost -GRANT TRIGGER ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT INSERT (f1), UPDATE (f1) ON `priv_db`.`t1` TO 'test_noprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT INSERT (f1), UPDATE (f1) ON `priv_db`.`t1` TO `test_noprivs`@`localhost` use priv_db; create trigger trg5d_1 before INSERT on t1 for each row set @test_var= new.f1; @@ -648,8 +648,8 @@ drop trigger trg5d_1; connection yes_privs_425d; show grants; Grants for test_yesprivs@localhost -GRANT TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT (f1) ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT (f1) ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` use priv_db; create trigger trg5d_2 before INSERT on t1 for each row set @test_var= new.f1; @@ -674,9 +674,9 @@ grant SELECT, UPDATE on priv_db.t1 to test_yesprivs@localhost; grant SELECT on priv_db.t2 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT ON `priv_db`.`t2` TO 'test_yesprivs'@'localhost' -GRANT SELECT, UPDATE ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT ON `priv_db`.`t2` TO `test_yesprivs`@`localhost` +GRANT SELECT, UPDATE ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` connect yes_353x,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connection yes_353x; select current_user; diff --git a/mysql-test/suite/funcs_1/r/innodb_trig_03e.result b/mysql-test/suite/funcs_1/r/innodb_trig_03e.result index aea34df6356..c869b5cc5bc 100644 --- a/mysql-test/suite/funcs_1/r/innodb_trig_03e.result +++ b/mysql-test/suite/funcs_1/r/innodb_trig_03e.result @@ -14,16 +14,16 @@ revoke ALL PRIVILEGES, GRANT OPTION FROM test_yesprivs@localhost; grant select on priv_db.* to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT ON `priv_db`.* TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT ON `priv_db`.* TO `test_yesprivs`@`localhost` create User test_noprivs@localhost; set password for test_noprivs@localhost = password('PWD'); revoke ALL PRIVILEGES, GRANT OPTION FROM test_noprivs@localhost; grant select,insert on priv_db.* to test_noprivs@localhost; show grants for test_noprivs@localhost; Grants for test_noprivs@localhost -GRANT USAGE ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT ON `priv_db`.* TO 'test_noprivs'@'localhost' +GRANT USAGE ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT ON `priv_db`.* TO `test_noprivs`@`localhost` connect yes_privs,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; no trigger privilege on db level for create: @@ -45,8 +45,8 @@ root@localhost grant TRIGGER on priv_db.* to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, TRIGGER ON `priv_db`.* TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, TRIGGER ON `priv_db`.* TO `test_yesprivs`@`localhost` trigger privilege on db level for create: ----------------------------------------- @@ -96,8 +96,8 @@ root@localhost revoke TRIGGER on priv_db.* from test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, UPDATE ON `priv_db`.* TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, UPDATE ON `priv_db`.* TO `test_yesprivs`@`localhost` no trigger privilege on db level for drop: ------------------------------------------ @@ -152,8 +152,8 @@ current_user test_yesprivs@localhost show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, UPDATE, TRIGGER ON `priv_db`.* TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, UPDATE, TRIGGER ON `priv_db`.* TO `test_yesprivs`@`localhost` drop trigger trg1_2; ERROR 42000: TRIGGER command denied to user 'test_yesprivs'@'localhost' for table 't1' @@ -182,9 +182,9 @@ create table t1 (f1 char(20)) engine= innodb; grant SELECT,UPDATE on no_priv_db.* to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, UPDATE, TRIGGER ON `priv_db`.* TO 'test_yesprivs'@'localhost' -GRANT SELECT, UPDATE ON `no_priv_db`.* TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, UPDATE, TRIGGER ON `priv_db`.* TO `test_yesprivs`@`localhost` +GRANT SELECT, UPDATE ON `no_priv_db`.* TO `test_yesprivs`@`localhost` use db with trigger privilege on db level and without...: --------------------------------------------------------- @@ -285,13 +285,13 @@ Trigger Event Table Statement Timing Created sql_mode Definer character_set_clie grant select, insert, update on priv_db.t1 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` grant select, update, insert on priv_db.t1 to test_noprivs@localhost; show grants for test_noprivs@localhost; Grants for test_noprivs@localhost -GRANT USAGE ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO 'test_noprivs'@'localhost' +GRANT USAGE ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO `test_noprivs`@`localhost` connection yes_privs; select current_user; current_user @@ -329,8 +329,8 @@ insert2-yes grant TRIGGER on priv_db.t1 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` trigger privilege on table level for create: -------------------------------------------- @@ -366,8 +366,8 @@ trig 1_2-yes revoke TRIGGER on priv_db.t1 from test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` no trigger privilege on table level for drop: --------------------------------------------- @@ -421,8 +421,8 @@ current_user test_yesprivs@localhost show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` drop trigger trg1_2; connection no_privs; select current_user; @@ -458,15 +458,15 @@ create table t2 (f1 char(20)) engine= innodb; grant SELECT, INSERT, UPDATE on priv_db.t2 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t2` TO 'test_yesprivs'@'localhost' -GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t2` TO `test_yesprivs`@`localhost` +GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` grant SELECT, INSERT, UPDATE on priv_db.t2 to test_noprivs@localhost; show grants for test_noprivs@localhost; Grants for test_noprivs@localhost -GRANT USAGE ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO 'test_noprivs'@'localhost' -GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t2` TO 'test_noprivs'@'localhost' +GRANT USAGE ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO `test_noprivs`@`localhost` +GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t2` TO `test_noprivs`@`localhost` use table with trigger privilege and without...: ------------------------------------------------ @@ -543,14 +543,14 @@ revoke ALL PRIVILEGES, GRANT OPTION FROM test_yesprivs@localhost; grant ALL on *.* to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT ALL PRIVILEGES ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT ALL PRIVILEGES ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' create User test_noprivs@localhost; set password for test_noprivs@localhost = password('PWD'); revoke ALL PRIVILEGES, GRANT OPTION FROM test_noprivs@localhost; grant SELECT,INSERT on *.* to test_noprivs@localhost; show grants for test_noprivs@localhost; Grants for test_noprivs@localhost -GRANT SELECT, INSERT ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' connect yes_privs,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connect no_privs,localhost,test_noprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connection yes_privs; @@ -603,7 +603,7 @@ trig 1_1-yes revoke TRIGGER on *.* from test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, CREATE TABLESPACE, DELETE HISTORY ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, CREATE TABLESPACE, DELETE HISTORY ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' disconnect yes_privs; connect yes_privs,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; select current_user; @@ -622,7 +622,7 @@ current_user root@localhost show grants; Grants for root@localhost -GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION +GRANT ALL PRIVILEGES ON *.* TO `root`@`localhost` WITH GRANT OPTION GRANT PROXY ON ''@'%' TO 'root'@'localhost' WITH GRANT OPTION drop trigger trg1_1; use priv_db; @@ -656,8 +656,8 @@ root@localhost grant TRIGGER on priv_db.* to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, CREATE TABLESPACE, DELETE HISTORY ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT TRIGGER ON `priv_db`.* TO 'test_yesprivs'@'localhost' +GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, CREATE TABLESPACE, DELETE HISTORY ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT TRIGGER ON `priv_db`.* TO `test_yesprivs`@`localhost` trigger privilege on db level for create: ----------------------------------------- @@ -720,7 +720,7 @@ trig 1_2-yes grant TRIGGER on *.* to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT ALL PRIVILEGES ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT ALL PRIVILEGES ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' connection yes_privs; select current_user; current_user @@ -811,9 +811,9 @@ grant ALL on priv1_db.* to test_yesprivs@localhost; grant SELECT,UPDATE on priv2_db.* to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT ALL PRIVILEGES ON `priv1_db`.* TO 'test_yesprivs'@'localhost' -GRANT SELECT, UPDATE ON `priv2_db`.* TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT ALL PRIVILEGES ON `priv1_db`.* TO `test_yesprivs`@`localhost` +GRANT SELECT, UPDATE ON `priv2_db`.* TO `test_yesprivs`@`localhost` create User test_noprivs@localhost; set password for test_noprivs@localhost = password('PWD'); revoke ALL PRIVILEGES, GRANT OPTION FROM test_noprivs@localhost; @@ -821,9 +821,9 @@ grant SELECT,INSERT,UPDATE on priv1_db.* to test_noprivs@localhost; grant SELECT,INSERT on priv2_db.* to test_noprivs@localhost; show grants for test_noprivs@localhost; Grants for test_noprivs@localhost -GRANT USAGE ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE ON `priv1_db`.* TO 'test_noprivs'@'localhost' -GRANT SELECT, INSERT ON `priv2_db`.* TO 'test_noprivs'@'localhost' +GRANT USAGE ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE ON `priv1_db`.* TO `test_noprivs`@`localhost` +GRANT SELECT, INSERT ON `priv2_db`.* TO `test_noprivs`@`localhost` connect yes_privs,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; use priv1_db; connect no_privs,localhost,test_noprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; @@ -888,9 +888,9 @@ revoke TRIGGER on priv1_db.t1 from test_yesprivs@localhost; ERROR 42000: There is no such grant defined for user 'test_yesprivs' on host 'localhost' on table 't1' show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT ALL PRIVILEGES ON `priv1_db`.* TO 'test_yesprivs'@'localhost' -GRANT SELECT, UPDATE ON `priv2_db`.* TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT ALL PRIVILEGES ON `priv1_db`.* TO `test_yesprivs`@`localhost` +GRANT SELECT, UPDATE ON `priv2_db`.* TO `test_yesprivs`@`localhost` connection yes_privs; select current_user; current_user @@ -928,10 +928,10 @@ Trigger Event Table Statement Timing Created sql_mode Definer character_set_clie grant TRIGGER on priv1_db.t1 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, DELETE HISTORY ON `priv1_db`.* TO 'test_yesprivs'@'localhost' -GRANT SELECT, UPDATE ON `priv2_db`.* TO 'test_yesprivs'@'localhost' -GRANT TRIGGER ON `priv1_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, DELETE HISTORY ON `priv1_db`.* TO `test_yesprivs`@`localhost` +GRANT SELECT, UPDATE ON `priv2_db`.* TO `test_yesprivs`@`localhost` +GRANT TRIGGER ON `priv1_db`.`t1` TO `test_yesprivs`@`localhost` trigger privilege on table level for create: -------------------------------------------- @@ -976,10 +976,10 @@ root@localhost grant TRIGGER on priv1_db.* to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT ALL PRIVILEGES ON `priv1_db`.* TO 'test_yesprivs'@'localhost' -GRANT SELECT, UPDATE ON `priv2_db`.* TO 'test_yesprivs'@'localhost' -GRANT TRIGGER ON `priv1_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT ALL PRIVILEGES ON `priv1_db`.* TO `test_yesprivs`@`localhost` +GRANT SELECT, UPDATE ON `priv2_db`.* TO `test_yesprivs`@`localhost` +GRANT TRIGGER ON `priv1_db`.`t1` TO `test_yesprivs`@`localhost` connection yes_privs; select current_user; current_user @@ -1069,8 +1069,8 @@ grant select on priv_db.t1 to test_useprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' WITH GRANT OPTION +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` WITH GRANT OPTION connection yes_privs; select current_user; current_user @@ -1103,8 +1103,8 @@ root@localhost revoke TRIGGER on priv_db.t1 from test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' WITH GRANT OPTION +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` WITH GRANT OPTION connection yes_privs; select current_user; current_user @@ -1134,8 +1134,8 @@ root@localhost grant TRIGGER on priv_db.t1 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' WITH GRANT OPTION +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` WITH GRANT OPTION connection yes_privs; select current_user; current_user @@ -1166,8 +1166,8 @@ root@localhost revoke TRIGGER on priv_db.t1 from test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' WITH GRANT OPTION +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` WITH GRANT OPTION connection yes_privs; select current_user; current_user @@ -1199,8 +1199,8 @@ root@localhost grant TRIGGER on priv_db.t1 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' WITH GRANT OPTION +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` WITH GRANT OPTION connection yes_privs; select current_user; current_user @@ -1233,8 +1233,8 @@ root@localhost revoke TRIGGER on priv_db.t1 from test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' WITH GRANT OPTION +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` WITH GRANT OPTION connection yes_privs; select current_user; current_user @@ -1272,8 +1272,8 @@ root@localhost grant TRIGGER on priv_db.t1 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' WITH GRANT OPTION +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` WITH GRANT OPTION connection yes_privs; select current_user; current_user @@ -1336,8 +1336,8 @@ grant select, insert, update ,trigger on priv_db.t1 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` connection yes_privs; select current_user; current_user @@ -1379,9 +1379,9 @@ current_user test_yesprivs@localhost show grants; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT TRIGGER ON `priv_db`.* TO 'test_yesprivs'@'localhost' WITH GRANT OPTION -GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT TRIGGER ON `priv_db`.* TO `test_yesprivs`@`localhost` WITH GRANT OPTION +GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` create definer=not_ex_user@localhost trigger trg1_3 after UPDATE on t1 for each row set @var1 = 'trig 1_3-yes'; @@ -1416,8 +1416,8 @@ grant select, insert, update ,trigger on priv_db.t1 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` connection yes_privs; select current_user; current_user @@ -1474,16 +1474,16 @@ revoke ALL PRIVILEGES, GRANT OPTION FROM test_yesprivs@localhost; grant TRIGGER on priv_db.* to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT TRIGGER ON `priv_db`.* TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT TRIGGER ON `priv_db`.* TO `test_yesprivs`@`localhost` create User test_noprivs@localhost; set password for test_noprivs@localhost = password('PWD'); revoke ALL PRIVILEGES, GRANT OPTION FROM test_noprivs@localhost; grant SELECT,UPDATE on priv_db.* to test_noprivs@localhost; show grants for test_noprivs@localhost; Grants for test_noprivs@localhost -GRANT USAGE ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, UPDATE ON `priv_db`.* TO 'test_noprivs'@'localhost' +GRANT USAGE ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, UPDATE ON `priv_db`.* TO `test_noprivs`@`localhost` connect yes_privs,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connect no_privs,localhost,test_noprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; @@ -1539,10 +1539,10 @@ revoke UPDATE(f1) on priv_db.t2 from test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT TRIGGER ON `priv_db`.* TO 'test_yesprivs'@'localhost' -GRANT SELECT (f1), INSERT ON `priv_db`.`t2` TO 'test_yesprivs'@'localhost' -GRANT SELECT (f1), INSERT, UPDATE (f1) ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT TRIGGER ON `priv_db`.* TO `test_yesprivs`@`localhost` +GRANT SELECT (f1), INSERT ON `priv_db`.`t2` TO `test_yesprivs`@`localhost` +GRANT SELECT (f1), INSERT, UPDATE (f1) ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` connection yes_privs; select current_user; current_user @@ -1691,9 +1691,9 @@ grant TRIGGER,UPDATE(f2),UPDATE(f3) on priv_db.t1 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT (f1), INSERT, UPDATE ON `priv_db`.`t2` TO 'test_yesprivs'@'localhost' -GRANT SELECT, SELECT (f1), INSERT, UPDATE (f3, f2), TRIGGER ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT (f1), INSERT, UPDATE ON `priv_db`.`t2` TO `test_yesprivs`@`localhost` +GRANT SELECT, SELECT (f1), INSERT, UPDATE (f3, f2), TRIGGER ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` connection yes_privs; select current_user; current_user @@ -1734,9 +1734,9 @@ grant UPDATE(f1),UPDATE(f2),UPDATE(f3) on priv_db.t1 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT (f1), INSERT, UPDATE ON `priv_db`.`t2` TO 'test_yesprivs'@'localhost' -GRANT SELECT, SELECT (f1), INSERT, UPDATE (f3, f2, f1) ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT (f1), INSERT, UPDATE ON `priv_db`.`t2` TO `test_yesprivs`@`localhost` +GRANT SELECT, SELECT (f1), INSERT, UPDATE (f3, f2, f1) ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` connection no_privs; select current_user; current_user diff --git a/mysql-test/suite/funcs_1/r/is_basics_mixed.result b/mysql-test/suite/funcs_1/r/is_basics_mixed.result index 235022e3f43..95fc5ae59c3 100644 --- a/mysql-test/suite/funcs_1/r/is_basics_mixed.result +++ b/mysql-test/suite/funcs_1/r/is_basics_mixed.result @@ -128,7 +128,7 @@ CREATE USER 'testuser1'@'localhost'; GRANT ALL ON *.* TO testuser1@localhost; SHOW GRANTS FOR testuser1@localhost; Grants for testuser1@localhost -GRANT ALL PRIVILEGES ON *.* TO 'testuser1'@'localhost' +GRANT ALL PRIVILEGES ON *.* TO `testuser1`@`localhost` connect testuser1, localhost, testuser1, , test; USE information_schema; CREATE TABLE schemata ( c1 INT ); diff --git a/mysql-test/suite/funcs_1/r/is_check_constraints.result b/mysql-test/suite/funcs_1/r/is_check_constraints.result index 4a3a2c69993..1b54135e355 100644 --- a/mysql-test/suite/funcs_1/r/is_check_constraints.result +++ b/mysql-test/suite/funcs_1/r/is_check_constraints.result @@ -5,8 +5,8 @@ CREATE user boo1; GRANT select,create,alter,drop on foo.* to boo1; SHOW GRANTS for boo1; Grants for boo1@% -GRANT USAGE ON *.* TO 'boo1'@'%' -GRANT SELECT, CREATE, DROP, ALTER ON `foo`.* TO 'boo1'@'%' +GRANT USAGE ON *.* TO `boo1`@`%` +GRANT SELECT, CREATE, DROP, ALTER ON `foo`.* TO `boo1`@`%` CREATE user boo2; create database foo; CONNECT con1,localhost, boo1,, foo; @@ -130,8 +130,8 @@ INSERT INTO t1 VALUES (1, 2), (2, 3); GRANT SELECT (a) ON t1 TO foo; SHOW GRANTS FOR foo; Grants for foo@% -GRANT USAGE ON *.* TO 'foo'@'%' -GRANT SELECT (a) ON `db`.`t1` TO 'foo'@'%' +GRANT USAGE ON *.* TO `foo`@`%` +GRANT SELECT (a) ON `db`.`t1` TO `foo`@`%` SELECT * FROM information_schema.check_constraints; CONSTRAINT_CATALOG CONSTRAINT_SCHEMA TABLE_NAME CONSTRAINT_NAME CHECK_CLAUSE def db t1 CONSTRAINT_1 `b` > 0 diff --git a/mysql-test/suite/funcs_1/r/is_column_privileges.result b/mysql-test/suite/funcs_1/r/is_column_privileges.result index c835864e738..b6be9118048 100644 --- a/mysql-test/suite/funcs_1/r/is_column_privileges.result +++ b/mysql-test/suite/funcs_1/r/is_column_privileges.result @@ -196,8 +196,8 @@ ORDER BY grantee, table_schema,table_name,column_name,privilege_type; GRANTEE TABLE_CATALOG TABLE_SCHEMA TABLE_NAME COLUMN_NAME PRIVILEGE_TYPE IS_GRANTABLE SHOW GRANTS FOR 'testuser1'@'localhost'; Grants for testuser1@localhost -GRANT USAGE ON *.* TO 'testuser1'@'localhost' -GRANT ALL PRIVILEGES ON `test`.* TO 'testuser1'@'localhost' +GRANT USAGE ON *.* TO `testuser1`@`localhost` +GRANT ALL PRIVILEGES ON `test`.* TO `testuser1`@`localhost` connect testuser1, localhost, testuser1, , test; SELECT * FROM information_schema.column_privileges WHERE table_name = 'my_table' @@ -205,8 +205,8 @@ ORDER BY grantee, table_schema,table_name,column_name,privilege_type; GRANTEE TABLE_CATALOG TABLE_SCHEMA TABLE_NAME COLUMN_NAME PRIVILEGE_TYPE IS_GRANTABLE SHOW GRANTS FOR 'testuser1'@'localhost'; Grants for testuser1@localhost -GRANT USAGE ON *.* TO 'testuser1'@'localhost' -GRANT ALL PRIVILEGES ON `test`.* TO 'testuser1'@'localhost' +GRANT USAGE ON *.* TO `testuser1`@`localhost` +GRANT ALL PRIVILEGES ON `test`.* TO `testuser1`@`localhost` connection default; GRANT SELECT (f1,f3) ON db_datadict.my_table TO 'testuser1'@'localhost'; SELECT * FROM information_schema.column_privileges @@ -217,9 +217,9 @@ GRANTEE TABLE_CATALOG TABLE_SCHEMA TABLE_NAME COLUMN_NAME PRIVILEGE_TYPE IS_GRAN 'testuser1'@'localhost' def db_datadict my_table f3 SELECT NO SHOW GRANTS FOR 'testuser1'@'localhost'; Grants for testuser1@localhost -GRANT USAGE ON *.* TO 'testuser1'@'localhost' -GRANT ALL PRIVILEGES ON `test`.* TO 'testuser1'@'localhost' -GRANT SELECT (f3, f1) ON `db_datadict`.`my_table` TO 'testuser1'@'localhost' +GRANT USAGE ON *.* TO `testuser1`@`localhost` +GRANT ALL PRIVILEGES ON `test`.* TO `testuser1`@`localhost` +GRANT SELECT (f3, f1) ON `db_datadict`.`my_table` TO `testuser1`@`localhost` connection testuser1; SELECT * FROM information_schema.column_privileges WHERE table_name = 'my_table' @@ -229,9 +229,9 @@ GRANTEE TABLE_CATALOG TABLE_SCHEMA TABLE_NAME COLUMN_NAME PRIVILEGE_TYPE IS_GRAN 'testuser1'@'localhost' def db_datadict my_table f3 SELECT NO SHOW GRANTS FOR 'testuser1'@'localhost'; Grants for testuser1@localhost -GRANT USAGE ON *.* TO 'testuser1'@'localhost' -GRANT ALL PRIVILEGES ON `test`.* TO 'testuser1'@'localhost' -GRANT SELECT (f3, f1) ON `db_datadict`.`my_table` TO 'testuser1'@'localhost' +GRANT USAGE ON *.* TO `testuser1`@`localhost` +GRANT ALL PRIVILEGES ON `test`.* TO `testuser1`@`localhost` +GRANT SELECT (f3, f1) ON `db_datadict`.`my_table` TO `testuser1`@`localhost` connection default; ALTER TABLE db_datadict.my_table DROP COLUMN f3; GRANT UPDATE (f1) ON db_datadict.my_table TO 'testuser1'@'localhost'; @@ -244,9 +244,9 @@ GRANTEE TABLE_CATALOG TABLE_SCHEMA TABLE_NAME COLUMN_NAME PRIVILEGE_TYPE IS_GRAN 'testuser1'@'localhost' def db_datadict my_table f3 SELECT NO SHOW GRANTS FOR 'testuser1'@'localhost'; Grants for testuser1@localhost -GRANT USAGE ON *.* TO 'testuser1'@'localhost' -GRANT ALL PRIVILEGES ON `test`.* TO 'testuser1'@'localhost' -GRANT SELECT (f3, f1), UPDATE (f1) ON `db_datadict`.`my_table` TO 'testuser1'@'localhost' +GRANT USAGE ON *.* TO `testuser1`@`localhost` +GRANT ALL PRIVILEGES ON `test`.* TO `testuser1`@`localhost` +GRANT SELECT (f3, f1), UPDATE (f1) ON `db_datadict`.`my_table` TO `testuser1`@`localhost` connection testuser1; SELECT * FROM information_schema.column_privileges WHERE table_name = 'my_table' @@ -257,9 +257,9 @@ GRANTEE TABLE_CATALOG TABLE_SCHEMA TABLE_NAME COLUMN_NAME PRIVILEGE_TYPE IS_GRAN 'testuser1'@'localhost' def db_datadict my_table f3 SELECT NO SHOW GRANTS FOR 'testuser1'@'localhost'; Grants for testuser1@localhost -GRANT USAGE ON *.* TO 'testuser1'@'localhost' -GRANT ALL PRIVILEGES ON `test`.* TO 'testuser1'@'localhost' -GRANT SELECT (f3, f1), UPDATE (f1) ON `db_datadict`.`my_table` TO 'testuser1'@'localhost' +GRANT USAGE ON *.* TO `testuser1`@`localhost` +GRANT ALL PRIVILEGES ON `test`.* TO `testuser1`@`localhost` +GRANT SELECT (f3, f1), UPDATE (f1) ON `db_datadict`.`my_table` TO `testuser1`@`localhost` SELECT f1, f3 FROM db_datadict.my_table; ERROR 42S22: Unknown column 'f3' in 'field list' connection default; @@ -273,9 +273,9 @@ GRANTEE TABLE_CATALOG TABLE_SCHEMA TABLE_NAME COLUMN_NAME PRIVILEGE_TYPE IS_GRAN 'testuser1'@'localhost' def db_datadict my_table f3 SELECT NO SHOW GRANTS FOR 'testuser1'@'localhost'; Grants for testuser1@localhost -GRANT USAGE ON *.* TO 'testuser1'@'localhost' -GRANT ALL PRIVILEGES ON `test`.* TO 'testuser1'@'localhost' -GRANT SELECT (f3, f1), UPDATE (f1) ON `db_datadict`.`my_table` TO 'testuser1'@'localhost' +GRANT USAGE ON *.* TO `testuser1`@`localhost` +GRANT ALL PRIVILEGES ON `test`.* TO `testuser1`@`localhost` +GRANT SELECT (f3, f1), UPDATE (f1) ON `db_datadict`.`my_table` TO `testuser1`@`localhost` connection testuser1; SELECT * FROM information_schema.column_privileges WHERE table_name = 'my_table' @@ -286,9 +286,9 @@ GRANTEE TABLE_CATALOG TABLE_SCHEMA TABLE_NAME COLUMN_NAME PRIVILEGE_TYPE IS_GRAN 'testuser1'@'localhost' def db_datadict my_table f3 SELECT NO SHOW GRANTS FOR 'testuser1'@'localhost'; Grants for testuser1@localhost -GRANT USAGE ON *.* TO 'testuser1'@'localhost' -GRANT ALL PRIVILEGES ON `test`.* TO 'testuser1'@'localhost' -GRANT SELECT (f3, f1), UPDATE (f1) ON `db_datadict`.`my_table` TO 'testuser1'@'localhost' +GRANT USAGE ON *.* TO `testuser1`@`localhost` +GRANT ALL PRIVILEGES ON `test`.* TO `testuser1`@`localhost` +GRANT SELECT (f3, f1), UPDATE (f1) ON `db_datadict`.`my_table` TO `testuser1`@`localhost` connection default; DROP TABLE db_datadict.my_table; SELECT * FROM information_schema.column_privileges @@ -300,9 +300,9 @@ GRANTEE TABLE_CATALOG TABLE_SCHEMA TABLE_NAME COLUMN_NAME PRIVILEGE_TYPE IS_GRAN 'testuser1'@'localhost' def db_datadict my_table f3 SELECT NO SHOW GRANTS FOR 'testuser1'@'localhost'; Grants for testuser1@localhost -GRANT USAGE ON *.* TO 'testuser1'@'localhost' -GRANT ALL PRIVILEGES ON `test`.* TO 'testuser1'@'localhost' -GRANT SELECT (f3, f1), UPDATE (f1) ON `db_datadict`.`my_table` TO 'testuser1'@'localhost' +GRANT USAGE ON *.* TO `testuser1`@`localhost` +GRANT ALL PRIVILEGES ON `test`.* TO `testuser1`@`localhost` +GRANT SELECT (f3, f1), UPDATE (f1) ON `db_datadict`.`my_table` TO `testuser1`@`localhost` connection testuser1; SELECT * FROM information_schema.column_privileges WHERE table_name = 'my_table' @@ -313,9 +313,9 @@ GRANTEE TABLE_CATALOG TABLE_SCHEMA TABLE_NAME COLUMN_NAME PRIVILEGE_TYPE IS_GRAN 'testuser1'@'localhost' def db_datadict my_table f3 SELECT NO SHOW GRANTS FOR 'testuser1'@'localhost'; Grants for testuser1@localhost -GRANT USAGE ON *.* TO 'testuser1'@'localhost' -GRANT ALL PRIVILEGES ON `test`.* TO 'testuser1'@'localhost' -GRANT SELECT (f3, f1), UPDATE (f1) ON `db_datadict`.`my_table` TO 'testuser1'@'localhost' +GRANT USAGE ON *.* TO `testuser1`@`localhost` +GRANT ALL PRIVILEGES ON `test`.* TO `testuser1`@`localhost` +GRANT SELECT (f3, f1), UPDATE (f1) ON `db_datadict`.`my_table` TO `testuser1`@`localhost` connection default; REVOKE ALL ON db_datadict.my_table FROM 'testuser1'@'localhost'; SELECT * FROM information_schema.column_privileges @@ -324,8 +324,8 @@ ORDER BY grantee, table_schema,table_name,column_name,privilege_type; GRANTEE TABLE_CATALOG TABLE_SCHEMA TABLE_NAME COLUMN_NAME PRIVILEGE_TYPE IS_GRANTABLE SHOW GRANTS FOR 'testuser1'@'localhost'; Grants for testuser1@localhost -GRANT USAGE ON *.* TO 'testuser1'@'localhost' -GRANT ALL PRIVILEGES ON `test`.* TO 'testuser1'@'localhost' +GRANT USAGE ON *.* TO `testuser1`@`localhost` +GRANT ALL PRIVILEGES ON `test`.* TO `testuser1`@`localhost` connection testuser1; SELECT * FROM information_schema.column_privileges WHERE table_name = 'my_table' @@ -333,8 +333,8 @@ ORDER BY grantee, table_schema,table_name,column_name,privilege_type; GRANTEE TABLE_CATALOG TABLE_SCHEMA TABLE_NAME COLUMN_NAME PRIVILEGE_TYPE IS_GRANTABLE SHOW GRANTS FOR 'testuser1'@'localhost'; Grants for testuser1@localhost -GRANT USAGE ON *.* TO 'testuser1'@'localhost' -GRANT ALL PRIVILEGES ON `test`.* TO 'testuser1'@'localhost' +GRANT USAGE ON *.* TO `testuser1`@`localhost` +GRANT ALL PRIVILEGES ON `test`.* TO `testuser1`@`localhost` connection default; disconnect testuser1; DROP USER 'testuser1'@'localhost'; diff --git a/mysql-test/suite/funcs_1/r/is_schema_privileges.result b/mysql-test/suite/funcs_1/r/is_schema_privileges.result index 3daac8b2c5f..8669b2873ed 100644 --- a/mysql-test/suite/funcs_1/r/is_schema_privileges.result +++ b/mysql-test/suite/funcs_1/r/is_schema_privileges.result @@ -124,10 +124,10 @@ GRANTEE TABLE_CATALOG TABLE_SCHEMA PRIVILEGE_TYPE IS_GRANTABLE 'testuser1'@'localhost' def db_datadict_4 SELECT YES SHOW GRANTS FOR 'testuser1'@'localhost'; Grants for testuser1@localhost -GRANT USAGE ON *.* TO 'testuser1'@'localhost' -GRANT INSERT ON `db_datadict_1`.* TO 'testuser1'@'localhost' -GRANT SELECT ON `db_datadict_4`.* TO 'testuser1'@'localhost' WITH GRANT OPTION -GRANT INSERT ON `db_datadict_2`.`t1` TO 'testuser1'@'localhost' +GRANT USAGE ON *.* TO `testuser1`@`localhost` +GRANT INSERT ON `db_datadict_1`.* TO `testuser1`@`localhost` +GRANT SELECT ON `db_datadict_4`.* TO `testuser1`@`localhost` WITH GRANT OPTION +GRANT INSERT ON `db_datadict_2`.`t1` TO `testuser1`@`localhost` SHOW GRANTS FOR 'testuser2'@'localhost'; ERROR 42000: Access denied for user 'testuser1'@'localhost' to database 'mysql' connect testuser2, localhost, testuser2, , test; @@ -147,10 +147,10 @@ SHOW GRANTS FOR 'testuser1'@'localhost'; ERROR 42000: Access denied for user 'testuser2'@'localhost' to database 'mysql' SHOW GRANTS FOR 'testuser2'@'localhost'; Grants for testuser2@localhost -GRANT USAGE ON *.* TO 'testuser2'@'localhost' -GRANT SELECT ON `db_datadict_3`.* TO 'testuser2'@'localhost' -GRANT SELECT ON `db_datadict_1`.* TO 'testuser2'@'localhost' -GRANT SELECT ON `db_datadict_4`.* TO 'testuser2'@'localhost' +GRANT USAGE ON *.* TO `testuser2`@`localhost` +GRANT SELECT ON `db_datadict_3`.* TO `testuser2`@`localhost` +GRANT SELECT ON `db_datadict_1`.* TO `testuser2`@`localhost` +GRANT SELECT ON `db_datadict_4`.* TO `testuser2`@`localhost` connection default; disconnect testuser1; disconnect testuser2; @@ -165,16 +165,16 @@ GRANTEE TABLE_CATALOG TABLE_SCHEMA PRIVILEGE_TYPE IS_GRANTABLE 'testuser2'@'localhost' def db_datadict_4 SELECT NO SHOW GRANTS FOR 'testuser1'@'localhost'; Grants for testuser1@localhost -GRANT USAGE ON *.* TO 'testuser1'@'localhost' -GRANT INSERT ON `db_datadict_1`.* TO 'testuser1'@'localhost' -GRANT SELECT ON `db_datadict_4`.* TO 'testuser1'@'localhost' WITH GRANT OPTION -GRANT INSERT ON `db_datadict_2`.`t1` TO 'testuser1'@'localhost' +GRANT USAGE ON *.* TO `testuser1`@`localhost` +GRANT INSERT ON `db_datadict_1`.* TO `testuser1`@`localhost` +GRANT SELECT ON `db_datadict_4`.* TO `testuser1`@`localhost` WITH GRANT OPTION +GRANT INSERT ON `db_datadict_2`.`t1` TO `testuser1`@`localhost` SHOW GRANTS FOR 'testuser2'@'localhost'; Grants for testuser2@localhost -GRANT USAGE ON *.* TO 'testuser2'@'localhost' -GRANT SELECT ON `db_datadict_3`.* TO 'testuser2'@'localhost' -GRANT SELECT ON `db_datadict_1`.* TO 'testuser2'@'localhost' -GRANT SELECT ON `db_datadict_4`.* TO 'testuser2'@'localhost' +GRANT USAGE ON *.* TO `testuser2`@`localhost` +GRANT SELECT ON `db_datadict_3`.* TO `testuser2`@`localhost` +GRANT SELECT ON `db_datadict_1`.* TO `testuser2`@`localhost` +GRANT SELECT ON `db_datadict_4`.* TO `testuser2`@`localhost` DROP USER 'testuser1'@'localhost'; DROP USER 'testuser2'@'localhost'; DROP DATABASE db_datadict_1; diff --git a/mysql-test/suite/funcs_1/r/is_statistics.result b/mysql-test/suite/funcs_1/r/is_statistics.result index 419eb0b4b4c..76f3b03d018 100644 --- a/mysql-test/suite/funcs_1/r/is_statistics.result +++ b/mysql-test/suite/funcs_1/r/is_statistics.result @@ -196,10 +196,10 @@ def db_datadict_2 t4 1 db_datadict_2 f2_ind 1 f2 NULL 0 NULL NULL YES HASH def db_datadict_2 t4 0 db_datadict_2 PRIMARY 1 f1 NULL 0 NULL NULL HASH SHOW GRANTS FOR 'testuser1'@'localhost'; Grants for testuser1@localhost -GRANT USAGE ON *.* TO 'testuser1'@'localhost' +GRANT USAGE ON *.* TO `testuser1`@`localhost` SHOW GRANTS FOR 'testuser2'@'localhost'; Grants for testuser2@localhost -GRANT USAGE ON *.* TO 'testuser2'@'localhost' +GRANT USAGE ON *.* TO `testuser2`@`localhost` connect testuser1, localhost, testuser1, , test; SELECT * FROM information_schema.statistics WHERE table_schema LIKE 'db_datadict%' @@ -207,7 +207,7 @@ ORDER BY table_schema,table_name,index_name,seq_in_index,column_name; TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT INDEX_COMMENT SHOW GRANTS FOR 'testuser1'@'localhost'; Grants for testuser1@localhost -GRANT USAGE ON *.* TO 'testuser1'@'localhost' +GRANT USAGE ON *.* TO `testuser1`@`localhost` SHOW GRANTS FOR 'testuser2'@'localhost'; ERROR 42000: Access denied for user 'testuser1'@'localhost' to database 'mysql' connect testuser2, localhost, testuser2, , test; @@ -219,7 +219,7 @@ SHOW GRANTS FOR 'testuser1'@'localhost'; ERROR 42000: Access denied for user 'testuser2'@'localhost' to database 'mysql' SHOW GRANTS FOR 'testuser2'@'localhost'; Grants for testuser2@localhost -GRANT USAGE ON *.* TO 'testuser2'@'localhost' +GRANT USAGE ON *.* TO `testuser2`@`localhost` connection default; GRANT SELECT ON db_datadict.t1 TO 'testuser1'@'localhost' WITH GRANT OPTION; GRANT SELECT(f1,f5) ON db_datadict_2.t3 TO 'testuser1'@'localhost'; @@ -239,12 +239,12 @@ def db_datadict_2 t4 1 db_datadict_2 f2_ind 1 f2 NULL 0 NULL NULL YES HASH def db_datadict_2 t4 0 db_datadict_2 PRIMARY 1 f1 NULL 0 NULL NULL HASH SHOW GRANTS FOR 'testuser1'@'localhost'; Grants for testuser1@localhost -GRANT USAGE ON *.* TO 'testuser1'@'localhost' -GRANT SELECT ON `db_datadict`.`t1` TO 'testuser1'@'localhost' WITH GRANT OPTION -GRANT SELECT (f5, f1) ON `db_datadict_2`.`t3` TO 'testuser1'@'localhost' +GRANT USAGE ON *.* TO `testuser1`@`localhost` +GRANT SELECT ON `db_datadict`.`t1` TO `testuser1`@`localhost` WITH GRANT OPTION +GRANT SELECT (f5, f1) ON `db_datadict_2`.`t3` TO `testuser1`@`localhost` SHOW GRANTS FOR 'testuser2'@'localhost'; Grants for testuser2@localhost -GRANT USAGE ON *.* TO 'testuser2'@'localhost' +GRANT USAGE ON *.* TO `testuser2`@`localhost` connection testuser1; SELECT * FROM information_schema.statistics WHERE table_schema LIKE 'db_datadict%' @@ -258,9 +258,9 @@ def db_datadict_2 t3 0 db_datadict_2 f5 1 f5 NULL 0 NULL NULL YES HASH def db_datadict_2 t3 0 db_datadict_2 PRIMARY 1 f1 NULL 0 NULL NULL HASH SHOW GRANTS FOR 'testuser1'@'localhost'; Grants for testuser1@localhost -GRANT USAGE ON *.* TO 'testuser1'@'localhost' -GRANT SELECT ON `db_datadict`.`t1` TO 'testuser1'@'localhost' WITH GRANT OPTION -GRANT SELECT (f5, f1) ON `db_datadict_2`.`t3` TO 'testuser1'@'localhost' +GRANT USAGE ON *.* TO `testuser1`@`localhost` +GRANT SELECT ON `db_datadict`.`t1` TO `testuser1`@`localhost` WITH GRANT OPTION +GRANT SELECT (f5, f1) ON `db_datadict_2`.`t3` TO `testuser1`@`localhost` SHOW GRANTS FOR 'testuser2'@'localhost'; ERROR 42000: Access denied for user 'testuser1'@'localhost' to database 'mysql' connection testuser2; @@ -272,13 +272,13 @@ SHOW GRANTS FOR 'testuser1'@'localhost'; ERROR 42000: Access denied for user 'testuser2'@'localhost' to database 'mysql' SHOW GRANTS FOR 'testuser2'@'localhost'; Grants for testuser2@localhost -GRANT USAGE ON *.* TO 'testuser2'@'localhost' +GRANT USAGE ON *.* TO `testuser2`@`localhost` connection default; REVOKE SELECT,GRANT OPTION ON db_datadict.t1 FROM 'testuser1'@'localhost'; SHOW GRANTS FOR 'testuser1'@'localhost'; Grants for testuser1@localhost -GRANT USAGE ON *.* TO 'testuser1'@'localhost' -GRANT SELECT (f5, f1) ON `db_datadict_2`.`t3` TO 'testuser1'@'localhost' +GRANT USAGE ON *.* TO `testuser1`@`localhost` +GRANT SELECT (f5, f1) ON `db_datadict_2`.`t3` TO `testuser1`@`localhost` connection testuser1; SELECT * FROM information_schema.statistics WHERE table_schema LIKE 'db_datadict%' @@ -290,8 +290,8 @@ def db_datadict_2 t3 0 db_datadict_2 f5 1 f5 NULL 0 NULL NULL YES HASH def db_datadict_2 t3 0 db_datadict_2 PRIMARY 1 f1 NULL 0 NULL NULL HASH SHOW GRANTS FOR 'testuser1'@'localhost'; Grants for testuser1@localhost -GRANT USAGE ON *.* TO 'testuser1'@'localhost' -GRANT SELECT (f5, f1) ON `db_datadict_2`.`t3` TO 'testuser1'@'localhost' +GRANT USAGE ON *.* TO `testuser1`@`localhost` +GRANT SELECT (f5, f1) ON `db_datadict_2`.`t3` TO `testuser1`@`localhost` connection default; disconnect testuser1; disconnect testuser2; diff --git a/mysql-test/suite/funcs_1/r/is_table_constraints.result b/mysql-test/suite/funcs_1/r/is_table_constraints.result index d968d3b65de..a5f7b39d166 100644 --- a/mysql-test/suite/funcs_1/r/is_table_constraints.result +++ b/mysql-test/suite/funcs_1/r/is_table_constraints.result @@ -109,8 +109,8 @@ CREATE USER 'testuser1'@'localhost'; GRANT SELECT(f5) ON db_datadict.t1 TO 'testuser1'@'localhost'; SHOW GRANTS FOR 'testuser1'@'localhost'; Grants for testuser1@localhost -GRANT USAGE ON *.* TO 'testuser1'@'localhost' -GRANT SELECT (f5) ON `db_datadict`.`t1` TO 'testuser1'@'localhost' +GRANT USAGE ON *.* TO `testuser1`@`localhost` +GRANT SELECT (f5) ON `db_datadict`.`t1` TO `testuser1`@`localhost` SELECT * FROM information_schema.table_constraints WHERE table_schema = 'db_datadict' ORDER BY table_schema,table_name, constraint_name; @@ -133,8 +133,8 @@ t2 0 PRIMARY 2 f2 ### ### ### ### ### ### ### connect testuser1, localhost, testuser1, , db_datadict; SHOW GRANTS FOR 'testuser1'@'localhost'; Grants for testuser1@localhost -GRANT USAGE ON *.* TO 'testuser1'@'localhost' -GRANT SELECT (f5) ON `db_datadict`.`t1` TO 'testuser1'@'localhost' +GRANT USAGE ON *.* TO `testuser1`@`localhost` +GRANT SELECT (f5) ON `db_datadict`.`t1` TO `testuser1`@`localhost` SELECT * FROM information_schema.table_constraints WHERE table_schema = 'db_datadict' ORDER BY table_schema,table_name, constraint_name; diff --git a/mysql-test/suite/funcs_1/r/is_table_privileges.result b/mysql-test/suite/funcs_1/r/is_table_privileges.result index 1d54ef75297..2c0942f44f1 100644 --- a/mysql-test/suite/funcs_1/r/is_table_privileges.result +++ b/mysql-test/suite/funcs_1/r/is_table_privileges.result @@ -84,9 +84,9 @@ GRANTEE TABLE_CATALOG TABLE_SCHEMA TABLE_NAME PRIVILEGE_TYPE IS_GRANTABLE 'testuser1'@'localhost' def db_datadict tb1 SELECT NO SHOW GRANTS FOR 'testuser1'@'localhost'; Grants for testuser1@localhost -GRANT USAGE ON *.* TO 'testuser1'@'localhost' -GRANT SELECT, CREATE ON `db_datadict`.* TO 'testuser1'@'localhost' WITH GRANT OPTION -GRANT SELECT ON `db_datadict`.`tb1` TO 'testuser1'@'localhost' +GRANT USAGE ON *.* TO `testuser1`@`localhost` +GRANT SELECT, CREATE ON `db_datadict`.* TO `testuser1`@`localhost` WITH GRANT OPTION +GRANT SELECT ON `db_datadict`.`tb1` TO `testuser1`@`localhost` connect testuser2, localhost, testuser2, , db_datadict; SELECT * FROM information_schema.table_privileges WHERE table_name LIKE 'tb%' @@ -107,8 +107,8 @@ GRANTEE TABLE_CATALOG TABLE_SCHEMA TABLE_NAME PRIVILEGE_TYPE IS_GRANTABLE 'testuser2'@'localhost' def db_datadict tb1 UPDATE YES SHOW GRANTS FOR 'testuser2'@'localhost'; Grants for testuser2@localhost -GRANT USAGE ON *.* TO 'testuser2'@'localhost' -GRANT ALL PRIVILEGES ON `db_datadict`.`tb1` TO 'testuser2'@'localhost' WITH GRANT OPTION +GRANT USAGE ON *.* TO `testuser2`@`localhost` +GRANT ALL PRIVILEGES ON `db_datadict`.`tb1` TO `testuser2`@`localhost` WITH GRANT OPTION connect testuser3, localhost, testuser3, , db_datadict; SELECT * FROM information_schema.table_privileges WHERE table_name LIKE 'tb%' @@ -117,8 +117,8 @@ GRANTEE TABLE_CATALOG TABLE_SCHEMA TABLE_NAME PRIVILEGE_TYPE IS_GRANTABLE 'testuser3'@'localhost' def db_datadict tb3 SELECT NO SHOW GRANTS FOR 'testuser3'@'localhost'; Grants for testuser3@localhost -GRANT USAGE ON *.* TO 'testuser3'@'localhost' -GRANT SELECT ON `db_datadict`.`tb3` TO 'testuser3'@'localhost' +GRANT USAGE ON *.* TO `testuser3`@`localhost` +GRANT SELECT ON `db_datadict`.`tb3` TO `testuser3`@`localhost` connection default; disconnect testuser1; disconnect testuser2; @@ -144,17 +144,17 @@ GRANTEE TABLE_CATALOG TABLE_SCHEMA TABLE_NAME PRIVILEGE_TYPE IS_GRANTABLE 'testuser3'@'localhost' def db_datadict tb3 SELECT NO SHOW GRANTS FOR 'testuser1'@'localhost'; Grants for testuser1@localhost -GRANT USAGE ON *.* TO 'testuser1'@'localhost' -GRANT SELECT, CREATE ON `db_datadict`.* TO 'testuser1'@'localhost' WITH GRANT OPTION -GRANT SELECT ON `db_datadict`.`tb1` TO 'testuser1'@'localhost' +GRANT USAGE ON *.* TO `testuser1`@`localhost` +GRANT SELECT, CREATE ON `db_datadict`.* TO `testuser1`@`localhost` WITH GRANT OPTION +GRANT SELECT ON `db_datadict`.`tb1` TO `testuser1`@`localhost` SHOW GRANTS FOR 'testuser2'@'localhost'; Grants for testuser2@localhost -GRANT USAGE ON *.* TO 'testuser2'@'localhost' -GRANT ALL PRIVILEGES ON `db_datadict`.`tb1` TO 'testuser2'@'localhost' WITH GRANT OPTION +GRANT USAGE ON *.* TO `testuser2`@`localhost` +GRANT ALL PRIVILEGES ON `db_datadict`.`tb1` TO `testuser2`@`localhost` WITH GRANT OPTION SHOW GRANTS FOR 'testuser3'@'localhost'; Grants for testuser3@localhost -GRANT USAGE ON *.* TO 'testuser3'@'localhost' -GRANT SELECT ON `db_datadict`.`tb3` TO 'testuser3'@'localhost' +GRANT USAGE ON *.* TO `testuser3`@`localhost` +GRANT SELECT ON `db_datadict`.`tb3` TO `testuser3`@`localhost` DROP USER 'testuser1'@'localhost'; DROP USER 'testuser2'@'localhost'; DROP USER 'testuser3'@'localhost'; @@ -226,9 +226,9 @@ SHOW GRANTS FOR 'testuser1'@'localhost'; ERROR 42000: There is no such grant defined for user 'testuser1' on host 'localhost' SHOW GRANTS FOR 'the_user'@'localhost'; Grants for the_user@localhost -GRANT USAGE ON *.* TO 'the_user'@'localhost' -GRANT ALL PRIVILEGES ON `test`.`t1_view` TO 'the_user'@'localhost' -GRANT ALL PRIVILEGES ON `test`.`t1_table` TO 'the_user'@'localhost' +GRANT USAGE ON *.* TO `the_user`@`localhost` +GRANT ALL PRIVILEGES ON `test`.`t1_view` TO `the_user`@`localhost` +GRANT ALL PRIVILEGES ON `test`.`t1_table` TO `the_user`@`localhost` SELECT DISTINCT table_schema,table_name FROM information_schema.table_privileges WHERE table_name LIKE 't1_%' ORDER BY table_schema,table_name; @@ -246,9 +246,9 @@ test t1_table test t1_view SHOW GRANTS FOR 'the_user'@'localhost'; Grants for the_user@localhost -GRANT USAGE ON *.* TO 'the_user'@'localhost' -GRANT ALL PRIVILEGES ON `test`.`t1_view` TO 'the_user'@'localhost' -GRANT ALL PRIVILEGES ON `test`.`t1_table` TO 'the_user'@'localhost' +GRANT USAGE ON *.* TO `the_user`@`localhost` +GRANT ALL PRIVILEGES ON `test`.`t1_view` TO `the_user`@`localhost` +GRANT ALL PRIVILEGES ON `test`.`t1_table` TO `the_user`@`localhost` REVOKE ALL PRIVILEGES ON test.t1_table FROM 'the_user'@'localhost'; REVOKE ALL PRIVILEGES ON test.t1_view FROM 'the_user'@'localhost'; DROP VIEW test.t1_view; diff --git a/mysql-test/suite/funcs_1/r/is_triggers.result b/mysql-test/suite/funcs_1/r/is_triggers.result index 1127dc3ff44..d9ba88cba5a 100644 --- a/mysql-test/suite/funcs_1/r/is_triggers.result +++ b/mysql-test/suite/funcs_1/r/is_triggers.result @@ -145,8 +145,8 @@ trg1 INSERT t1 SET @test_before = 2, new.f1 = @test_before BEFORE # testuser1@l connect testuser2, localhost, testuser2, , db_datadict; SHOW GRANTS FOR 'testuser2'@'localhost'; Grants for testuser2@localhost -GRANT USAGE ON *.* TO 'testuser2'@'localhost' -GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE VIEW, SHOW VIEW, DELETE HISTORY ON `db_datadict`.`t1` TO 'testuser2'@'localhost' +GRANT USAGE ON *.* TO `testuser2`@`localhost` +GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE VIEW, SHOW VIEW, DELETE HISTORY ON `db_datadict`.`t1` TO `testuser2`@`localhost` # No TRIGGER Privilege --> no result for query SELECT * FROM information_schema.triggers WHERE trigger_name = 'trg1'; @@ -156,8 +156,8 @@ Trigger Event Table Statement Timing Created sql_mode Definer character_set_clie connect testuser3, localhost, testuser3, , test; SHOW GRANTS FOR 'testuser3'@'localhost'; Grants for testuser3@localhost -GRANT TRIGGER ON *.* TO 'testuser3'@'localhost' -GRANT SELECT ON `db_datadict`.`t1` TO 'testuser3'@'localhost' +GRANT TRIGGER ON *.* TO `testuser3`@`localhost` +GRANT SELECT ON `db_datadict`.`t1` TO `testuser3`@`localhost` # TRIGGER Privilege + SELECT Privilege on t1 --> result for query SELECT * FROM information_schema.triggers WHERE trigger_name = 'trg1'; @@ -169,7 +169,7 @@ trg1 INSERT t1 SET @test_before = 2, new.f1 = @test_before BEFORE # testuser1@l connect testuser4, localhost, testuser4, , test; SHOW GRANTS FOR 'testuser4'@'localhost'; Grants for testuser4@localhost -GRANT TRIGGER ON *.* TO 'testuser4'@'localhost' +GRANT TRIGGER ON *.* TO `testuser4`@`localhost` # TRIGGER Privilege + no SELECT Privilege on t1 --> result for query SELECT * FROM db_datadict.t1; ERROR 42000: SELECT command denied to user 'testuser4'@'localhost' for table 't1' diff --git a/mysql-test/suite/funcs_1/r/is_user_privileges.result b/mysql-test/suite/funcs_1/r/is_user_privileges.result index cb619831baa..4ef7c18d627 100644 --- a/mysql-test/suite/funcs_1/r/is_user_privileges.result +++ b/mysql-test/suite/funcs_1/r/is_user_privileges.result @@ -546,9 +546,9 @@ default_role max_statement_time 0.000000 SHOW GRANTS; Grants for testuser1@localhost -GRANT USAGE ON *.* TO 'testuser1'@'localhost' -GRANT SELECT, UPDATE ON `db_datadict`.* TO 'testuser1'@'localhost' WITH GRANT OPTION -GRANT SELECT ON `mysql`.`user` TO 'testuser1'@'localhost' +GRANT USAGE ON *.* TO `testuser1`@`localhost` +GRANT SELECT, UPDATE ON `db_datadict`.* TO `testuser1`@`localhost` WITH GRANT OPTION +GRANT SELECT ON `mysql`.`user` TO `testuser1`@`localhost` # Now add SELECT on *.* to testuser1; connection default; @@ -1035,9 +1035,9 @@ default_role max_statement_time 0.000000 SHOW GRANTS; Grants for testuser1@localhost -GRANT SELECT ON *.* TO 'testuser1'@'localhost' WITH GRANT OPTION -GRANT SELECT, UPDATE ON `db_datadict`.* TO 'testuser1'@'localhost' WITH GRANT OPTION -GRANT SELECT ON `mysql`.`user` TO 'testuser1'@'localhost' +GRANT SELECT ON *.* TO `testuser1`@`localhost` WITH GRANT OPTION +GRANT SELECT, UPDATE ON `db_datadict`.* TO `testuser1`@`localhost` WITH GRANT OPTION +GRANT SELECT ON `mysql`.`user` TO `testuser1`@`localhost` connect testuser2, localhost, testuser2, , db_datadict; SELECT * FROM information_schema.user_privileges WHERE grantee LIKE '''testuser%''' @@ -1055,7 +1055,7 @@ WHERE user LIKE 'testuser%' ORDER BY host, user; ERROR 42000: SELECT command denied to user 'testuser2'@'localhost' for table 'user' SHOW GRANTS; Grants for testuser2@localhost -GRANT INSERT, UPDATE ON *.* TO 'testuser2'@'localhost' +GRANT INSERT, UPDATE ON *.* TO `testuser2`@`localhost` connect testuser3, localhost, testuser3, , test; SELECT * FROM information_schema.user_privileges WHERE grantee LIKE '''testuser%''' @@ -1069,7 +1069,7 @@ WHERE user LIKE 'testuser%' ORDER BY host, user; ERROR 42000: SELECT command denied to user 'testuser3'@'localhost' for table 'user' SHOW GRANTS; Grants for testuser3@localhost -GRANT USAGE ON *.* TO 'testuser3'@'localhost' +GRANT USAGE ON *.* TO `testuser3`@`localhost` # Revoke privileges from testuser1; connection default; @@ -1249,7 +1249,7 @@ WHERE user LIKE 'testuser%' ORDER BY host, user; ERROR 42000: SELECT command denied to user 'testuser1'@'localhost' for table 'user' SHOW GRANTS; Grants for testuser1@localhost -GRANT USAGE ON *.* TO 'testuser1'@'localhost' +GRANT USAGE ON *.* TO `testuser1`@`localhost` CREATE TABLE db_datadict.tb_55 ( c1 TEXT ); ERROR 42000: CREATE command denied to user 'testuser1'@'localhost' for table 'tb_55' SELECT * FROM information_schema.user_privileges @@ -1264,7 +1264,7 @@ WHERE user LIKE 'testuser%' ORDER BY host, user; ERROR 42000: SELECT command denied to user 'testuser1'@'localhost' for table 'user' SHOW GRANTS; Grants for testuser1@localhost -GRANT USAGE ON *.* TO 'testuser1'@'localhost' +GRANT USAGE ON *.* TO `testuser1`@`localhost` CREATE TABLE db_datadict.tb_66 ( c1 TEXT ); ERROR 42000: CREATE command denied to user 'testuser1'@'localhost' for table 'tb_66' @@ -1587,9 +1587,9 @@ default_role max_statement_time 0.000000 SHOW GRANTS; Grants for testuser1@localhost -GRANT USAGE ON *.* TO 'testuser1'@'localhost' -GRANT ALL PRIVILEGES ON `db_datadict`.* TO 'testuser1'@'localhost' WITH GRANT OPTION -GRANT SELECT ON `mysql`.`user` TO 'testuser1'@'localhost' +GRANT USAGE ON *.* TO `testuser1`@`localhost` +GRANT ALL PRIVILEGES ON `db_datadict`.* TO `testuser1`@`localhost` WITH GRANT OPTION +GRANT SELECT ON `mysql`.`user` TO `testuser1`@`localhost` CREATE TABLE db_datadict.tb_56 ( c1 TEXT ); ERROR 42000: CREATE command denied to user 'testuser1'@'localhost' for table 'tb_56' USE db_datadict; @@ -1745,9 +1745,9 @@ default_role max_statement_time 0.000000 SHOW GRANTS; Grants for testuser1@localhost -GRANT USAGE ON *.* TO 'testuser1'@'localhost' -GRANT ALL PRIVILEGES ON `db_datadict`.* TO 'testuser1'@'localhost' WITH GRANT OPTION -GRANT SELECT ON `mysql`.`user` TO 'testuser1'@'localhost' +GRANT USAGE ON *.* TO `testuser1`@`localhost` +GRANT ALL PRIVILEGES ON `db_datadict`.* TO `testuser1`@`localhost` WITH GRANT OPTION +GRANT SELECT ON `mysql`.`user` TO `testuser1`@`localhost` CREATE TABLE tb_57 ( c1 TEXT ) ENGINE = ; @@ -1929,7 +1929,7 @@ WHERE user LIKE 'testuser%' ORDER BY host, user; ERROR 42000: SELECT command denied to user 'testuser1'@'localhost' for table 'user' SHOW GRANTS; Grants for testuser1@localhost -GRANT USAGE ON *.* TO 'testuser1'@'localhost' +GRANT USAGE ON *.* TO `testuser1`@`localhost` CREATE TABLE db_datadict.tb_58 ( c1 TEXT ) ENGINE = ; USE db_datadict; @@ -1961,7 +1961,7 @@ PRIVILEGE_TYPE USAGE IS_GRANTABLE NO SHOW GRANTS FOR 'testuser1'@'localhost'; Grants for testuser1@localhost -GRANT USAGE ON *.* TO 'testuser1'@'localhost' +GRANT USAGE ON *.* TO `testuser1`@`localhost` GRANT SELECT, FILE ON *.* TO 'testuser1'@'localhost'; SELECT * FROM information_schema.user_privileges WHERE grantee = '''testuser1''@''localhost'''; @@ -1975,7 +1975,7 @@ PRIVILEGE_TYPE FILE IS_GRANTABLE NO SHOW GRANTS FOR 'testuser1'@'localhost'; Grants for testuser1@localhost -GRANT SELECT, FILE ON *.* TO 'testuser1'@'localhost' +GRANT SELECT, FILE ON *.* TO `testuser1`@`localhost` DROP USER 'testuser1'@'localhost'; SELECT * FROM information_schema.user_privileges WHERE grantee = '''testuser1''@''localhost'''; diff --git a/mysql-test/suite/funcs_1/r/memory_trig_03.result b/mysql-test/suite/funcs_1/r/memory_trig_03.result index acab98b0cdc..75286115d86 100644 --- a/mysql-test/suite/funcs_1/r/memory_trig_03.result +++ b/mysql-test/suite/funcs_1/r/memory_trig_03.result @@ -78,14 +78,14 @@ grant ALL on *.* to test_noprivs@localhost; revoke TRIGGER on *.* from test_noprivs@localhost; show grants for test_noprivs@localhost; Grants for test_noprivs@localhost -GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, CREATE TABLESPACE, DELETE HISTORY ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, CREATE TABLESPACE, DELETE HISTORY ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' revoke ALL PRIVILEGES, GRANT OPTION FROM test_yesprivs@localhost; grant TRIGGER on *.* to test_yesprivs@localhost; grant SELECT on priv_db.t1 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` connect no_privs,localhost,test_noprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connect yes_privs,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connection default; @@ -168,12 +168,12 @@ grant ALL on *.* to test_noprivs@localhost; revoke UPDATE on *.* from test_noprivs@localhost; show grants for test_noprivs@localhost; Grants for test_noprivs@localhost -GRANT SELECT, INSERT, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER, CREATE TABLESPACE, DELETE HISTORY ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER, CREATE TABLESPACE, DELETE HISTORY ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' revoke ALL PRIVILEGES, GRANT OPTION FROM test_yesprivs@localhost; grant TRIGGER, UPDATE on *.* to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT UPDATE, TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT UPDATE, TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' connect no_privs_424a,localhost,test_noprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connect yes_privs_424a,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connection no_privs_424a; @@ -183,7 +183,7 @@ test_noprivs@localhost use priv_db; show grants; Grants for test_noprivs@localhost -GRANT SELECT, INSERT, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER, CREATE TABLESPACE, DELETE HISTORY ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER, CREATE TABLESPACE, DELETE HISTORY ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' select f1 from t1 order by f1; f1 insert 3.5.3.2-no @@ -209,7 +209,7 @@ current_user test_yesprivs@localhost show grants; Grants for test_yesprivs@localhost -GRANT UPDATE, TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT UPDATE, TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' create trigger trg4a_2 before INSERT on t1 for each row set new.f1 = 'trig 3.5.3.7-2a'; connection default; @@ -233,22 +233,22 @@ grant ALL on priv_db.* to test_noprivs@localhost; revoke UPDATE on priv_db.* from test_noprivs@localhost; show grants for test_noprivs; Grants for test_noprivs@% -GRANT TRIGGER ON *.* TO 'test_noprivs'@'%' +GRANT TRIGGER ON *.* TO `test_noprivs`@`%` revoke ALL PRIVILEGES, GRANT OPTION FROM test_yesprivs@localhost; grant TRIGGER on *.* to test_yesprivs@localhost; grant UPDATE on priv_db.* to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT UPDATE ON `priv_db`.* TO 'test_yesprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT UPDATE ON `priv_db`.* TO `test_yesprivs`@`localhost` connect no_privs_424b,localhost,test_noprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connect yes_privs_424b,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connection default; connection no_privs_424b; show grants; Grants for test_noprivs@localhost -GRANT USAGE ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, TRIGGER, DELETE HISTORY ON `priv_db`.* TO 'test_noprivs'@'localhost' +GRANT USAGE ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, TRIGGER, DELETE HISTORY ON `priv_db`.* TO `test_noprivs`@`localhost` use priv_db; create trigger trg4b_1 before UPDATE on t1 for each row set new.f1 = 'trig 3.5.3.7-1b'; @@ -276,8 +276,8 @@ drop trigger trg4b_1; connection yes_privs_424b; show grants; Grants for test_yesprivs@localhost -GRANT TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT UPDATE ON `priv_db`.* TO 'test_yesprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT UPDATE ON `priv_db`.* TO `test_yesprivs`@`localhost` use priv_db; create trigger trg4b_2 before UPDATE on t1 for each row set new.f1 = 'trig 3.5.3.7-2b'; @@ -314,22 +314,22 @@ grant ALL on priv_db.t1 to test_noprivs@localhost; revoke UPDATE on priv_db.t1 from test_noprivs@localhost; show grants for test_noprivs; Grants for test_noprivs@% -GRANT TRIGGER ON *.* TO 'test_noprivs'@'%' +GRANT TRIGGER ON *.* TO `test_noprivs`@`%` revoke ALL PRIVILEGES, GRANT OPTION FROM test_yesprivs@localhost; grant TRIGGER on *.* to test_yesprivs@localhost; grant UPDATE on priv_db.t1 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT UPDATE ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT UPDATE ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` connect no_privs_424c,localhost,test_noprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connect yes_privs_424c,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connection default; connection no_privs_424c; show grants; Grants for test_noprivs@localhost -GRANT TRIGGER ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE VIEW, SHOW VIEW, TRIGGER, DELETE HISTORY ON `priv_db`.`t1` TO 'test_noprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE VIEW, SHOW VIEW, TRIGGER, DELETE HISTORY ON `priv_db`.`t1` TO `test_noprivs`@`localhost` use priv_db; create trigger trg4c_1 before INSERT on t1 for each row set new.f1 = 'trig 3.5.3.7-1c'; @@ -349,8 +349,8 @@ drop trigger trg4c_1; connection yes_privs_424c; show grants; Grants for test_yesprivs@localhost -GRANT TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT UPDATE ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT UPDATE ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` use priv_db; create trigger trg4c_2 before INSERT on t1 for each row set new.f1 = 'trig 3.5.3.7-2c'; @@ -377,21 +377,21 @@ grant TRIGGER on *.* to test_noprivs@localhost; grant SELECT (f1), INSERT (f1) on priv_db.t1 to test_noprivs@localhost; show grants for test_noprivs; Grants for test_noprivs@% -GRANT TRIGGER ON *.* TO 'test_noprivs'@'%' +GRANT TRIGGER ON *.* TO `test_noprivs`@`%` revoke ALL PRIVILEGES, GRANT OPTION FROM test_yesprivs@localhost; grant TRIGGER on *.* to test_yesprivs@localhost; grant UPDATE (f1) on priv_db.t1 to test_yesprivs@localhost; show grants for test_noprivs; Grants for test_noprivs@% -GRANT TRIGGER ON *.* TO 'test_noprivs'@'%' +GRANT TRIGGER ON *.* TO `test_noprivs`@`%` connect no_privs_424d,localhost,test_noprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connect yes_privs_424d,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connection default; connection no_privs_424d; show grants; Grants for test_noprivs@localhost -GRANT TRIGGER ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT (f1), INSERT (f1) ON `priv_db`.`t1` TO 'test_noprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT (f1), INSERT (f1) ON `priv_db`.`t1` TO `test_noprivs`@`localhost` use priv_db; create trigger trg4d_1 before INSERT on t1 for each row set new.f1 = 'trig 3.5.3.7-1d'; @@ -412,8 +412,8 @@ drop trigger trg4d_1; connection yes_privs_424d; show grants; Grants for test_yesprivs@localhost -GRANT TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT UPDATE (f1) ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT UPDATE (f1) ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` use priv_db; create trigger trg4d_2 before INSERT on t1 for each row set new.f1 = 'trig 3.5.3.7-2d'; @@ -441,12 +441,12 @@ grant ALL on *.* to test_noprivs@localhost; revoke SELECT on *.* from test_noprivs@localhost; show grants for test_noprivs@localhost; Grants for test_noprivs@localhost -GRANT INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER, CREATE TABLESPACE, DELETE HISTORY ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER, CREATE TABLESPACE, DELETE HISTORY ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' revoke ALL PRIVILEGES, GRANT OPTION FROM test_yesprivs@localhost; grant TRIGGER, SELECT on *.* to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT SELECT, TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' connect no_privs_425a,localhost,test_noprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connect yes_privs_425a,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connection default; @@ -457,7 +457,7 @@ test_noprivs@localhost use priv_db; show grants; Grants for test_noprivs@localhost -GRANT INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER, CREATE TABLESPACE, DELETE HISTORY ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER, CREATE TABLESPACE, DELETE HISTORY ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' create trigger trg5a_1 before INSERT on t1 for each row set @test_var = new.f1; connection default; @@ -478,7 +478,7 @@ current_user test_yesprivs@localhost show grants; Grants for test_yesprivs@localhost -GRANT SELECT, TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' create trigger trg5a_2 before INSERT on t1 for each row set @test_var= new.f1; connection default; @@ -502,23 +502,23 @@ grant ALL on priv_db.* to test_noprivs@localhost; revoke SELECT on priv_db.* from test_noprivs@localhost; show grants for test_noprivs@localhost; Grants for test_noprivs@localhost -GRANT TRIGGER ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, TRIGGER, DELETE HISTORY ON `priv_db`.* TO 'test_noprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, TRIGGER, DELETE HISTORY ON `priv_db`.* TO `test_noprivs`@`localhost` revoke ALL PRIVILEGES, GRANT OPTION FROM test_yesprivs@localhost; grant TRIGGER on *.* to test_yesprivs@localhost; grant SELECT on priv_db.* to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT ON `priv_db`.* TO 'test_yesprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT ON `priv_db`.* TO `test_yesprivs`@`localhost` connect no_privs_425b,localhost,test_noprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connect yes_privs_425b,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connection default; connection no_privs_425b; show grants; Grants for test_noprivs@localhost -GRANT TRIGGER ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, TRIGGER, DELETE HISTORY ON `priv_db`.* TO 'test_noprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, TRIGGER, DELETE HISTORY ON `priv_db`.* TO `test_noprivs`@`localhost` use priv_db; create trigger trg5b_1 before UPDATE on t1 for each row set @test_var= new.f1; @@ -537,8 +537,8 @@ drop trigger trg5b_1; connection yes_privs_425b; show grants; Grants for test_yesprivs@localhost -GRANT TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT ON `priv_db`.* TO 'test_yesprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT ON `priv_db`.* TO `test_yesprivs`@`localhost` use priv_db; create trigger trg5b_2 before UPDATE on t1 for each row set @test_var= new.f1; @@ -564,23 +564,23 @@ grant ALL on priv_db.t1 to test_noprivs@localhost; revoke SELECT on priv_db.t1 from test_noprivs@localhost; show grants for test_noprivs@localhost; Grants for test_noprivs@localhost -GRANT TRIGGER ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE VIEW, SHOW VIEW, TRIGGER, DELETE HISTORY ON `priv_db`.`t1` TO 'test_noprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE VIEW, SHOW VIEW, TRIGGER, DELETE HISTORY ON `priv_db`.`t1` TO `test_noprivs`@`localhost` revoke ALL PRIVILEGES, GRANT OPTION FROM test_yesprivs@localhost; grant TRIGGER on *.* to test_yesprivs@localhost; grant SELECT on priv_db.t1 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` connect no_privs_425c,localhost,test_noprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connect yes_privs_425c,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connection default; connection no_privs_425c; show grants; Grants for test_noprivs@localhost -GRANT TRIGGER ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE VIEW, SHOW VIEW, TRIGGER, DELETE HISTORY ON `priv_db`.`t1` TO 'test_noprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE VIEW, SHOW VIEW, TRIGGER, DELETE HISTORY ON `priv_db`.`t1` TO `test_noprivs`@`localhost` use priv_db; create trigger trg5c_1 before INSERT on t1 for each row set @test_var= new.f1; @@ -595,8 +595,8 @@ drop trigger trg5c_1; connection yes_privs_425c; show grants; Grants for test_yesprivs@localhost -GRANT TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` use priv_db; create trigger trg5c_2 before INSERT on t1 for each row set @test_var= new.f1; @@ -617,23 +617,23 @@ grant TRIGGER on *.* to test_noprivs@localhost; grant UPDATE (f1), INSERT (f1) on priv_db.t1 to test_noprivs@localhost; show grants for test_noprivs@localhost; Grants for test_noprivs@localhost -GRANT TRIGGER ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT INSERT (f1), UPDATE (f1) ON `priv_db`.`t1` TO 'test_noprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT INSERT (f1), UPDATE (f1) ON `priv_db`.`t1` TO `test_noprivs`@`localhost` revoke ALL PRIVILEGES, GRANT OPTION FROM test_yesprivs@localhost; grant TRIGGER on *.* to test_yesprivs@localhost; grant SELECT (f1) on priv_db.t1 to test_yesprivs@localhost; show grants for test_noprivs@localhost; Grants for test_noprivs@localhost -GRANT TRIGGER ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT INSERT (f1), UPDATE (f1) ON `priv_db`.`t1` TO 'test_noprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT INSERT (f1), UPDATE (f1) ON `priv_db`.`t1` TO `test_noprivs`@`localhost` connect no_privs_425d,localhost,test_noprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connect yes_privs_425d,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connection default; connection no_privs_425d; show grants; Grants for test_noprivs@localhost -GRANT TRIGGER ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT INSERT (f1), UPDATE (f1) ON `priv_db`.`t1` TO 'test_noprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT INSERT (f1), UPDATE (f1) ON `priv_db`.`t1` TO `test_noprivs`@`localhost` use priv_db; create trigger trg5d_1 before INSERT on t1 for each row set @test_var= new.f1; @@ -648,8 +648,8 @@ drop trigger trg5d_1; connection yes_privs_425d; show grants; Grants for test_yesprivs@localhost -GRANT TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT (f1) ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT (f1) ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` use priv_db; create trigger trg5d_2 before INSERT on t1 for each row set @test_var= new.f1; @@ -674,9 +674,9 @@ grant SELECT, UPDATE on priv_db.t1 to test_yesprivs@localhost; grant SELECT on priv_db.t2 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT ON `priv_db`.`t2` TO 'test_yesprivs'@'localhost' -GRANT SELECT, UPDATE ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT ON `priv_db`.`t2` TO `test_yesprivs`@`localhost` +GRANT SELECT, UPDATE ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` connect yes_353x,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connection yes_353x; select current_user; diff --git a/mysql-test/suite/funcs_1/r/memory_trig_03e.result b/mysql-test/suite/funcs_1/r/memory_trig_03e.result index b1c017d368b..72c269cb89a 100644 --- a/mysql-test/suite/funcs_1/r/memory_trig_03e.result +++ b/mysql-test/suite/funcs_1/r/memory_trig_03e.result @@ -15,16 +15,16 @@ revoke ALL PRIVILEGES, GRANT OPTION FROM test_yesprivs@localhost; grant select on priv_db.* to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT ON `priv_db`.* TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT ON `priv_db`.* TO `test_yesprivs`@`localhost` create User test_noprivs@localhost; set password for test_noprivs@localhost = password('PWD'); revoke ALL PRIVILEGES, GRANT OPTION FROM test_noprivs@localhost; grant select,insert on priv_db.* to test_noprivs@localhost; show grants for test_noprivs@localhost; Grants for test_noprivs@localhost -GRANT USAGE ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT ON `priv_db`.* TO 'test_noprivs'@'localhost' +GRANT USAGE ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT ON `priv_db`.* TO `test_noprivs`@`localhost` connect yes_privs,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; no trigger privilege on db level for create: @@ -46,8 +46,8 @@ root@localhost grant TRIGGER on priv_db.* to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, TRIGGER ON `priv_db`.* TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, TRIGGER ON `priv_db`.* TO `test_yesprivs`@`localhost` trigger privilege on db level for create: ----------------------------------------- @@ -97,8 +97,8 @@ root@localhost revoke TRIGGER on priv_db.* from test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, UPDATE ON `priv_db`.* TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, UPDATE ON `priv_db`.* TO `test_yesprivs`@`localhost` no trigger privilege on db level for drop: ------------------------------------------ @@ -153,8 +153,8 @@ current_user test_yesprivs@localhost show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, UPDATE, TRIGGER ON `priv_db`.* TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, UPDATE, TRIGGER ON `priv_db`.* TO `test_yesprivs`@`localhost` drop trigger trg1_2; ERROR 42000: TRIGGER command denied to user 'test_yesprivs'@'localhost' for table 't1' @@ -183,9 +183,9 @@ create table t1 (f1 char(20)) engine= memory; grant SELECT,UPDATE on no_priv_db.* to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, UPDATE, TRIGGER ON `priv_db`.* TO 'test_yesprivs'@'localhost' -GRANT SELECT, UPDATE ON `no_priv_db`.* TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, UPDATE, TRIGGER ON `priv_db`.* TO `test_yesprivs`@`localhost` +GRANT SELECT, UPDATE ON `no_priv_db`.* TO `test_yesprivs`@`localhost` use db with trigger privilege on db level and without...: --------------------------------------------------------- @@ -286,13 +286,13 @@ Trigger Event Table Statement Timing Created sql_mode Definer character_set_clie grant select, insert, update on priv_db.t1 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` grant select, update, insert on priv_db.t1 to test_noprivs@localhost; show grants for test_noprivs@localhost; Grants for test_noprivs@localhost -GRANT USAGE ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO 'test_noprivs'@'localhost' +GRANT USAGE ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO `test_noprivs`@`localhost` connection yes_privs; select current_user; current_user @@ -330,8 +330,8 @@ insert2-yes grant TRIGGER on priv_db.t1 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` trigger privilege on table level for create: -------------------------------------------- @@ -367,8 +367,8 @@ trig 1_2-yes revoke TRIGGER on priv_db.t1 from test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` no trigger privilege on table level for drop: --------------------------------------------- @@ -422,8 +422,8 @@ current_user test_yesprivs@localhost show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` drop trigger trg1_2; connection no_privs; select current_user; @@ -459,15 +459,15 @@ create table t2 (f1 char(20)) engine= memory; grant SELECT, INSERT, UPDATE on priv_db.t2 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t2` TO 'test_yesprivs'@'localhost' -GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t2` TO `test_yesprivs`@`localhost` +GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` grant SELECT, INSERT, UPDATE on priv_db.t2 to test_noprivs@localhost; show grants for test_noprivs@localhost; Grants for test_noprivs@localhost -GRANT USAGE ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO 'test_noprivs'@'localhost' -GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t2` TO 'test_noprivs'@'localhost' +GRANT USAGE ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO `test_noprivs`@`localhost` +GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t2` TO `test_noprivs`@`localhost` use table with trigger privilege and without...: ------------------------------------------------ @@ -544,14 +544,14 @@ revoke ALL PRIVILEGES, GRANT OPTION FROM test_yesprivs@localhost; grant ALL on *.* to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT ALL PRIVILEGES ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT ALL PRIVILEGES ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' create User test_noprivs@localhost; set password for test_noprivs@localhost = password('PWD'); revoke ALL PRIVILEGES, GRANT OPTION FROM test_noprivs@localhost; grant SELECT,INSERT on *.* to test_noprivs@localhost; show grants for test_noprivs@localhost; Grants for test_noprivs@localhost -GRANT SELECT, INSERT ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' connect yes_privs,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connect no_privs,localhost,test_noprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connection yes_privs; @@ -604,7 +604,7 @@ trig 1_1-yes revoke TRIGGER on *.* from test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, CREATE TABLESPACE, DELETE HISTORY ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, CREATE TABLESPACE, DELETE HISTORY ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' disconnect yes_privs; connect yes_privs,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; select current_user; @@ -623,7 +623,7 @@ current_user root@localhost show grants; Grants for root@localhost -GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION +GRANT ALL PRIVILEGES ON *.* TO `root`@`localhost` WITH GRANT OPTION GRANT PROXY ON ''@'%' TO 'root'@'localhost' WITH GRANT OPTION drop trigger trg1_1; use priv_db; @@ -657,8 +657,8 @@ root@localhost grant TRIGGER on priv_db.* to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, CREATE TABLESPACE, DELETE HISTORY ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT TRIGGER ON `priv_db`.* TO 'test_yesprivs'@'localhost' +GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, CREATE TABLESPACE, DELETE HISTORY ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT TRIGGER ON `priv_db`.* TO `test_yesprivs`@`localhost` trigger privilege on db level for create: ----------------------------------------- @@ -721,7 +721,7 @@ trig 1_2-yes grant TRIGGER on *.* to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT ALL PRIVILEGES ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT ALL PRIVILEGES ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' connection yes_privs; select current_user; current_user @@ -812,9 +812,9 @@ grant ALL on priv1_db.* to test_yesprivs@localhost; grant SELECT,UPDATE on priv2_db.* to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT ALL PRIVILEGES ON `priv1_db`.* TO 'test_yesprivs'@'localhost' -GRANT SELECT, UPDATE ON `priv2_db`.* TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT ALL PRIVILEGES ON `priv1_db`.* TO `test_yesprivs`@`localhost` +GRANT SELECT, UPDATE ON `priv2_db`.* TO `test_yesprivs`@`localhost` create User test_noprivs@localhost; set password for test_noprivs@localhost = password('PWD'); revoke ALL PRIVILEGES, GRANT OPTION FROM test_noprivs@localhost; @@ -822,9 +822,9 @@ grant SELECT,INSERT,UPDATE on priv1_db.* to test_noprivs@localhost; grant SELECT,INSERT on priv2_db.* to test_noprivs@localhost; show grants for test_noprivs@localhost; Grants for test_noprivs@localhost -GRANT USAGE ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE ON `priv1_db`.* TO 'test_noprivs'@'localhost' -GRANT SELECT, INSERT ON `priv2_db`.* TO 'test_noprivs'@'localhost' +GRANT USAGE ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE ON `priv1_db`.* TO `test_noprivs`@`localhost` +GRANT SELECT, INSERT ON `priv2_db`.* TO `test_noprivs`@`localhost` connect yes_privs,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; use priv1_db; connect no_privs,localhost,test_noprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; @@ -889,9 +889,9 @@ revoke TRIGGER on priv1_db.t1 from test_yesprivs@localhost; ERROR 42000: There is no such grant defined for user 'test_yesprivs' on host 'localhost' on table 't1' show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT ALL PRIVILEGES ON `priv1_db`.* TO 'test_yesprivs'@'localhost' -GRANT SELECT, UPDATE ON `priv2_db`.* TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT ALL PRIVILEGES ON `priv1_db`.* TO `test_yesprivs`@`localhost` +GRANT SELECT, UPDATE ON `priv2_db`.* TO `test_yesprivs`@`localhost` connection yes_privs; select current_user; current_user @@ -929,10 +929,10 @@ Trigger Event Table Statement Timing Created sql_mode Definer character_set_clie grant TRIGGER on priv1_db.t1 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, DELETE HISTORY ON `priv1_db`.* TO 'test_yesprivs'@'localhost' -GRANT SELECT, UPDATE ON `priv2_db`.* TO 'test_yesprivs'@'localhost' -GRANT TRIGGER ON `priv1_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, DELETE HISTORY ON `priv1_db`.* TO `test_yesprivs`@`localhost` +GRANT SELECT, UPDATE ON `priv2_db`.* TO `test_yesprivs`@`localhost` +GRANT TRIGGER ON `priv1_db`.`t1` TO `test_yesprivs`@`localhost` trigger privilege on table level for create: -------------------------------------------- @@ -977,10 +977,10 @@ root@localhost grant TRIGGER on priv1_db.* to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT ALL PRIVILEGES ON `priv1_db`.* TO 'test_yesprivs'@'localhost' -GRANT SELECT, UPDATE ON `priv2_db`.* TO 'test_yesprivs'@'localhost' -GRANT TRIGGER ON `priv1_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT ALL PRIVILEGES ON `priv1_db`.* TO `test_yesprivs`@`localhost` +GRANT SELECT, UPDATE ON `priv2_db`.* TO `test_yesprivs`@`localhost` +GRANT TRIGGER ON `priv1_db`.`t1` TO `test_yesprivs`@`localhost` connection yes_privs; select current_user; current_user @@ -1070,8 +1070,8 @@ grant select on priv_db.t1 to test_useprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' WITH GRANT OPTION +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` WITH GRANT OPTION connection yes_privs; select current_user; current_user @@ -1104,8 +1104,8 @@ root@localhost revoke TRIGGER on priv_db.t1 from test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' WITH GRANT OPTION +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` WITH GRANT OPTION connection yes_privs; select current_user; current_user @@ -1135,8 +1135,8 @@ root@localhost grant TRIGGER on priv_db.t1 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' WITH GRANT OPTION +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` WITH GRANT OPTION connection yes_privs; select current_user; current_user @@ -1167,8 +1167,8 @@ root@localhost revoke TRIGGER on priv_db.t1 from test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' WITH GRANT OPTION +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` WITH GRANT OPTION connection yes_privs; select current_user; current_user @@ -1200,8 +1200,8 @@ root@localhost grant TRIGGER on priv_db.t1 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' WITH GRANT OPTION +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` WITH GRANT OPTION connection yes_privs; select current_user; current_user @@ -1234,8 +1234,8 @@ root@localhost revoke TRIGGER on priv_db.t1 from test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' WITH GRANT OPTION +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` WITH GRANT OPTION connection yes_privs; select current_user; current_user @@ -1273,8 +1273,8 @@ root@localhost grant TRIGGER on priv_db.t1 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' WITH GRANT OPTION +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` WITH GRANT OPTION connection yes_privs; select current_user; current_user @@ -1337,8 +1337,8 @@ grant select, insert, update ,trigger on priv_db.t1 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` connection yes_privs; select current_user; current_user @@ -1380,9 +1380,9 @@ current_user test_yesprivs@localhost show grants; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT TRIGGER ON `priv_db`.* TO 'test_yesprivs'@'localhost' WITH GRANT OPTION -GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT TRIGGER ON `priv_db`.* TO `test_yesprivs`@`localhost` WITH GRANT OPTION +GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` create definer=not_ex_user@localhost trigger trg1_3 after UPDATE on t1 for each row set @var1 = 'trig 1_3-yes'; @@ -1413,16 +1413,16 @@ revoke ALL PRIVILEGES, GRANT OPTION FROM test_yesprivs@localhost; grant TRIGGER on priv_db.* to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT TRIGGER ON `priv_db`.* TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT TRIGGER ON `priv_db`.* TO `test_yesprivs`@`localhost` create User test_noprivs@localhost; set password for test_noprivs@localhost = password('PWD'); revoke ALL PRIVILEGES, GRANT OPTION FROM test_noprivs@localhost; grant SELECT,UPDATE on priv_db.* to test_noprivs@localhost; show grants for test_noprivs@localhost; Grants for test_noprivs@localhost -GRANT USAGE ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, UPDATE ON `priv_db`.* TO 'test_noprivs'@'localhost' +GRANT USAGE ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, UPDATE ON `priv_db`.* TO `test_noprivs`@`localhost` connect yes_privs,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connect no_privs,localhost,test_noprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; @@ -1478,10 +1478,10 @@ revoke UPDATE(f1) on priv_db.t2 from test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT TRIGGER ON `priv_db`.* TO 'test_yesprivs'@'localhost' -GRANT SELECT (f1), INSERT ON `priv_db`.`t2` TO 'test_yesprivs'@'localhost' -GRANT SELECT (f1), INSERT, UPDATE (f1) ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT TRIGGER ON `priv_db`.* TO `test_yesprivs`@`localhost` +GRANT SELECT (f1), INSERT ON `priv_db`.`t2` TO `test_yesprivs`@`localhost` +GRANT SELECT (f1), INSERT, UPDATE (f1) ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` connection yes_privs; select current_user; current_user @@ -1630,9 +1630,9 @@ grant TRIGGER,UPDATE(f2),UPDATE(f3) on priv_db.t1 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT (f1), INSERT, UPDATE ON `priv_db`.`t2` TO 'test_yesprivs'@'localhost' -GRANT SELECT, SELECT (f1), INSERT, UPDATE (f3, f2), TRIGGER ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT (f1), INSERT, UPDATE ON `priv_db`.`t2` TO `test_yesprivs`@`localhost` +GRANT SELECT, SELECT (f1), INSERT, UPDATE (f3, f2), TRIGGER ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` connection yes_privs; select current_user; current_user @@ -1673,9 +1673,9 @@ grant UPDATE(f1),UPDATE(f2),UPDATE(f3) on priv_db.t1 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT (f1), INSERT, UPDATE ON `priv_db`.`t2` TO 'test_yesprivs'@'localhost' -GRANT SELECT, SELECT (f1), INSERT, UPDATE (f3, f2, f1) ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT (f1), INSERT, UPDATE ON `priv_db`.`t2` TO `test_yesprivs`@`localhost` +GRANT SELECT, SELECT (f1), INSERT, UPDATE (f3, f2, f1) ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` connection no_privs; select current_user; current_user diff --git a/mysql-test/suite/funcs_1/r/myisam_trig_03.result b/mysql-test/suite/funcs_1/r/myisam_trig_03.result index acab98b0cdc..75286115d86 100644 --- a/mysql-test/suite/funcs_1/r/myisam_trig_03.result +++ b/mysql-test/suite/funcs_1/r/myisam_trig_03.result @@ -78,14 +78,14 @@ grant ALL on *.* to test_noprivs@localhost; revoke TRIGGER on *.* from test_noprivs@localhost; show grants for test_noprivs@localhost; Grants for test_noprivs@localhost -GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, CREATE TABLESPACE, DELETE HISTORY ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, CREATE TABLESPACE, DELETE HISTORY ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' revoke ALL PRIVILEGES, GRANT OPTION FROM test_yesprivs@localhost; grant TRIGGER on *.* to test_yesprivs@localhost; grant SELECT on priv_db.t1 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` connect no_privs,localhost,test_noprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connect yes_privs,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connection default; @@ -168,12 +168,12 @@ grant ALL on *.* to test_noprivs@localhost; revoke UPDATE on *.* from test_noprivs@localhost; show grants for test_noprivs@localhost; Grants for test_noprivs@localhost -GRANT SELECT, INSERT, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER, CREATE TABLESPACE, DELETE HISTORY ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER, CREATE TABLESPACE, DELETE HISTORY ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' revoke ALL PRIVILEGES, GRANT OPTION FROM test_yesprivs@localhost; grant TRIGGER, UPDATE on *.* to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT UPDATE, TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT UPDATE, TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' connect no_privs_424a,localhost,test_noprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connect yes_privs_424a,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connection no_privs_424a; @@ -183,7 +183,7 @@ test_noprivs@localhost use priv_db; show grants; Grants for test_noprivs@localhost -GRANT SELECT, INSERT, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER, CREATE TABLESPACE, DELETE HISTORY ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER, CREATE TABLESPACE, DELETE HISTORY ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' select f1 from t1 order by f1; f1 insert 3.5.3.2-no @@ -209,7 +209,7 @@ current_user test_yesprivs@localhost show grants; Grants for test_yesprivs@localhost -GRANT UPDATE, TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT UPDATE, TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' create trigger trg4a_2 before INSERT on t1 for each row set new.f1 = 'trig 3.5.3.7-2a'; connection default; @@ -233,22 +233,22 @@ grant ALL on priv_db.* to test_noprivs@localhost; revoke UPDATE on priv_db.* from test_noprivs@localhost; show grants for test_noprivs; Grants for test_noprivs@% -GRANT TRIGGER ON *.* TO 'test_noprivs'@'%' +GRANT TRIGGER ON *.* TO `test_noprivs`@`%` revoke ALL PRIVILEGES, GRANT OPTION FROM test_yesprivs@localhost; grant TRIGGER on *.* to test_yesprivs@localhost; grant UPDATE on priv_db.* to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT UPDATE ON `priv_db`.* TO 'test_yesprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT UPDATE ON `priv_db`.* TO `test_yesprivs`@`localhost` connect no_privs_424b,localhost,test_noprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connect yes_privs_424b,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connection default; connection no_privs_424b; show grants; Grants for test_noprivs@localhost -GRANT USAGE ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, TRIGGER, DELETE HISTORY ON `priv_db`.* TO 'test_noprivs'@'localhost' +GRANT USAGE ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, TRIGGER, DELETE HISTORY ON `priv_db`.* TO `test_noprivs`@`localhost` use priv_db; create trigger trg4b_1 before UPDATE on t1 for each row set new.f1 = 'trig 3.5.3.7-1b'; @@ -276,8 +276,8 @@ drop trigger trg4b_1; connection yes_privs_424b; show grants; Grants for test_yesprivs@localhost -GRANT TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT UPDATE ON `priv_db`.* TO 'test_yesprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT UPDATE ON `priv_db`.* TO `test_yesprivs`@`localhost` use priv_db; create trigger trg4b_2 before UPDATE on t1 for each row set new.f1 = 'trig 3.5.3.7-2b'; @@ -314,22 +314,22 @@ grant ALL on priv_db.t1 to test_noprivs@localhost; revoke UPDATE on priv_db.t1 from test_noprivs@localhost; show grants for test_noprivs; Grants for test_noprivs@% -GRANT TRIGGER ON *.* TO 'test_noprivs'@'%' +GRANT TRIGGER ON *.* TO `test_noprivs`@`%` revoke ALL PRIVILEGES, GRANT OPTION FROM test_yesprivs@localhost; grant TRIGGER on *.* to test_yesprivs@localhost; grant UPDATE on priv_db.t1 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT UPDATE ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT UPDATE ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` connect no_privs_424c,localhost,test_noprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connect yes_privs_424c,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connection default; connection no_privs_424c; show grants; Grants for test_noprivs@localhost -GRANT TRIGGER ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE VIEW, SHOW VIEW, TRIGGER, DELETE HISTORY ON `priv_db`.`t1` TO 'test_noprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE VIEW, SHOW VIEW, TRIGGER, DELETE HISTORY ON `priv_db`.`t1` TO `test_noprivs`@`localhost` use priv_db; create trigger trg4c_1 before INSERT on t1 for each row set new.f1 = 'trig 3.5.3.7-1c'; @@ -349,8 +349,8 @@ drop trigger trg4c_1; connection yes_privs_424c; show grants; Grants for test_yesprivs@localhost -GRANT TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT UPDATE ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT UPDATE ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` use priv_db; create trigger trg4c_2 before INSERT on t1 for each row set new.f1 = 'trig 3.5.3.7-2c'; @@ -377,21 +377,21 @@ grant TRIGGER on *.* to test_noprivs@localhost; grant SELECT (f1), INSERT (f1) on priv_db.t1 to test_noprivs@localhost; show grants for test_noprivs; Grants for test_noprivs@% -GRANT TRIGGER ON *.* TO 'test_noprivs'@'%' +GRANT TRIGGER ON *.* TO `test_noprivs`@`%` revoke ALL PRIVILEGES, GRANT OPTION FROM test_yesprivs@localhost; grant TRIGGER on *.* to test_yesprivs@localhost; grant UPDATE (f1) on priv_db.t1 to test_yesprivs@localhost; show grants for test_noprivs; Grants for test_noprivs@% -GRANT TRIGGER ON *.* TO 'test_noprivs'@'%' +GRANT TRIGGER ON *.* TO `test_noprivs`@`%` connect no_privs_424d,localhost,test_noprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connect yes_privs_424d,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connection default; connection no_privs_424d; show grants; Grants for test_noprivs@localhost -GRANT TRIGGER ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT (f1), INSERT (f1) ON `priv_db`.`t1` TO 'test_noprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT (f1), INSERT (f1) ON `priv_db`.`t1` TO `test_noprivs`@`localhost` use priv_db; create trigger trg4d_1 before INSERT on t1 for each row set new.f1 = 'trig 3.5.3.7-1d'; @@ -412,8 +412,8 @@ drop trigger trg4d_1; connection yes_privs_424d; show grants; Grants for test_yesprivs@localhost -GRANT TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT UPDATE (f1) ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT UPDATE (f1) ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` use priv_db; create trigger trg4d_2 before INSERT on t1 for each row set new.f1 = 'trig 3.5.3.7-2d'; @@ -441,12 +441,12 @@ grant ALL on *.* to test_noprivs@localhost; revoke SELECT on *.* from test_noprivs@localhost; show grants for test_noprivs@localhost; Grants for test_noprivs@localhost -GRANT INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER, CREATE TABLESPACE, DELETE HISTORY ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER, CREATE TABLESPACE, DELETE HISTORY ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' revoke ALL PRIVILEGES, GRANT OPTION FROM test_yesprivs@localhost; grant TRIGGER, SELECT on *.* to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT SELECT, TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' connect no_privs_425a,localhost,test_noprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connect yes_privs_425a,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connection default; @@ -457,7 +457,7 @@ test_noprivs@localhost use priv_db; show grants; Grants for test_noprivs@localhost -GRANT INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER, CREATE TABLESPACE, DELETE HISTORY ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER, CREATE TABLESPACE, DELETE HISTORY ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' create trigger trg5a_1 before INSERT on t1 for each row set @test_var = new.f1; connection default; @@ -478,7 +478,7 @@ current_user test_yesprivs@localhost show grants; Grants for test_yesprivs@localhost -GRANT SELECT, TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' create trigger trg5a_2 before INSERT on t1 for each row set @test_var= new.f1; connection default; @@ -502,23 +502,23 @@ grant ALL on priv_db.* to test_noprivs@localhost; revoke SELECT on priv_db.* from test_noprivs@localhost; show grants for test_noprivs@localhost; Grants for test_noprivs@localhost -GRANT TRIGGER ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, TRIGGER, DELETE HISTORY ON `priv_db`.* TO 'test_noprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, TRIGGER, DELETE HISTORY ON `priv_db`.* TO `test_noprivs`@`localhost` revoke ALL PRIVILEGES, GRANT OPTION FROM test_yesprivs@localhost; grant TRIGGER on *.* to test_yesprivs@localhost; grant SELECT on priv_db.* to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT ON `priv_db`.* TO 'test_yesprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT ON `priv_db`.* TO `test_yesprivs`@`localhost` connect no_privs_425b,localhost,test_noprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connect yes_privs_425b,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connection default; connection no_privs_425b; show grants; Grants for test_noprivs@localhost -GRANT TRIGGER ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, TRIGGER, DELETE HISTORY ON `priv_db`.* TO 'test_noprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, TRIGGER, DELETE HISTORY ON `priv_db`.* TO `test_noprivs`@`localhost` use priv_db; create trigger trg5b_1 before UPDATE on t1 for each row set @test_var= new.f1; @@ -537,8 +537,8 @@ drop trigger trg5b_1; connection yes_privs_425b; show grants; Grants for test_yesprivs@localhost -GRANT TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT ON `priv_db`.* TO 'test_yesprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT ON `priv_db`.* TO `test_yesprivs`@`localhost` use priv_db; create trigger trg5b_2 before UPDATE on t1 for each row set @test_var= new.f1; @@ -564,23 +564,23 @@ grant ALL on priv_db.t1 to test_noprivs@localhost; revoke SELECT on priv_db.t1 from test_noprivs@localhost; show grants for test_noprivs@localhost; Grants for test_noprivs@localhost -GRANT TRIGGER ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE VIEW, SHOW VIEW, TRIGGER, DELETE HISTORY ON `priv_db`.`t1` TO 'test_noprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE VIEW, SHOW VIEW, TRIGGER, DELETE HISTORY ON `priv_db`.`t1` TO `test_noprivs`@`localhost` revoke ALL PRIVILEGES, GRANT OPTION FROM test_yesprivs@localhost; grant TRIGGER on *.* to test_yesprivs@localhost; grant SELECT on priv_db.t1 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` connect no_privs_425c,localhost,test_noprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connect yes_privs_425c,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connection default; connection no_privs_425c; show grants; Grants for test_noprivs@localhost -GRANT TRIGGER ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE VIEW, SHOW VIEW, TRIGGER, DELETE HISTORY ON `priv_db`.`t1` TO 'test_noprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE VIEW, SHOW VIEW, TRIGGER, DELETE HISTORY ON `priv_db`.`t1` TO `test_noprivs`@`localhost` use priv_db; create trigger trg5c_1 before INSERT on t1 for each row set @test_var= new.f1; @@ -595,8 +595,8 @@ drop trigger trg5c_1; connection yes_privs_425c; show grants; Grants for test_yesprivs@localhost -GRANT TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` use priv_db; create trigger trg5c_2 before INSERT on t1 for each row set @test_var= new.f1; @@ -617,23 +617,23 @@ grant TRIGGER on *.* to test_noprivs@localhost; grant UPDATE (f1), INSERT (f1) on priv_db.t1 to test_noprivs@localhost; show grants for test_noprivs@localhost; Grants for test_noprivs@localhost -GRANT TRIGGER ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT INSERT (f1), UPDATE (f1) ON `priv_db`.`t1` TO 'test_noprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT INSERT (f1), UPDATE (f1) ON `priv_db`.`t1` TO `test_noprivs`@`localhost` revoke ALL PRIVILEGES, GRANT OPTION FROM test_yesprivs@localhost; grant TRIGGER on *.* to test_yesprivs@localhost; grant SELECT (f1) on priv_db.t1 to test_yesprivs@localhost; show grants for test_noprivs@localhost; Grants for test_noprivs@localhost -GRANT TRIGGER ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT INSERT (f1), UPDATE (f1) ON `priv_db`.`t1` TO 'test_noprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT INSERT (f1), UPDATE (f1) ON `priv_db`.`t1` TO `test_noprivs`@`localhost` connect no_privs_425d,localhost,test_noprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connect yes_privs_425d,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connection default; connection no_privs_425d; show grants; Grants for test_noprivs@localhost -GRANT TRIGGER ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT INSERT (f1), UPDATE (f1) ON `priv_db`.`t1` TO 'test_noprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT INSERT (f1), UPDATE (f1) ON `priv_db`.`t1` TO `test_noprivs`@`localhost` use priv_db; create trigger trg5d_1 before INSERT on t1 for each row set @test_var= new.f1; @@ -648,8 +648,8 @@ drop trigger trg5d_1; connection yes_privs_425d; show grants; Grants for test_yesprivs@localhost -GRANT TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT (f1) ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT (f1) ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` use priv_db; create trigger trg5d_2 before INSERT on t1 for each row set @test_var= new.f1; @@ -674,9 +674,9 @@ grant SELECT, UPDATE on priv_db.t1 to test_yesprivs@localhost; grant SELECT on priv_db.t2 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT TRIGGER ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT ON `priv_db`.`t2` TO 'test_yesprivs'@'localhost' -GRANT SELECT, UPDATE ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT TRIGGER ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT ON `priv_db`.`t2` TO `test_yesprivs`@`localhost` +GRANT SELECT, UPDATE ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` connect yes_353x,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connection yes_353x; select current_user; diff --git a/mysql-test/suite/funcs_1/r/myisam_trig_03e.result b/mysql-test/suite/funcs_1/r/myisam_trig_03e.result index 8a42a54b1be..8b8df4bd694 100644 --- a/mysql-test/suite/funcs_1/r/myisam_trig_03e.result +++ b/mysql-test/suite/funcs_1/r/myisam_trig_03e.result @@ -15,16 +15,16 @@ revoke ALL PRIVILEGES, GRANT OPTION FROM test_yesprivs@localhost; grant select on priv_db.* to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT ON `priv_db`.* TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT ON `priv_db`.* TO `test_yesprivs`@`localhost` create User test_noprivs@localhost; set password for test_noprivs@localhost = password('PWD'); revoke ALL PRIVILEGES, GRANT OPTION FROM test_noprivs@localhost; grant select,insert on priv_db.* to test_noprivs@localhost; show grants for test_noprivs@localhost; Grants for test_noprivs@localhost -GRANT USAGE ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT ON `priv_db`.* TO 'test_noprivs'@'localhost' +GRANT USAGE ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT ON `priv_db`.* TO `test_noprivs`@`localhost` connect yes_privs,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; no trigger privilege on db level for create: @@ -46,8 +46,8 @@ root@localhost grant TRIGGER on priv_db.* to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, TRIGGER ON `priv_db`.* TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, TRIGGER ON `priv_db`.* TO `test_yesprivs`@`localhost` trigger privilege on db level for create: ----------------------------------------- @@ -97,8 +97,8 @@ root@localhost revoke TRIGGER on priv_db.* from test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, UPDATE ON `priv_db`.* TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, UPDATE ON `priv_db`.* TO `test_yesprivs`@`localhost` no trigger privilege on db level for drop: ------------------------------------------ @@ -153,8 +153,8 @@ current_user test_yesprivs@localhost show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, UPDATE, TRIGGER ON `priv_db`.* TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, UPDATE, TRIGGER ON `priv_db`.* TO `test_yesprivs`@`localhost` drop trigger trg1_2; ERROR 42000: TRIGGER command denied to user 'test_yesprivs'@'localhost' for table 't1' @@ -183,9 +183,9 @@ create table t1 (f1 char(20)) engine= myisam; grant SELECT,UPDATE on no_priv_db.* to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, UPDATE, TRIGGER ON `priv_db`.* TO 'test_yesprivs'@'localhost' -GRANT SELECT, UPDATE ON `no_priv_db`.* TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, UPDATE, TRIGGER ON `priv_db`.* TO `test_yesprivs`@`localhost` +GRANT SELECT, UPDATE ON `no_priv_db`.* TO `test_yesprivs`@`localhost` use db with trigger privilege on db level and without...: --------------------------------------------------------- @@ -286,13 +286,13 @@ Trigger Event Table Statement Timing Created sql_mode Definer character_set_clie grant select, insert, update on priv_db.t1 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` grant select, update, insert on priv_db.t1 to test_noprivs@localhost; show grants for test_noprivs@localhost; Grants for test_noprivs@localhost -GRANT USAGE ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO 'test_noprivs'@'localhost' +GRANT USAGE ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO `test_noprivs`@`localhost` connection yes_privs; select current_user; current_user @@ -330,8 +330,8 @@ insert2-yes grant TRIGGER on priv_db.t1 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` trigger privilege on table level for create: -------------------------------------------- @@ -367,8 +367,8 @@ trig 1_2-yes revoke TRIGGER on priv_db.t1 from test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` no trigger privilege on table level for drop: --------------------------------------------- @@ -422,8 +422,8 @@ current_user test_yesprivs@localhost show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` drop trigger trg1_2; connection no_privs; select current_user; @@ -459,15 +459,15 @@ create table t2 (f1 char(20)) engine= myisam; grant SELECT, INSERT, UPDATE on priv_db.t2 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t2` TO 'test_yesprivs'@'localhost' -GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t2` TO `test_yesprivs`@`localhost` +GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` grant SELECT, INSERT, UPDATE on priv_db.t2 to test_noprivs@localhost; show grants for test_noprivs@localhost; Grants for test_noprivs@localhost -GRANT USAGE ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO 'test_noprivs'@'localhost' -GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t2` TO 'test_noprivs'@'localhost' +GRANT USAGE ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO `test_noprivs`@`localhost` +GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t2` TO `test_noprivs`@`localhost` use table with trigger privilege and without...: ------------------------------------------------ @@ -544,14 +544,14 @@ revoke ALL PRIVILEGES, GRANT OPTION FROM test_yesprivs@localhost; grant ALL on *.* to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT ALL PRIVILEGES ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT ALL PRIVILEGES ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' create User test_noprivs@localhost; set password for test_noprivs@localhost = password('PWD'); revoke ALL PRIVILEGES, GRANT OPTION FROM test_noprivs@localhost; grant SELECT,INSERT on *.* to test_noprivs@localhost; show grants for test_noprivs@localhost; Grants for test_noprivs@localhost -GRANT SELECT, INSERT ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' connect yes_privs,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connect no_privs,localhost,test_noprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connection yes_privs; @@ -604,7 +604,7 @@ trig 1_1-yes revoke TRIGGER on *.* from test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, CREATE TABLESPACE, DELETE HISTORY ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, CREATE TABLESPACE, DELETE HISTORY ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' disconnect yes_privs; connect yes_privs,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; select current_user; @@ -623,7 +623,7 @@ current_user root@localhost show grants; Grants for root@localhost -GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION +GRANT ALL PRIVILEGES ON *.* TO `root`@`localhost` WITH GRANT OPTION GRANT PROXY ON ''@'%' TO 'root'@'localhost' WITH GRANT OPTION drop trigger trg1_1; use priv_db; @@ -657,8 +657,8 @@ root@localhost grant TRIGGER on priv_db.* to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, CREATE TABLESPACE, DELETE HISTORY ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT TRIGGER ON `priv_db`.* TO 'test_yesprivs'@'localhost' +GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, CREATE TABLESPACE, DELETE HISTORY ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT TRIGGER ON `priv_db`.* TO `test_yesprivs`@`localhost` trigger privilege on db level for create: ----------------------------------------- @@ -721,7 +721,7 @@ trig 1_2-yes grant TRIGGER on *.* to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT ALL PRIVILEGES ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT ALL PRIVILEGES ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' connection yes_privs; select current_user; current_user @@ -812,9 +812,9 @@ grant ALL on priv1_db.* to test_yesprivs@localhost; grant SELECT,UPDATE on priv2_db.* to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT ALL PRIVILEGES ON `priv1_db`.* TO 'test_yesprivs'@'localhost' -GRANT SELECT, UPDATE ON `priv2_db`.* TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT ALL PRIVILEGES ON `priv1_db`.* TO `test_yesprivs`@`localhost` +GRANT SELECT, UPDATE ON `priv2_db`.* TO `test_yesprivs`@`localhost` create User test_noprivs@localhost; set password for test_noprivs@localhost = password('PWD'); revoke ALL PRIVILEGES, GRANT OPTION FROM test_noprivs@localhost; @@ -822,9 +822,9 @@ grant SELECT,INSERT,UPDATE on priv1_db.* to test_noprivs@localhost; grant SELECT,INSERT on priv2_db.* to test_noprivs@localhost; show grants for test_noprivs@localhost; Grants for test_noprivs@localhost -GRANT USAGE ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE ON `priv1_db`.* TO 'test_noprivs'@'localhost' -GRANT SELECT, INSERT ON `priv2_db`.* TO 'test_noprivs'@'localhost' +GRANT USAGE ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE ON `priv1_db`.* TO `test_noprivs`@`localhost` +GRANT SELECT, INSERT ON `priv2_db`.* TO `test_noprivs`@`localhost` connect yes_privs,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; use priv1_db; connect no_privs,localhost,test_noprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; @@ -889,9 +889,9 @@ revoke TRIGGER on priv1_db.t1 from test_yesprivs@localhost; ERROR 42000: There is no such grant defined for user 'test_yesprivs' on host 'localhost' on table 't1' show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT ALL PRIVILEGES ON `priv1_db`.* TO 'test_yesprivs'@'localhost' -GRANT SELECT, UPDATE ON `priv2_db`.* TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT ALL PRIVILEGES ON `priv1_db`.* TO `test_yesprivs`@`localhost` +GRANT SELECT, UPDATE ON `priv2_db`.* TO `test_yesprivs`@`localhost` connection yes_privs; select current_user; current_user @@ -929,10 +929,10 @@ Trigger Event Table Statement Timing Created sql_mode Definer character_set_clie grant TRIGGER on priv1_db.t1 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, DELETE HISTORY ON `priv1_db`.* TO 'test_yesprivs'@'localhost' -GRANT SELECT, UPDATE ON `priv2_db`.* TO 'test_yesprivs'@'localhost' -GRANT TRIGGER ON `priv1_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, DELETE HISTORY ON `priv1_db`.* TO `test_yesprivs`@`localhost` +GRANT SELECT, UPDATE ON `priv2_db`.* TO `test_yesprivs`@`localhost` +GRANT TRIGGER ON `priv1_db`.`t1` TO `test_yesprivs`@`localhost` trigger privilege on table level for create: -------------------------------------------- @@ -977,10 +977,10 @@ root@localhost grant TRIGGER on priv1_db.* to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT ALL PRIVILEGES ON `priv1_db`.* TO 'test_yesprivs'@'localhost' -GRANT SELECT, UPDATE ON `priv2_db`.* TO 'test_yesprivs'@'localhost' -GRANT TRIGGER ON `priv1_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT ALL PRIVILEGES ON `priv1_db`.* TO `test_yesprivs`@`localhost` +GRANT SELECT, UPDATE ON `priv2_db`.* TO `test_yesprivs`@`localhost` +GRANT TRIGGER ON `priv1_db`.`t1` TO `test_yesprivs`@`localhost` connection yes_privs; select current_user; current_user @@ -1070,8 +1070,8 @@ grant select on priv_db.t1 to test_useprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' WITH GRANT OPTION +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` WITH GRANT OPTION connection yes_privs; select current_user; current_user @@ -1104,8 +1104,8 @@ root@localhost revoke TRIGGER on priv_db.t1 from test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' WITH GRANT OPTION +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` WITH GRANT OPTION connection yes_privs; select current_user; current_user @@ -1135,8 +1135,8 @@ root@localhost grant TRIGGER on priv_db.t1 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' WITH GRANT OPTION +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` WITH GRANT OPTION connection yes_privs; select current_user; current_user @@ -1167,8 +1167,8 @@ root@localhost revoke TRIGGER on priv_db.t1 from test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' WITH GRANT OPTION +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` WITH GRANT OPTION connection yes_privs; select current_user; current_user @@ -1200,8 +1200,8 @@ root@localhost grant TRIGGER on priv_db.t1 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' WITH GRANT OPTION +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` WITH GRANT OPTION connection yes_privs; select current_user; current_user @@ -1234,8 +1234,8 @@ root@localhost revoke TRIGGER on priv_db.t1 from test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' WITH GRANT OPTION +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` WITH GRANT OPTION connection yes_privs; select current_user; current_user @@ -1273,8 +1273,8 @@ root@localhost grant TRIGGER on priv_db.t1 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' WITH GRANT OPTION +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` WITH GRANT OPTION connection yes_privs; select current_user; current_user @@ -1337,8 +1337,8 @@ grant select, insert, update ,trigger on priv_db.t1 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` connection yes_privs; select current_user; current_user @@ -1380,9 +1380,9 @@ current_user test_yesprivs@localhost show grants; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT TRIGGER ON `priv_db`.* TO 'test_yesprivs'@'localhost' WITH GRANT OPTION -GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT TRIGGER ON `priv_db`.* TO `test_yesprivs`@`localhost` WITH GRANT OPTION +GRANT SELECT, INSERT, UPDATE, TRIGGER ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` create definer=not_ex_user@localhost trigger trg1_3 after UPDATE on t1 for each row set @var1 = 'trig 1_3-yes'; @@ -1413,16 +1413,16 @@ revoke ALL PRIVILEGES, GRANT OPTION FROM test_yesprivs@localhost; grant TRIGGER on priv_db.* to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT TRIGGER ON `priv_db`.* TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT TRIGGER ON `priv_db`.* TO `test_yesprivs`@`localhost` create User test_noprivs@localhost; set password for test_noprivs@localhost = password('PWD'); revoke ALL PRIVILEGES, GRANT OPTION FROM test_noprivs@localhost; grant SELECT,UPDATE on priv_db.* to test_noprivs@localhost; show grants for test_noprivs@localhost; Grants for test_noprivs@localhost -GRANT USAGE ON *.* TO 'test_noprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT, UPDATE ON `priv_db`.* TO 'test_noprivs'@'localhost' +GRANT USAGE ON *.* TO `test_noprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT, UPDATE ON `priv_db`.* TO `test_noprivs`@`localhost` connect yes_privs,localhost,test_yesprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; connect no_privs,localhost,test_noprivs,PWD,test,$MASTER_MYPORT,$MASTER_MYSOCK; @@ -1478,10 +1478,10 @@ revoke UPDATE(f1) on priv_db.t2 from test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT TRIGGER ON `priv_db`.* TO 'test_yesprivs'@'localhost' -GRANT SELECT (f1), INSERT ON `priv_db`.`t2` TO 'test_yesprivs'@'localhost' -GRANT SELECT (f1), INSERT, UPDATE (f1) ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT TRIGGER ON `priv_db`.* TO `test_yesprivs`@`localhost` +GRANT SELECT (f1), INSERT ON `priv_db`.`t2` TO `test_yesprivs`@`localhost` +GRANT SELECT (f1), INSERT, UPDATE (f1) ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` connection yes_privs; select current_user; current_user @@ -1630,9 +1630,9 @@ grant TRIGGER,UPDATE(f2),UPDATE(f3) on priv_db.t1 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT (f1), INSERT, UPDATE ON `priv_db`.`t2` TO 'test_yesprivs'@'localhost' -GRANT SELECT, SELECT (f1), INSERT, UPDATE (f3, f2), TRIGGER ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT (f1), INSERT, UPDATE ON `priv_db`.`t2` TO `test_yesprivs`@`localhost` +GRANT SELECT, SELECT (f1), INSERT, UPDATE (f3, f2), TRIGGER ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` connection yes_privs; select current_user; current_user @@ -1673,9 +1673,9 @@ grant UPDATE(f1),UPDATE(f2),UPDATE(f3) on priv_db.t1 to test_yesprivs@localhost; show grants for test_yesprivs@localhost; Grants for test_yesprivs@localhost -GRANT USAGE ON *.* TO 'test_yesprivs'@'localhost' IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' -GRANT SELECT (f1), INSERT, UPDATE ON `priv_db`.`t2` TO 'test_yesprivs'@'localhost' -GRANT SELECT, SELECT (f1), INSERT, UPDATE (f3, f2, f1) ON `priv_db`.`t1` TO 'test_yesprivs'@'localhost' +GRANT USAGE ON *.* TO `test_yesprivs`@`localhost` IDENTIFIED BY PASSWORD '*C49735D016A099C0CF104EF9183F374A54CA2576' +GRANT SELECT (f1), INSERT, UPDATE ON `priv_db`.`t2` TO `test_yesprivs`@`localhost` +GRANT SELECT, SELECT (f1), INSERT, UPDATE (f3, f2, f1) ON `priv_db`.`t1` TO `test_yesprivs`@`localhost` connection no_privs; select current_user; current_user diff --git a/mysql-test/suite/funcs_1/r/processlist_priv_no_prot.result b/mysql-test/suite/funcs_1/r/processlist_priv_no_prot.result index 5dd432714ab..f3f561fd479 100644 --- a/mysql-test/suite/funcs_1/r/processlist_priv_no_prot.result +++ b/mysql-test/suite/funcs_1/r/processlist_priv_no_prot.result @@ -74,7 +74,7 @@ GRANT INSERT,UPDATE ON processlist TO current_user; ERROR 42000: Access denied for user 'root'@'localhost' to database 'information_schema' SHOW GRANTS; Grants for root@localhost -GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION +GRANT ALL PRIVILEGES ON *.* TO `root`@`localhost` WITH GRANT OPTION GRANT PROXY ON ''@'%' TO 'root'@'localhost' WITH GRANT OPTION CREATE INDEX i_processlist ON processlist (user); ERROR 42000: Access denied for user 'root'@'localhost' to database 'information_schema' @@ -151,7 +151,7 @@ GRANT INSERT,UPDATE ON processlist TO current_user; ERROR 42000: Access denied for user 'ddicttestuser1'@'localhost' to database 'information_schema' SHOW GRANTS; Grants for ddicttestuser1@localhost -GRANT USAGE ON *.* TO 'ddicttestuser1'@'localhost' IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' +GRANT USAGE ON *.* TO `ddicttestuser1`@`localhost` IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' CREATE INDEX i_processlist ON processlist (user); ERROR 42000: Access denied for user 'ddicttestuser1'@'localhost' to database 'information_schema' DROP TABLE processlist; @@ -187,7 +187,7 @@ SHOW/SELECT shows only the processes (1) of the user. connection con100; SHOW GRANTS; Grants for ddicttestuser1@localhost -GRANT PROCESS ON *.* TO 'ddicttestuser1'@'localhost' IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' +GRANT PROCESS ON *.* TO `ddicttestuser1`@`localhost` IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' SHOW processlist; Id User Host db Command Time State Info Progress ID ddicttestuser1 HOST_NAME information_schema Query TIME Init SHOW processlist TIME_MS @@ -201,7 +201,7 @@ SHOW/SELECT shows all processes/threads. connect con101,localhost,ddicttestuser1,ddictpass,information_schema; SHOW GRANTS; Grants for ddicttestuser1@localhost -GRANT PROCESS ON *.* TO 'ddicttestuser1'@'localhost' IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' +GRANT PROCESS ON *.* TO `ddicttestuser1`@`localhost` IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' SHOW processlist; Id User Host db Command Time State Info Progress ID root HOST_NAME information_schema Sleep TIME NULL TIME_MS @@ -227,7 +227,7 @@ SHOW/SELECT shows all processes/threads. connect anonymous1,localhost,"''",,information_schema; SHOW GRANTS; Grants for @localhost -GRANT PROCESS ON *.* TO ''@'localhost' +GRANT PROCESS ON *.* TO ``@`localhost` SHOW processlist; Id User Host db Command Time State Info Progress ID root HOST_NAME information_schema Sleep TIME NULL TIME_MS @@ -254,7 +254,7 @@ ddicttestuser1 are visible. #################################################################################### SHOW GRANTS; Grants for ddicttestuser1@localhost -GRANT USAGE ON *.* TO 'ddicttestuser1'@'localhost' IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' +GRANT USAGE ON *.* TO `ddicttestuser1`@`localhost` IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' SHOW processlist; Id User Host db Command Time State Info Progress ID ddicttestuser1 HOST_NAME information_schema Sleep TIME NULL TIME_MS @@ -279,7 +279,7 @@ Again only the processes of the anonymous user are visible. #################################################################################### SHOW GRANTS FOR ''@'localhost'; Grants for @localhost -GRANT USAGE ON *.* TO ''@'localhost' +GRANT USAGE ON *.* TO ``@`localhost` SELECT * FROM information_schema.processlist; ID USER HOST DB COMMAND TIME STATE INFO TIME_MS STAGE MAX_STAGE PROGRESS MEMORY_USED MAX_MEMORY_USED EXAMINED_ROWS QUERY_ID INFO_BINARY TID ID HOST_NAME information_schema Query TIME Filling schema table SELECT * FROM information_schema.processlist TIME_MS 0 0 0.000 MEMORY MAX_MEMORY ROWS QUERY_ID SELECT * FROM information_schema.processlist TID @@ -297,7 +297,7 @@ Only the processes of ddicttestuser1 user are visible. #################################################################################### SHOW GRANTS FOR 'ddicttestuser1'@'localhost'; Grants for ddicttestuser1@localhost -GRANT SUPER ON *.* TO 'ddicttestuser1'@'localhost' IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' +GRANT SUPER ON *.* TO `ddicttestuser1`@`localhost` IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' SHOW processlist; Id User Host db Command Time State Info Progress ID ddicttestuser1 HOST_NAME information_schema Sleep TIME NULL TIME_MS @@ -324,7 +324,7 @@ Only the processes of ddicttestuser1 are visible. #################################################################################### SHOW GRANTS FOR 'ddicttestuser1'@'localhost'; Grants for ddicttestuser1@localhost -GRANT USAGE ON *.* TO 'ddicttestuser1'@'localhost' IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' +GRANT USAGE ON *.* TO `ddicttestuser1`@`localhost` IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' SHOW processlist; Id User Host db Command Time State Info Progress ID ddicttestuser1 HOST_NAME information_schema Sleep TIME NULL TIME_MS @@ -352,7 +352,7 @@ Try to grant PROCESS privilege to user ddicttestuser2 without having it. #################################################################################### SHOW GRANTS FOR 'ddicttestuser1'@'localhost'; Grants for ddicttestuser1@localhost -GRANT SUPER ON *.* TO 'ddicttestuser1'@'localhost' IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' WITH GRANT OPTION +GRANT SUPER ON *.* TO `ddicttestuser1`@`localhost` IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' WITH GRANT OPTION GRANT PROCESS ON *.* TO 'ddicttestuser2'@'localhost'; ERROR 28000: Access denied for user 'ddicttestuser1'@'localhost' (using password: YES) #################################################################################### @@ -368,7 +368,7 @@ Grant PROCESS privilege to user ddicttestuser2 #################################################################################### SHOW GRANTS FOR 'ddicttestuser1'@'localhost'; Grants for ddicttestuser1@localhost -GRANT PROCESS, SUPER ON *.* TO 'ddicttestuser1'@'localhost' IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' WITH GRANT OPTION +GRANT PROCESS, SUPER ON *.* TO `ddicttestuser1`@`localhost` IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' WITH GRANT OPTION GRANT PROCESS ON *.* TO 'ddicttestuser2'@'localhost'; #################################################################################### 10.4 New connection con200 (ddicttestuser2 with PROCESS privilege) @@ -377,7 +377,7 @@ ddicttestuser2 has now the PROCESS privilege and sees all connections #################################################################################### SHOW GRANTS FOR 'ddicttestuser2'@'localhost'; Grants for ddicttestuser2@localhost -GRANT PROCESS ON *.* TO 'ddicttestuser2'@'localhost' IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' +GRANT PROCESS ON *.* TO `ddicttestuser2`@`localhost` IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' SHOW processlist; Id User Host db Command Time State Info Progress ID root HOST_NAME information_schema Sleep TIME NULL TIME_MS @@ -417,7 +417,7 @@ ddicttestuser2 has no more the PROCESS privilege and can only see own connects #################################################################################### SHOW GRANTS; Grants for ddicttestuser2@localhost -GRANT USAGE ON *.* TO 'ddicttestuser2'@'localhost' IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' +GRANT USAGE ON *.* TO `ddicttestuser2`@`localhost` IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' SHOW processlist; Id User Host db Command Time State Info Progress ID ddicttestuser2 HOST_NAME information_schema Sleep TIME NULL TIME_MS @@ -440,7 +440,7 @@ He is also unable to GRANT the PROCESS privilege to ddicttestuser2 #################################################################################### SHOW GRANTS FOR 'ddicttestuser1'@'localhost'; Grants for ddicttestuser1@localhost -GRANT USAGE ON *.* TO 'ddicttestuser1'@'localhost' IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' +GRANT USAGE ON *.* TO `ddicttestuser1`@`localhost` IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' GRANT PROCESS ON *.* TO 'ddicttestuser2'@'localhost'; ERROR 28000: Access denied for user 'ddicttestuser1'@'localhost' (using password: YES) SHOW processlist; @@ -479,7 +479,7 @@ Therefore the missing SELECT privilege does not affect SELECTs on PROCESSLIST. #################################################################################### SHOW GRANTS FOR 'ddicttestuser1'@'localhost'; Grants for ddicttestuser1@localhost -GRANT USAGE ON *.* TO 'ddicttestuser1'@'localhost' IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' +GRANT USAGE ON *.* TO `ddicttestuser1`@`localhost` IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' SHOW processlist; Id User Host db Command Time State Info Progress ID ddicttestuser1 HOST_NAME information_schema Sleep TIME NULL TIME_MS diff --git a/mysql-test/suite/funcs_1/r/processlist_priv_ps.result b/mysql-test/suite/funcs_1/r/processlist_priv_ps.result index 6ade94dbe58..a68e62e4642 100644 --- a/mysql-test/suite/funcs_1/r/processlist_priv_ps.result +++ b/mysql-test/suite/funcs_1/r/processlist_priv_ps.result @@ -74,7 +74,7 @@ GRANT INSERT,UPDATE ON processlist TO current_user; ERROR 42000: Access denied for user 'root'@'localhost' to database 'information_schema' SHOW GRANTS; Grants for root@localhost -GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION +GRANT ALL PRIVILEGES ON *.* TO `root`@`localhost` WITH GRANT OPTION GRANT PROXY ON ''@'%' TO 'root'@'localhost' WITH GRANT OPTION CREATE INDEX i_processlist ON processlist (user); ERROR 42000: Access denied for user 'root'@'localhost' to database 'information_schema' @@ -151,7 +151,7 @@ GRANT INSERT,UPDATE ON processlist TO current_user; ERROR 42000: Access denied for user 'ddicttestuser1'@'localhost' to database 'information_schema' SHOW GRANTS; Grants for ddicttestuser1@localhost -GRANT USAGE ON *.* TO 'ddicttestuser1'@'localhost' IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' +GRANT USAGE ON *.* TO `ddicttestuser1`@`localhost` IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' CREATE INDEX i_processlist ON processlist (user); ERROR 42000: Access denied for user 'ddicttestuser1'@'localhost' to database 'information_schema' DROP TABLE processlist; @@ -187,7 +187,7 @@ SHOW/SELECT shows only the processes (1) of the user. connection con100; SHOW GRANTS; Grants for ddicttestuser1@localhost -GRANT PROCESS ON *.* TO 'ddicttestuser1'@'localhost' IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' +GRANT PROCESS ON *.* TO `ddicttestuser1`@`localhost` IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' SHOW processlist; Id User Host db Command Time State Info Progress ID ddicttestuser1 HOST_NAME information_schema Query TIME Init SHOW processlist TIME_MS @@ -201,7 +201,7 @@ SHOW/SELECT shows all processes/threads. connect con101,localhost,ddicttestuser1,ddictpass,information_schema; SHOW GRANTS; Grants for ddicttestuser1@localhost -GRANT PROCESS ON *.* TO 'ddicttestuser1'@'localhost' IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' +GRANT PROCESS ON *.* TO `ddicttestuser1`@`localhost` IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' SHOW processlist; Id User Host db Command Time State Info Progress ID root HOST_NAME information_schema Sleep TIME NULL TIME_MS @@ -227,7 +227,7 @@ SHOW/SELECT shows all processes/threads. connect anonymous1,localhost,"''",,information_schema; SHOW GRANTS; Grants for @localhost -GRANT PROCESS ON *.* TO ''@'localhost' +GRANT PROCESS ON *.* TO ``@`localhost` SHOW processlist; Id User Host db Command Time State Info Progress ID root HOST_NAME information_schema Sleep TIME NULL TIME_MS @@ -254,7 +254,7 @@ ddicttestuser1 are visible. #################################################################################### SHOW GRANTS; Grants for ddicttestuser1@localhost -GRANT USAGE ON *.* TO 'ddicttestuser1'@'localhost' IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' +GRANT USAGE ON *.* TO `ddicttestuser1`@`localhost` IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' SHOW processlist; Id User Host db Command Time State Info Progress ID ddicttestuser1 HOST_NAME information_schema Sleep TIME NULL TIME_MS @@ -279,7 +279,7 @@ Again only the processes of the anonymous user are visible. #################################################################################### SHOW GRANTS FOR ''@'localhost'; Grants for @localhost -GRANT USAGE ON *.* TO ''@'localhost' +GRANT USAGE ON *.* TO ``@`localhost` SELECT * FROM information_schema.processlist; ID USER HOST DB COMMAND TIME STATE INFO TIME_MS STAGE MAX_STAGE PROGRESS MEMORY_USED MAX_MEMORY_USED EXAMINED_ROWS QUERY_ID INFO_BINARY TID ID HOST_NAME information_schema Execute TIME Filling schema table SELECT * FROM information_schema.processlist TIME_MS 0 0 0.000 MEMORY MAX_MEMORY ROWS QUERY_ID SELECT * FROM information_schema.processlist TID @@ -297,7 +297,7 @@ Only the processes of ddicttestuser1 user are visible. #################################################################################### SHOW GRANTS FOR 'ddicttestuser1'@'localhost'; Grants for ddicttestuser1@localhost -GRANT SUPER ON *.* TO 'ddicttestuser1'@'localhost' IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' +GRANT SUPER ON *.* TO `ddicttestuser1`@`localhost` IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' SHOW processlist; Id User Host db Command Time State Info Progress ID ddicttestuser1 HOST_NAME information_schema Sleep TIME NULL TIME_MS @@ -324,7 +324,7 @@ Only the processes of ddicttestuser1 are visible. #################################################################################### SHOW GRANTS FOR 'ddicttestuser1'@'localhost'; Grants for ddicttestuser1@localhost -GRANT USAGE ON *.* TO 'ddicttestuser1'@'localhost' IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' +GRANT USAGE ON *.* TO `ddicttestuser1`@`localhost` IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' SHOW processlist; Id User Host db Command Time State Info Progress ID ddicttestuser1 HOST_NAME information_schema Sleep TIME NULL TIME_MS @@ -352,7 +352,7 @@ Try to grant PROCESS privilege to user ddicttestuser2 without having it. #################################################################################### SHOW GRANTS FOR 'ddicttestuser1'@'localhost'; Grants for ddicttestuser1@localhost -GRANT SUPER ON *.* TO 'ddicttestuser1'@'localhost' IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' WITH GRANT OPTION +GRANT SUPER ON *.* TO `ddicttestuser1`@`localhost` IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' WITH GRANT OPTION GRANT PROCESS ON *.* TO 'ddicttestuser2'@'localhost'; ERROR 28000: Access denied for user 'ddicttestuser1'@'localhost' (using password: YES) #################################################################################### @@ -368,7 +368,7 @@ Grant PROCESS privilege to user ddicttestuser2 #################################################################################### SHOW GRANTS FOR 'ddicttestuser1'@'localhost'; Grants for ddicttestuser1@localhost -GRANT PROCESS, SUPER ON *.* TO 'ddicttestuser1'@'localhost' IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' WITH GRANT OPTION +GRANT PROCESS, SUPER ON *.* TO `ddicttestuser1`@`localhost` IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' WITH GRANT OPTION GRANT PROCESS ON *.* TO 'ddicttestuser2'@'localhost'; #################################################################################### 10.4 New connection con200 (ddicttestuser2 with PROCESS privilege) @@ -377,7 +377,7 @@ ddicttestuser2 has now the PROCESS privilege and sees all connections #################################################################################### SHOW GRANTS FOR 'ddicttestuser2'@'localhost'; Grants for ddicttestuser2@localhost -GRANT PROCESS ON *.* TO 'ddicttestuser2'@'localhost' IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' +GRANT PROCESS ON *.* TO `ddicttestuser2`@`localhost` IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' SHOW processlist; Id User Host db Command Time State Info Progress ID root HOST_NAME information_schema Sleep TIME NULL TIME_MS @@ -417,7 +417,7 @@ ddicttestuser2 has no more the PROCESS privilege and can only see own connects #################################################################################### SHOW GRANTS; Grants for ddicttestuser2@localhost -GRANT USAGE ON *.* TO 'ddicttestuser2'@'localhost' IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' +GRANT USAGE ON *.* TO `ddicttestuser2`@`localhost` IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' SHOW processlist; Id User Host db Command Time State Info Progress ID ddicttestuser2 HOST_NAME information_schema Sleep TIME NULL TIME_MS @@ -440,7 +440,7 @@ He is also unable to GRANT the PROCESS privilege to ddicttestuser2 #################################################################################### SHOW GRANTS FOR 'ddicttestuser1'@'localhost'; Grants for ddicttestuser1@localhost -GRANT USAGE ON *.* TO 'ddicttestuser1'@'localhost' IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' +GRANT USAGE ON *.* TO `ddicttestuser1`@`localhost` IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' GRANT PROCESS ON *.* TO 'ddicttestuser2'@'localhost'; ERROR 28000: Access denied for user 'ddicttestuser1'@'localhost' (using password: YES) SHOW processlist; @@ -479,7 +479,7 @@ Therefore the missing SELECT privilege does not affect SELECTs on PROCESSLIST. #################################################################################### SHOW GRANTS FOR 'ddicttestuser1'@'localhost'; Grants for ddicttestuser1@localhost -GRANT USAGE ON *.* TO 'ddicttestuser1'@'localhost' IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' +GRANT USAGE ON *.* TO `ddicttestuser1`@`localhost` IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1' SHOW processlist; Id User Host db Command Time State Info Progress ID ddicttestuser1 HOST_NAME information_schema Sleep TIME NULL TIME_MS diff --git a/mysql-test/suite/galera/r/galera_forced_binlog_format.result b/mysql-test/suite/galera/r/galera_forced_binlog_format.result index 2a31893ca1d..3653a311d83 100644 --- a/mysql-test/suite/galera/r/galera_forced_binlog_format.result +++ b/mysql-test/suite/galera/r/galera_forced_binlog_format.result @@ -36,8 +36,8 @@ GRANT ALL PRIVILEGES ON testdb_9401.t1 TO dummy@localhost; FLUSH PRIVILEGES; SHOW GRANTS FOR dummy@localhost; Grants for dummy@localhost -GRANT USAGE ON *.* TO 'dummy'@'localhost' -GRANT ALL PRIVILEGES ON `testdb_9401`.`t1` TO 'dummy'@'localhost' +GRANT USAGE ON *.* TO `dummy`@`localhost` +GRANT ALL PRIVILEGES ON `testdb_9401`.`t1` TO `dummy`@`localhost` REVOKE ALL PRIVILEGES, GRANT OPTION FROM dummy@localhost; DROP USER dummy@localhost; DROP DATABASE testdb_9401; diff --git a/mysql-test/suite/galera/r/galera_roles.result b/mysql-test/suite/galera/r/galera_roles.result index bef89acfc92..7d6c57e8131 100644 --- a/mysql-test/suite/galera/r/galera_roles.result +++ b/mysql-test/suite/galera/r/galera_roles.result @@ -26,8 +26,8 @@ connect foo_node_2,127.0.0.1,foo,,test,$port_2,; connection foo_node_1; SHOW GRANTS; Grants for foo@localhost -GRANT role1 TO 'foo'@'localhost' -GRANT USAGE ON *.* TO 'foo'@'localhost' +GRANT `role1` TO `foo`@`localhost` +GRANT USAGE ON *.* TO `foo`@`localhost` FLUSH TABLES; ERROR 42000: Access denied; you need (at least one of) the RELOAD privilege(s) for this operation SELECT * FROM mysql.roles_mapping; @@ -62,8 +62,8 @@ pr1 connection foo_node_2; SHOW GRANTS; Grants for foo@localhost -GRANT role1 TO 'foo'@'localhost' -GRANT USAGE ON *.* TO 'foo'@'localhost' +GRANT `role1` TO `foo`@`localhost` +GRANT USAGE ON *.* TO `foo`@`localhost` FLUSH TABLES; ERROR 42000: Access denied; you need (at least one of) the RELOAD privilege(s) for this operation SELECT * FROM mysql.roles_mapping; @@ -129,7 +129,7 @@ SELECT a FROM test1.t2; ERROR 42000: SELECT command denied to user 'foo'@'localhost' for table 't2' SHOW GRANTS; Grants for foo@localhost -GRANT USAGE ON *.* TO 'foo'@'localhost' +GRANT USAGE ON *.* TO `foo`@`localhost` SELECT * FROM INFORMATION_SCHEMA.ENABLED_ROLES; ROLE_NAME NULL @@ -151,7 +151,7 @@ SELECT a FROM test1.t2; ERROR 42000: SELECT command denied to user 'foo'@'localhost' for table 't2' SHOW GRANTS; Grants for foo@localhost -GRANT USAGE ON *.* TO 'foo'@'localhost' +GRANT USAGE ON *.* TO `foo`@`localhost` SELECT * FROM INFORMATION_SCHEMA.ENABLED_ROLES; ROLE_NAME NULL diff --git a/mysql-test/suite/parts/r/partition_exch_qa_5_innodb.result b/mysql-test/suite/parts/r/partition_exch_qa_5_innodb.result index 03ef0ed2c09..2e31fc57dd4 100644 --- a/mysql-test/suite/parts/r/partition_exch_qa_5_innodb.result +++ b/mysql-test/suite/parts/r/partition_exch_qa_5_innodb.result @@ -10,8 +10,8 @@ current_user() test1@localhost SHOW GRANTS FOR CURRENT_USER; Grants for test1@localhost -GRANT USAGE ON *.* TO 'test1'@'localhost' -GRANT SELECT, INSERT, CREATE, DROP ON `test`.* TO 'test1'@'localhost' +GRANT USAGE ON *.* TO `test1`@`localhost` +GRANT SELECT, INSERT, CREATE, DROP ON `test`.* TO `test1`@`localhost` ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_10; ERROR 42000: ALTER command denied to user 'test1'@'localhost' for table 'tp' disconnect test1; @@ -22,8 +22,8 @@ current_user() test2@localhost SHOW GRANTS FOR CURRENT_USER; Grants for test2@localhost -GRANT USAGE ON *.* TO 'test2'@'localhost' -GRANT SELECT, INSERT, UPDATE, CREATE, DROP, ALTER ON `test`.* TO 'test2'@'localhost' +GRANT USAGE ON *.* TO `test2`@`localhost` +GRANT SELECT, INSERT, UPDATE, CREATE, DROP, ALTER ON `test`.* TO `test2`@`localhost` ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_10; SELECT * FROM t_10; a b @@ -80,8 +80,8 @@ current_user() test2@localhost SHOW GRANTS FOR CURRENT_USER; Grants for test2@localhost -GRANT USAGE ON *.* TO 'test2'@'localhost' -GRANT SELECT, INSERT, UPDATE, CREATE, DROP ON `test`.* TO 'test2'@'localhost' +GRANT USAGE ON *.* TO `test2`@`localhost` +GRANT SELECT, INSERT, UPDATE, CREATE, DROP ON `test`.* TO `test2`@`localhost` ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_10; ERROR 42000: ALTER command denied to user 'test2'@'localhost' for table 'tp' SELECT * FROM tp WHERE a BETWEEN 0 AND 10; diff --git a/mysql-test/suite/parts/r/partition_exch_qa_5_myisam.result b/mysql-test/suite/parts/r/partition_exch_qa_5_myisam.result index 03ef0ed2c09..2e31fc57dd4 100644 --- a/mysql-test/suite/parts/r/partition_exch_qa_5_myisam.result +++ b/mysql-test/suite/parts/r/partition_exch_qa_5_myisam.result @@ -10,8 +10,8 @@ current_user() test1@localhost SHOW GRANTS FOR CURRENT_USER; Grants for test1@localhost -GRANT USAGE ON *.* TO 'test1'@'localhost' -GRANT SELECT, INSERT, CREATE, DROP ON `test`.* TO 'test1'@'localhost' +GRANT USAGE ON *.* TO `test1`@`localhost` +GRANT SELECT, INSERT, CREATE, DROP ON `test`.* TO `test1`@`localhost` ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_10; ERROR 42000: ALTER command denied to user 'test1'@'localhost' for table 'tp' disconnect test1; @@ -22,8 +22,8 @@ current_user() test2@localhost SHOW GRANTS FOR CURRENT_USER; Grants for test2@localhost -GRANT USAGE ON *.* TO 'test2'@'localhost' -GRANT SELECT, INSERT, UPDATE, CREATE, DROP, ALTER ON `test`.* TO 'test2'@'localhost' +GRANT USAGE ON *.* TO `test2`@`localhost` +GRANT SELECT, INSERT, UPDATE, CREATE, DROP, ALTER ON `test`.* TO `test2`@`localhost` ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_10; SELECT * FROM t_10; a b @@ -80,8 +80,8 @@ current_user() test2@localhost SHOW GRANTS FOR CURRENT_USER; Grants for test2@localhost -GRANT USAGE ON *.* TO 'test2'@'localhost' -GRANT SELECT, INSERT, UPDATE, CREATE, DROP ON `test`.* TO 'test2'@'localhost' +GRANT USAGE ON *.* TO `test2`@`localhost` +GRANT SELECT, INSERT, UPDATE, CREATE, DROP ON `test`.* TO `test2`@`localhost` ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_10; ERROR 42000: ALTER command denied to user 'test2'@'localhost' for table 'tp' SELECT * FROM tp WHERE a BETWEEN 0 AND 10; diff --git a/mysql-test/suite/parts/r/partition_exch_qa_6.result b/mysql-test/suite/parts/r/partition_exch_qa_6.result index 6de40ee614a..880886b4fac 100644 --- a/mysql-test/suite/parts/r/partition_exch_qa_6.result +++ b/mysql-test/suite/parts/r/partition_exch_qa_6.result @@ -59,8 +59,8 @@ GRANT CREATE, DROP, ALTER, UPDATE, INSERT, SELECT ON test.* TO test2@localhost; connect test2,localhost,test2,,test,$MASTER_MYPORT,$MASTER_MYSOCK; SHOW GRANTS FOR CURRENT_USER; Grants for test2@localhost -GRANT USAGE ON *.* TO 'test2'@'localhost' -GRANT SELECT, INSERT, UPDATE, CREATE, DROP, ALTER ON `test`.* TO 'test2'@'localhost' +GRANT USAGE ON *.* TO `test2`@`localhost` +GRANT SELECT, INSERT, UPDATE, CREATE, DROP, ALTER ON `test`.* TO `test2`@`localhost` ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_10; SELECT * FROM t_10; a b @@ -114,8 +114,8 @@ connect test2,localhost,test2,,test,$MASTER_MYPORT,$MASTER_MYSOCK; USE test; SHOW GRANTS FOR CURRENT_USER; Grants for test2@localhost -GRANT USAGE ON *.* TO 'test2'@'localhost' -GRANT SELECT, UPDATE, CREATE, DROP, ALTER ON `test`.* TO 'test2'@'localhost' +GRANT USAGE ON *.* TO `test2`@`localhost` +GRANT SELECT, UPDATE, CREATE, DROP, ALTER ON `test`.* TO `test2`@`localhost` ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_10; ERROR 42000: INSERT command denied to user 'test2'@'localhost' for table 'tp' disconnect test2; @@ -126,8 +126,8 @@ connect test2,localhost,test2,,test,$MASTER_MYPORT,$MASTER_MYSOCK; USE test; SHOW GRANTS FOR CURRENT_USER; Grants for test2@localhost -GRANT USAGE ON *.* TO 'test2'@'localhost' -GRANT SELECT, INSERT, UPDATE, DROP, ALTER ON `test`.* TO 'test2'@'localhost' +GRANT USAGE ON *.* TO `test2`@`localhost` +GRANT SELECT, INSERT, UPDATE, DROP, ALTER ON `test`.* TO `test2`@`localhost` ALTER TABLE tsp EXCHANGE PARTITION sp00 WITH TABLE tsp_00; ERROR 42000: CREATE command denied to user 'test2'@'localhost' for table 'tsp' disconnect test2; @@ -137,8 +137,8 @@ REVOKE DROP ON test.* FROM test2@localhost; connect test2,localhost,test2,,test,$MASTER_MYPORT,$MASTER_MYSOCK; SHOW GRANTS FOR CURRENT_USER; Grants for test2@localhost -GRANT USAGE ON *.* TO 'test2'@'localhost' -GRANT SELECT, INSERT, UPDATE, CREATE, ALTER ON `test`.* TO 'test2'@'localhost' +GRANT USAGE ON *.* TO `test2`@`localhost` +GRANT SELECT, INSERT, UPDATE, CREATE, ALTER ON `test`.* TO `test2`@`localhost` ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_10; ERROR 42000: DROP command denied to user 'test2'@'localhost' for table 'tp' disconnect test2; diff --git a/mysql-test/suite/perfschema/r/column_privilege.result b/mysql-test/suite/perfschema/r/column_privilege.result index f88a5615e16..b8fff059240 100644 --- a/mysql-test/suite/perfschema/r/column_privilege.result +++ b/mysql-test/suite/perfschema/r/column_privilege.result @@ -1,6 +1,6 @@ show grants; Grants for root@localhost -GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION +GRANT ALL PRIVILEGES ON *.* TO `root`@`localhost` WITH GRANT OPTION GRANT PROXY ON ''@'%' TO 'root'@'localhost' WITH GRANT OPTION create user 'pfs_user_5'@localhost; grant usage on *.* to 'pfs_user_5'@localhost with GRANT OPTION; diff --git a/mysql-test/suite/perfschema/r/privilege.result b/mysql-test/suite/perfschema/r/privilege.result index 7bb7627142e..0a038000536 100644 --- a/mysql-test/suite/perfschema/r/privilege.result +++ b/mysql-test/suite/perfschema/r/privilege.result @@ -1,6 +1,6 @@ show grants; Grants for root@localhost -GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION +GRANT ALL PRIVILEGES ON *.* TO `root`@`localhost` WITH GRANT OPTION GRANT PROXY ON ''@'%' TO 'root'@'localhost' WITH GRANT OPTION create user 'pfs_user_1'@localhost; create user 'pfs_user_2'@localhost; diff --git a/mysql-test/suite/perfschema/r/read_only.result b/mysql-test/suite/perfschema/r/read_only.result index 045e3232fda..32e3a724b5e 100644 --- a/mysql-test/suite/perfschema/r/read_only.result +++ b/mysql-test/suite/perfschema/r/read_only.result @@ -12,8 +12,8 @@ select @@global.read_only; 0 show grants; Grants for pfsuser@localhost -GRANT USAGE ON *.* TO 'pfsuser'@'localhost' -GRANT SELECT, UPDATE ON `performance_schema`.* TO 'pfsuser'@'localhost' +GRANT USAGE ON *.* TO `pfsuser`@`localhost` +GRANT SELECT, UPDATE ON `performance_schema`.* TO `pfsuser`@`localhost` select * from performance_schema.setup_instruments; update performance_schema.setup_instruments set enabled='NO'; update performance_schema.setup_instruments set enabled='YES'; @@ -25,8 +25,8 @@ select @@global.read_only; 1 show grants; Grants for pfsuser@localhost -GRANT USAGE ON *.* TO 'pfsuser'@'localhost' -GRANT SELECT, UPDATE ON `performance_schema`.* TO 'pfsuser'@'localhost' +GRANT USAGE ON *.* TO `pfsuser`@`localhost` +GRANT SELECT, UPDATE ON `performance_schema`.* TO `pfsuser`@`localhost` select * from performance_schema.setup_instruments; update performance_schema.setup_instruments set enabled='NO'; update performance_schema.setup_instruments set enabled='YES'; @@ -40,8 +40,8 @@ select @@global.read_only; 1 show grants; Grants for pfsuser@localhost -GRANT SUPER ON *.* TO 'pfsuser'@'localhost' -GRANT SELECT, UPDATE ON `performance_schema`.* TO 'pfsuser'@'localhost' +GRANT SUPER ON *.* TO `pfsuser`@`localhost` +GRANT SELECT, UPDATE ON `performance_schema`.* TO `pfsuser`@`localhost` select * from performance_schema.setup_instruments; update performance_schema.setup_instruments set enabled='NO'; update performance_schema.setup_instruments set enabled='YES'; diff --git a/mysql-test/suite/plugins/r/auth_ed25519.result b/mysql-test/suite/plugins/r/auth_ed25519.result index 4785bef3ef7..7ae385b79cb 100644 --- a/mysql-test/suite/plugins/r/auth_ed25519.result +++ b/mysql-test/suite/plugins/r/auth_ed25519.result @@ -37,7 +37,7 @@ PLUGIN_AUTH_VERSION 1.0 create user test1@localhost identified via ed25519 using 'ZIgUREUg5PVgQ6LskhXmO+eZLS0nC8be6HPjYWR4YJY'; show grants for test1@localhost; Grants for test1@localhost -GRANT USAGE ON *.* TO 'test1'@'localhost' IDENTIFIED VIA ed25519 USING 'ZIgUREUg5PVgQ6LskhXmO+eZLS0nC8be6HPjYWR4YJY' +GRANT USAGE ON *.* TO `test1`@`localhost` IDENTIFIED VIA ed25519 USING 'ZIgUREUg5PVgQ6LskhXmO+eZLS0nC8be6HPjYWR4YJY' connect(localhost,test1,public,test,PORT,SOCKET); connect con1, localhost, test1, public; ERROR 28000: Access denied for user 'test1'@'localhost' (using password: YES) diff --git a/mysql-test/suite/roles/admin.result b/mysql-test/suite/roles/admin.result index 87d2888b47c..a7841fd3b57 100644 --- a/mysql-test/suite/roles/admin.result +++ b/mysql-test/suite/roles/admin.result @@ -27,22 +27,22 @@ grant select on *.* to foo@localhost with admin option; ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'admin option' at line 1 show grants for foo@localhost; Grants for foo@localhost -GRANT CREATE USER ON *.* TO 'foo'@'localhost' -GRANT role1 TO 'foo'@'localhost' WITH ADMIN OPTION -GRANT role2 TO 'foo'@'localhost' -GRANT role5 TO 'foo'@'localhost' WITH ADMIN OPTION +GRANT CREATE USER ON *.* TO `foo`@`localhost` +GRANT `role1` TO `foo`@`localhost` WITH ADMIN OPTION +GRANT `role2` TO `foo`@`localhost` +GRANT `role5` TO `foo`@`localhost` WITH ADMIN OPTION show grants for role1; Grants for role1 -GRANT USAGE ON *.* TO 'role1' -GRANT USAGE ON *.* TO 'role2' -GRANT USAGE ON *.* TO 'role3' -GRANT USAGE ON *.* TO 'role4' -GRANT role2 TO 'role1' -GRANT role3 TO 'role1' WITH ADMIN OPTION -GRANT role4 TO 'role3' WITH ADMIN OPTION +GRANT USAGE ON *.* TO `role1` +GRANT USAGE ON *.* TO `role2` +GRANT USAGE ON *.* TO `role3` +GRANT USAGE ON *.* TO `role4` +GRANT `role2` TO `role1` +GRANT `role3` TO `role1` WITH ADMIN OPTION +GRANT `role4` TO `role3` WITH ADMIN OPTION show grants for role4; Grants for role4 -GRANT USAGE ON *.* TO 'role4' +GRANT USAGE ON *.* TO `role4` select * from mysql.roles_mapping; Host User Role Admin_option role1 role2 N @@ -58,22 +58,22 @@ localhost root role4 Y flush privileges; show grants for foo@localhost; Grants for foo@localhost -GRANT CREATE USER ON *.* TO 'foo'@'localhost' -GRANT role1 TO 'foo'@'localhost' WITH ADMIN OPTION -GRANT role2 TO 'foo'@'localhost' -GRANT role5 TO 'foo'@'localhost' WITH ADMIN OPTION +GRANT CREATE USER ON *.* TO `foo`@`localhost` +GRANT `role1` TO `foo`@`localhost` WITH ADMIN OPTION +GRANT `role2` TO `foo`@`localhost` +GRANT `role5` TO `foo`@`localhost` WITH ADMIN OPTION show grants for role1; Grants for role1 -GRANT USAGE ON *.* TO 'role1' -GRANT USAGE ON *.* TO 'role2' -GRANT USAGE ON *.* TO 'role3' -GRANT USAGE ON *.* TO 'role4' -GRANT role2 TO 'role1' -GRANT role3 TO 'role1' WITH ADMIN OPTION -GRANT role4 TO 'role3' WITH ADMIN OPTION +GRANT USAGE ON *.* TO `role1` +GRANT USAGE ON *.* TO `role2` +GRANT USAGE ON *.* TO `role3` +GRANT USAGE ON *.* TO `role4` +GRANT `role2` TO `role1` +GRANT `role3` TO `role1` WITH ADMIN OPTION +GRANT `role4` TO `role3` WITH ADMIN OPTION show grants for role4; Grants for role4 -GRANT USAGE ON *.* TO 'role4' +GRANT USAGE ON *.* TO `role4` select * from information_schema.applicable_roles; GRANTEE ROLE_NAME IS_GRANTABLE IS_DEFAULT role1 role2 NO NULL @@ -89,21 +89,21 @@ revoke admin option for role2 from foo@localhost; revoke admin option for role1 from root@localhost; show grants for foo@localhost; Grants for foo@localhost -GRANT CREATE USER ON *.* TO 'foo'@'localhost' -GRANT role2 TO 'foo'@'localhost' -GRANT role5 TO 'foo'@'localhost' WITH ADMIN OPTION +GRANT CREATE USER ON *.* TO `foo`@`localhost` +GRANT `role2` TO `foo`@`localhost` +GRANT `role5` TO `foo`@`localhost` WITH ADMIN OPTION show grants for role1; Grants for role1 -GRANT USAGE ON *.* TO 'role1' -GRANT USAGE ON *.* TO 'role2' -GRANT USAGE ON *.* TO 'role3' -GRANT USAGE ON *.* TO 'role4' -GRANT role2 TO 'role1' WITH ADMIN OPTION -GRANT role3 TO 'role1' WITH ADMIN OPTION -GRANT role4 TO 'role3' +GRANT USAGE ON *.* TO `role1` +GRANT USAGE ON *.* TO `role2` +GRANT USAGE ON *.* TO `role3` +GRANT USAGE ON *.* TO `role4` +GRANT `role2` TO `role1` WITH ADMIN OPTION +GRANT `role3` TO `role1` WITH ADMIN OPTION +GRANT `role4` TO `role3` show grants for role4; Grants for role4 -GRANT USAGE ON *.* TO 'role4' +GRANT USAGE ON *.* TO `role4` select * from mysql.roles_mapping; Host User Role Admin_option role1 role2 Y @@ -118,21 +118,21 @@ localhost root role4 Y flush privileges; show grants for foo@localhost; Grants for foo@localhost -GRANT CREATE USER ON *.* TO 'foo'@'localhost' -GRANT role2 TO 'foo'@'localhost' -GRANT role5 TO 'foo'@'localhost' WITH ADMIN OPTION +GRANT CREATE USER ON *.* TO `foo`@`localhost` +GRANT `role2` TO `foo`@`localhost` +GRANT `role5` TO `foo`@`localhost` WITH ADMIN OPTION show grants for role1; Grants for role1 -GRANT USAGE ON *.* TO 'role1' -GRANT USAGE ON *.* TO 'role2' -GRANT USAGE ON *.* TO 'role3' -GRANT USAGE ON *.* TO 'role4' -GRANT role2 TO 'role1' WITH ADMIN OPTION -GRANT role3 TO 'role1' WITH ADMIN OPTION -GRANT role4 TO 'role3' +GRANT USAGE ON *.* TO `role1` +GRANT USAGE ON *.* TO `role2` +GRANT USAGE ON *.* TO `role3` +GRANT USAGE ON *.* TO `role4` +GRANT `role2` TO `role1` WITH ADMIN OPTION +GRANT `role3` TO `role1` WITH ADMIN OPTION +GRANT `role4` TO `role3` show grants for role4; Grants for role4 -GRANT USAGE ON *.* TO 'role4' +GRANT USAGE ON *.* TO `role4` select * from information_schema.applicable_roles; GRANTEE ROLE_NAME IS_GRANTABLE IS_DEFAULT role1 role2 YES NULL diff --git a/mysql-test/suite/roles/create_and_drop_role.result b/mysql-test/suite/roles/create_and_drop_role.result index a163ee82f42..ad0561aed4d 100644 --- a/mysql-test/suite/roles/create_and_drop_role.result +++ b/mysql-test/suite/roles/create_and_drop_role.result @@ -66,8 +66,8 @@ localhost r1 r2 N localhost root r2 Y SHOW GRANTS FOR r1@localhost; Grants for r1@localhost -GRANT r2 TO 'r1'@'localhost' -GRANT USAGE ON *.* TO 'r1'@'localhost' +GRANT `r2` TO `r1`@`localhost` +GRANT USAGE ON *.* TO `r1`@`localhost` DROP USER u1; DROP ROLE r2; DROP USER r1@localhost; @@ -85,5 +85,5 @@ select * from mysql.roles_mapping; Host User Role Admin_option show grants; Grants for root@localhost -GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION +GRANT ALL PRIVILEGES ON *.* TO `root`@`localhost` WITH GRANT OPTION GRANT PROXY ON ''@'%' TO 'root'@'localhost' WITH GRANT OPTION diff --git a/mysql-test/suite/roles/create_and_grant_role.result b/mysql-test/suite/roles/create_and_grant_role.result index 883ae44397d..2a676115a2d 100644 --- a/mysql-test/suite/roles/create_and_grant_role.result +++ b/mysql-test/suite/roles/create_and_grant_role.result @@ -13,14 +13,14 @@ Host User Role Admin_option localhost root r1 Y show grants; Grants for root@localhost -GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION +GRANT ALL PRIVILEGES ON *.* TO `root`@`localhost` WITH GRANT OPTION GRANT PROXY ON ''@'%' TO 'root'@'localhost' WITH GRANT OPTION -GRANT USAGE ON *.* TO 'r1' -GRANT r1 TO 'root'@'localhost' WITH ADMIN OPTION +GRANT USAGE ON *.* TO `r1` +GRANT `r1` TO `root`@`localhost` WITH ADMIN OPTION drop role r1; select * from mysql.roles_mapping; Host User Role Admin_option show grants; Grants for root@localhost -GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION +GRANT ALL PRIVILEGES ON *.* TO `root`@`localhost` WITH GRANT OPTION GRANT PROXY ON ''@'%' TO 'root'@'localhost' WITH GRANT OPTION diff --git a/mysql-test/suite/roles/definer.result b/mysql-test/suite/roles/definer.result index 0a83262add1..30911265436 100644 --- a/mysql-test/suite/roles/definer.result +++ b/mysql-test/suite/roles/definer.result @@ -38,9 +38,9 @@ connect c1, localhost, foo,,mysqltest1; connection c1; show grants; Grants for foo@localhost -GRANT role4 TO 'foo'@'localhost' -GRANT USAGE ON *.* TO 'foo'@'localhost' -GRANT CREATE VIEW ON `mysqltest1`.* TO 'foo'@'localhost' +GRANT `role4` TO `foo`@`localhost` +GRANT USAGE ON *.* TO `foo`@`localhost` +GRANT CREATE VIEW ON `mysqltest1`.* TO `foo`@`localhost` select * from test.v1; ERROR HY000: View 'test.v1' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them select * from test.v2; @@ -622,13 +622,13 @@ prepare stmt1 from 'grant select on *.* to utest'; execute stmt1; show grants for utest; Grants for utest@% -GRANT SELECT ON *.* TO 'utest'@'%' +GRANT SELECT ON *.* TO `utest`@`%` drop user utest; create role utest; execute stmt1; show grants for utest; Grants for utest -GRANT SELECT ON *.* TO 'utest' +GRANT SELECT ON *.* TO `utest` drop role utest; # # MDEV-13676: Field "create Procedure" is NULL, even if the the user diff --git a/mysql-test/suite/roles/drop_routines.result b/mysql-test/suite/roles/drop_routines.result index 11eda3a290f..7facb9fd1c9 100644 --- a/mysql-test/suite/roles/drop_routines.result +++ b/mysql-test/suite/roles/drop_routines.result @@ -7,15 +7,15 @@ grant r3 to r2; grant r1 to u1; show grants for u1; Grants for u1@% -GRANT USAGE ON *.* TO 'u1'@'%' -GRANT r1 TO 'u1'@'%' +GRANT USAGE ON *.* TO `u1`@`%` +GRANT `r1` TO `u1`@`%` show grants for r1; Grants for r1 -GRANT USAGE ON *.* TO 'r1' -GRANT USAGE ON *.* TO 'r2' -GRANT USAGE ON *.* TO 'r3' -GRANT r2 TO 'r1' -GRANT r3 TO 'r2' +GRANT USAGE ON *.* TO `r1` +GRANT USAGE ON *.* TO `r2` +GRANT USAGE ON *.* TO `r3` +GRANT `r2` TO `r1` +GRANT `r3` TO `r2` grant SELECT on *.* to u1; grant INSERT on mysql.* to r1; grant DELETE on mysql.roles_mapping to r2; @@ -33,30 +33,30 @@ revoke execute on procedure mysql.test_proc from r2; ERROR 42000: There is no such grant defined for user 'r2' on host '' on routine 'test_proc' show grants for r1; Grants for r1 -GRANT DELETE ON `mysql`.`roles_mapping` TO 'r2' -GRANT EXECUTE ON FUNCTION `mysql`.`test_func` TO 'r2' -GRANT EXECUTE ON PROCEDURE `mysql`.`test_proc` TO 'r3' -GRANT INSERT ON `mysql`.* TO 'r1' -GRANT UPDATE ON `mysql`.`user` TO 'r3' -GRANT USAGE ON *.* TO 'r1' -GRANT USAGE ON *.* TO 'r2' -GRANT USAGE ON *.* TO 'r3' -GRANT r2 TO 'r1' -GRANT r3 TO 'r2' +GRANT DELETE ON `mysql`.`roles_mapping` TO `r2` +GRANT EXECUTE ON FUNCTION `mysql`.`test_func` TO `r2` +GRANT EXECUTE ON PROCEDURE `mysql`.`test_proc` TO `r3` +GRANT INSERT ON `mysql`.* TO `r1` +GRANT UPDATE ON `mysql`.`user` TO `r3` +GRANT USAGE ON *.* TO `r1` +GRANT USAGE ON *.* TO `r2` +GRANT USAGE ON *.* TO `r3` +GRANT `r2` TO `r1` +GRANT `r3` TO `r2` show grants for r2; Grants for r2 -GRANT DELETE ON `mysql`.`roles_mapping` TO 'r2' -GRANT EXECUTE ON FUNCTION `mysql`.`test_func` TO 'r2' -GRANT EXECUTE ON PROCEDURE `mysql`.`test_proc` TO 'r3' -GRANT UPDATE ON `mysql`.`user` TO 'r3' -GRANT USAGE ON *.* TO 'r2' -GRANT USAGE ON *.* TO 'r3' -GRANT r3 TO 'r2' +GRANT DELETE ON `mysql`.`roles_mapping` TO `r2` +GRANT EXECUTE ON FUNCTION `mysql`.`test_func` TO `r2` +GRANT EXECUTE ON PROCEDURE `mysql`.`test_proc` TO `r3` +GRANT UPDATE ON `mysql`.`user` TO `r3` +GRANT USAGE ON *.* TO `r2` +GRANT USAGE ON *.* TO `r3` +GRANT `r3` TO `r2` show grants for r3; Grants for r3 -GRANT EXECUTE ON PROCEDURE `mysql`.`test_proc` TO 'r3' -GRANT UPDATE ON `mysql`.`user` TO 'r3' -GRANT USAGE ON *.* TO 'r3' +GRANT EXECUTE ON PROCEDURE `mysql`.`test_proc` TO `r3` +GRANT UPDATE ON `mysql`.`user` TO `r3` +GRANT USAGE ON *.* TO `r3` drop function mysql.test_func; drop procedure mysql.test_proc; create function mysql.test_func (s CHAR(20)) @@ -64,11 +64,11 @@ returns CHAR(50) DETERMINISTIC return concat('Test string: ',s); show grants for r2; Grants for r2 -GRANT DELETE ON `mysql`.`roles_mapping` TO 'r2' -GRANT UPDATE ON `mysql`.`user` TO 'r3' -GRANT USAGE ON *.* TO 'r2' -GRANT USAGE ON *.* TO 'r3' -GRANT r3 TO 'r2' +GRANT DELETE ON `mysql`.`roles_mapping` TO `r2` +GRANT UPDATE ON `mysql`.`user` TO `r3` +GRANT USAGE ON *.* TO `r2` +GRANT USAGE ON *.* TO `r3` +GRANT `r3` TO `r2` connect u1,localhost,u1,,; select mysql.test_func("none"); ERROR 42000: execute command denied to user 'u1'@'%' for routine 'mysql.test_func' diff --git a/mysql-test/suite/roles/flush_roles-17898.result b/mysql-test/suite/roles/flush_roles-17898.result index ae8fb0a27d2..970c0d12195 100644 --- a/mysql-test/suite/roles/flush_roles-17898.result +++ b/mysql-test/suite/roles/flush_roles-17898.result @@ -24,15 +24,15 @@ grant select on m_.* to r2; grant r2 to r1; show grants for u1@localhost; Grants for u1@localhost -GRANT r1 TO 'u1'@'localhost' -GRANT USAGE ON *.* TO 'u1'@'localhost' +GRANT `r1` TO `u1`@`localhost` +GRANT USAGE ON *.* TO `u1`@`localhost` show grants for r1; Grants for r1 -GRANT r2 TO 'r1' -GRANT USAGE ON *.* TO 'r1' -GRANT USAGE ON *.* TO 'r2' -GRANT SELECT ON `test`.* TO 'r2' -GRANT SELECT ON `m_`.* TO 'r2' +GRANT `r2` TO `r1` +GRANT USAGE ON *.* TO `r1` +GRANT USAGE ON *.* TO `r2` +GRANT SELECT ON `test`.* TO `r2` +GRANT SELECT ON `m_`.* TO `r2` drop user u1@localhost; drop role r1, r2; insert mysql.db select * from db_copy; diff --git a/mysql-test/suite/roles/grant-5771.result b/mysql-test/suite/roles/grant-5771.result index 87797d8b9a4..14e033f4c29 100644 --- a/mysql-test/suite/roles/grant-5771.result +++ b/mysql-test/suite/roles/grant-5771.result @@ -21,13 +21,13 @@ show tables in mysqltest2; Tables_in_mysqltest2 show grants; Grants for foo@localhost -GRANT r2 TO 'foo'@'localhost' -GRANT USAGE ON *.* TO 'foo'@'localhost' -GRANT r1 TO 'r2' -GRANT USAGE ON *.* TO 'r2' -GRANT ALL PRIVILEGES ON `mysqltest2`.* TO 'r2' -GRANT USAGE ON *.* TO 'r1' -GRANT ALL PRIVILEGES ON `mysqltest1`.* TO 'r1' +GRANT `r2` TO `foo`@`localhost` +GRANT USAGE ON *.* TO `foo`@`localhost` +GRANT `r1` TO `r2` +GRANT USAGE ON *.* TO `r2` +GRANT ALL PRIVILEGES ON `mysqltest2`.* TO `r2` +GRANT USAGE ON *.* TO `r1` +GRANT ALL PRIVILEGES ON `mysqltest1`.* TO `r1` connection default; drop user foo@localhost; drop role r1; diff --git a/mysql-test/suite/roles/grant_empty.result b/mysql-test/suite/roles/grant_empty.result index 3316c755b9f..2e4542993ba 100644 --- a/mysql-test/suite/roles/grant_empty.result +++ b/mysql-test/suite/roles/grant_empty.result @@ -9,8 +9,8 @@ current_user @localhost show grants; Grants for @localhost -GRANT r1 TO ''@'localhost' -GRANT USAGE ON *.* TO ''@'localhost' +GRANT `r1` TO ``@`localhost` +GRANT USAGE ON *.* TO ``@`localhost` connection default; drop role r1; drop user ''@localhost; diff --git a/mysql-test/suite/roles/grant_proxy-5526.result b/mysql-test/suite/roles/grant_proxy-5526.result index 7921969299a..8bfa8e3929c 100644 --- a/mysql-test/suite/roles/grant_proxy-5526.result +++ b/mysql-test/suite/roles/grant_proxy-5526.result @@ -3,7 +3,7 @@ create user user; grant proxy on r1 to user; show grants for user; Grants for user@% -GRANT USAGE ON *.* TO 'user'@'%' +GRANT USAGE ON *.* TO `user`@`%` GRANT PROXY ON 'r1'@'%' TO 'user'@'%' drop user user; drop role r1; diff --git a/mysql-test/suite/roles/grant_revoke_current.result b/mysql-test/suite/roles/grant_revoke_current.result index 436bec92a8f..e231a465317 100644 --- a/mysql-test/suite/roles/grant_revoke_current.result +++ b/mysql-test/suite/roles/grant_revoke_current.result @@ -14,30 +14,30 @@ r1 grant select on *.* to current_role; show grants for current_role; Grants for r1 -GRANT SELECT ON *.* TO 'r1' -GRANT INSERT ON `test`.* TO 'r1' +GRANT SELECT ON *.* TO `r1` +GRANT INSERT ON `test`.* TO `r1` revoke insert on test.* from current_role; show grants for current_role; Grants for r1 -GRANT SELECT ON *.* TO 'r1' +GRANT SELECT ON *.* TO `r1` revoke all, grant option from current_role; show grants for current_role; Grants for r1 -GRANT USAGE ON *.* TO 'r1' +GRANT USAGE ON *.* TO `r1` set password=password('foobar'); show grants; Grants for root@localhost -GRANT r1 TO 'root'@'localhost' WITH ADMIN OPTION -GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY PASSWORD '*9B500343BC52E2911172EB52AE5CF4847604C6E5' WITH GRANT OPTION +GRANT `r1` TO `root`@`localhost` WITH ADMIN OPTION +GRANT ALL PRIVILEGES ON *.* TO `root`@`localhost` IDENTIFIED BY PASSWORD '*9B500343BC52E2911172EB52AE5CF4847604C6E5' WITH GRANT OPTION GRANT PROXY ON ''@'%' TO 'root'@'localhost' WITH GRANT OPTION -GRANT USAGE ON *.* TO 'r1' +GRANT USAGE ON *.* TO `r1` grant r1 to current_user() identified by 'barfoo'; show grants; Grants for root@localhost -GRANT r1 TO 'root'@'localhost' WITH ADMIN OPTION -GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY PASSWORD '*343915A8181B5728EADBDC73E1F7E6B0C3998483' WITH GRANT OPTION +GRANT `r1` TO `root`@`localhost` WITH ADMIN OPTION +GRANT ALL PRIVILEGES ON *.* TO `root`@`localhost` IDENTIFIED BY PASSWORD '*343915A8181B5728EADBDC73E1F7E6B0C3998483' WITH GRANT OPTION GRANT PROXY ON ''@'%' TO 'root'@'localhost' WITH GRANT OPTION -GRANT USAGE ON *.* TO 'r1' +GRANT USAGE ON *.* TO `r1` set password=''; update mysql.user set plugin=''; drop role r1; diff --git a/mysql-test/suite/roles/ip-6401.result b/mysql-test/suite/roles/ip-6401.result index 1afd649636e..723916f9211 100644 --- a/mysql-test/suite/roles/ip-6401.result +++ b/mysql-test/suite/roles/ip-6401.result @@ -4,8 +4,8 @@ grant r1 to foo@'127.0.0.1'; connect con1,127.0.0.1,foo,,; show grants; Grants for foo@127.0.0.1 -GRANT r1 TO 'foo'@'127.0.0.1' -GRANT USAGE ON *.* TO 'foo'@'127.0.0.1' +GRANT `r1` TO `foo`@`127.0.0.1` +GRANT USAGE ON *.* TO `foo`@`127.0.0.1` set role r1; select * from information_schema.enabled_roles; ROLE_NAME diff --git a/mysql-test/suite/roles/prepare_stmt_with_role.result b/mysql-test/suite/roles/prepare_stmt_with_role.result index 0352502c35c..ecd662c7d3e 100644 --- a/mysql-test/suite/roles/prepare_stmt_with_role.result +++ b/mysql-test/suite/roles/prepare_stmt_with_role.result @@ -17,8 +17,8 @@ user host is_role developers Y SHOW GRANTS; Grants for root@localhost -GRANT developers TO 'root'@'localhost' WITH ADMIN OPTION -GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION +GRANT `developers` TO `root`@`localhost` WITH ADMIN OPTION +GRANT ALL PRIVILEGES ON *.* TO `root`@`localhost` WITH GRANT OPTION GRANT PROXY ON ''@'%' TO 'root'@'localhost' WITH GRANT OPTION # Test reexecution. EXECUTE stmtCreateRole; @@ -40,8 +40,8 @@ Host User Role Admin_option localhost root developers Y SHOW GRANTS FOR test_user; Grants for test_user@% -GRANT developers TO 'test_user'@'%' -GRANT USAGE ON *.* TO 'test_user'@'%' +GRANT `developers` TO `test_user`@`%` +GRANT USAGE ON *.* TO `test_user`@`%` # # Test revoking a role. # @@ -52,16 +52,16 @@ EXECUTE stmtRevokeRole; ERROR HY000: Cannot revoke role 'developers' from: 'test_user'@'%' SHOW GRANTS FOR test_user; Grants for test_user@% -GRANT USAGE ON *.* TO 'test_user'@'%' +GRANT USAGE ON *.* TO `test_user`@`%` EXECUTE stmtGrantRole; SHOW GRANTS FOR test_user; Grants for test_user@% -GRANT developers TO 'test_user'@'%' -GRANT USAGE ON *.* TO 'test_user'@'%' +GRANT `developers` TO `test_user`@`%` +GRANT USAGE ON *.* TO `test_user`@`%` EXECUTE stmtRevokeRole; SHOW GRANTS FOR test_user; Grants for test_user@% -GRANT USAGE ON *.* TO 'test_user'@'%' +GRANT USAGE ON *.* TO `test_user`@`%` # # Now drop the role. # @@ -78,11 +78,11 @@ SELECT * FROM mysql.roles_mapping; Host User Role Admin_option SHOW GRANTS; Grants for root@localhost -GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION +GRANT ALL PRIVILEGES ON *.* TO `root`@`localhost` WITH GRANT OPTION GRANT PROXY ON ''@'%' TO 'root'@'localhost' WITH GRANT OPTION SHOW GRANTS FOR test_user; Grants for test_user@% -GRANT USAGE ON *.* TO 'test_user'@'%' +GRANT USAGE ON *.* TO `test_user`@`%` # # Test reexecution. # @@ -96,12 +96,12 @@ Host User Role Admin_option localhost root developers Y SHOW GRANTS; Grants for root@localhost -GRANT developers TO 'root'@'localhost' WITH ADMIN OPTION -GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION +GRANT `developers` TO `root`@`localhost` WITH ADMIN OPTION +GRANT ALL PRIVILEGES ON *.* TO `root`@`localhost` WITH GRANT OPTION GRANT PROXY ON ''@'%' TO 'root'@'localhost' WITH GRANT OPTION SHOW GRANTS FOR test_user; Grants for test_user@% -GRANT USAGE ON *.* TO 'test_user'@'%' +GRANT USAGE ON *.* TO `test_user`@`%` EXECUTE stmtDropRole; # Cleanup. DROP USER test_user; diff --git a/mysql-test/suite/roles/rebuild_role_grants.result b/mysql-test/suite/roles/rebuild_role_grants.result index 1068be9bc01..f8297d91024 100644 --- a/mysql-test/suite/roles/rebuild_role_grants.result +++ b/mysql-test/suite/roles/rebuild_role_grants.result @@ -3,16 +3,16 @@ create user u1; grant r1 to u1; show grants for u1; Grants for u1@% -GRANT USAGE ON *.* TO 'u1'@'%' -GRANT r1 TO 'u1'@'%' +GRANT USAGE ON *.* TO `u1`@`%` +GRANT `r1` TO `u1`@`%` create user u2; show grants for u1; Grants for u1@% -GRANT USAGE ON *.* TO 'u1'@'%' -GRANT r1 TO 'u1'@'%' +GRANT USAGE ON *.* TO `u1`@`%` +GRANT `r1` TO `u1`@`%` show grants for u2; Grants for u2@% -GRANT USAGE ON *.* TO 'u2'@'%' +GRANT USAGE ON *.* TO `u2`@`%` select * from mysql.roles_mapping; Host User Role Admin_option % u1 r1 N @@ -22,7 +22,7 @@ revoke r1 from u1; ERROR HY000: Cannot revoke role 'r1' from: 'u1'@'%' show grants for u1; Grants for u1@% -GRANT USAGE ON *.* TO 'u1'@'%' +GRANT USAGE ON *.* TO `u1`@`%` select * from mysql.roles_mapping; Host User Role Admin_option localhost root r1 Y @@ -30,8 +30,8 @@ grant r1 to u1; grant r1 to u1; show grants for u1; Grants for u1@% -GRANT USAGE ON *.* TO 'u1'@'%' -GRANT r1 TO 'u1'@'%' +GRANT USAGE ON *.* TO `u1`@`%` +GRANT `r1` TO `u1`@`%` select * from mysql.roles_mapping; Host User Role Admin_option % u1 r1 N @@ -39,7 +39,7 @@ localhost root r1 Y drop role r1; show grants for u1; Grants for u1@% -GRANT USAGE ON *.* TO 'u1'@'%' +GRANT USAGE ON *.* TO `u1`@`%` select * from mysql.roles_mapping; Host User Role Admin_option create role r1; diff --git a/mysql-test/suite/roles/recursive.result b/mysql-test/suite/roles/recursive.result index 897577ba2ff..0d45a0e03d0 100644 --- a/mysql-test/suite/roles/recursive.result +++ b/mysql-test/suite/roles/recursive.result @@ -26,8 +26,8 @@ ERROR HY000: Cannot grant role 'role10' to: 'role2' connect foo, localhost, foo; show grants; Grants for foo@localhost -GRANT USAGE ON *.* TO 'foo'@'localhost' -GRANT role10 TO 'foo'@'localhost' +GRANT USAGE ON *.* TO `foo`@`localhost` +GRANT `role10` TO `foo`@`localhost` select * from information_schema.applicable_roles; GRANTEE ROLE_NAME IS_GRANTABLE IS_DEFAULT foo@localhost role10 NO NO @@ -56,27 +56,27 @@ count(*) 22 show grants; Grants for foo@localhost -GRANT SELECT ON *.* TO 'role1' -GRANT USAGE ON *.* TO 'foo'@'localhost' -GRANT USAGE ON *.* TO 'role10' -GRANT USAGE ON *.* TO 'role2' -GRANT USAGE ON *.* TO 'role3' -GRANT USAGE ON *.* TO 'role4' -GRANT USAGE ON *.* TO 'role5' -GRANT USAGE ON *.* TO 'role6' -GRANT USAGE ON *.* TO 'role7' -GRANT USAGE ON *.* TO 'role9' -GRANT role1 TO 'role2' -GRANT role10 TO 'foo'@'localhost' -GRANT role2 TO 'role4' -GRANT role2 TO 'role5' -GRANT role3 TO 'role5' -GRANT role4 TO 'role6' -GRANT role5 TO 'role6' -GRANT role5 TO 'role7' -GRANT role6 TO 'role9' -GRANT role7 TO 'role9' -GRANT role9 TO 'role10' +GRANT SELECT ON *.* TO `role1` +GRANT USAGE ON *.* TO `foo`@`localhost` +GRANT USAGE ON *.* TO `role10` +GRANT USAGE ON *.* TO `role2` +GRANT USAGE ON *.* TO `role3` +GRANT USAGE ON *.* TO `role4` +GRANT USAGE ON *.* TO `role5` +GRANT USAGE ON *.* TO `role6` +GRANT USAGE ON *.* TO `role7` +GRANT USAGE ON *.* TO `role9` +GRANT `role10` TO `foo`@`localhost` +GRANT `role1` TO `role2` +GRANT `role2` TO `role4` +GRANT `role2` TO `role5` +GRANT `role3` TO `role5` +GRANT `role4` TO `role6` +GRANT `role5` TO `role6` +GRANT `role5` TO `role7` +GRANT `role6` TO `role9` +GRANT `role7` TO `role9` +GRANT `role9` TO `role10` select * from information_schema.enabled_roles; ROLE_NAME role1 @@ -114,28 +114,28 @@ count(*) 22 show grants; Grants for foo@localhost -GRANT SELECT ON `mysql`.* TO 'role1' -GRANT USAGE ON *.* TO 'foo'@'localhost' -GRANT USAGE ON *.* TO 'role1' -GRANT USAGE ON *.* TO 'role10' -GRANT USAGE ON *.* TO 'role2' -GRANT USAGE ON *.* TO 'role3' -GRANT USAGE ON *.* TO 'role4' -GRANT USAGE ON *.* TO 'role5' -GRANT USAGE ON *.* TO 'role6' -GRANT USAGE ON *.* TO 'role7' -GRANT USAGE ON *.* TO 'role9' -GRANT role1 TO 'role2' -GRANT role10 TO 'foo'@'localhost' -GRANT role2 TO 'role4' -GRANT role2 TO 'role5' -GRANT role3 TO 'role5' -GRANT role4 TO 'role6' -GRANT role5 TO 'role6' -GRANT role5 TO 'role7' -GRANT role6 TO 'role9' -GRANT role7 TO 'role9' -GRANT role9 TO 'role10' +GRANT SELECT ON `mysql`.* TO `role1` +GRANT USAGE ON *.* TO `foo`@`localhost` +GRANT USAGE ON *.* TO `role10` +GRANT USAGE ON *.* TO `role1` +GRANT USAGE ON *.* TO `role2` +GRANT USAGE ON *.* TO `role3` +GRANT USAGE ON *.* TO `role4` +GRANT USAGE ON *.* TO `role5` +GRANT USAGE ON *.* TO `role6` +GRANT USAGE ON *.* TO `role7` +GRANT USAGE ON *.* TO `role9` +GRANT `role10` TO `foo`@`localhost` +GRANT `role1` TO `role2` +GRANT `role2` TO `role4` +GRANT `role2` TO `role5` +GRANT `role3` TO `role5` +GRANT `role4` TO `role6` +GRANT `role5` TO `role6` +GRANT `role5` TO `role7` +GRANT `role6` TO `role9` +GRANT `role7` TO `role9` +GRANT `role9` TO `role10` connection default; revoke select on mysql.* from role1; show status like 'debug%'; @@ -157,28 +157,28 @@ count(*) 22 show grants; Grants for foo@localhost -GRANT SELECT ON `mysql`.`roles_mapping` TO 'role1' -GRANT USAGE ON *.* TO 'foo'@'localhost' -GRANT USAGE ON *.* TO 'role1' -GRANT USAGE ON *.* TO 'role10' -GRANT USAGE ON *.* TO 'role2' -GRANT USAGE ON *.* TO 'role3' -GRANT USAGE ON *.* TO 'role4' -GRANT USAGE ON *.* TO 'role5' -GRANT USAGE ON *.* TO 'role6' -GRANT USAGE ON *.* TO 'role7' -GRANT USAGE ON *.* TO 'role9' -GRANT role1 TO 'role2' -GRANT role10 TO 'foo'@'localhost' -GRANT role2 TO 'role4' -GRANT role2 TO 'role5' -GRANT role3 TO 'role5' -GRANT role4 TO 'role6' -GRANT role5 TO 'role6' -GRANT role5 TO 'role7' -GRANT role6 TO 'role9' -GRANT role7 TO 'role9' -GRANT role9 TO 'role10' +GRANT SELECT ON `mysql`.`roles_mapping` TO `role1` +GRANT USAGE ON *.* TO `foo`@`localhost` +GRANT USAGE ON *.* TO `role10` +GRANT USAGE ON *.* TO `role1` +GRANT USAGE ON *.* TO `role2` +GRANT USAGE ON *.* TO `role3` +GRANT USAGE ON *.* TO `role4` +GRANT USAGE ON *.* TO `role5` +GRANT USAGE ON *.* TO `role6` +GRANT USAGE ON *.* TO `role7` +GRANT USAGE ON *.* TO `role9` +GRANT `role10` TO `foo`@`localhost` +GRANT `role1` TO `role2` +GRANT `role2` TO `role4` +GRANT `role2` TO `role5` +GRANT `role3` TO `role5` +GRANT `role4` TO `role6` +GRANT `role5` TO `role6` +GRANT `role5` TO `role7` +GRANT `role6` TO `role9` +GRANT `role7` TO `role9` +GRANT `role9` TO `role10` connection default; revoke select on mysql.roles_mapping from role1; show status like 'debug%'; @@ -202,28 +202,28 @@ count(concat(User)) 22 show grants; Grants for foo@localhost -GRANT SELECT (User) ON `mysql`.`roles_mapping` TO 'role1' -GRANT USAGE ON *.* TO 'foo'@'localhost' -GRANT USAGE ON *.* TO 'role1' -GRANT USAGE ON *.* TO 'role10' -GRANT USAGE ON *.* TO 'role2' -GRANT USAGE ON *.* TO 'role3' -GRANT USAGE ON *.* TO 'role4' -GRANT USAGE ON *.* TO 'role5' -GRANT USAGE ON *.* TO 'role6' -GRANT USAGE ON *.* TO 'role7' -GRANT USAGE ON *.* TO 'role9' -GRANT role1 TO 'role2' -GRANT role10 TO 'foo'@'localhost' -GRANT role2 TO 'role4' -GRANT role2 TO 'role5' -GRANT role3 TO 'role5' -GRANT role4 TO 'role6' -GRANT role5 TO 'role6' -GRANT role5 TO 'role7' -GRANT role6 TO 'role9' -GRANT role7 TO 'role9' -GRANT role9 TO 'role10' +GRANT SELECT (User) ON `mysql`.`roles_mapping` TO `role1` +GRANT USAGE ON *.* TO `foo`@`localhost` +GRANT USAGE ON *.* TO `role10` +GRANT USAGE ON *.* TO `role1` +GRANT USAGE ON *.* TO `role2` +GRANT USAGE ON *.* TO `role3` +GRANT USAGE ON *.* TO `role4` +GRANT USAGE ON *.* TO `role5` +GRANT USAGE ON *.* TO `role6` +GRANT USAGE ON *.* TO `role7` +GRANT USAGE ON *.* TO `role9` +GRANT `role10` TO `foo`@`localhost` +GRANT `role1` TO `role2` +GRANT `role2` TO `role4` +GRANT `role2` TO `role5` +GRANT `role3` TO `role5` +GRANT `role4` TO `role6` +GRANT `role5` TO `role6` +GRANT `role5` TO `role7` +GRANT `role6` TO `role9` +GRANT `role7` TO `role9` +GRANT `role9` TO `role10` connection default; grant select(Host) on mysql.roles_mapping to role3; show status like 'debug%'; @@ -236,29 +236,29 @@ count(concat(User,Host)) 22 show grants; Grants for foo@localhost -GRANT SELECT (Host) ON `mysql`.`roles_mapping` TO 'role3' -GRANT SELECT (User) ON `mysql`.`roles_mapping` TO 'role1' -GRANT USAGE ON *.* TO 'foo'@'localhost' -GRANT USAGE ON *.* TO 'role1' -GRANT USAGE ON *.* TO 'role10' -GRANT USAGE ON *.* TO 'role2' -GRANT USAGE ON *.* TO 'role3' -GRANT USAGE ON *.* TO 'role4' -GRANT USAGE ON *.* TO 'role5' -GRANT USAGE ON *.* TO 'role6' -GRANT USAGE ON *.* TO 'role7' -GRANT USAGE ON *.* TO 'role9' -GRANT role1 TO 'role2' -GRANT role10 TO 'foo'@'localhost' -GRANT role2 TO 'role4' -GRANT role2 TO 'role5' -GRANT role3 TO 'role5' -GRANT role4 TO 'role6' -GRANT role5 TO 'role6' -GRANT role5 TO 'role7' -GRANT role6 TO 'role9' -GRANT role7 TO 'role9' -GRANT role9 TO 'role10' +GRANT SELECT (Host) ON `mysql`.`roles_mapping` TO `role3` +GRANT SELECT (User) ON `mysql`.`roles_mapping` TO `role1` +GRANT USAGE ON *.* TO `foo`@`localhost` +GRANT USAGE ON *.* TO `role10` +GRANT USAGE ON *.* TO `role1` +GRANT USAGE ON *.* TO `role2` +GRANT USAGE ON *.* TO `role3` +GRANT USAGE ON *.* TO `role4` +GRANT USAGE ON *.* TO `role5` +GRANT USAGE ON *.* TO `role6` +GRANT USAGE ON *.* TO `role7` +GRANT USAGE ON *.* TO `role9` +GRANT `role10` TO `foo`@`localhost` +GRANT `role1` TO `role2` +GRANT `role2` TO `role4` +GRANT `role2` TO `role5` +GRANT `role3` TO `role5` +GRANT `role4` TO `role6` +GRANT `role5` TO `role6` +GRANT `role5` TO `role7` +GRANT `role6` TO `role9` +GRANT `role7` TO `role9` +GRANT `role9` TO `role10` connection default; revoke select(User) on mysql.roles_mapping from role1; show status like 'debug%'; diff --git a/mysql-test/suite/roles/recursive_dbug.result b/mysql-test/suite/roles/recursive_dbug.result index cec461be4a2..417602c5c60 100644 --- a/mysql-test/suite/roles/recursive_dbug.result +++ b/mysql-test/suite/roles/recursive_dbug.result @@ -30,8 +30,8 @@ ERROR HY000: Cannot grant role 'role10' to: 'role2' connect foo, localhost, foo; show grants; Grants for foo@localhost -GRANT USAGE ON *.* TO 'foo'@'localhost' -GRANT role10 TO 'foo'@'localhost' +GRANT USAGE ON *.* TO `foo`@`localhost` +GRANT `role10` TO `foo`@`localhost` select * from information_schema.applicable_roles; GRANTEE ROLE_NAME IS_GRANTABLE IS_DEFAULT foo@localhost role10 NO NO @@ -70,27 +70,27 @@ count(*) 22 show grants; Grants for foo@localhost -GRANT SELECT ON *.* TO 'role1' -GRANT USAGE ON *.* TO 'foo'@'localhost' -GRANT USAGE ON *.* TO 'role10' -GRANT USAGE ON *.* TO 'role2' -GRANT USAGE ON *.* TO 'role3' -GRANT USAGE ON *.* TO 'role4' -GRANT USAGE ON *.* TO 'role5' -GRANT USAGE ON *.* TO 'role6' -GRANT USAGE ON *.* TO 'role7' -GRANT USAGE ON *.* TO 'role9' -GRANT role1 TO 'role2' -GRANT role10 TO 'foo'@'localhost' -GRANT role2 TO 'role4' -GRANT role2 TO 'role5' -GRANT role3 TO 'role5' -GRANT role4 TO 'role6' -GRANT role5 TO 'role6' -GRANT role5 TO 'role7' -GRANT role6 TO 'role9' -GRANT role7 TO 'role9' -GRANT role9 TO 'role10' +GRANT SELECT ON *.* TO `role1` +GRANT USAGE ON *.* TO `foo`@`localhost` +GRANT USAGE ON *.* TO `role10` +GRANT USAGE ON *.* TO `role2` +GRANT USAGE ON *.* TO `role3` +GRANT USAGE ON *.* TO `role4` +GRANT USAGE ON *.* TO `role5` +GRANT USAGE ON *.* TO `role6` +GRANT USAGE ON *.* TO `role7` +GRANT USAGE ON *.* TO `role9` +GRANT `role10` TO `foo`@`localhost` +GRANT `role1` TO `role2` +GRANT `role2` TO `role4` +GRANT `role2` TO `role5` +GRANT `role3` TO `role5` +GRANT `role4` TO `role6` +GRANT `role5` TO `role6` +GRANT `role5` TO `role7` +GRANT `role6` TO `role9` +GRANT `role7` TO `role9` +GRANT `role9` TO `role10` select * from information_schema.enabled_roles; ROLE_NAME role1 @@ -138,28 +138,28 @@ count(*) 22 show grants; Grants for foo@localhost -GRANT SELECT ON `mysql`.* TO 'role1' -GRANT USAGE ON *.* TO 'foo'@'localhost' -GRANT USAGE ON *.* TO 'role1' -GRANT USAGE ON *.* TO 'role10' -GRANT USAGE ON *.* TO 'role2' -GRANT USAGE ON *.* TO 'role3' -GRANT USAGE ON *.* TO 'role4' -GRANT USAGE ON *.* TO 'role5' -GRANT USAGE ON *.* TO 'role6' -GRANT USAGE ON *.* TO 'role7' -GRANT USAGE ON *.* TO 'role9' -GRANT role1 TO 'role2' -GRANT role10 TO 'foo'@'localhost' -GRANT role2 TO 'role4' -GRANT role2 TO 'role5' -GRANT role3 TO 'role5' -GRANT role4 TO 'role6' -GRANT role5 TO 'role6' -GRANT role5 TO 'role7' -GRANT role6 TO 'role9' -GRANT role7 TO 'role9' -GRANT role9 TO 'role10' +GRANT SELECT ON `mysql`.* TO `role1` +GRANT USAGE ON *.* TO `foo`@`localhost` +GRANT USAGE ON *.* TO `role10` +GRANT USAGE ON *.* TO `role1` +GRANT USAGE ON *.* TO `role2` +GRANT USAGE ON *.* TO `role3` +GRANT USAGE ON *.* TO `role4` +GRANT USAGE ON *.* TO `role5` +GRANT USAGE ON *.* TO `role6` +GRANT USAGE ON *.* TO `role7` +GRANT USAGE ON *.* TO `role9` +GRANT `role10` TO `foo`@`localhost` +GRANT `role1` TO `role2` +GRANT `role2` TO `role4` +GRANT `role2` TO `role5` +GRANT `role3` TO `role5` +GRANT `role4` TO `role6` +GRANT `role5` TO `role6` +GRANT `role5` TO `role7` +GRANT `role6` TO `role9` +GRANT `role7` TO `role9` +GRANT `role9` TO `role10` connection default; revoke select on mysql.* from role1; show status like 'debug%'; @@ -191,28 +191,28 @@ count(*) 22 show grants; Grants for foo@localhost -GRANT SELECT ON `mysql`.`roles_mapping` TO 'role1' -GRANT USAGE ON *.* TO 'foo'@'localhost' -GRANT USAGE ON *.* TO 'role1' -GRANT USAGE ON *.* TO 'role10' -GRANT USAGE ON *.* TO 'role2' -GRANT USAGE ON *.* TO 'role3' -GRANT USAGE ON *.* TO 'role4' -GRANT USAGE ON *.* TO 'role5' -GRANT USAGE ON *.* TO 'role6' -GRANT USAGE ON *.* TO 'role7' -GRANT USAGE ON *.* TO 'role9' -GRANT role1 TO 'role2' -GRANT role10 TO 'foo'@'localhost' -GRANT role2 TO 'role4' -GRANT role2 TO 'role5' -GRANT role3 TO 'role5' -GRANT role4 TO 'role6' -GRANT role5 TO 'role6' -GRANT role5 TO 'role7' -GRANT role6 TO 'role9' -GRANT role7 TO 'role9' -GRANT role9 TO 'role10' +GRANT SELECT ON `mysql`.`roles_mapping` TO `role1` +GRANT USAGE ON *.* TO `foo`@`localhost` +GRANT USAGE ON *.* TO `role10` +GRANT USAGE ON *.* TO `role1` +GRANT USAGE ON *.* TO `role2` +GRANT USAGE ON *.* TO `role3` +GRANT USAGE ON *.* TO `role4` +GRANT USAGE ON *.* TO `role5` +GRANT USAGE ON *.* TO `role6` +GRANT USAGE ON *.* TO `role7` +GRANT USAGE ON *.* TO `role9` +GRANT `role10` TO `foo`@`localhost` +GRANT `role1` TO `role2` +GRANT `role2` TO `role4` +GRANT `role2` TO `role5` +GRANT `role3` TO `role5` +GRANT `role4` TO `role6` +GRANT `role5` TO `role6` +GRANT `role5` TO `role7` +GRANT `role6` TO `role9` +GRANT `role7` TO `role9` +GRANT `role9` TO `role10` connection default; revoke select on mysql.roles_mapping from role1; show status like 'debug%'; @@ -246,28 +246,28 @@ count(concat(User)) 22 show grants; Grants for foo@localhost -GRANT SELECT (User) ON `mysql`.`roles_mapping` TO 'role1' -GRANT USAGE ON *.* TO 'foo'@'localhost' -GRANT USAGE ON *.* TO 'role1' -GRANT USAGE ON *.* TO 'role10' -GRANT USAGE ON *.* TO 'role2' -GRANT USAGE ON *.* TO 'role3' -GRANT USAGE ON *.* TO 'role4' -GRANT USAGE ON *.* TO 'role5' -GRANT USAGE ON *.* TO 'role6' -GRANT USAGE ON *.* TO 'role7' -GRANT USAGE ON *.* TO 'role9' -GRANT role1 TO 'role2' -GRANT role10 TO 'foo'@'localhost' -GRANT role2 TO 'role4' -GRANT role2 TO 'role5' -GRANT role3 TO 'role5' -GRANT role4 TO 'role6' -GRANT role5 TO 'role6' -GRANT role5 TO 'role7' -GRANT role6 TO 'role9' -GRANT role7 TO 'role9' -GRANT role9 TO 'role10' +GRANT SELECT (User) ON `mysql`.`roles_mapping` TO `role1` +GRANT USAGE ON *.* TO `foo`@`localhost` +GRANT USAGE ON *.* TO `role10` +GRANT USAGE ON *.* TO `role1` +GRANT USAGE ON *.* TO `role2` +GRANT USAGE ON *.* TO `role3` +GRANT USAGE ON *.* TO `role4` +GRANT USAGE ON *.* TO `role5` +GRANT USAGE ON *.* TO `role6` +GRANT USAGE ON *.* TO `role7` +GRANT USAGE ON *.* TO `role9` +GRANT `role10` TO `foo`@`localhost` +GRANT `role1` TO `role2` +GRANT `role2` TO `role4` +GRANT `role2` TO `role5` +GRANT `role3` TO `role5` +GRANT `role4` TO `role6` +GRANT `role5` TO `role6` +GRANT `role5` TO `role7` +GRANT `role6` TO `role9` +GRANT `role7` TO `role9` +GRANT `role9` TO `role10` connection default; grant select(Host) on mysql.roles_mapping to role3; show status like 'debug%'; @@ -285,29 +285,29 @@ count(concat(User,Host)) 22 show grants; Grants for foo@localhost -GRANT SELECT (Host) ON `mysql`.`roles_mapping` TO 'role3' -GRANT SELECT (User) ON `mysql`.`roles_mapping` TO 'role1' -GRANT USAGE ON *.* TO 'foo'@'localhost' -GRANT USAGE ON *.* TO 'role1' -GRANT USAGE ON *.* TO 'role10' -GRANT USAGE ON *.* TO 'role2' -GRANT USAGE ON *.* TO 'role3' -GRANT USAGE ON *.* TO 'role4' -GRANT USAGE ON *.* TO 'role5' -GRANT USAGE ON *.* TO 'role6' -GRANT USAGE ON *.* TO 'role7' -GRANT USAGE ON *.* TO 'role9' -GRANT role1 TO 'role2' -GRANT role10 TO 'foo'@'localhost' -GRANT role2 TO 'role4' -GRANT role2 TO 'role5' -GRANT role3 TO 'role5' -GRANT role4 TO 'role6' -GRANT role5 TO 'role6' -GRANT role5 TO 'role7' -GRANT role6 TO 'role9' -GRANT role7 TO 'role9' -GRANT role9 TO 'role10' +GRANT SELECT (Host) ON `mysql`.`roles_mapping` TO `role3` +GRANT SELECT (User) ON `mysql`.`roles_mapping` TO `role1` +GRANT USAGE ON *.* TO `foo`@`localhost` +GRANT USAGE ON *.* TO `role10` +GRANT USAGE ON *.* TO `role1` +GRANT USAGE ON *.* TO `role2` +GRANT USAGE ON *.* TO `role3` +GRANT USAGE ON *.* TO `role4` +GRANT USAGE ON *.* TO `role5` +GRANT USAGE ON *.* TO `role6` +GRANT USAGE ON *.* TO `role7` +GRANT USAGE ON *.* TO `role9` +GRANT `role10` TO `foo`@`localhost` +GRANT `role1` TO `role2` +GRANT `role2` TO `role4` +GRANT `role2` TO `role5` +GRANT `role3` TO `role5` +GRANT `role4` TO `role6` +GRANT `role5` TO `role6` +GRANT `role5` TO `role7` +GRANT `role6` TO `role9` +GRANT `role7` TO `role9` +GRANT `role9` TO `role10` connection default; revoke select(User) on mysql.roles_mapping from role1; show status like 'debug%'; diff --git a/mysql-test/suite/roles/revoke_all.result b/mysql-test/suite/roles/revoke_all.result index 7e72b5bc766..864cc57a830 100644 --- a/mysql-test/suite/roles/revoke_all.result +++ b/mysql-test/suite/roles/revoke_all.result @@ -10,18 +10,18 @@ grant r1 to u1; grant r4 to r1; show grants for u1; Grants for u1@% -GRANT USAGE ON *.* TO 'u1'@'%' -GRANT r1 TO 'u1'@'%' +GRANT USAGE ON *.* TO `u1`@`%` +GRANT `r1` TO `u1`@`%` show grants for r1; Grants for r1 -GRANT USAGE ON *.* TO 'r1' -GRANT USAGE ON *.* TO 'r2' -GRANT USAGE ON *.* TO 'r3' -GRANT USAGE ON *.* TO 'r4' -GRANT r2 TO 'r1' -GRANT r3 TO 'r2' -GRANT r4 TO 'r1' -GRANT r4 TO 'r3' +GRANT USAGE ON *.* TO `r1` +GRANT USAGE ON *.* TO `r2` +GRANT USAGE ON *.* TO `r3` +GRANT USAGE ON *.* TO `r4` +GRANT `r2` TO `r1` +GRANT `r3` TO `r2` +GRANT `r4` TO `r1` +GRANT `r4` TO `r3` grant SELECT on *.* to u1; grant INSERT on mysql.* to r1; grant DELETE on mysql.roles_mapping to r2; @@ -38,146 +38,146 @@ grant execute on procedure mysql.test_proc to r3; grant execute on mysql.* to r4; show grants for r1; Grants for r1 -GRANT DELETE ON `mysql`.`roles_mapping` TO 'r2' -GRANT EXECUTE ON FUNCTION `mysql`.`test_func` TO 'r2' -GRANT EXECUTE ON PROCEDURE `mysql`.`test_proc` TO 'r3' -GRANT EXECUTE ON `mysql`.* TO 'r4' -GRANT INSERT ON `mysql`.* TO 'r1' -GRANT UPDATE ON `mysql`.`user` TO 'r3' -GRANT USAGE ON *.* TO 'r1' -GRANT USAGE ON *.* TO 'r2' -GRANT USAGE ON *.* TO 'r3' -GRANT USAGE ON *.* TO 'r4' -GRANT r2 TO 'r1' -GRANT r3 TO 'r2' -GRANT r4 TO 'r1' -GRANT r4 TO 'r3' +GRANT DELETE ON `mysql`.`roles_mapping` TO `r2` +GRANT EXECUTE ON FUNCTION `mysql`.`test_func` TO `r2` +GRANT EXECUTE ON PROCEDURE `mysql`.`test_proc` TO `r3` +GRANT EXECUTE ON `mysql`.* TO `r4` +GRANT INSERT ON `mysql`.* TO `r1` +GRANT UPDATE ON `mysql`.`user` TO `r3` +GRANT USAGE ON *.* TO `r1` +GRANT USAGE ON *.* TO `r2` +GRANT USAGE ON *.* TO `r3` +GRANT USAGE ON *.* TO `r4` +GRANT `r2` TO `r1` +GRANT `r3` TO `r2` +GRANT `r4` TO `r1` +GRANT `r4` TO `r3` show grants for r2; Grants for r2 -GRANT DELETE ON `mysql`.`roles_mapping` TO 'r2' -GRANT EXECUTE ON FUNCTION `mysql`.`test_func` TO 'r2' -GRANT EXECUTE ON PROCEDURE `mysql`.`test_proc` TO 'r3' -GRANT EXECUTE ON `mysql`.* TO 'r4' -GRANT UPDATE ON `mysql`.`user` TO 'r3' -GRANT USAGE ON *.* TO 'r2' -GRANT USAGE ON *.* TO 'r3' -GRANT USAGE ON *.* TO 'r4' -GRANT r3 TO 'r2' -GRANT r4 TO 'r3' +GRANT DELETE ON `mysql`.`roles_mapping` TO `r2` +GRANT EXECUTE ON FUNCTION `mysql`.`test_func` TO `r2` +GRANT EXECUTE ON PROCEDURE `mysql`.`test_proc` TO `r3` +GRANT EXECUTE ON `mysql`.* TO `r4` +GRANT UPDATE ON `mysql`.`user` TO `r3` +GRANT USAGE ON *.* TO `r2` +GRANT USAGE ON *.* TO `r3` +GRANT USAGE ON *.* TO `r4` +GRANT `r3` TO `r2` +GRANT `r4` TO `r3` show grants for r3; Grants for r3 -GRANT EXECUTE ON PROCEDURE `mysql`.`test_proc` TO 'r3' -GRANT EXECUTE ON `mysql`.* TO 'r4' -GRANT UPDATE ON `mysql`.`user` TO 'r3' -GRANT USAGE ON *.* TO 'r3' -GRANT USAGE ON *.* TO 'r4' -GRANT r4 TO 'r3' +GRANT EXECUTE ON PROCEDURE `mysql`.`test_proc` TO `r3` +GRANT EXECUTE ON `mysql`.* TO `r4` +GRANT UPDATE ON `mysql`.`user` TO `r3` +GRANT USAGE ON *.* TO `r3` +GRANT USAGE ON *.* TO `r4` +GRANT `r4` TO `r3` show grants for r4; Grants for r4 -GRANT EXECUTE ON `mysql`.* TO 'r4' -GRANT USAGE ON *.* TO 'r4' +GRANT EXECUTE ON `mysql`.* TO `r4` +GRANT USAGE ON *.* TO `r4` revoke all privileges, grant option from r4; show grants for r1; Grants for r1 -GRANT DELETE ON `mysql`.`roles_mapping` TO 'r2' -GRANT EXECUTE ON FUNCTION `mysql`.`test_func` TO 'r2' -GRANT EXECUTE ON PROCEDURE `mysql`.`test_proc` TO 'r3' -GRANT INSERT ON `mysql`.* TO 'r1' -GRANT UPDATE ON `mysql`.`user` TO 'r3' -GRANT USAGE ON *.* TO 'r1' -GRANT USAGE ON *.* TO 'r2' -GRANT USAGE ON *.* TO 'r3' -GRANT USAGE ON *.* TO 'r4' -GRANT r2 TO 'r1' -GRANT r3 TO 'r2' -GRANT r4 TO 'r1' -GRANT r4 TO 'r3' +GRANT DELETE ON `mysql`.`roles_mapping` TO `r2` +GRANT EXECUTE ON FUNCTION `mysql`.`test_func` TO `r2` +GRANT EXECUTE ON PROCEDURE `mysql`.`test_proc` TO `r3` +GRANT INSERT ON `mysql`.* TO `r1` +GRANT UPDATE ON `mysql`.`user` TO `r3` +GRANT USAGE ON *.* TO `r1` +GRANT USAGE ON *.* TO `r2` +GRANT USAGE ON *.* TO `r3` +GRANT USAGE ON *.* TO `r4` +GRANT `r2` TO `r1` +GRANT `r3` TO `r2` +GRANT `r4` TO `r1` +GRANT `r4` TO `r3` show grants for r2; Grants for r2 -GRANT DELETE ON `mysql`.`roles_mapping` TO 'r2' -GRANT EXECUTE ON FUNCTION `mysql`.`test_func` TO 'r2' -GRANT EXECUTE ON PROCEDURE `mysql`.`test_proc` TO 'r3' -GRANT UPDATE ON `mysql`.`user` TO 'r3' -GRANT USAGE ON *.* TO 'r2' -GRANT USAGE ON *.* TO 'r3' -GRANT USAGE ON *.* TO 'r4' -GRANT r3 TO 'r2' -GRANT r4 TO 'r3' +GRANT DELETE ON `mysql`.`roles_mapping` TO `r2` +GRANT EXECUTE ON FUNCTION `mysql`.`test_func` TO `r2` +GRANT EXECUTE ON PROCEDURE `mysql`.`test_proc` TO `r3` +GRANT UPDATE ON `mysql`.`user` TO `r3` +GRANT USAGE ON *.* TO `r2` +GRANT USAGE ON *.* TO `r3` +GRANT USAGE ON *.* TO `r4` +GRANT `r3` TO `r2` +GRANT `r4` TO `r3` show grants for r3; Grants for r3 -GRANT EXECUTE ON PROCEDURE `mysql`.`test_proc` TO 'r3' -GRANT UPDATE ON `mysql`.`user` TO 'r3' -GRANT USAGE ON *.* TO 'r3' -GRANT USAGE ON *.* TO 'r4' -GRANT r4 TO 'r3' +GRANT EXECUTE ON PROCEDURE `mysql`.`test_proc` TO `r3` +GRANT UPDATE ON `mysql`.`user` TO `r3` +GRANT USAGE ON *.* TO `r3` +GRANT USAGE ON *.* TO `r4` +GRANT `r4` TO `r3` show grants for r4; Grants for r4 -GRANT USAGE ON *.* TO 'r4' +GRANT USAGE ON *.* TO `r4` revoke all privileges, grant option from r3; show grants for r1; Grants for r1 -GRANT DELETE ON `mysql`.`roles_mapping` TO 'r2' -GRANT EXECUTE ON FUNCTION `mysql`.`test_func` TO 'r2' -GRANT INSERT ON `mysql`.* TO 'r1' -GRANT USAGE ON *.* TO 'r1' -GRANT USAGE ON *.* TO 'r2' -GRANT USAGE ON *.* TO 'r3' -GRANT USAGE ON *.* TO 'r4' -GRANT r2 TO 'r1' -GRANT r3 TO 'r2' -GRANT r4 TO 'r1' +GRANT DELETE ON `mysql`.`roles_mapping` TO `r2` +GRANT EXECUTE ON FUNCTION `mysql`.`test_func` TO `r2` +GRANT INSERT ON `mysql`.* TO `r1` +GRANT USAGE ON *.* TO `r1` +GRANT USAGE ON *.* TO `r2` +GRANT USAGE ON *.* TO `r3` +GRANT USAGE ON *.* TO `r4` +GRANT `r2` TO `r1` +GRANT `r3` TO `r2` +GRANT `r4` TO `r1` show grants for r2; Grants for r2 -GRANT DELETE ON `mysql`.`roles_mapping` TO 'r2' -GRANT EXECUTE ON FUNCTION `mysql`.`test_func` TO 'r2' -GRANT USAGE ON *.* TO 'r2' -GRANT USAGE ON *.* TO 'r3' -GRANT r3 TO 'r2' +GRANT DELETE ON `mysql`.`roles_mapping` TO `r2` +GRANT EXECUTE ON FUNCTION `mysql`.`test_func` TO `r2` +GRANT USAGE ON *.* TO `r2` +GRANT USAGE ON *.* TO `r3` +GRANT `r3` TO `r2` show grants for r3; Grants for r3 -GRANT USAGE ON *.* TO 'r3' +GRANT USAGE ON *.* TO `r3` show grants for r4; Grants for r4 -GRANT USAGE ON *.* TO 'r4' +GRANT USAGE ON *.* TO `r4` revoke all privileges, grant option from r2; show grants for r1; Grants for r1 -GRANT INSERT ON `mysql`.* TO 'r1' -GRANT USAGE ON *.* TO 'r1' -GRANT USAGE ON *.* TO 'r2' -GRANT USAGE ON *.* TO 'r4' -GRANT r2 TO 'r1' -GRANT r4 TO 'r1' +GRANT INSERT ON `mysql`.* TO `r1` +GRANT USAGE ON *.* TO `r1` +GRANT USAGE ON *.* TO `r2` +GRANT USAGE ON *.* TO `r4` +GRANT `r2` TO `r1` +GRANT `r4` TO `r1` show grants for r2; Grants for r2 -GRANT USAGE ON *.* TO 'r2' +GRANT USAGE ON *.* TO `r2` show grants for r3; Grants for r3 -GRANT USAGE ON *.* TO 'r3' +GRANT USAGE ON *.* TO `r3` show grants for r4; Grants for r4 -GRANT USAGE ON *.* TO 'r4' +GRANT USAGE ON *.* TO `r4` revoke all privileges, grant option from r1; show grants for r1; Grants for r1 -GRANT USAGE ON *.* TO 'r1' +GRANT USAGE ON *.* TO `r1` show grants for r2; Grants for r2 -GRANT USAGE ON *.* TO 'r2' +GRANT USAGE ON *.* TO `r2` show grants for r3; Grants for r3 -GRANT USAGE ON *.* TO 'r3' +GRANT USAGE ON *.* TO `r3` show grants for r4; Grants for r4 -GRANT USAGE ON *.* TO 'r4' +GRANT USAGE ON *.* TO `r4` revoke all privileges, grant option from u1; show grants for u1; Grants for u1@% -GRANT USAGE ON *.* TO 'u1'@'%' +GRANT USAGE ON *.* TO `u1`@`%` drop function mysql.test_func; drop procedure mysql.test_proc; show grants for r1; Grants for r1 -GRANT USAGE ON *.* TO 'r1' +GRANT USAGE ON *.* TO `r1` drop role r1, r2, r3, r4; drop user u1; diff --git a/mysql-test/suite/roles/role_case_sensitive-10744.result b/mysql-test/suite/roles/role_case_sensitive-10744.result index b898310e83c..05ac5c95e31 100644 --- a/mysql-test/suite/roles/role_case_sensitive-10744.result +++ b/mysql-test/suite/roles/role_case_sensitive-10744.result @@ -21,8 +21,8 @@ grant select on secret_db.* to test_role; grant test_role to test_user; show grants for test_user; Grants for test_user@% -GRANT test_role TO 'test_user'@'%' -GRANT USAGE ON *.* TO 'test_user'@'%' +GRANT `test_role` TO `test_user`@`%` +GRANT USAGE ON *.* TO `test_user`@`%` # # Now test the UPPER case role. # @@ -30,9 +30,9 @@ grant test_ROLE to test_user; grant insert on secret_db.t1 to test_ROLE; show grants for test_user; Grants for test_user@% -GRANT test_role TO 'test_user'@'%' -GRANT test_ROLE TO 'test_user'@'%' -GRANT USAGE ON *.* TO 'test_user'@'%' +GRANT `test_role` TO `test_user`@`%` +GRANT `test_ROLE` TO `test_user`@`%` +GRANT USAGE ON *.* TO `test_user`@`%` connect test_user,localhost,test_user; # # Test users privileges when interacting with those roles; diff --git a/mysql-test/suite/roles/rpl_definer.result b/mysql-test/suite/roles/rpl_definer.result index 2d10dc6cd7a..185b17fd51b 100644 --- a/mysql-test/suite/roles/rpl_definer.result +++ b/mysql-test/suite/roles/rpl_definer.result @@ -7,14 +7,14 @@ grant role2 to role1; set role role1; show grants; Grants for root@localhost -GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION -GRANT EXECUTE ON `test`.* TO 'role2' +GRANT ALL PRIVILEGES ON *.* TO `root`@`localhost` WITH GRANT OPTION +GRANT EXECUTE ON `test`.* TO `role2` GRANT PROXY ON ''@'%' TO 'root'@'localhost' WITH GRANT OPTION -GRANT USAGE ON *.* TO 'role1' -GRANT USAGE ON *.* TO 'role2' -GRANT role1 TO 'root'@'localhost' WITH ADMIN OPTION -GRANT role2 TO 'role1' -GRANT role2 TO 'root'@'localhost' WITH ADMIN OPTION +GRANT USAGE ON *.* TO `role1` +GRANT USAGE ON *.* TO `role2` +GRANT `role1` TO `root`@`localhost` WITH ADMIN OPTION +GRANT `role2` TO `role1` +GRANT `role2` TO `root`@`localhost` WITH ADMIN OPTION create definer=current_user procedure pcu() select current_user; create definer=root@localhost procedure pu() select "root@localhost"; create definer=current_role procedure pcr() select current_role; @@ -39,14 +39,14 @@ connection slave; set role role1; show grants; Grants for root@localhost -GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION -GRANT EXECUTE ON `test`.* TO 'role2' +GRANT ALL PRIVILEGES ON *.* TO `root`@`localhost` WITH GRANT OPTION +GRANT EXECUTE ON `test`.* TO `role2` GRANT PROXY ON ''@'%' TO 'root'@'localhost' WITH GRANT OPTION -GRANT USAGE ON *.* TO 'role1' -GRANT USAGE ON *.* TO 'role2' -GRANT role1 TO 'root'@'localhost' WITH ADMIN OPTION -GRANT role2 TO 'role1' -GRANT role2 TO 'root'@'localhost' WITH ADMIN OPTION +GRANT USAGE ON *.* TO `role1` +GRANT USAGE ON *.* TO `role2` +GRANT `role1` TO `root`@`localhost` WITH ADMIN OPTION +GRANT `role2` TO `role1` +GRANT `role2` TO `root`@`localhost` WITH ADMIN OPTION show create procedure pcu; Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation pcu STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION CREATE DEFINER=`root`@`localhost` PROCEDURE `pcu`() diff --git a/mysql-test/suite/roles/set_and_drop.result b/mysql-test/suite/roles/set_and_drop.result index 2d3e675ebd0..87ccad2b447 100644 --- a/mysql-test/suite/roles/set_and_drop.result +++ b/mysql-test/suite/roles/set_and_drop.result @@ -56,9 +56,9 @@ drop role role2; connection foo; show grants; Grants for foo@localhost -GRANT role1 TO 'foo'@'localhost' -GRANT USAGE ON *.* TO 'foo'@'localhost' -GRANT USAGE ON *.* TO 'role1' +GRANT `role1` TO `foo`@`localhost` +GRANT USAGE ON *.* TO `foo`@`localhost` +GRANT USAGE ON *.* TO `role1` select * from information_schema.enabled_roles; ROLE_NAME role1 @@ -112,7 +112,7 @@ select a from mysqltest1.t2; ERROR 42000: SELECT command denied to user 'foo'@'localhost' for table 't2' show grants; Grants for foo@localhost -GRANT USAGE ON *.* TO 'foo'@'localhost' +GRANT USAGE ON *.* TO `foo`@`localhost` select * from information_schema.enabled_roles; ROLE_NAME NULL diff --git a/mysql-test/suite/roles/set_default_role_clear.result b/mysql-test/suite/roles/set_default_role_clear.result index 7f54b5eabcc..56e9662154c 100644 --- a/mysql-test/suite/roles/set_default_role_clear.result +++ b/mysql-test/suite/roles/set_default_role_clear.result @@ -4,8 +4,8 @@ grant select on *.* to test_role; grant test_role to test_user@localhost; show grants; Grants for test_user@localhost -GRANT test_role TO 'test_user'@'localhost' -GRANT USAGE ON *.* TO 'test_user'@'localhost' +GRANT `test_role` TO `test_user`@`localhost` +GRANT USAGE ON *.* TO `test_user`@`localhost` set default role test_role; select user, host, default_role from mysql.user; ERROR 42000: SELECT command denied to user 'test_user'@'localhost' for table 'user' @@ -14,9 +14,9 @@ user host default_role test_user localhost test_role show grants; Grants for test_user@localhost -GRANT test_role TO 'test_user'@'localhost' -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT SELECT ON *.* TO 'test_role' +GRANT `test_role` TO `test_user`@`localhost` +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT SELECT ON *.* TO `test_role` select user, host, default_role from mysql.user where user='test_user'; user host default_role test_user localhost test_role diff --git a/mysql-test/suite/roles/set_default_role_for.result b/mysql-test/suite/roles/set_default_role_for.result index 9880671ba09..f88dc83dfd9 100644 --- a/mysql-test/suite/roles/set_default_role_for.result +++ b/mysql-test/suite/roles/set_default_role_for.result @@ -18,9 +18,9 @@ ERROR OP000: Invalid role specification `role_b` set default role role_b for user_b@localhost; show grants; Grants for user_a@localhost -GRANT role_a TO 'user_a'@'localhost' -GRANT USAGE ON *.* TO 'user_a'@'localhost' -GRANT SELECT ON *.* TO 'role_a' +GRANT `role_a` TO `user_a`@`localhost` +GRANT USAGE ON *.* TO `user_a`@`localhost` +GRANT SELECT ON *.* TO `role_a` select user, host, default_role from mysql.user where user like 'user_%'; user host default_role user_a localhost role_a @@ -39,9 +39,9 @@ set default role role_b for current_user; ERROR OP000: Invalid role specification `role_b` show grants; Grants for user_b@localhost -GRANT role_b TO 'user_b'@'localhost' -GRANT USAGE ON *.* TO 'user_b'@'localhost' -GRANT INSERT, UPDATE ON *.* TO 'role_b' +GRANT `role_b` TO `user_b`@`localhost` +GRANT USAGE ON *.* TO `user_b`@`localhost` +GRANT INSERT, UPDATE ON *.* TO `role_b` select user, host, default_role from mysql.user where user like 'user_%'; ERROR 42000: SELECT command denied to user 'user_b'@'localhost' for table 'user' insert ignore into mysql.user (user, host) values ('someuser', 'somehost'); @@ -53,9 +53,9 @@ Warning 1364 Field 'authentication_string' doesn't have a default value set default role NONE for user_a@localhost; show grants; Grants for user_a@localhost -GRANT role_a TO 'user_a'@'localhost' -GRANT USAGE ON *.* TO 'user_a'@'localhost' -GRANT INSERT, UPDATE ON *.* TO 'role_b' +GRANT `role_a` TO `user_a`@`localhost` +GRANT USAGE ON *.* TO `user_a`@`localhost` +GRANT INSERT, UPDATE ON *.* TO `role_b` select user, host, default_role from mysql.user where user like 'user_%'; ERROR 42000: SELECT command denied to user 'user_a'@'localhost' for table 'user' drop role role_a; diff --git a/mysql-test/suite/roles/set_default_role_invalid.result b/mysql-test/suite/roles/set_default_role_invalid.result index 5bcaa9acb86..4a3b88f0ef8 100644 --- a/mysql-test/suite/roles/set_default_role_invalid.result +++ b/mysql-test/suite/roles/set_default_role_invalid.result @@ -5,8 +5,8 @@ grant select on *.* to test_role; grant test_role to test_user@localhost; show grants; Grants for test_user@localhost -GRANT test_role TO 'test_user'@'localhost' -GRANT USAGE ON *.* TO 'test_user'@'localhost' +GRANT `test_role` TO `test_user`@`localhost` +GRANT USAGE ON *.* TO `test_user`@`localhost` select user, host, default_role from mysql.user; ERROR 42000: SELECT command denied to user 'test_user'@'localhost' for table 'user' set default role invalid_role; @@ -21,9 +21,9 @@ user host default_role test_user localhost test_role show grants; Grants for test_user@localhost -GRANT test_role TO 'test_user'@'localhost' -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT SELECT ON *.* TO 'test_role' +GRANT `test_role` TO `test_user`@`localhost` +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT SELECT ON *.* TO `test_role` select user, host, default_role from mysql.user where user='test_user'; user host default_role test_user localhost test_role diff --git a/mysql-test/suite/roles/set_default_role_new_connection.result b/mysql-test/suite/roles/set_default_role_new_connection.result index a59ecbd75f7..03575e8aa8a 100644 --- a/mysql-test/suite/roles/set_default_role_new_connection.result +++ b/mysql-test/suite/roles/set_default_role_new_connection.result @@ -5,8 +5,8 @@ grant test_role to test_user@localhost; connect c1, localhost, test_user,,; show grants; Grants for test_user@localhost -GRANT test_role TO 'test_user'@'localhost' -GRANT USAGE ON *.* TO 'test_user'@'localhost' +GRANT `test_role` TO `test_user`@`localhost` +GRANT USAGE ON *.* TO `test_user`@`localhost` select user, host, default_role from mysql.user where user = 'test_user'; ERROR 42000: SELECT command denied to user 'test_user'@'localhost' for table 'user' set default role test_role; @@ -20,9 +20,9 @@ test_user localhost test_role connect c1, localhost, test_user,,; show grants; Grants for test_user@localhost -GRANT test_role TO 'test_user'@'localhost' -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT SELECT ON *.* TO 'test_role' +GRANT `test_role` TO `test_user`@`localhost` +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT SELECT ON *.* TO `test_role` select user, host, default_role from mysql.user where user = 'test_user'; user host default_role test_user localhost test_role @@ -35,8 +35,8 @@ test_user localhost connect c1, localhost, test_user,,; show grants; Grants for test_user@localhost -GRANT test_role TO 'test_user'@'localhost' -GRANT USAGE ON *.* TO 'test_user'@'localhost' +GRANT `test_role` TO `test_user`@`localhost` +GRANT USAGE ON *.* TO `test_user`@`localhost` select user, host, default_role from mysql.user where user = 'test_user'; ERROR 42000: SELECT command denied to user 'test_user'@'localhost' for table 'user' disconnect c1; @@ -48,9 +48,9 @@ set default role test_role for test_user@localhost; connect c1, localhost, test_user,,; show grants; Grants for test_user@localhost -GRANT test_role TO 'test_user'@'localhost' -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT SELECT ON *.* TO 'test_role' +GRANT `test_role` TO `test_user`@`localhost` +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT SELECT ON *.* TO `test_role` select user, host, default_role from mysql.user where user = 'test_user'; user host default_role test_user localhost test_role diff --git a/mysql-test/suite/roles/set_role-13655.result b/mysql-test/suite/roles/set_role-13655.result index c30e4115953..9da16c1dd51 100644 --- a/mysql-test/suite/roles/set_role-13655.result +++ b/mysql-test/suite/roles/set_role-13655.result @@ -18,10 +18,10 @@ create role admin; grant simple to admin; show grants for admin; Grants for admin -GRANT simple TO 'admin' -GRANT USAGE ON *.* TO 'admin' -GRANT USAGE ON *.* TO 'simple' -GRANT SELECT, INSERT, UPDATE, DELETE, LOCK TABLES, EXECUTE ON `t`.* TO 'simple' +GRANT `simple` TO `admin` +GRANT USAGE ON *.* TO `admin` +GRANT USAGE ON *.* TO `simple` +GRANT SELECT, INSERT, UPDATE, DELETE, LOCK TABLES, EXECUTE ON `t`.* TO `simple` # # Finally, we give the admin all the available privileges for the db. # @@ -37,13 +37,13 @@ ERROR 42000: Access denied for user 'foo'@'%' to database 't' set role admin; show grants; Grants for foo@% -GRANT admin TO 'foo'@'%' -GRANT USAGE ON *.* TO 'foo'@'%' -GRANT simple TO 'admin' -GRANT USAGE ON *.* TO 'admin' -GRANT ALL PRIVILEGES ON `t`.* TO 'admin' -GRANT USAGE ON *.* TO 'simple' -GRANT SELECT, INSERT, UPDATE, DELETE, LOCK TABLES, EXECUTE ON `t`.* TO 'simple' +GRANT `admin` TO `foo`@`%` +GRANT USAGE ON *.* TO `foo`@`%` +GRANT `simple` TO `admin` +GRANT USAGE ON *.* TO `admin` +GRANT ALL PRIVILEGES ON `t`.* TO `admin` +GRANT USAGE ON *.* TO `simple` +GRANT SELECT, INSERT, UPDATE, DELETE, LOCK TABLES, EXECUTE ON `t`.* TO `simple` create database t; drop database t; connection default; diff --git a/mysql-test/suite/roles/set_role-9614.result b/mysql-test/suite/roles/set_role-9614.result index 37f6db070c0..7085d2287e2 100644 --- a/mysql-test/suite/roles/set_role-9614.result +++ b/mysql-test/suite/roles/set_role-9614.result @@ -35,16 +35,16 @@ GRANT `client` TO `usertestjohn`@`%`; # SHOW GRANTS FOR `john`@`%`; Grants for john@% -GRANT client TO 'john'@'%' -GRANT USAGE ON *.* TO 'john'@'%' +GRANT `client` TO `john`@`%` +GRANT USAGE ON *.* TO `john`@`%` SHOW GRANTS FOR `usertestjohn`@`%`; Grants for usertestjohn@% -GRANT client TO 'usertestjohn'@'%' -GRANT USAGE ON *.* TO 'usertestjohn'@'%' +GRANT `client` TO `usertestjohn`@`%` +GRANT USAGE ON *.* TO `usertestjohn`@`%` SHOW GRANTS FOR `client`; Grants for client -GRANT USAGE ON *.* TO 'client' -GRANT SELECT ON `bug_db`.`t0` TO 'client' +GRANT USAGE ON *.* TO `client` +GRANT SELECT ON `bug_db`.`t0` TO `client` show databases; Database bug_db @@ -84,10 +84,10 @@ information_schema test show grants; Grants for usertestjohn@% -GRANT client TO 'usertestjohn'@'%' -GRANT USAGE ON *.* TO 'usertestjohn'@'%' -GRANT USAGE ON *.* TO 'client' -GRANT SELECT ON `bug_db`.`t0` TO 'client' +GRANT `client` TO `usertestjohn`@`%` +GRANT USAGE ON *.* TO `usertestjohn`@`%` +GRANT USAGE ON *.* TO `client` +GRANT SELECT ON `bug_db`.`t0` TO `client` use bug_db; # # Cleanup diff --git a/mysql-test/suite/roles/set_role-database-recursive.result b/mysql-test/suite/roles/set_role-database-recursive.result index 479e553c3d1..c919a800220 100644 --- a/mysql-test/suite/roles/set_role-database-recursive.result +++ b/mysql-test/suite/roles/set_role-database-recursive.result @@ -67,17 +67,17 @@ set role test_role1; delete from mysql.user where user='no such user'; show grants; Grants for test_user@localhost -GRANT DELETE ON `mysql`.* TO 'test_role4' -GRANT SELECT ON `mysql`.* TO 'test_role2' -GRANT USAGE ON *.* TO 'test_role1' -GRANT USAGE ON *.* TO 'test_role2' -GRANT USAGE ON *.* TO 'test_role3' -GRANT USAGE ON *.* TO 'test_role4' -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT test_role1 TO 'test_user'@'localhost' -GRANT test_role2 TO 'test_role1' -GRANT test_role2 TO 'test_user'@'localhost' -GRANT test_role3 TO 'test_role2' -GRANT test_role4 TO 'test_role3' +GRANT DELETE ON `mysql`.* TO `test_role4` +GRANT SELECT ON `mysql`.* TO `test_role2` +GRANT USAGE ON *.* TO `test_role1` +GRANT USAGE ON *.* TO `test_role2` +GRANT USAGE ON *.* TO `test_role3` +GRANT USAGE ON *.* TO `test_role4` +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT `test_role1` TO `test_user`@`localhost` +GRANT `test_role2` TO `test_role1` +GRANT `test_role2` TO `test_user`@`localhost` +GRANT `test_role3` TO `test_role2` +GRANT `test_role4` TO `test_role3` drop user test_user@localhost; drop role test_role1, test_role2, test_role3, test_role4; diff --git a/mysql-test/suite/roles/set_role-multiple-role.result b/mysql-test/suite/roles/set_role-multiple-role.result index fca53b4d645..2ddd1e8a510 100644 --- a/mysql-test/suite/roles/set_role-multiple-role.result +++ b/mysql-test/suite/roles/set_role-multiple-role.result @@ -25,14 +25,14 @@ select * from mysql.roles_mapping; ERROR 42000: SELECT command denied to user 'test_user'@'localhost' for table 'roles_mapping' show grants; Grants for test_user@localhost -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT r_crt TO 'test_user'@'localhost' -GRANT r_del TO 'test_user'@'localhost' -GRANT r_drp TO 'test_user'@'localhost' -GRANT r_ins TO 'test_user'@'localhost' -GRANT r_rld TO 'test_user'@'localhost' -GRANT r_sel TO 'test_user'@'localhost' -GRANT r_upd TO 'test_user'@'localhost' +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT `r_crt` TO `test_user`@`localhost` +GRANT `r_del` TO `test_user`@`localhost` +GRANT `r_drp` TO `test_user`@`localhost` +GRANT `r_ins` TO `test_user`@`localhost` +GRANT `r_rld` TO `test_user`@`localhost` +GRANT `r_sel` TO `test_user`@`localhost` +GRANT `r_upd` TO `test_user`@`localhost` select current_user(), current_role(); current_user() current_role() test_user@localhost NULL @@ -42,15 +42,15 @@ current_user() current_role() test_user@localhost r_sel show grants; Grants for test_user@localhost -GRANT SELECT ON *.* TO 'r_sel' -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT r_crt TO 'test_user'@'localhost' -GRANT r_del TO 'test_user'@'localhost' -GRANT r_drp TO 'test_user'@'localhost' -GRANT r_ins TO 'test_user'@'localhost' -GRANT r_rld TO 'test_user'@'localhost' -GRANT r_sel TO 'test_user'@'localhost' -GRANT r_upd TO 'test_user'@'localhost' +GRANT SELECT ON *.* TO `r_sel` +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT `r_crt` TO `test_user`@`localhost` +GRANT `r_del` TO `test_user`@`localhost` +GRANT `r_drp` TO `test_user`@`localhost` +GRANT `r_ins` TO `test_user`@`localhost` +GRANT `r_rld` TO `test_user`@`localhost` +GRANT `r_sel` TO `test_user`@`localhost` +GRANT `r_upd` TO `test_user`@`localhost` select * from mysql.roles_mapping; Host User Role Admin_option localhost root r_crt Y @@ -73,15 +73,15 @@ current_user() current_role() test_user@localhost r_ins show grants; Grants for test_user@localhost -GRANT INSERT ON *.* TO 'r_ins' -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT r_crt TO 'test_user'@'localhost' -GRANT r_del TO 'test_user'@'localhost' -GRANT r_drp TO 'test_user'@'localhost' -GRANT r_ins TO 'test_user'@'localhost' -GRANT r_rld TO 'test_user'@'localhost' -GRANT r_sel TO 'test_user'@'localhost' -GRANT r_upd TO 'test_user'@'localhost' +GRANT INSERT ON *.* TO `r_ins` +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT `r_crt` TO `test_user`@`localhost` +GRANT `r_del` TO `test_user`@`localhost` +GRANT `r_drp` TO `test_user`@`localhost` +GRANT `r_ins` TO `test_user`@`localhost` +GRANT `r_rld` TO `test_user`@`localhost` +GRANT `r_sel` TO `test_user`@`localhost` +GRANT `r_upd` TO `test_user`@`localhost` select * from mysql.roles_mapping; ERROR 42000: SELECT command denied to user 'test_user'@'localhost' for table 'roles_mapping' insert into mysql.roles_mapping values ('', 'r_sel', 'r_rld', 'N'); diff --git a/mysql-test/suite/roles/set_role-recursive.result b/mysql-test/suite/roles/set_role-recursive.result index 2b34c3eeebe..945cadfb2b2 100644 --- a/mysql-test/suite/roles/set_role-recursive.result +++ b/mysql-test/suite/roles/set_role-recursive.result @@ -25,8 +25,8 @@ select * from mysql.roles_mapping; ERROR 42000: SELECT command denied to user 'test_user'@'localhost' for table 'roles_mapping' show grants; Grants for test_user@localhost -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT test_role1 TO 'test_user'@'localhost' +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT `test_role1` TO `test_user`@`localhost` select current_user(), current_role(); current_user() current_role() test_user@localhost NULL @@ -36,35 +36,35 @@ current_user() current_role() test_user@localhost test_role1 show grants; Grants for test_user@localhost -GRANT SELECT ON *.* TO 'test_role2' -GRANT USAGE ON *.* TO 'test_role1' -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT test_role1 TO 'test_user'@'localhost' -GRANT test_role2 TO 'test_role1' +GRANT SELECT ON *.* TO `test_role2` +GRANT USAGE ON *.* TO `test_role1` +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT `test_role1` TO `test_user`@`localhost` +GRANT `test_role2` TO `test_role1` select * from mysql.roles_mapping where Host=''; Host User Role Admin_option test_role1 test_role2 N show grants; Grants for test_user@localhost -GRANT SELECT ON *.* TO 'test_role2' -GRANT USAGE ON *.* TO 'test_role1' -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT test_role1 TO 'test_user'@'localhost' -GRANT test_role2 TO 'test_role1' +GRANT SELECT ON *.* TO `test_role2` +GRANT USAGE ON *.* TO `test_role1` +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT `test_role1` TO `test_user`@`localhost` +GRANT `test_role2` TO `test_role1` set role none; select current_user(), current_role(); current_user() current_role() test_user@localhost NULL show grants; Grants for test_user@localhost -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT test_role1 TO 'test_user'@'localhost' +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT `test_role1` TO `test_user`@`localhost` select * from mysql.roles_mapping; ERROR 42000: SELECT command denied to user 'test_user'@'localhost' for table 'roles_mapping' show grants; Grants for test_user@localhost -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT test_role1 TO 'test_user'@'localhost' +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT `test_role1` TO `test_user`@`localhost` set role test_role2; ERROR OP000: Invalid role specification `test_role2` select current_user(), current_role(); @@ -72,43 +72,43 @@ current_user() current_role() test_user@localhost NULL show grants; Grants for test_user@localhost -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT test_role1 TO 'test_user'@'localhost' +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT `test_role1` TO `test_user`@`localhost` select * from mysql.roles_mapping; ERROR 42000: SELECT command denied to user 'test_user'@'localhost' for table 'roles_mapping' show grants; Grants for test_user@localhost -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT test_role1 TO 'test_user'@'localhost' +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT `test_role1` TO `test_user`@`localhost` set role test_role1; select current_user(), current_role(); current_user() current_role() test_user@localhost test_role1 show grants; Grants for test_user@localhost -GRANT SELECT ON *.* TO 'test_role2' -GRANT USAGE ON *.* TO 'test_role1' -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT test_role1 TO 'test_user'@'localhost' -GRANT test_role2 TO 'test_role1' +GRANT SELECT ON *.* TO `test_role2` +GRANT USAGE ON *.* TO `test_role1` +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT `test_role1` TO `test_user`@`localhost` +GRANT `test_role2` TO `test_role1` select * from mysql.roles_mapping where Host=''; Host User Role Admin_option test_role1 test_role2 N show grants; Grants for test_user@localhost -GRANT SELECT ON *.* TO 'test_role2' -GRANT USAGE ON *.* TO 'test_role1' -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT test_role1 TO 'test_user'@'localhost' -GRANT test_role2 TO 'test_role1' +GRANT SELECT ON *.* TO `test_role2` +GRANT USAGE ON *.* TO `test_role1` +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT `test_role1` TO `test_user`@`localhost` +GRANT `test_role2` TO `test_role1` set role none; select current_user(), current_role(); current_user() current_role() test_user@localhost NULL show grants; Grants for test_user@localhost -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT test_role1 TO 'test_user'@'localhost' +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT `test_role1` TO `test_user`@`localhost` select * from mysql.roles_mapping; ERROR 42000: SELECT command denied to user 'test_user'@'localhost' for table 'roles_mapping' delete from mysql.user where user='test_role1'; diff --git a/mysql-test/suite/roles/set_role-routine-simple.result b/mysql-test/suite/roles/set_role-routine-simple.result index 3e17a78ad77..2df370b273d 100644 --- a/mysql-test/suite/roles/set_role-routine-simple.result +++ b/mysql-test/suite/roles/set_role-routine-simple.result @@ -31,9 +31,9 @@ grant execute on procedure mysql.test_proc to test_role2; grant execute on mysql.* to test_role3; show grants; Grants for test_user@localhost -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT test_role1 TO 'test_user'@'localhost' -GRANT test_role3 TO 'test_user'@'localhost' +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT `test_role1` TO `test_user`@`localhost` +GRANT `test_role3` TO `test_user`@`localhost` use mysql; ERROR 42000: Access denied for user 'test_user'@'localhost' to database 'mysql' select current_user(), current_role(); @@ -53,23 +53,23 @@ test_func('AABBCCDD') Test string: AABBCCDD show grants; Grants for test_user@localhost -GRANT EXECUTE ON FUNCTION `mysql`.`test_func` TO 'test_role2' -GRANT EXECUTE ON PROCEDURE `mysql`.`test_proc` TO 'test_role2' -GRANT USAGE ON *.* TO 'test_role1' -GRANT USAGE ON *.* TO 'test_role2' -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT test_role1 TO 'test_user'@'localhost' -GRANT test_role2 TO 'test_role1' -GRANT test_role3 TO 'test_user'@'localhost' +GRANT EXECUTE ON FUNCTION `mysql`.`test_func` TO `test_role2` +GRANT EXECUTE ON PROCEDURE `mysql`.`test_proc` TO `test_role2` +GRANT USAGE ON *.* TO `test_role1` +GRANT USAGE ON *.* TO `test_role2` +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT `test_role1` TO `test_user`@`localhost` +GRANT `test_role2` TO `test_role1` +GRANT `test_role3` TO `test_user`@`localhost` set role none; select current_user(), current_role(); current_user() current_role() test_user@localhost NULL show grants; Grants for test_user@localhost -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT test_role1 TO 'test_user'@'localhost' -GRANT test_role3 TO 'test_user'@'localhost' +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT `test_role1` TO `test_user`@`localhost` +GRANT `test_role3` TO `test_user`@`localhost` call test_proc(@a); ERROR 42000: execute command denied to user 'test_user'@'localhost' for routine 'mysql.test_proc' SELECT test_func('AABBCCDD'); @@ -80,11 +80,11 @@ current_user() current_role() test_user@localhost test_role3 show grants; Grants for test_user@localhost -GRANT EXECUTE ON `mysql`.* TO 'test_role3' -GRANT USAGE ON *.* TO 'test_role3' -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT test_role1 TO 'test_user'@'localhost' -GRANT test_role3 TO 'test_user'@'localhost' +GRANT EXECUTE ON `mysql`.* TO `test_role3` +GRANT USAGE ON *.* TO `test_role3` +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT `test_role1` TO `test_user`@`localhost` +GRANT `test_role3` TO `test_user`@`localhost` call test_proc(@a); SELECT @a; @a diff --git a/mysql-test/suite/roles/set_role-simple.result b/mysql-test/suite/roles/set_role-simple.result index 9af698c7b09..af237113bb3 100644 --- a/mysql-test/suite/roles/set_role-simple.result +++ b/mysql-test/suite/roles/set_role-simple.result @@ -17,8 +17,8 @@ select * from mysql.roles_mapping; ERROR 42000: SELECT command denied to user 'test_user'@'localhost' for table 'roles_mapping' show grants; Grants for test_user@localhost -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT test_role1 TO 'test_user'@'localhost' +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT `test_role1` TO `test_user`@`localhost` select current_user(), current_role(); current_user() current_role() test_user@localhost NULL @@ -28,9 +28,9 @@ current_user() current_role() test_user@localhost test_role1 show grants; Grants for test_user@localhost -GRANT SELECT ON *.* TO 'test_role1' -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT test_role1 TO 'test_user'@'localhost' +GRANT SELECT ON *.* TO `test_role1` +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT `test_role1` TO `test_user`@`localhost` select * from mysql.roles_mapping; Host User Role Admin_option localhost root test_role1 Y @@ -52,7 +52,7 @@ current_user user1@% show grants; Grants for user1@% -GRANT USAGE ON *.* TO 'user1'@'%' +GRANT USAGE ON *.* TO `user1`@`%` set role none; connection default; drop user user1; diff --git a/mysql-test/suite/roles/set_role-table-column-priv.result b/mysql-test/suite/roles/set_role-table-column-priv.result index 721bd3039a3..738b3313bb2 100644 --- a/mysql-test/suite/roles/set_role-table-column-priv.result +++ b/mysql-test/suite/roles/set_role-table-column-priv.result @@ -19,8 +19,8 @@ select * from mysql.roles_mapping; ERROR 42000: SELECT command denied to user 'test_user'@'localhost' for table 'roles_mapping' show grants; Grants for test_user@localhost -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT test_role1 TO 'test_user'@'localhost' +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT `test_role1` TO `test_user`@`localhost` select current_user(), current_role(); current_user() current_role() test_user@localhost NULL @@ -30,12 +30,12 @@ current_user() current_role() test_user@localhost test_role1 show grants; Grants for test_user@localhost -GRANT SELECT (Role) ON `mysql`.`roles_mapping` TO 'test_role2' -GRANT USAGE ON *.* TO 'test_role1' -GRANT USAGE ON *.* TO 'test_role2' -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT test_role1 TO 'test_user'@'localhost' -GRANT test_role2 TO 'test_role1' +GRANT SELECT (Role) ON `mysql`.`roles_mapping` TO `test_role2` +GRANT USAGE ON *.* TO `test_role1` +GRANT USAGE ON *.* TO `test_role2` +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT `test_role1` TO `test_user`@`localhost` +GRANT `test_role2` TO `test_role1` select * from mysql.roles_mapping; ERROR 42000: SELECT command denied to user 'test_user'@'localhost' for column 'Host' in table 'roles_mapping' select Role from mysql.roles_mapping; @@ -46,12 +46,12 @@ test_role2 test_role2 show grants; Grants for test_user@localhost -GRANT SELECT (Role) ON `mysql`.`roles_mapping` TO 'test_role2' -GRANT USAGE ON *.* TO 'test_role1' -GRANT USAGE ON *.* TO 'test_role2' -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT test_role1 TO 'test_user'@'localhost' -GRANT test_role2 TO 'test_role1' +GRANT SELECT (Role) ON `mysql`.`roles_mapping` TO `test_role2` +GRANT USAGE ON *.* TO `test_role1` +GRANT USAGE ON *.* TO `test_role2` +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT `test_role1` TO `test_user`@`localhost` +GRANT `test_role2` TO `test_role1` use mysql; set role none; select current_user(), current_role(); diff --git a/mysql-test/suite/roles/set_role-table-simple.result b/mysql-test/suite/roles/set_role-table-simple.result index f5688dbe62e..dcd0914db8d 100644 --- a/mysql-test/suite/roles/set_role-table-simple.result +++ b/mysql-test/suite/roles/set_role-table-simple.result @@ -19,8 +19,8 @@ select * from mysql.roles_mapping; ERROR 42000: SELECT command denied to user 'test_user'@'localhost' for table 'roles_mapping' show grants; Grants for test_user@localhost -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT test_role1 TO 'test_user'@'localhost' +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT `test_role1` TO `test_user`@`localhost` select current_user(), current_role(); current_user() current_role() test_user@localhost NULL @@ -30,12 +30,12 @@ current_user() current_role() test_user@localhost test_role1 show grants; Grants for test_user@localhost -GRANT SELECT ON `mysql`.`roles_mapping` TO 'test_role2' -GRANT USAGE ON *.* TO 'test_role1' -GRANT USAGE ON *.* TO 'test_role2' -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT test_role1 TO 'test_user'@'localhost' -GRANT test_role2 TO 'test_role1' +GRANT SELECT ON `mysql`.`roles_mapping` TO `test_role2` +GRANT USAGE ON *.* TO `test_role1` +GRANT USAGE ON *.* TO `test_role2` +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT `test_role1` TO `test_user`@`localhost` +GRANT `test_role2` TO `test_role1` select * from mysql.roles_mapping; Host User Role Admin_option test_role1 test_role2 N @@ -44,12 +44,12 @@ localhost root test_role2 Y localhost test_user test_role1 N show grants; Grants for test_user@localhost -GRANT SELECT ON `mysql`.`roles_mapping` TO 'test_role2' -GRANT USAGE ON *.* TO 'test_role1' -GRANT USAGE ON *.* TO 'test_role2' -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT test_role1 TO 'test_user'@'localhost' -GRANT test_role2 TO 'test_role1' +GRANT SELECT ON `mysql`.`roles_mapping` TO `test_role2` +GRANT USAGE ON *.* TO `test_role1` +GRANT USAGE ON *.* TO `test_role2` +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT `test_role1` TO `test_user`@`localhost` +GRANT `test_role2` TO `test_role1` use mysql; set role none; select current_user(), current_role(); diff --git a/mysql-test/suite/roles/show_grants.result b/mysql-test/suite/roles/show_grants.result index 5d46b038cf8..634fab34131 100644 --- a/mysql-test/suite/roles/show_grants.result +++ b/mysql-test/suite/roles/show_grants.result @@ -34,9 +34,9 @@ test_user@localhost test_role1 NO NO test_user@localhost test_role2 NO NO show grants; Grants for test_user@localhost -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT test_role1 TO 'test_user'@'localhost' -GRANT test_role2 TO 'test_user'@'localhost' +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT `test_role1` TO `test_user`@`localhost` +GRANT `test_role2` TO `test_user`@`localhost` select current_user(), current_role(); current_user() current_role() test_user@localhost NULL @@ -50,13 +50,13 @@ current_user() current_role() test_user@localhost test_role1 show grants; Grants for test_user@localhost -GRANT SELECT ON `mysql`.* TO 'test_role2' -GRANT USAGE ON *.* TO 'test_role1' -GRANT USAGE ON *.* TO 'test_role2' -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT test_role1 TO 'test_user'@'localhost' -GRANT test_role2 TO 'test_role1' -GRANT test_role2 TO 'test_user'@'localhost' +GRANT SELECT ON `mysql`.* TO `test_role2` +GRANT USAGE ON *.* TO `test_role1` +GRANT USAGE ON *.* TO `test_role2` +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT `test_role1` TO `test_user`@`localhost` +GRANT `test_role2` TO `test_role1` +GRANT `test_role2` TO `test_user`@`localhost` set role none; select * from information_schema.enabled_roles; ROLE_NAME @@ -66,28 +66,28 @@ current_user() current_role() test_user@localhost NULL show grants; Grants for test_user@localhost -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT test_role1 TO 'test_user'@'localhost' -GRANT test_role2 TO 'test_user'@'localhost' +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT `test_role1` TO `test_user`@`localhost` +GRANT `test_role2` TO `test_user`@`localhost` show grants for test_user@localhost; Grants for test_user@localhost -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT test_role1 TO 'test_user'@'localhost' -GRANT test_role2 TO 'test_user'@'localhost' +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT `test_role1` TO `test_user`@`localhost` +GRANT `test_role2` TO `test_user`@`localhost` show grants for test_role1; ERROR 42000: Access denied for user 'test_user'@'localhost' to database 'mysql' show grants for test_role2; ERROR 42000: Access denied for user 'test_user'@'localhost' to database 'mysql' show grants for CURRENT_USER; Grants for test_user@localhost -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT test_role1 TO 'test_user'@'localhost' -GRANT test_role2 TO 'test_user'@'localhost' +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT `test_role1` TO `test_user`@`localhost` +GRANT `test_role2` TO `test_user`@`localhost` show grants for CURRENT_USER(); Grants for test_user@localhost -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT test_role1 TO 'test_user'@'localhost' -GRANT test_role2 TO 'test_user'@'localhost' +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT `test_role1` TO `test_user`@`localhost` +GRANT `test_role2` TO `test_user`@`localhost` show grants for CURRENT_ROLE; ERROR 42000: There is no such grant defined for user 'test_user' on host 'localhost' show grants for CURRENT_ROLE(); @@ -101,44 +101,44 @@ current_user() current_role() test_user@localhost test_role2 show grants; Grants for test_user@localhost -GRANT SELECT ON `mysql`.* TO 'test_role2' -GRANT USAGE ON *.* TO 'test_role2' -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT test_role1 TO 'test_user'@'localhost' -GRANT test_role2 TO 'test_user'@'localhost' +GRANT SELECT ON `mysql`.* TO `test_role2` +GRANT USAGE ON *.* TO `test_role2` +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT `test_role1` TO `test_user`@`localhost` +GRANT `test_role2` TO `test_user`@`localhost` show grants for test_user@localhost; Grants for test_user@localhost -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT test_role1 TO 'test_user'@'localhost' -GRANT test_role2 TO 'test_user'@'localhost' +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT `test_role1` TO `test_user`@`localhost` +GRANT `test_role2` TO `test_user`@`localhost` show grants for test_role1; Grants for test_role1 -GRANT SELECT ON `mysql`.* TO 'test_role2' -GRANT USAGE ON *.* TO 'test_role1' -GRANT USAGE ON *.* TO 'test_role2' -GRANT test_role2 TO 'test_role1' +GRANT SELECT ON `mysql`.* TO `test_role2` +GRANT USAGE ON *.* TO `test_role1` +GRANT USAGE ON *.* TO `test_role2` +GRANT `test_role2` TO `test_role1` show grants for test_role2; Grants for test_role2 -GRANT SELECT ON `mysql`.* TO 'test_role2' -GRANT USAGE ON *.* TO 'test_role2' +GRANT SELECT ON `mysql`.* TO `test_role2` +GRANT USAGE ON *.* TO `test_role2` show grants for CURRENT_USER; Grants for test_user@localhost -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT test_role1 TO 'test_user'@'localhost' -GRANT test_role2 TO 'test_user'@'localhost' +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT `test_role1` TO `test_user`@`localhost` +GRANT `test_role2` TO `test_user`@`localhost` show grants for CURRENT_USER(); Grants for test_user@localhost -GRANT USAGE ON *.* TO 'test_user'@'localhost' -GRANT test_role1 TO 'test_user'@'localhost' -GRANT test_role2 TO 'test_user'@'localhost' +GRANT USAGE ON *.* TO `test_user`@`localhost` +GRANT `test_role1` TO `test_user`@`localhost` +GRANT `test_role2` TO `test_user`@`localhost` show grants for CURRENT_ROLE; Grants for test_role2 -GRANT SELECT ON `mysql`.* TO 'test_role2' -GRANT USAGE ON *.* TO 'test_role2' +GRANT SELECT ON `mysql`.* TO `test_role2` +GRANT USAGE ON *.* TO `test_role2` show grants for CURRENT_ROLE(); Grants for test_role2 -GRANT SELECT ON `mysql`.* TO 'test_role2' -GRANT USAGE ON *.* TO 'test_role2' +GRANT SELECT ON `mysql`.* TO `test_role2` +GRANT USAGE ON *.* TO `test_role2` drop user 'test_user'@'localhost'; revoke select on mysql.* from test_role2; drop role test_role1; diff --git a/mysql-test/suite/roles/show_grants_replicated.result b/mysql-test/suite/roles/show_grants_replicated.result index cb9df65dbbd..f635aa0827e 100644 --- a/mysql-test/suite/roles/show_grants_replicated.result +++ b/mysql-test/suite/roles/show_grants_replicated.result @@ -6,10 +6,10 @@ create role r1; # On master SHOW GRANTS work both for the user and the role: show grants for u1; Grants for u1@% -GRANT USAGE ON *.* TO 'u1'@'%' +GRANT USAGE ON *.* TO `u1`@`%` show grants for r1; Grants for r1 -GRANT USAGE ON *.* TO 'r1' +GRANT USAGE ON *.* TO `r1` # connection slave; # @@ -27,30 +27,30 @@ root@localhost r1 YES NO # Check show grants for the new user. show grants for u1; Grants for u1@% -GRANT USAGE ON *.* TO 'u1'@'%' +GRANT USAGE ON *.* TO `u1`@`%` # # Check show grants for the new role. show grants for r1; Grants for r1 -GRANT USAGE ON *.* TO 'r1' +GRANT USAGE ON *.* TO `r1` # # Check if flushing privileges preserves the state. flush privileges; show grants for r1; Grants for r1 -GRANT USAGE ON *.* TO 'r1' +GRANT USAGE ON *.* TO `r1` # # Check SHOW GRANTS after setting the role. set role r1; show grants; Grants for root@localhost -GRANT r1 TO 'root'@'localhost' WITH ADMIN OPTION -GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION +GRANT `r1` TO `root`@`localhost` WITH ADMIN OPTION +GRANT ALL PRIVILEGES ON *.* TO `root`@`localhost` WITH GRANT OPTION GRANT PROXY ON ''@'%' TO 'root'@'localhost' WITH GRANT OPTION -GRANT USAGE ON *.* TO 'r1' +GRANT USAGE ON *.* TO `r1` show grants for r1; Grants for r1 -GRANT USAGE ON *.* TO 'r1' +GRANT USAGE ON *.* TO `r1` connection master; drop role r1; drop user u1; diff --git a/mysql-test/suite/rpl/r/rpl_binlog_grant.result b/mysql-test/suite/rpl/r/rpl_binlog_grant.result index 0c780122e38..3f01c80b195 100644 --- a/mysql-test/suite/rpl/r/rpl_binlog_grant.result +++ b/mysql-test/suite/rpl/r/rpl_binlog_grant.result @@ -11,8 +11,8 @@ grant select on t to x@y; rollback; show grants for x@y; Grants for x@y -GRANT USAGE ON *.* TO 'x'@'y' -GRANT SELECT ON `d1`.`t` TO 'x'@'y' +GRANT USAGE ON *.* TO `x`@`y` +GRANT SELECT ON `d1`.`t` TO `x`@`y` start transaction; insert into t values (2); revoke select on t from x@y; @@ -23,7 +23,7 @@ s1 2 show grants for x@y; Grants for x@y -GRANT USAGE ON *.* TO 'x'@'y' +GRANT USAGE ON *.* TO `x`@`y` drop user x@y; drop database d1; include/rpl_end.inc diff --git a/mysql-test/suite/rpl/r/rpl_do_grant.result b/mysql-test/suite/rpl/r/rpl_do_grant.result index 9eca21b38e4..0797e66e9ec 100644 --- a/mysql-test/suite/rpl/r/rpl_do_grant.result +++ b/mysql-test/suite/rpl/r/rpl_do_grant.result @@ -15,8 +15,8 @@ grant drop on test.* to rpl_do_grant@localhost; connection slave; show grants for rpl_do_grant@localhost; Grants for rpl_do_grant@localhost -GRANT SELECT ON *.* TO 'rpl_do_grant'@'localhost' -GRANT DROP ON `test`.* TO 'rpl_do_grant'@'localhost' +GRANT SELECT ON *.* TO `rpl_do_grant`@`localhost` +GRANT DROP ON `test`.* TO `rpl_do_grant`@`localhost` connection master; set password for rpl_do_grant@localhost=password("does it work?"); connection slave; @@ -54,55 +54,55 @@ connection master; create user rpl_do_grant@localhost; show grants for rpl_do_grant@localhost; Grants for rpl_do_grant@localhost -GRANT USAGE ON *.* TO 'rpl_do_grant'@'localhost' +GRANT USAGE ON *.* TO `rpl_do_grant`@`localhost` show grants for rpl_do_grant2@localhost; ERROR 42000: There is no such grant defined for user 'rpl_do_grant2' on host 'localhost' connection slave; show grants for rpl_do_grant@localhost; Grants for rpl_do_grant@localhost -GRANT USAGE ON *.* TO 'rpl_do_grant'@'localhost' +GRANT USAGE ON *.* TO `rpl_do_grant`@`localhost` show grants for rpl_do_grant2@localhost; ERROR 42000: There is no such grant defined for user 'rpl_do_grant2' on host 'localhost' connection master; rename user rpl_do_grant@localhost to rpl_do_grant2@localhost; show grants for rpl_do_grant2@localhost; Grants for rpl_do_grant2@localhost -GRANT USAGE ON *.* TO 'rpl_do_grant2'@'localhost' +GRANT USAGE ON *.* TO `rpl_do_grant2`@`localhost` connection slave; show grants for rpl_do_grant2@localhost; Grants for rpl_do_grant2@localhost -GRANT USAGE ON *.* TO 'rpl_do_grant2'@'localhost' +GRANT USAGE ON *.* TO `rpl_do_grant2`@`localhost` connection master; grant DELETE,INSERT on mysqltest1.* to rpl_do_grant2@localhost; show grants for rpl_do_grant2@localhost; Grants for rpl_do_grant2@localhost -GRANT USAGE ON *.* TO 'rpl_do_grant2'@'localhost' -GRANT INSERT, DELETE ON `mysqltest1`.* TO 'rpl_do_grant2'@'localhost' +GRANT USAGE ON *.* TO `rpl_do_grant2`@`localhost` +GRANT INSERT, DELETE ON `mysqltest1`.* TO `rpl_do_grant2`@`localhost` connection slave; show grants for rpl_do_grant2@localhost; Grants for rpl_do_grant2@localhost -GRANT USAGE ON *.* TO 'rpl_do_grant2'@'localhost' -GRANT INSERT, DELETE ON `mysqltest1`.* TO 'rpl_do_grant2'@'localhost' +GRANT USAGE ON *.* TO `rpl_do_grant2`@`localhost` +GRANT INSERT, DELETE ON `mysqltest1`.* TO `rpl_do_grant2`@`localhost` connection master; revoke DELETE on mysqltest1.* from rpl_do_grant2@localhost; show grants for rpl_do_grant2@localhost; Grants for rpl_do_grant2@localhost -GRANT USAGE ON *.* TO 'rpl_do_grant2'@'localhost' -GRANT INSERT ON `mysqltest1`.* TO 'rpl_do_grant2'@'localhost' +GRANT USAGE ON *.* TO `rpl_do_grant2`@`localhost` +GRANT INSERT ON `mysqltest1`.* TO `rpl_do_grant2`@`localhost` connection slave; show grants for rpl_do_grant2@localhost; Grants for rpl_do_grant2@localhost -GRANT USAGE ON *.* TO 'rpl_do_grant2'@'localhost' -GRANT INSERT ON `mysqltest1`.* TO 'rpl_do_grant2'@'localhost' +GRANT USAGE ON *.* TO `rpl_do_grant2`@`localhost` +GRANT INSERT ON `mysqltest1`.* TO `rpl_do_grant2`@`localhost` connection master; revoke all privileges, grant option from rpl_do_grant2@localhost; show grants for rpl_do_grant2@localhost; Grants for rpl_do_grant2@localhost -GRANT USAGE ON *.* TO 'rpl_do_grant2'@'localhost' +GRANT USAGE ON *.* TO `rpl_do_grant2`@`localhost` connection slave; show grants for rpl_do_grant2@localhost; Grants for rpl_do_grant2@localhost -GRANT USAGE ON *.* TO 'rpl_do_grant2'@'localhost' +GRANT USAGE ON *.* TO `rpl_do_grant2`@`localhost` connection master; drop user rpl_do_grant2@localhost; show grants for rpl_do_grant2@localhost; @@ -142,9 +142,9 @@ Host Db User Routine_name Routine_type Grantor Proc_priv Timestamp localhost bug42217_db create_rout_db upgrade_del_func FUNCTION create_rout_db@localhost Execute,Alter Routine # SHOW GRANTS FOR 'create_rout_db'@'localhost'; Grants for create_rout_db@localhost -GRANT USAGE ON *.* TO 'create_rout_db'@'localhost' IDENTIFIED BY PASSWORD '*08792480350CBA057BDE781B9DF183B263934601' -GRANT CREATE ROUTINE ON `bug42217_db`.* TO 'create_rout_db'@'localhost' WITH GRANT OPTION -GRANT EXECUTE, ALTER ROUTINE ON FUNCTION `bug42217_db`.`upgrade_del_func` TO 'create_rout_db'@'localhost' +GRANT USAGE ON *.* TO `create_rout_db`@`localhost` IDENTIFIED BY PASSWORD '*08792480350CBA057BDE781B9DF183B263934601' +GRANT CREATE ROUTINE ON `bug42217_db`.* TO `create_rout_db`@`localhost` WITH GRANT OPTION +GRANT EXECUTE, ALTER ROUTINE ON FUNCTION `bug42217_db`.`upgrade_del_func` TO `create_rout_db`@`localhost` USE bug42217_db; SHOW CREATE FUNCTION upgrade_del_func; Function sql_mode Create Function character_set_client collation_connection Database Collation @@ -236,11 +236,11 @@ GRANT EXECUTE ON PROCEDURE p1 TO 'user49119'@'localhost'; ### Showing grants for both users: root and user49119 (master) SHOW GRANTS FOR 'user49119'@'localhost'; Grants for user49119@localhost -GRANT USAGE ON *.* TO 'user49119'@'localhost' -GRANT EXECUTE ON PROCEDURE `test`.`p1` TO 'user49119'@'localhost' +GRANT USAGE ON *.* TO `user49119`@`localhost` +GRANT EXECUTE ON PROCEDURE `test`.`p1` TO `user49119`@`localhost` SHOW GRANTS FOR CURRENT_USER; Grants for root@localhost -GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION +GRANT ALL PRIVILEGES ON *.* TO `root`@`localhost` WITH GRANT OPTION GRANT PROXY ON ''@'%' TO 'root'@'localhost' WITH GRANT OPTION ############################################################## connection slave; @@ -248,11 +248,11 @@ connection slave; ### Showing grants for both users: root and user49119 (master) SHOW GRANTS FOR 'user49119'@'localhost'; Grants for user49119@localhost -GRANT USAGE ON *.* TO 'user49119'@'localhost' -GRANT EXECUTE ON PROCEDURE `test`.`p1` TO 'user49119'@'localhost' +GRANT USAGE ON *.* TO `user49119`@`localhost` +GRANT EXECUTE ON PROCEDURE `test`.`p1` TO `user49119`@`localhost` SHOW GRANTS FOR CURRENT_USER; Grants for root@localhost -GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION +GRANT ALL PRIVILEGES ON *.* TO `root`@`localhost` WITH GRANT OPTION GRANT PROXY ON ''@'%' TO 'root'@'localhost' WITH GRANT OPTION ############################################################## connection master; @@ -266,10 +266,10 @@ ERROR 42000: There is no such grant defined for user 'root' on host 'localhost' ### after revoke statement failure SHOW GRANTS FOR 'user49119'@'localhost'; Grants for user49119@localhost -GRANT USAGE ON *.* TO 'user49119'@'localhost' +GRANT USAGE ON *.* TO `user49119`@`localhost` SHOW GRANTS FOR CURRENT_USER; Grants for root@localhost -GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION +GRANT ALL PRIVILEGES ON *.* TO `root`@`localhost` WITH GRANT OPTION GRANT PROXY ON ''@'%' TO 'root'@'localhost' WITH GRANT OPTION ############################################################## connection slave; @@ -278,10 +278,10 @@ connection slave; ### after revoke statement failure (should match SHOW GRANTS FOR 'user49119'@'localhost'; Grants for user49119@localhost -GRANT USAGE ON *.* TO 'user49119'@'localhost' +GRANT USAGE ON *.* TO `user49119`@`localhost` SHOW GRANTS FOR CURRENT_USER; Grants for root@localhost -GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION +GRANT ALL PRIVILEGES ON *.* TO `root`@`localhost` WITH GRANT OPTION GRANT PROXY ON ''@'%' TO 'root'@'localhost' WITH GRANT OPTION ############################################################## connection master; diff --git a/mysql-test/suite/rpl/r/rpl_ignore_grant.result b/mysql-test/suite/rpl/r/rpl_ignore_grant.result index f3d69112efd..64da944a5dc 100644 --- a/mysql-test/suite/rpl/r/rpl_ignore_grant.result +++ b/mysql-test/suite/rpl/r/rpl_ignore_grant.result @@ -17,8 +17,8 @@ grant select on *.* to rpl_ignore_grant@localhost; grant drop on test.* to rpl_ignore_grant@localhost; show grants for rpl_ignore_grant@localhost; Grants for rpl_ignore_grant@localhost -GRANT SELECT ON *.* TO 'rpl_ignore_grant'@'localhost' -GRANT DROP ON `test`.* TO 'rpl_ignore_grant'@'localhost' +GRANT SELECT ON *.* TO `rpl_ignore_grant`@`localhost` +GRANT DROP ON `test`.* TO `rpl_ignore_grant`@`localhost` connection slave; show grants for rpl_ignore_grant@localhost; ERROR 42000: There is no such grant defined for user 'rpl_ignore_grant' on host 'localhost' diff --git a/mysql-test/suite/rpl/r/rpl_ignore_table.result b/mysql-test/suite/rpl/r/rpl_ignore_table.result index 4eeb333d10c..1e0d6f537ab 100644 --- a/mysql-test/suite/rpl/r/rpl_ignore_table.result +++ b/mysql-test/suite/rpl/r/rpl_ignore_table.result @@ -44,54 +44,54 @@ GRANT INSERT ON test.* TO mysqltest6@localhost; GRANT INSERT ON test.t1 TO mysqltest6@localhost; show grants for mysqltest1@localhost; Grants for mysqltest1@localhost -GRANT USAGE ON *.* TO 'mysqltest1'@'localhost' -GRANT SELECT ON `test`.`t1` TO 'mysqltest1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest1`@`localhost` +GRANT SELECT ON `test`.`t1` TO `mysqltest1`@`localhost` show grants for mysqltest2@localhost; Grants for mysqltest2@localhost -GRANT USAGE ON *.* TO 'mysqltest2'@'localhost' -GRANT SELECT, INSERT, UPDATE, REFERENCES ON `test`.`t1` TO 'mysqltest2'@'localhost' -GRANT INSERT ON `test`.`t4` TO 'mysqltest2'@'localhost' +GRANT USAGE ON *.* TO `mysqltest2`@`localhost` +GRANT SELECT, INSERT, UPDATE, REFERENCES ON `test`.`t1` TO `mysqltest2`@`localhost` +GRANT INSERT ON `test`.`t4` TO `mysqltest2`@`localhost` show grants for mysqltest3@localhost; Grants for mysqltest3@localhost -GRANT USAGE ON *.* TO 'mysqltest3'@'localhost' -GRANT SELECT ON `test`.* TO 'mysqltest3'@'localhost' -GRANT SELECT (a), INSERT, INSERT (a), UPDATE (a), REFERENCES (a) ON `test`.`t4` TO 'mysqltest3'@'localhost' +GRANT USAGE ON *.* TO `mysqltest3`@`localhost` +GRANT SELECT ON `test`.* TO `mysqltest3`@`localhost` +GRANT SELECT (a), INSERT, INSERT (a), UPDATE (a), REFERENCES (a) ON `test`.`t4` TO `mysqltest3`@`localhost` show grants for mysqltest4@localhost; Grants for mysqltest4@localhost -GRANT USAGE ON *.* TO 'mysqltest4'@'localhost' IDENTIFIED BY PASSWORD '*196BDEDE2AE4F84CA44C47D54D78478C7E2BD7B7' -GRANT SELECT ON `mysqltest2`.`t2` TO 'mysqltest4'@'localhost' +GRANT USAGE ON *.* TO `mysqltest4`@`localhost` IDENTIFIED BY PASSWORD '*196BDEDE2AE4F84CA44C47D54D78478C7E2BD7B7' +GRANT SELECT ON `mysqltest2`.`t2` TO `mysqltest4`@`localhost` show grants for mysqltest6@localhost; Grants for mysqltest6@localhost -GRANT SELECT, INSERT ON *.* TO 'mysqltest6'@'localhost' -GRANT INSERT ON `test`.* TO 'mysqltest6'@'localhost' -GRANT INSERT ON `test`.`t1` TO 'mysqltest6'@'localhost' +GRANT SELECT, INSERT ON *.* TO `mysqltest6`@`localhost` +GRANT INSERT ON `test`.* TO `mysqltest6`@`localhost` +GRANT INSERT ON `test`.`t1` TO `mysqltest6`@`localhost` flush privileges; show grants for mysqltest5@somehost; Grants for mysqltest5@somehost -GRANT USAGE ON *.* TO 'mysqltest5'@'somehost' +GRANT USAGE ON *.* TO `mysqltest5`@`somehost` set sql_mode=""; connection slave; **** Checking grants on slave **** show grants for mysqltest2@localhost; Grants for mysqltest2@localhost -GRANT USAGE ON *.* TO 'mysqltest2'@'localhost' -GRANT INSERT ON `test`.`t4` TO 'mysqltest2'@'localhost' +GRANT USAGE ON *.* TO `mysqltest2`@`localhost` +GRANT INSERT ON `test`.`t4` TO `mysqltest2`@`localhost` show grants for mysqltest3@localhost; Grants for mysqltest3@localhost -GRANT USAGE ON *.* TO 'mysqltest3'@'localhost' -GRANT SELECT ON `test`.* TO 'mysqltest3'@'localhost' -GRANT SELECT (a), INSERT, INSERT (a), UPDATE (a), REFERENCES (a) ON `test`.`t4` TO 'mysqltest3'@'localhost' +GRANT USAGE ON *.* TO `mysqltest3`@`localhost` +GRANT SELECT ON `test`.* TO `mysqltest3`@`localhost` +GRANT SELECT (a), INSERT, INSERT (a), UPDATE (a), REFERENCES (a) ON `test`.`t4` TO `mysqltest3`@`localhost` show grants for mysqltest4@localhost; Grants for mysqltest4@localhost -GRANT USAGE ON *.* TO 'mysqltest4'@'localhost' IDENTIFIED BY PASSWORD '*196BDEDE2AE4F84CA44C47D54D78478C7E2BD7B7' -GRANT SELECT ON `mysqltest2`.`t2` TO 'mysqltest4'@'localhost' +GRANT USAGE ON *.* TO `mysqltest4`@`localhost` IDENTIFIED BY PASSWORD '*196BDEDE2AE4F84CA44C47D54D78478C7E2BD7B7' +GRANT SELECT ON `mysqltest2`.`t2` TO `mysqltest4`@`localhost` show grants for mysqltest5@somehost; Grants for mysqltest5@somehost -GRANT USAGE ON *.* TO 'mysqltest5'@'somehost' +GRANT USAGE ON *.* TO `mysqltest5`@`somehost` show grants for mysqltest6@localhost; Grants for mysqltest6@localhost -GRANT SELECT, INSERT ON *.* TO 'mysqltest6'@'localhost' -GRANT INSERT ON `test`.* TO 'mysqltest6'@'localhost' +GRANT SELECT, INSERT ON *.* TO `mysqltest6`@`localhost` +GRANT INSERT ON `test`.* TO `mysqltest6`@`localhost` show grants for mysqltest1@localhost; ERROR 42000: There is no such grant defined for user 'mysqltest1' on host 'localhost' **** Revoking grants on master **** @@ -102,27 +102,27 @@ REVOKE select(a) on t4 from mysqltest3@localhost; show grants for mysqltest1@localhost; Grants for mysqltest1@localhost -GRANT USAGE ON *.* TO 'mysqltest1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest1`@`localhost` show grants for mysqltest3@localhost; Grants for mysqltest3@localhost -GRANT USAGE ON *.* TO 'mysqltest3'@'localhost' -GRANT SELECT ON `test`.* TO 'mysqltest3'@'localhost' -GRANT INSERT, INSERT (a), UPDATE (a), REFERENCES (a) ON `test`.`t4` TO 'mysqltest3'@'localhost' +GRANT USAGE ON *.* TO `mysqltest3`@`localhost` +GRANT SELECT ON `test`.* TO `mysqltest3`@`localhost` +GRANT INSERT, INSERT (a), UPDATE (a), REFERENCES (a) ON `test`.`t4` TO `mysqltest3`@`localhost` show grants for mysqltest4@localhost; Grants for mysqltest4@localhost -GRANT USAGE ON *.* TO 'mysqltest4'@'localhost' IDENTIFIED BY PASSWORD '*196BDEDE2AE4F84CA44C47D54D78478C7E2BD7B7' +GRANT USAGE ON *.* TO `mysqltest4`@`localhost` IDENTIFIED BY PASSWORD '*196BDEDE2AE4F84CA44C47D54D78478C7E2BD7B7' connection slave; **** Checking grants on slave **** show grants for mysqltest1@localhost; ERROR 42000: There is no such grant defined for user 'mysqltest1' on host 'localhost' show grants for mysqltest3@localhost; Grants for mysqltest3@localhost -GRANT USAGE ON *.* TO 'mysqltest3'@'localhost' -GRANT SELECT ON `test`.* TO 'mysqltest3'@'localhost' -GRANT INSERT, INSERT (a), UPDATE (a), REFERENCES (a) ON `test`.`t4` TO 'mysqltest3'@'localhost' +GRANT USAGE ON *.* TO `mysqltest3`@`localhost` +GRANT SELECT ON `test`.* TO `mysqltest3`@`localhost` +GRANT INSERT, INSERT (a), UPDATE (a), REFERENCES (a) ON `test`.`t4` TO `mysqltest3`@`localhost` show grants for mysqltest4@localhost; Grants for mysqltest4@localhost -GRANT USAGE ON *.* TO 'mysqltest4'@'localhost' IDENTIFIED BY PASSWORD '*196BDEDE2AE4F84CA44C47D54D78478C7E2BD7B7' +GRANT USAGE ON *.* TO `mysqltest4`@`localhost` IDENTIFIED BY PASSWORD '*196BDEDE2AE4F84CA44C47D54D78478C7E2BD7B7' set global slave_exec_mode='IDEMPOTENT'; call mtr.add_suppression("Slave SQL.*Could not execute Delete_rows event on table mysql.* error.* 1032"); connection master; diff --git a/mysql-test/suite/versioning/r/truncate_privilege.result b/mysql-test/suite/versioning/r/truncate_privilege.result index 3242c4557c5..e2b48c494be 100644 --- a/mysql-test/suite/versioning/r/truncate_privilege.result +++ b/mysql-test/suite/versioning/r/truncate_privilege.result @@ -9,7 +9,7 @@ create table mysqltest.t (a int) with system versioning; connection user1; show grants; Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` delete history from mysqltest.t before system_time now(); ERROR 42000: DELETE HISTORY command denied to user 'mysqltest_1'@'localhost' for table 't' connection root; @@ -18,16 +18,16 @@ grant delete history on mysqltest.t to mysqltest_1@localhost; connection user1; show grants; Grants for mysqltest_1@localhost -GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' -GRANT DELETE HISTORY ON `mysqltest`.* TO 'mysqltest_1'@'localhost' -GRANT DELETE HISTORY ON `mysqltest`.`t` TO 'mysqltest_1'@'localhost' +GRANT USAGE ON *.* TO `mysqltest_1`@`localhost` +GRANT DELETE HISTORY ON `mysqltest`.* TO `mysqltest_1`@`localhost` +GRANT DELETE HISTORY ON `mysqltest`.`t` TO `mysqltest_1`@`localhost` delete history from mysqltest.t before system_time now(); connection root; grant all on *.* to mysqltest_1@localhost; show grants for mysqltest_1@localhost; Grants for mysqltest_1@localhost -GRANT ALL PRIVILEGES ON *.* TO 'mysqltest_1'@'localhost' -GRANT DELETE HISTORY ON `mysqltest`.* TO 'mysqltest_1'@'localhost' -GRANT DELETE HISTORY ON `mysqltest`.`t` TO 'mysqltest_1'@'localhost' +GRANT ALL PRIVILEGES ON *.* TO `mysqltest_1`@`localhost` +GRANT DELETE HISTORY ON `mysqltest`.* TO `mysqltest_1`@`localhost` +GRANT DELETE HISTORY ON `mysqltest`.`t` TO `mysqltest_1`@`localhost` drop user mysqltest_1@localhost; drop database mysqltest; -- cgit v1.2.1 From 80da23257658ea2c3250f16116eee57c1de63c7f Mon Sep 17 00:00:00 2001 From: Thirunarayanan Balathandayuthapani Date: Fri, 7 Feb 2020 15:22:16 +0530 Subject: MDEV-21563 FTS thread aborts during shutdown - Added the test case in innodb_fts suite - Updated copyright year in row0mysql.cc --- mysql-test/suite/innodb_fts/r/misc_debug2.result | 6 ++++++ mysql-test/suite/innodb_fts/t/misc_debug2.test | 11 +++++++++++ 2 files changed, 17 insertions(+) create mode 100644 mysql-test/suite/innodb_fts/r/misc_debug2.result create mode 100644 mysql-test/suite/innodb_fts/t/misc_debug2.test (limited to 'mysql-test') diff --git a/mysql-test/suite/innodb_fts/r/misc_debug2.result b/mysql-test/suite/innodb_fts/r/misc_debug2.result new file mode 100644 index 00000000000..e9daa2d6b30 --- /dev/null +++ b/mysql-test/suite/innodb_fts/r/misc_debug2.result @@ -0,0 +1,6 @@ +call mtr.add_suppression("InnoDB: Table '.*' tablespace is set as discarded."); +CREATE TABLE mdev21563(f1 VARCHAR(100), FULLTEXT idx(f1))ENGINE=InnoDB; +set debug_dbug="+d,fts_instrument_sync_request"; +INSERT INTO mdev21563 VALUES('This is a test'); +ALTER TABLE mdev21563 DISCARD TABLESPACE; +DROP TABLE mdev21563; diff --git a/mysql-test/suite/innodb_fts/t/misc_debug2.test b/mysql-test/suite/innodb_fts/t/misc_debug2.test new file mode 100644 index 00000000000..31c026e3db9 --- /dev/null +++ b/mysql-test/suite/innodb_fts/t/misc_debug2.test @@ -0,0 +1,11 @@ +--source include/have_innodb.inc +--source include/have_debug.inc +--source include/not_embedded.inc +call mtr.add_suppression("InnoDB: Table '.*' tablespace is set as discarded."); + +CREATE TABLE mdev21563(f1 VARCHAR(100), FULLTEXT idx(f1))ENGINE=InnoDB; +set debug_dbug="+d,fts_instrument_sync_request"; +INSERT INTO mdev21563 VALUES('This is a test'); +ALTER TABLE mdev21563 DISCARD TABLESPACE; +--source include/restart_mysqld.inc +DROP TABLE mdev21563; -- cgit v1.2.1 From 3be751d5b9076239baaa07677ab81304fcd92207 Mon Sep 17 00:00:00 2001 From: Thirunarayanan Balathandayuthapani Date: Fri, 7 Feb 2020 16:01:31 +0530 Subject: MDEV-21608 Assertion `n_ext == dtuple_get_n_ext(dtuple)' failed during updation of PK - n_ext value may be less than dtuple_get_n_ext(dtuple) when PK is being updated and new record inherits the externally stored fields from delete mark old record. --- mysql-test/suite/innodb/r/innodb-blob.result | 6 ++++++ mysql-test/suite/innodb/t/innodb-blob.test | 7 +++++++ 2 files changed, 13 insertions(+) (limited to 'mysql-test') diff --git a/mysql-test/suite/innodb/r/innodb-blob.result b/mysql-test/suite/innodb/r/innodb-blob.result index c2b46661e31..8a6327216d0 100644 --- a/mysql-test/suite/innodb/r/innodb-blob.result +++ b/mysql-test/suite/innodb/r/innodb-blob.result @@ -153,3 +153,9 @@ a SELECT * FROM t2; a DROP TABLE t1,t2,t3; +CREATE TABLE t1(f1 INT PRIMARY KEY, f2 TEXT)ENGINE=InnoDB +ROW_FORMAT=REDUNDANT; +SET @fill_amount = (@@innodb_page_size / 2 ) + 1 ; +INSERT INTO t1 VALUES(1, REPEAT(2, @fill_amount)); +UPDATE t1 SET f1 = 2; +DROP TABLE t1; diff --git a/mysql-test/suite/innodb/t/innodb-blob.test b/mysql-test/suite/innodb/t/innodb-blob.test index fbf0641880b..301966fb41d 100644 --- a/mysql-test/suite/innodb/t/innodb-blob.test +++ b/mysql-test/suite/innodb/t/innodb-blob.test @@ -206,3 +206,10 @@ SELECT a FROM t3; SELECT * FROM t2; DROP TABLE t1,t2,t3; + +CREATE TABLE t1(f1 INT PRIMARY KEY, f2 TEXT)ENGINE=InnoDB + ROW_FORMAT=REDUNDANT; +SET @fill_amount = (@@innodb_page_size / 2 ) + 1 ; +INSERT INTO t1 VALUES(1, REPEAT(2, @fill_amount)); +UPDATE t1 SET f1 = 2; +DROP TABLE t1; -- cgit v1.2.1 From 82c3b42a6e75f1b19b334c7327a9e3cdf9b42e42 Mon Sep 17 00:00:00 2001 From: Oleksandr Byelkin Date: Thu, 6 Feb 2020 20:03:04 +0100 Subject: Windows test fix --- mysql-test/r/mysqld--help,win.rdiff | 27 ++++++++++++++------------- 1 file changed, 14 insertions(+), 13 deletions(-) (limited to 'mysql-test') diff --git a/mysql-test/r/mysqld--help,win.rdiff b/mysql-test/r/mysqld--help,win.rdiff index 7ef9ec5da5f..6f151591643 100644 --- a/mysql-test/r/mysqld--help,win.rdiff +++ b/mysql-test/r/mysqld--help,win.rdiff @@ -1,6 +1,6 @@ --- a/mysql-test/r/mysqld--help.result +++ b/mysql-test/r/mysqld--help.result -@@ -334,7 +334,6 @@ +@@ -341,7 +341,6 @@ The number of segments in a key cache -L, --language=name Client error messages in given language. May be given as a full path. Deprecated. Use --lc-messages-dir instead. @@ -8,7 +8,7 @@ --lc-messages=name Set the language used for the error messages. -L, --lc-messages-dir=name Directory where error messages are -@@ -543,6 +542,7 @@ +@@ -551,6 +550,7 @@ Use MySQL-5.6 (instead of MariaDB-5.3) format for TIME, DATETIME, TIMESTAMP columns. (Defaults to on; use --skip-mysql56-temporal-format to disable.) @@ -16,7 +16,7 @@ --net-buffer-length=# Buffer length for TCP/IP and socket communication --net-read-timeout=# -@@ -957,6 +957,9 @@ +@@ -965,6 +965,9 @@ characteristics (isolation level, read only/read write,snapshot - but not any work done / data modified within the transaction). @@ -26,7 +26,7 @@ --show-slave-auth-info Show user and password in SHOW SLAVE HOSTS on this master. -@@ -1069,6 +1072,10 @@ +@@ -1077,6 +1080,10 @@ Log slow queries to given log file. Defaults logging to 'hostname'-slow.log. Must be enabled to activate other slow log options @@ -37,7 +37,7 @@ --socket=name Socket file to use for connection --sort-buffer-size=# Each thread that needs to do a sort allocates a buffer of -@@ -1087,6 +1094,7 @@ +@@ -1095,6 +1102,7 @@ NO_ENGINE_SUBSTITUTION, PAD_CHAR_TO_FULL_LENGTH --stack-trace Print a symbolic stack trace on failure (Defaults to on; use --skip-stack-trace to disable.) @@ -45,7 +45,7 @@ --standard-compliant-cte Allow only CTEs compliant to SQL standard (Defaults to on; use --skip-standard-compliant-cte to disable.) -@@ -1135,6 +1143,11 @@ +@@ -1143,6 +1151,11 @@ --thread-pool-max-threads=# Maximum allowed number of worker threads in the thread pool @@ -57,7 +57,7 @@ --thread-pool-oversubscribe=# How many additional active worker threads in a group are allowed. -@@ -1173,8 +1186,8 @@ +@@ -1181,8 +1194,8 @@ automatically convert it to an on-disk MyISAM or Aria table. -t, --tmpdir=name Path for temporary files. Several paths may be specified, @@ -68,7 +68,7 @@ --transaction-alloc-block-size=# Allocation block size for transactions to be stored in binary log -@@ -1299,7 +1312,6 @@ +@@ -1308,7 +1321,6 @@ key-cache-division-limit 100 key-cache-file-hash-size 512 key-cache-segments 0 @@ -76,7 +76,7 @@ lc-messages en_US lc-messages-dir MYSQL_SHAREDIR/ lc-time-names en_US -@@ -1369,6 +1381,7 @@ +@@ -1378,6 +1390,7 @@ myisam-stats-method NULLS_UNEQUAL myisam-use-mmap FALSE mysql56-temporal-format TRUE @@ -84,7 +84,7 @@ net-buffer-length 16384 net-read-timeout 30 net-retry-count 10 -@@ -1470,6 +1483,8 @@ +@@ -1479,6 +1492,8 @@ session-track-state-change FALSE session-track-system-variables session-track-transaction-info OFF @@ -93,7 +93,7 @@ show-slave-auth-info FALSE silent-startup FALSE skip-grant-tables TRUE -@@ -1494,6 +1509,7 @@ +@@ -1503,6 +1518,7 @@ slave-type-conversions slow-launch-time 2 slow-query-log FALSE @@ -101,7 +101,7 @@ sort-buffer-size 2097152 sql-mode STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION stack-trace TRUE -@@ -1507,14 +1523,16 @@ +@@ -1516,14 +1532,16 @@ sync-relay-log 10000 sync-relay-log-info 10000 sysdate-is-now FALSE @@ -109,8 +109,9 @@ +table-cache 2000 table-definition-cache 400 -table-open-cache 421 +-table-open-cache-instances 1 +table-open-cache 2000 - table-open-cache-instances 8 ++table-open-cache-instances 8 tc-heuristic-recover OFF thread-cache-size 151 thread-pool-idle-timeout 60 -- cgit v1.2.1 From 785a9ac93a8eb78d3d2930a8fd9f84008bc3867a Mon Sep 17 00:00:00 2001 From: Oleksandr Byelkin Date: Fri, 7 Feb 2020 10:42:57 +0100 Subject: added warning to ignore --- mysql-test/mysql-test-run.pl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'mysql-test') diff --git a/mysql-test/mysql-test-run.pl b/mysql-test/mysql-test-run.pl index adc693bb29d..ec6af7c1171 100755 --- a/mysql-test/mysql-test-run.pl +++ b/mysql-test/mysql-test-run.pl @@ -4717,8 +4717,8 @@ sub extract_warning_lines ($$) { qr/InnoDB: See also */, qr/InnoDB: Cannot open .*ib_buffer_pool.* for reading: No such file or directory*/, qr/InnoDB: Table .*mysql.*innodb_table_stats.* not found./, - qr/InnoDB: User stopword table .* does not exist./ - + qr/InnoDB: User stopword table .* does not exist./, + qr/Detected table cache mutex contention at instance .* waits. Additional table cache instance cannot be activated: consider raising table_open_cache_instances. Number of active instances/ ); my $matched_lines= []; -- cgit v1.2.1 From 8d7462ec499812557d0a0eff2ad1792927cb80ab Mon Sep 17 00:00:00 2001 From: Igor Babaev Date: Fri, 7 Feb 2020 19:42:11 -0800 Subject: MDEV-21614 Wrong query results with optimizer_switch="split_materialized=on" Do not materialize a semi-join nest if it contains a materialized derived table /view that potentially can be subject to the split optimization. Splitting of materialization of such nest would help, but currently there is no code to support this technique. --- mysql-test/main/derived_cond_pushdown.result | 89 ++++++++++++++++++++++++++++ mysql-test/main/derived_cond_pushdown.test | 43 ++++++++++++++ 2 files changed, 132 insertions(+) (limited to 'mysql-test') diff --git a/mysql-test/main/derived_cond_pushdown.result b/mysql-test/main/derived_cond_pushdown.result index 19c4ee81124..1ae78aea875 100644 --- a/mysql-test/main/derived_cond_pushdown.result +++ b/mysql-test/main/derived_cond_pushdown.result @@ -16829,4 +16829,93 @@ id username id userid logindate 2 user2 3 2 2017-06-19 12:17:02 set join_cache_level=default; DROP TABLE t1,t2; +# +# MDEV-21614: potentially splittable materialized derived/view +# within materialized semi-join +# +create table t1 ( +id int not null auto_increment primary key, +a int not null +) engine=myisam; +create table t2 ( +id int not null auto_increment primary key, +ro_id int not null, +flag int not null, key (ro_id) +) engine=myisam; +insert into t1(a) select seq+100 from seq_1_to_20; +insert into t2(ro_id,flag) select seq, 1 from seq_1_to_20; +insert into t2(ro_id,flag) select seq, 0 from seq_1_to_20; +create view v1 as +select t1.* from t1 left join t2 on (t1.id = t2.ro_id AND t2.flag = 1) +group by t1.id; +select id, a from t1 where id in (select id from v1); +id a +1 101 +2 102 +3 103 +4 104 +5 105 +6 106 +7 107 +8 108 +9 109 +10 110 +11 111 +12 112 +13 113 +14 114 +15 115 +16 116 +17 117 +18 118 +19 119 +20 120 +explain extended select id, a from t1 where id in (select id from v1); +id select_type table type possible_keys key key_len ref rows filtered Extra +1 PRIMARY t1 ALL PRIMARY NULL NULL NULL 20 100.00 +1 PRIMARY ref key0 key0 4 test.t1.id 2 100.00 FirstMatch(t1) +3 LATERAL DERIVED t1 eq_ref PRIMARY PRIMARY 4 test.t1.id 1 100.00 +3 LATERAL DERIVED t2 ref ro_id ro_id 4 test.t1.id 1 100.00 Using where +Warnings: +Note 1003 /* select#1 */ select `test`.`t1`.`id` AS `id`,`test`.`t1`.`a` AS `a` from `test`.`t1` semi join (`test`.`v1`) where `v1`.`id` = `test`.`t1`.`id` +select id, a from t1 +where id in (select id +from (select t1.* from t1 left join t2 +on (t1.id = t2.ro_id AND t2.flag = 1) +group by t1.id) dt); +id a +1 101 +2 102 +3 103 +4 104 +5 105 +6 106 +7 107 +8 108 +9 109 +10 110 +11 111 +12 112 +13 113 +14 114 +15 115 +16 116 +17 117 +18 118 +19 119 +20 120 +explain extended select id, a from t1 +where id in (select id +from (select t1.* from t1 left join t2 +on (t1.id = t2.ro_id AND t2.flag = 1) +group by t1.id) dt); +id select_type table type possible_keys key key_len ref rows filtered Extra +1 PRIMARY t1 ALL PRIMARY NULL NULL NULL 20 100.00 +1 PRIMARY ref key0 key0 4 test.t1.id 2 100.00 FirstMatch(t1) +3 LATERAL DERIVED t1 eq_ref PRIMARY PRIMARY 4 test.t1.id 1 100.00 +3 LATERAL DERIVED t2 ref ro_id ro_id 4 test.t1.id 1 100.00 Using where +Warnings: +Note 1003 /* select#1 */ select `test`.`t1`.`id` AS `id`,`test`.`t1`.`a` AS `a` from `test`.`t1` semi join ((/* select#3 */ select `test`.`t1`.`id` AS `id`,`test`.`t1`.`a` AS `a` from `test`.`t1` left join `test`.`t2` on(`test`.`t2`.`ro_id` = `test`.`t1`.`id` and `test`.`t2`.`flag` = 1) where `test`.`t1`.`id` = `test`.`t1`.`id` group by `test`.`t1`.`id`) `dt`) where `dt`.`id` = `test`.`t1`.`id` +drop view v1; +drop table t1,t2; # End of 10.3 tests diff --git a/mysql-test/main/derived_cond_pushdown.test b/mysql-test/main/derived_cond_pushdown.test index e3a7306f7a0..525122e6cd7 100644 --- a/mysql-test/main/derived_cond_pushdown.test +++ b/mysql-test/main/derived_cond_pushdown.test @@ -1,3 +1,4 @@ +--source include/have_sequence.inc --source include/default_optimizer_switch.inc let $no_pushdown= set statement optimizer_switch='condition_pushdown_for_derived=off' for; set @@join_buffer_size=256*1024; @@ -3328,4 +3329,46 @@ set join_cache_level=default; DROP TABLE t1,t2; + +--echo # +--echo # MDEV-21614: potentially splittable materialized derived/view +--echo # within materialized semi-join +--echo # + +create table t1 ( + id int not null auto_increment primary key, + a int not null +) engine=myisam; + +create table t2 ( + id int not null auto_increment primary key, + ro_id int not null, + flag int not null, key (ro_id) +) engine=myisam; + +insert into t1(a) select seq+100 from seq_1_to_20; +insert into t2(ro_id,flag) select seq, 1 from seq_1_to_20; +insert into t2(ro_id,flag) select seq, 0 from seq_1_to_20; + +create view v1 as +select t1.* from t1 left join t2 on (t1.id = t2.ro_id AND t2.flag = 1) + group by t1.id; + +let $q1= +select id, a from t1 where id in (select id from v1); +eval $q1; +eval explain extended $q1; + +let $q2= +select id, a from t1 + where id in (select id + from (select t1.* from t1 left join t2 + on (t1.id = t2.ro_id AND t2.flag = 1) + group by t1.id) dt); +eval $q2; +eval explain extended $q2; + +drop view v1; +drop table t1,t2; + --echo # End of 10.3 tests -- cgit v1.2.1 From 0ea8894e52b09a28170fd813c8c2496684f1c977 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Lindstr=C3=B6m?= Date: Fri, 31 Jan 2020 08:05:41 +0200 Subject: MDEV-21601 : Cleanup Galera disabled tests * Remove those tests that will not be supported on that release. * Make sure that correct tests are disabled and have MDEVs * Sort test names This should not be merged upwards. --- mysql-test/suite/galera/disabled.def | 7 - .../galera/r/galera_account_management.result | 65 ----- .../suite/galera/r/galera_as_master_gtid.result | 59 ----- .../r/galera_as_master_gtid_change_master.result | 15 -- .../galera/r/galera_as_slave_preordered.result | 19 -- .../r/galera_binlog_rows_query_log_events.result | 12 - mysql-test/suite/galera/r/galera_flush.result | 88 ------- mysql-test/suite/galera/r/galera_migrate.result | 79 ------ .../suite/galera/t/galera_account_management.test | 99 -------- .../suite/galera/t/galera_as_master_gtid.cnf | 8 - .../suite/galera/t/galera_as_master_gtid.test | 70 ------ .../t/galera_as_master_gtid_change_master.cnf | 8 - .../t/galera_as_master_gtid_change_master.test | 54 ---- .../suite/galera/t/galera_as_slave_preordered.cnf | 3 - .../suite/galera/t/galera_as_slave_preordered.test | 84 ------- .../t/galera_binlog_rows_query_log_events.test | 28 --- mysql-test/suite/galera/t/galera_flush.cnf | 10 - mysql-test/suite/galera/t/galera_flush.test | 273 --------------------- mysql-test/suite/galera/t/galera_migrate.cnf | 59 ----- mysql-test/suite/galera/t/galera_migrate.test | 204 --------------- 20 files changed, 1244 deletions(-) delete mode 100644 mysql-test/suite/galera/r/galera_account_management.result delete mode 100644 mysql-test/suite/galera/r/galera_as_master_gtid.result delete mode 100644 mysql-test/suite/galera/r/galera_as_master_gtid_change_master.result delete mode 100644 mysql-test/suite/galera/r/galera_as_slave_preordered.result delete mode 100644 mysql-test/suite/galera/r/galera_binlog_rows_query_log_events.result delete mode 100644 mysql-test/suite/galera/r/galera_flush.result delete mode 100644 mysql-test/suite/galera/r/galera_migrate.result delete mode 100644 mysql-test/suite/galera/t/galera_account_management.test delete mode 100644 mysql-test/suite/galera/t/galera_as_master_gtid.cnf delete mode 100644 mysql-test/suite/galera/t/galera_as_master_gtid.test delete mode 100644 mysql-test/suite/galera/t/galera_as_master_gtid_change_master.cnf delete mode 100644 mysql-test/suite/galera/t/galera_as_master_gtid_change_master.test delete mode 100644 mysql-test/suite/galera/t/galera_as_slave_preordered.cnf delete mode 100644 mysql-test/suite/galera/t/galera_as_slave_preordered.test delete mode 100644 mysql-test/suite/galera/t/galera_binlog_rows_query_log_events.test delete mode 100644 mysql-test/suite/galera/t/galera_flush.cnf delete mode 100644 mysql-test/suite/galera/t/galera_flush.test delete mode 100644 mysql-test/suite/galera/t/galera_migrate.cnf delete mode 100644 mysql-test/suite/galera/t/galera_migrate.test (limited to 'mysql-test') diff --git a/mysql-test/suite/galera/disabled.def b/mysql-test/suite/galera/disabled.def index 504adbbd1d1..6f0f1fbdde5 100644 --- a/mysql-test/suite/galera/disabled.def +++ b/mysql-test/suite/galera/disabled.def @@ -15,21 +15,14 @@ MW-328A : MDEV-21483 galera.MW-328A galera.MW-328B MW-328B : MDEV-21483 galera.MW-328A galera.MW-328B MW-329 : MDEV-19962 Galera test failure on MW-329 galera.galera_defaults : MDEV-21494 Galera test sporadic failure on galera.galera_defaults -galera_account_management : MariaDB 10.0 does not support ALTER USER -galera_as_master_gtid : Requires MySQL GTID -galera_as_master_gtid_change_master : Requires MySQL GTID galera_as_slave_gtid_myisam : MDEV-21421 galera.galera_as_slave_gtid_myisam -galera_as_slave_preordered : wsrep-preordered feature not merged to MariaDB galera_as_slave_replication_bundle : MDEV-15785 OPTION_GTID_BEGIN is set in Gtid_log_event::do_apply_event() galera_autoinc_sst_mariabackup : Known issue, may require porting MDEV-17458 from later versions -galera_binlog_rows_query_log_events: MariaDB does not support binlog_rows_query_log_events galera_binlog_stmt_autoinc : MDEV-19959 Galera test failure on galera_binlog_stmt_autoinc -galera_flush : MariaDB does not have global.thread_statistics galera_gcache_recover_manytrx : MDEV-18834 Galera test failure galera_ist_mariabackup : MDEV-18829 test leaves port open galera_ist_progress : MDEV-15236 fails when trying to read transfer status galera_load_data : MDEV-19968 galera.galera_load_data -galera_migrate : MariaDB does not support START SLAVE USER galera_parallel_autoinc_largetrx : MDEV-20916 galera.galera_parallel_autoinc_largetrx galera_parallel_simple : MDEV-20318 galera.galera_parallel_simple fails galera_shutdown_nonprim : MDEV-21493 galera.galera_shutdown_nonprim diff --git a/mysql-test/suite/galera/r/galera_account_management.result b/mysql-test/suite/galera/r/galera_account_management.result deleted file mode 100644 index 6c81d401136..00000000000 --- a/mysql-test/suite/galera/r/galera_account_management.result +++ /dev/null @@ -1,65 +0,0 @@ -connection node_1; -CREATE USER user1, user2 IDENTIFIED BY 'password'; -connection node_2; -SELECT COUNT(*) = 2 FROM mysql.user WHERE user IN ('user1', 'user2'); -COUNT(*) = 2 -1 -connection node_1; -ALTER USER user1 PASSWORD EXPIRE; -SELECT password_expired = 'Y' FROM mysql.user WHERE user = 'user1'; -password_expired = 'Y' -1 -connection node_2; -SELECT password_expired = 'Y' FROM mysql.user WHERE user = 'user1'; -password_expired = 'Y' -1 -connection node_1; -RENAME USER user2 TO user3; -connection node_2; -SELECT COUNT(*) = 0 FROM mysql.user WHERE user = 'user2'; -COUNT(*) = 0 -1 -SELECT COUNT(*) = 1 FROM mysql.user WHERE user = 'user3'; -COUNT(*) = 1 -1 -connection node_1; -SET PASSWORD FOR user3 = PASSWORD('foo'); -connection node_1; -SELECT password != '' FROM mysql.user WHERE user = 'user3'; -password != '' -1 -connection node_1; -DROP USER user1, user3; -connection node_2; -SELECT COUNT(*) = 0 FROM mysql.user WHERE user IN ('user1', 'user2'); -COUNT(*) = 0 -1 -connection node_1; -GRANT ALL ON *.* TO user4 IDENTIFIED BY 'password'; -connection node_2; -SELECT COUNT(*) = 1 FROM mysql.user WHERE user = 'user4'; -COUNT(*) = 1 -1 -SELECT Select_priv = 'Y' FROM mysql.user WHERE user = 'user4'; -Select_priv = 'Y' -1 -connection node_1; -CREATE USER user5; -GRANT PROXY ON user4 TO user5; -connection node_2; -SELECT COUNT(*) = 1 FROM mysql.proxies_priv WHERE user = 'user5'; -COUNT(*) = 1 -1 -connection node_1; -REVOKE ALL PRIVILEGES ON *.* FROM user4; -connection node_2; -SELECT Select_priv = 'N' FROM mysql.user WHERE user = 'user4'; -Select_priv = 'N' -1 -connection node_1; -REVOKE PROXY ON user4 FROM user5; -connection node_2; -SELECT COUNT(*) = 0 FROM mysql.proxies_priv WHERE user = 'user5'; -COUNT(*) = 0 -1 -DROP USER user4, user5; diff --git a/mysql-test/suite/galera/r/galera_as_master_gtid.result b/mysql-test/suite/galera/r/galera_as_master_gtid.result deleted file mode 100644 index 8dfe462d495..00000000000 --- a/mysql-test/suite/galera/r/galera_as_master_gtid.result +++ /dev/null @@ -1,59 +0,0 @@ -START SLAVE USER='root'; -Warnings: -Note 1759 Sending passwords in plain text without SSL/TLS is extremely insecure. -CREATE TABLE t1 (f1 INTEGER PRIMARY KEY) ENGINE=InnoDB; -INSERT INTO t1 VALUES(1); -uuids_do_not_match -1 -SHOW BINLOG EVENTS IN 'mysqld-bin.000002' FROM 120; -Log_name Pos Event_type Server_id End_log_pos Info -mysqld-bin.000002 120 Previous_gtids 1 151 -mysqld-bin.000002 151 Gtid 1 199 SET @@SESSION.GTID_NEXT= ':1' -mysqld-bin.000002 199 Query 1 327 use `test`; CREATE TABLE t1 (f1 INTEGER PRIMARY KEY) ENGINE=InnoDB -mysqld-bin.000002 327 Gtid 1 375 SET @@SESSION.GTID_NEXT= ':2' -mysqld-bin.000002 375 Query 1 452 BEGIN -mysqld-bin.000002 452 Table_map 1 497 table_id: # (test.t1) -mysqld-bin.000002 497 Write_rows 1 537 table_id: # flags: STMT_END_F -mysqld-bin.000002 537 Xid 1 568 COMMIT /* xid=# */ -INSERT INTO t1 VALUES(2); -uuids_do_not_match -1 -uuids_match -1 -SHOW BINLOG EVENTS IN 'mysqld-bin.000003' FROM 120; -Log_name Pos Event_type Server_id End_log_pos Info -mysqld-bin.000003 120 Previous_gtids 2 151 -mysqld-bin.000003 151 Gtid 1 199 SET @@SESSION.GTID_NEXT= ':1' -mysqld-bin.000003 199 Query 1 327 use `test`; CREATE TABLE t1 (f1 INTEGER PRIMARY KEY) ENGINE=InnoDB -mysqld-bin.000003 327 Gtid 1 375 SET @@SESSION.GTID_NEXT= ':2' -mysqld-bin.000003 375 Query 1 443 BEGIN -mysqld-bin.000003 443 Table_map 1 488 table_id: # (test.t1) -mysqld-bin.000003 488 Write_rows 1 528 table_id: # flags: STMT_END_F -mysqld-bin.000003 528 Xid 1 559 COMMIT /* xid=# */ -mysqld-bin.000003 559 Gtid 2 607 SET @@SESSION.GTID_NEXT= ':3' -mysqld-bin.000003 607 Query 2 684 BEGIN -mysqld-bin.000003 684 Table_map 2 729 table_id: # (test.t1) -mysqld-bin.000003 729 Write_rows 2 769 table_id: # flags: STMT_END_F -mysqld-bin.000003 769 Xid 2 800 COMMIT /* xid=# */ -uuids_do_not_match -1 -uuids_match -1 -SHOW BINLOG EVENTS IN 'mysqld-bin.000001' FROM 120; -Log_name Pos Event_type Server_id End_log_pos Info -mysqld-bin.000001 120 Previous_gtids 3 151 -mysqld-bin.000001 151 Gtid 1 199 SET @@SESSION.GTID_NEXT= ':1' -mysqld-bin.000001 199 Query 1 327 use `test`; CREATE TABLE t1 (f1 INTEGER PRIMARY KEY) ENGINE=InnoDB -mysqld-bin.000001 327 Gtid 1 375 SET @@SESSION.GTID_NEXT= ':2' -mysqld-bin.000001 375 Query 1 443 BEGIN -mysqld-bin.000001 443 Table_map 1 488 table_id: # (test.t1) -mysqld-bin.000001 488 Write_rows 1 528 table_id: # flags: STMT_END_F -mysqld-bin.000001 528 Xid 1 559 COMMIT /* xid=# */ -mysqld-bin.000001 559 Gtid 2 607 SET @@SESSION.GTID_NEXT= ':3' -mysqld-bin.000001 607 Query 2 675 BEGIN -mysqld-bin.000001 675 Table_map 2 720 table_id: # (test.t1) -mysqld-bin.000001 720 Write_rows 2 760 table_id: # flags: STMT_END_F -mysqld-bin.000001 760 Xid 2 791 COMMIT /* xid=# */ -DROP TABLE t1; -STOP SLAVE; -RESET SLAVE ALL; diff --git a/mysql-test/suite/galera/r/galera_as_master_gtid_change_master.result b/mysql-test/suite/galera/r/galera_as_master_gtid_change_master.result deleted file mode 100644 index 80fbccf58e2..00000000000 --- a/mysql-test/suite/galera/r/galera_as_master_gtid_change_master.result +++ /dev/null @@ -1,15 +0,0 @@ -START SLAVE USER='root'; -Warnings: -Note 1759 Sending passwords in plain text without SSL/TLS is extremely insecure. -CREATE TABLE t1 (f1 INTEGER PRIMARY KEY) ENGINE=InnoDB; -INSERT INTO t1 VALUES(1); -INSERT INTO t1 VALUES(2); -STOP SLAVE; -START SLAVE USER='root'; -Warnings: -Note 1759 Sending passwords in plain text without SSL/TLS is extremely insecure. -INSERT INTO t1 VALUES(3); -INSERT INTO t1 VALUES(4); -DROP TABLE t1; -STOP SLAVE; -RESET SLAVE ALL; diff --git a/mysql-test/suite/galera/r/galera_as_slave_preordered.result b/mysql-test/suite/galera/r/galera_as_slave_preordered.result deleted file mode 100644 index 27a08e73491..00000000000 --- a/mysql-test/suite/galera/r/galera_as_slave_preordered.result +++ /dev/null @@ -1,19 +0,0 @@ -START SLAVE USER='root'; -Warnings: -Note 1759 Sending passwords in plain text without SSL/TLS is extremely insecure. -CREATE TABLE ten (f1 INTEGER); -INSERT INTO ten VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10); -CREATE TABLE t1 (f1 INTEGER PRIMARY KEY AUTO_INCREMENT, f2 INTEGER) ENGINE=InnoDB; -SELECT COUNT(DISTINCT f1) = 2 * 100 * 10 * 10 FROM t1; -COUNT(DISTINCT f1) = 2 * 100 * 10 * 10 -1 -SELECT COUNT(*) = 2 * 100 * 10 * 10 FROM t1; -COUNT(*) = 2 * 100 * 10 * 10 -1 -SELECT COUNT(DISTINCT f1) = 2 * 100 * 10 * 10 FROM t1; -COUNT(DISTINCT f1) = 2 * 100 * 10 * 10 -1 -DROP TABLE t1; -DROP TABLE ten; -STOP SLAVE; -RESET SLAVE ALL; diff --git a/mysql-test/suite/galera/r/galera_binlog_rows_query_log_events.result b/mysql-test/suite/galera/r/galera_binlog_rows_query_log_events.result deleted file mode 100644 index 80ae3d0de2c..00000000000 --- a/mysql-test/suite/galera/r/galera_binlog_rows_query_log_events.result +++ /dev/null @@ -1,12 +0,0 @@ -SET GLOBAL binlog_rows_query_log_events=TRUE; -CREATE TABLE t1 (f1 INT PRIMARY KEY) ENGINE=InnoDB; -INSERT INTO t1 VALUES (1); -SELECT COUNT(*) = 1 FROM t1; -COUNT(*) = 1 -1 -UPDATE t1 SET f1 = 2 WHERE f1 = 1; -SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 2; -COUNT(*) = 1 -1 -SET GLOBAL binlog_rows_query_log_events = 0; -DROP TABLE t1; diff --git a/mysql-test/suite/galera/r/galera_flush.result b/mysql-test/suite/galera/r/galera_flush.result deleted file mode 100644 index 71226432eda..00000000000 --- a/mysql-test/suite/galera/r/galera_flush.result +++ /dev/null @@ -1,88 +0,0 @@ -DROP TABLE IF EXISTS t1, t2; -FLUSH DES_KEY_FILE; -wsrep_last_committed_diff -1 -FLUSH HOSTS; -wsrep_last_committed_diff -1 -SET GLOBAL wsrep_replicate_myisam = TRUE; -INSERT INTO mysql.user VALUES('localhost','user1',PASSWORD('pass1'), 'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0,'mysql_native_password','','N','N','',0); -FLUSH PRIVILEGES; -DELETE FROM mysql.user WHERE user = 'user1'; -SET GLOBAL wsrep_replicate_myisam = FALSE; -FLUSH PRIVILEGES; -FLUSH QUERY CACHE; -wsrep_last_committed_diff -1 -FLUSH STATUS; -wsrep_last_committed_diff -1 -FLUSH USER_RESOURCES; -wsrep_last_committed_diff -1 -FLUSH TABLES; -wsrep_last_committed_diff -1 -CREATE TABLE t2 (f1 INTEGER); -FLUSH TABLES t2; -wsrep_last_committed_diff -1 -FLUSH ERROR LOGS; -wsrep_last_committed_diff -1 -FLUSH SLOW LOGS; -wsrep_last_committed_diff -1 -FLUSH GENERAL LOGS; -wsrep_last_committed_diff -1 -FLUSH ENGINE LOGS; -wsrep_last_committed_diff -1 -FLUSH RELAY LOGS; -wsrep_last_committed_diff -1 -SET @userstat_old= @@userstat; -SET GLOBAL userstat=ON; -FLUSH CLIENT_STATISTICS; -FLUSH INDEX_STATISTICS; -FLUSH TABLE_STATISTICS; -FLUSH USER_STATISTICS; -wsrep_last_committed_diff -1 -SET @old_thread_statistics= @@global.thread_statistics; -SET GLOBAL thread_statistics= ON; -FLUSH THREAD_STATISTICS; -wsrep_last_committed_diff -1 -FLUSH CHANGED_PAGE_BITMAPS; -wsrep_last_committed_diff -1 -CREATE TABLE t1 (f1 INTEGER); -FLUSH LOGS; -FLUSH TABLES WITH READ LOCK; -UNLOCK TABLES; -FLUSH TABLES t1 WITH READ LOCK; -UNLOCK TABLES; -FLUSH TABLES t1 FOR EXPORT; -UNLOCK TABLES; -wsrep_last_committed_diff -1 -LOCK TABLES t1 WRITE; -FLUSH TABLES t1; -UNLOCK TABLES; -wsrep_last_committed_diff -1 -LOCK TABLES t1 READ; -FLUSH TABLES t1; -ERROR HY000: Table 't1' was locked with a READ lock and can't be updated -UNLOCK TABLES; -wsrep_last_committed_diff -1 -FLUSH TABLES t1; -wsrep_last_committed_diff -1 -DROP TABLE t1; -DROP TABLE t2; -SET GLOBAL userstat= @userstat_old; -SET GLOBAL thread_statistics= @old_thread_statistics; diff --git a/mysql-test/suite/galera/r/galera_migrate.result b/mysql-test/suite/galera/r/galera_migrate.result deleted file mode 100644 index aab3ffbd6b6..00000000000 --- a/mysql-test/suite/galera/r/galera_migrate.result +++ /dev/null @@ -1,79 +0,0 @@ -CREATE TABLE t1 (f1 INTEGER) ENGINE=InnoDB; -INSERT INTO t1 VALUES (1); -START SLAVE USER='root'; -Warnings: -Note 1759 Sending passwords in plain text without SSL/TLS is extremely insecure. -INSERT INTO t1 VALUES (2); -START SLAVE USER='root'; -Warnings: -Note 1759 Sending passwords in plain text without SSL/TLS is extremely insecure. -INSERT INTO t1 VALUES (3); -INSERT INTO t1 VALUES (4); -SET GLOBAL wsrep_cluster_address='gcomm://'; -INSERT INTO t1 VALUES (5); -SELECT VARIABLE_VALUE = 'Synced' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_local_state_comment'; -VARIABLE_VALUE = 'Synced' -1 -SELECT VARIABLE_VALUE = 'Primary' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_status'; -VARIABLE_VALUE = 'Primary' -1 -SELECT VARIABLE_VALUE = 1 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size'; -VARIABLE_VALUE = 1 -1 -INSERT INTO t1 VALUES (6); -GRANT ALL PRIVILEGES ON *.* TO 'sst'; -SET GLOBAL wsrep_sst_auth = 'sst:'; -GRANT ALL PRIVILEGES ON *.* TO 'sst'; -SELECT VARIABLE_VALUE = 'Synced' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_local_state_comment'; -VARIABLE_VALUE = 'Synced' -1 -SELECT VARIABLE_VALUE = 'Primary' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_status'; -VARIABLE_VALUE = 'Primary' -1 -SELECT VARIABLE_VALUE = 2 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size'; -VARIABLE_VALUE = 2 -1 -STOP SLAVE; -RESET SLAVE ALL; -STOP SLAVE; -RESET SLAVE ALL; -INSERT INTO t1 VALUES (7); -INSERT INTO t1 VALUES (8); -SELECT COUNT(*) = 8 FROM t1; -COUNT(*) = 8 -1 -SELECT VARIABLE_VALUE = 'Synced' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_local_state_comment'; -VARIABLE_VALUE = 'Synced' -1 -SELECT VARIABLE_VALUE = 'Primary' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_status'; -VARIABLE_VALUE = 'Primary' -1 -SELECT VARIABLE_VALUE = 2 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size'; -VARIABLE_VALUE = 2 -1 -SELECT COUNT(*) = 8 FROM t1; -COUNT(*) = 8 -1 -SELECT VARIABLE_VALUE = 'Synced' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_local_state_comment'; -VARIABLE_VALUE = 'Synced' -1 -SELECT VARIABLE_VALUE = 'Primary' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_status'; -VARIABLE_VALUE = 'Primary' -1 -SELECT VARIABLE_VALUE = 2 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size'; -VARIABLE_VALUE = 2 -1 -DROP TABLE t1; -DROP TABLE t1; -SET GLOBAL wsrep_provider = 'none'; -SET GLOBAL wsrep_sst_auth = ''; -SET GLOBAL wsrep_provider_options = ''; -DROP TABLE t1; -DROP USER sst; -SET GLOBAL wsrep_provider = 'none'; -SET GLOBAL wsrep_sst_method = 'rsync'; -SET GLOBAL wsrep_provider_options = ''; -SET GLOBAL wsrep_sst_receive_address = 'AUTO'; -DROP TABLE t1; -DROP USER sst; -CALL mtr.add_suppression("InnoDB: Error: Table \"mysql\"\\.\"innodb_index_stats\" not found"); diff --git a/mysql-test/suite/galera/t/galera_account_management.test b/mysql-test/suite/galera/t/galera_account_management.test deleted file mode 100644 index 6dea0fcfa9e..00000000000 --- a/mysql-test/suite/galera/t/galera_account_management.test +++ /dev/null @@ -1,99 +0,0 @@ -# -# Test the account management statements - GRANT, REVOKE, etc. -# - ---source include/galera_cluster.inc ---source include/have_innodb.inc - -# -# CREATE USER -# ---connection node_1 -CREATE USER user1, user2 IDENTIFIED BY 'password'; - ---connection node_2 -SELECT COUNT(*) = 2 FROM mysql.user WHERE user IN ('user1', 'user2'); - -# -# ALTER USER -# - ---connection node_1 -ALTER USER user1 PASSWORD EXPIRE; -SELECT password_expired = 'Y' FROM mysql.user WHERE user = 'user1'; - ---connection node_2 -SELECT password_expired = 'Y' FROM mysql.user WHERE user = 'user1'; - -# -# RENAME USER -# - ---connection node_1 -RENAME USER user2 TO user3; - ---connection node_2 -SELECT COUNT(*) = 0 FROM mysql.user WHERE user = 'user2'; -SELECT COUNT(*) = 1 FROM mysql.user WHERE user = 'user3'; - -# -# SET PASSWORD -# - ---connection node_1 -SET PASSWORD FOR user3 = PASSWORD('foo'); - ---connection node_1 -SELECT password != '' FROM mysql.user WHERE user = 'user3'; - -# -# DROP USER -# ---connection node_1 -DROP USER user1, user3; - ---connection node_2 -SELECT COUNT(*) = 0 FROM mysql.user WHERE user IN ('user1', 'user2'); - -# -# GRANT -# - ---connection node_1 -GRANT ALL ON *.* TO user4 IDENTIFIED BY 'password'; - ---connection node_2 -SELECT COUNT(*) = 1 FROM mysql.user WHERE user = 'user4'; -SELECT Select_priv = 'Y' FROM mysql.user WHERE user = 'user4'; - -# -# GRANT PROXY ON -# ---connection node_1 -CREATE USER user5; -GRANT PROXY ON user4 TO user5; - ---connection node_2 -SELECT COUNT(*) = 1 FROM mysql.proxies_priv WHERE user = 'user5'; - -# -# REVOKE -# - ---connection node_1 -REVOKE ALL PRIVILEGES ON *.* FROM user4; - ---connection node_2 -SELECT Select_priv = 'N' FROM mysql.user WHERE user = 'user4'; - -# -# REVOKE PROXY -# - ---connection node_1 -REVOKE PROXY ON user4 FROM user5; - ---connection node_2 -SELECT COUNT(*) = 0 FROM mysql.proxies_priv WHERE user = 'user5'; - -DROP USER user4, user5; diff --git a/mysql-test/suite/galera/t/galera_as_master_gtid.cnf b/mysql-test/suite/galera/t/galera_as_master_gtid.cnf deleted file mode 100644 index 19517556331..00000000000 --- a/mysql-test/suite/galera/t/galera_as_master_gtid.cnf +++ /dev/null @@ -1,8 +0,0 @@ -!include ../galera_2nodes_as_master.cnf - -[mysqld] -gtid-mode=ON -log-bin=mysqld-bin -log-slave-updates -enforce-gtid-consistency -binlog-format=ROW diff --git a/mysql-test/suite/galera/t/galera_as_master_gtid.test b/mysql-test/suite/galera/t/galera_as_master_gtid.test deleted file mode 100644 index 9db104b7cab..00000000000 --- a/mysql-test/suite/galera/t/galera_as_master_gtid.test +++ /dev/null @@ -1,70 +0,0 @@ -# -# Test Galera as a master to a MySQL slave with GTID -# -# The galera/galera_2node_master.cnf describes the setup of the nodes -# -# We check that all transactions originating from within Galera use a UUID that is -# different from the server_uuid of either node -# -# - ---source include/have_innodb.inc ---source include/have_log_bin.inc ---source include/galera_cluster.inc - ---connect node_3, 127.0.0.1, root, , test, $NODE_MYPORT_3 ---disable_query_log ---eval CHANGE MASTER TO MASTER_HOST='127.0.0.1', MASTER_PORT=$NODE_MYPORT_1; ---enable_query_log -START SLAVE USER='root'; - ---connection node_1 -CREATE TABLE t1 (f1 INTEGER PRIMARY KEY) ENGINE=InnoDB; -INSERT INTO t1 VALUES(1); - ---let $effective_uuid = `SELECT LEFT(@@global.gtid_executed, 36)` ---disable_query_log ---eval SELECT '$effective_uuid' != @@global.server_uuid AS uuids_do_not_match; ---enable_query_log - ---replace_result $effective_uuid ---replace_regex /table_id: [0-9]+/table_id: #/ /xid=[0-9]+/xid=#/ -SHOW BINLOG EVENTS IN 'mysqld-bin.000002' FROM 120; - ---connection node_2 -INSERT INTO t1 VALUES(2); - ---disable_query_log ---eval SELECT '$effective_uuid' != @@global.server_uuid AS uuids_do_not_match; ---eval SELECT '$effective_uuid' = LEFT(@@global.gtid_executed, 36) AS uuids_match; ---enable_query_log - ---replace_result $effective_uuid ---replace_regex /table_id: [0-9]+/table_id: #/ /xid=[0-9]+/xid=#/ -SHOW BINLOG EVENTS IN 'mysqld-bin.000003' FROM 120; - ---connection node_3 ---let $wait_condition = SELECT COUNT(*) = 1 FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 't1'; ---source include/wait_condition.inc - ---let $wait_condition = SELECT COUNT(*) = 2 FROM t1; ---source include/wait_condition.inc - ---disable_query_log ---eval SELECT '$effective_uuid' != @@global.server_uuid AS uuids_do_not_match; ---eval SELECT '$effective_uuid' = LEFT(@@global.gtid_executed, 36) AS uuids_match; ---enable_query_log - ---replace_result $effective_uuid ---replace_regex /table_id: [0-9]+/table_id: #/ /xid=[0-9]+/xid=#/ -SHOW BINLOG EVENTS IN 'mysqld-bin.000001' FROM 120; - ---connection node_1 -DROP TABLE t1; - ---connection node_3 ---let $wait_condition = SELECT COUNT(*) = 0 FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 't1'; ---source include/wait_condition.inc - -STOP SLAVE; -RESET SLAVE ALL; diff --git a/mysql-test/suite/galera/t/galera_as_master_gtid_change_master.cnf b/mysql-test/suite/galera/t/galera_as_master_gtid_change_master.cnf deleted file mode 100644 index 19517556331..00000000000 --- a/mysql-test/suite/galera/t/galera_as_master_gtid_change_master.cnf +++ /dev/null @@ -1,8 +0,0 @@ -!include ../galera_2nodes_as_master.cnf - -[mysqld] -gtid-mode=ON -log-bin=mysqld-bin -log-slave-updates -enforce-gtid-consistency -binlog-format=ROW diff --git a/mysql-test/suite/galera/t/galera_as_master_gtid_change_master.test b/mysql-test/suite/galera/t/galera_as_master_gtid_change_master.test deleted file mode 100644 index 23606d7ac4c..00000000000 --- a/mysql-test/suite/galera/t/galera_as_master_gtid_change_master.test +++ /dev/null @@ -1,54 +0,0 @@ -# -# Test that a MySQL slave can use CHANGE MASTER MASTER_AUTO_POSITION to begin replicating -# from another Galera node -# -# The galera/galera_2node_master.cnf describes the setup of the nodes -# -# - ---source include/have_innodb.inc ---source include/have_log_bin.inc ---source include/galera_cluster.inc - ---connect node_3, 127.0.0.1, root, , test, $NODE_MYPORT_3 ---disable_query_log ---eval CHANGE MASTER TO MASTER_HOST='127.0.0.1', MASTER_PORT=$NODE_MYPORT_1; ---enable_query_log -START SLAVE USER='root'; - ---connection node_1 -CREATE TABLE t1 (f1 INTEGER PRIMARY KEY) ENGINE=InnoDB; -INSERT INTO t1 VALUES(1); - ---connection node_2 -INSERT INTO t1 VALUES(2); - ---connection node_3 -STOP SLAVE; ---disable_query_log ---eval CHANGE MASTER TO MASTER_HOST='127.0.0.1', MASTER_PORT=$NODE_MYPORT_2, MASTER_AUTO_POSITION=1; ---enable_query_log -START SLAVE USER='root'; - ---connection node_1 -INSERT INTO t1 VALUES(3); - ---connection node_2 -INSERT INTO t1 VALUES(4); - ---connection node_3 ---let $wait_condition = SELECT COUNT(*) = 1 FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 't1'; ---source include/wait_condition.inc - ---let $wait_condition = SELECT COUNT(*) = 4 FROM t1; ---source include/wait_condition.inc - ---connection node_1 -DROP TABLE t1; - ---connection node_3 ---let $wait_condition = SELECT COUNT(*) = 0 FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 't1'; ---source include/wait_condition.inc - -STOP SLAVE; -RESET SLAVE ALL; diff --git a/mysql-test/suite/galera/t/galera_as_slave_preordered.cnf b/mysql-test/suite/galera/t/galera_as_slave_preordered.cnf deleted file mode 100644 index d1a0fb15ff3..00000000000 --- a/mysql-test/suite/galera/t/galera_as_slave_preordered.cnf +++ /dev/null @@ -1,3 +0,0 @@ -!include ../galera_2nodes_as_slave.cnf -[mysqld] -wsrep-preordered=TRUE diff --git a/mysql-test/suite/galera/t/galera_as_slave_preordered.test b/mysql-test/suite/galera/t/galera_as_slave_preordered.test deleted file mode 100644 index 6f221f83b3a..00000000000 --- a/mysql-test/suite/galera/t/galera_as_slave_preordered.test +++ /dev/null @@ -1,84 +0,0 @@ -# -# Test Galera as a slave to a MySQL master with --wsrep-preordered=TRUE -# -# The galera/galera_2node_slave.cnf describes the setup of the nodes -# - ---source include/have_innodb.inc ---source include/have_log_bin.inc - -# As node #1 is not a Galera node, we connect to node #2 in order to run include/galera_cluster.inc ---connect node_2a, 127.0.0.1, root, , test, $NODE_MYPORT_2 ---source include/galera_cluster.inc - ---connection node_2 ---disable_query_log ---eval CHANGE MASTER TO MASTER_HOST='127.0.0.1', MASTER_PORT=$NODE_MYPORT_1; ---enable_query_log -START SLAVE USER='root'; - -# -# Issue many large-ish transaction on the async master -# - ---connection node_1 -CREATE TABLE ten (f1 INTEGER); -INSERT INTO ten VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10); - -CREATE TABLE t1 (f1 INTEGER PRIMARY KEY AUTO_INCREMENT, f2 INTEGER) ENGINE=InnoDB; - ---disable_query_log ---let $count = 100 -while ($count) -{ - --eval INSERT INTO t1 (f2) SELECT 1 FROM ten AS a1, ten AS a2; - --dec $count -} ---enable_query_log - -# -# While the async transactions are being applied, issue another set of transactions -# on the Galera node. -# - ---connection node_2 ---let $wait_condition = SELECT COUNT(*) = 1 FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 't1'; ---source include/wait_condition.inc - ---let $count = 100 ---disable_query_log -while ($count) -{ - --eval INSERT INTO t1 (f2) SELECT 1 FROM ten AS a1, ten AS a2; - --dec $count -} ---enable_query_log - -# -# Confirm that all transactions successfully committed -# - ---let $wait_condition = SELECT COUNT(*) = 2 * 100 * 10 * 10 FROM t1; ---source include/wait_condition.inc - -SELECT COUNT(DISTINCT f1) = 2 * 100 * 10 * 10 FROM t1; - ---connect node_3, 127.0.0.1, root, , test, $NODE_MYPORT_3 ---connection node_3 -SELECT COUNT(*) = 2 * 100 * 10 * 10 FROM t1; -SELECT COUNT(DISTINCT f1) = 2 * 100 * 10 * 10 FROM t1; - -# -# Cleanup -# - ---connection node_1 -DROP TABLE t1; -DROP TABLE ten; - ---connection node_2 ---let $wait_condition = SELECT COUNT(*) = 0 FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 't1'; ---source include/wait_condition.inc - -STOP SLAVE; -RESET SLAVE ALL; diff --git a/mysql-test/suite/galera/t/galera_binlog_rows_query_log_events.test b/mysql-test/suite/galera/t/galera_binlog_rows_query_log_events.test deleted file mode 100644 index 95bc85c4cab..00000000000 --- a/mysql-test/suite/galera/t/galera_binlog_rows_query_log_events.test +++ /dev/null @@ -1,28 +0,0 @@ -# -# Test that Galera continues to run even with binlog-rows-query-log-events=TRUE -# - ---source include/galera_cluster.inc ---source include/have_innodb.inc - ---let $binlog_rows_query_log_events_orig = `SELECT @@binlog_rows_query_log_events` - -SET GLOBAL binlog_rows_query_log_events=TRUE; - -CREATE TABLE t1 (f1 INT PRIMARY KEY) ENGINE=InnoDB; - -INSERT INTO t1 VALUES (1); - ---connection node_2 -SELECT COUNT(*) = 1 FROM t1; - ---connection node_1 -UPDATE t1 SET f1 = 2 WHERE f1 = 1; - ---connection node_2 -SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 2; - ---connection node_1 ---eval SET GLOBAL binlog_rows_query_log_events = $binlog_rows_query_log_events_orig - -DROP TABLE t1; diff --git a/mysql-test/suite/galera/t/galera_flush.cnf b/mysql-test/suite/galera/t/galera_flush.cnf deleted file mode 100644 index e2d869ab364..00000000000 --- a/mysql-test/suite/galera/t/galera_flush.cnf +++ /dev/null @@ -1,10 +0,0 @@ -!include ../galera_2nodes.cnf - -[mysqld.1] -query_cache_type=1 -query_cache_size=1000000 - -[mysqld.2] -query_cache_type=1 -query_cache_size=1000000 - diff --git a/mysql-test/suite/galera/t/galera_flush.test b/mysql-test/suite/galera/t/galera_flush.test deleted file mode 100644 index 77e95f62fda..00000000000 --- a/mysql-test/suite/galera/t/galera_flush.test +++ /dev/null @@ -1,273 +0,0 @@ -# -# Test that various FLUSH commands are replicated. Whenever possible, check the slave for the effects. -# - ---source include/galera_cluster.inc ---source include/have_innodb.inc ---source include/have_perfschema.inc ---source include/have_query_cache.inc - ---disable_warnings -DROP TABLE IF EXISTS t1, t2; ---enable_warnings -# -# The following FLUSH statements should be replicated -# - ---connection node_2 ---let $wsrep_last_committed_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---connection node_1 -FLUSH DES_KEY_FILE; ---connection node_2 ---let $wsrep_last_committed_after = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---disable_query_log ---eval SELECT $wsrep_last_committed_after = $wsrep_last_committed_before + 1 AS wsrep_last_committed_diff; ---enable_query_log - - ---connection node_2 ---let $wsrep_last_committed_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---connection node_1 -FLUSH HOSTS; ---connection node_2 ---let $wsrep_last_committed_after = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---disable_query_log ---eval SELECT $wsrep_last_committed_after = $wsrep_last_committed_before + 1 AS wsrep_last_committed_diff; ---enable_query_log - ---connection node_1 -SET GLOBAL wsrep_replicate_myisam = TRUE; -INSERT INTO mysql.user VALUES('localhost','user1',PASSWORD('pass1'), 'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0,'mysql_native_password','','N','N','',0); -FLUSH PRIVILEGES; ---connect node_2a, 127.0.0.1, user1, pass1, test, $NODE_MYPORT_2 ---connection node_1 -DELETE FROM mysql.user WHERE user = 'user1'; -SET GLOBAL wsrep_replicate_myisam = FALSE; -FLUSH PRIVILEGES; - - ---connection node_2 ---let $wsrep_last_committed_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---connection node_1 -FLUSH QUERY CACHE; ---connection node_2 ---let $wsrep_last_committed_after = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---disable_query_log ---eval SELECT $wsrep_last_committed_after = $wsrep_last_committed_before + 1 AS wsrep_last_committed_diff; ---enable_query_log - - ---connection node_2 ---let $wsrep_last_committed_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---connection node_1 -FLUSH STATUS; - ---connection node_2 ---let $wsrep_last_committed_after = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---disable_query_log ---eval SELECT $wsrep_last_committed_after = $wsrep_last_committed_before + 1 AS wsrep_last_committed_diff; ---enable_query_log - - ---connection node_2 ---let $wsrep_last_committed_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---connection node_1 -FLUSH USER_RESOURCES; ---connection node_2 ---let $wsrep_last_committed_after = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---disable_query_log ---eval SELECT $wsrep_last_committed_after = $wsrep_last_committed_before + 1 AS wsrep_last_committed_diff; ---enable_query_log - - ---connection node_2 ---let $wsrep_last_committed_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---connection node_1 -FLUSH TABLES; ---connection node_2 ---let $wsrep_last_committed_after = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---disable_query_log ---eval SELECT $wsrep_last_committed_after = $wsrep_last_committed_before + 1 AS wsrep_last_committed_diff; ---enable_query_log - ---connection node_1 -CREATE TABLE t2 (f1 INTEGER); - ---connection node_2 ---let $wsrep_last_committed_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---connection node_1 -FLUSH TABLES t2; ---connection node_2 ---let $wsrep_last_committed_after = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---disable_query_log ---eval SELECT $wsrep_last_committed_after = $wsrep_last_committed_before + 1 AS wsrep_last_committed_diff; ---enable_query_log - - ---connection node_2 ---let $wsrep_last_committed_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---connection node_1 -FLUSH ERROR LOGS; ---connection node_2 ---let $wsrep_last_committed_after = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---disable_query_log ---eval SELECT $wsrep_last_committed_after = $wsrep_last_committed_before + 1 AS wsrep_last_committed_diff; ---enable_query_log - - ---connection node_2 ---let $wsrep_last_committed_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---connection node_1 -FLUSH SLOW LOGS; ---connection node_2 ---let $wsrep_last_committed_after = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---disable_query_log ---eval SELECT $wsrep_last_committed_after = $wsrep_last_committed_before + 1 AS wsrep_last_committed_diff; ---enable_query_log - ---connection node_2 ---let $wsrep_last_committed_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---connection node_1 -FLUSH GENERAL LOGS; ---connection node_2 ---let $wsrep_last_committed_after = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---disable_query_log ---eval SELECT $wsrep_last_committed_after = $wsrep_last_committed_before + 1 AS wsrep_last_committed_diff; ---enable_query_log - ---connection node_2 ---let $wsrep_last_committed_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---connection node_1 -FLUSH ENGINE LOGS; ---connection node_2 ---let $wsrep_last_committed_after = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---disable_query_log ---eval SELECT $wsrep_last_committed_after = $wsrep_last_committed_before + 1 AS wsrep_last_committed_diff; ---enable_query_log - ---connection node_2 ---let $wsrep_last_committed_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---connection node_1 -FLUSH RELAY LOGS; ---connection node_2 ---let $wsrep_last_committed_after = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---disable_query_log ---eval SELECT $wsrep_last_committed_after = $wsrep_last_committed_before + 1 AS wsrep_last_committed_diff; ---enable_query_log - ---connection node_1 -SET @userstat_old= @@userstat; -SET GLOBAL userstat=ON; - ---connection node_2 ---let $wsrep_last_committed_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---connection node_1 -FLUSH CLIENT_STATISTICS; -FLUSH INDEX_STATISTICS; -FLUSH TABLE_STATISTICS; -FLUSH USER_STATISTICS; ---connection node_2 ---let $wsrep_last_committed_after = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---disable_query_log ---eval SELECT $wsrep_last_committed_after = $wsrep_last_committed_before + 4 AS wsrep_last_committed_diff; ---enable_query_log - - ---connection node_1 -SET @old_thread_statistics= @@global.thread_statistics; -SET GLOBAL thread_statistics= ON; - ---connection node_2 ---let $wsrep_last_committed_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---connection node_1 -FLUSH THREAD_STATISTICS; ---connection node_2 ---let $wsrep_last_committed_after = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---disable_query_log ---eval SELECT $wsrep_last_committed_after = $wsrep_last_committed_before + 1 AS wsrep_last_committed_diff; ---enable_query_log - - ---connection node_2 ---let $wsrep_last_committed_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---connection node_1 -FLUSH CHANGED_PAGE_BITMAPS; ---connection node_2 ---let $wsrep_last_committed_after = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---disable_query_log ---eval SELECT $wsrep_last_committed_after = $wsrep_last_committed_before + 1 AS wsrep_last_committed_diff; ---enable_query_log - - -# -# The following statements should not be replicated: FLUSH LOGS, FLUSH TABLES WITH LOCKS -# - - ---connection node_1 -CREATE TABLE t1 (f1 INTEGER); - ---connection node_2 ---let $wsrep_last_committed_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` - ---connection node_1 -FLUSH LOGS; -FLUSH TABLES WITH READ LOCK; -UNLOCK TABLES; -FLUSH TABLES t1 WITH READ LOCK; -UNLOCK TABLES; -FLUSH TABLES t1 FOR EXPORT; -UNLOCK TABLES; - ---connection node_2 ---let $wsrep_last_committed_after = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---disable_query_log ---eval SELECT $wsrep_last_committed_after = $wsrep_last_committed_before AS wsrep_last_committed_diff; ---enable_query_log - - -## Test LOCK TABLES with FLUSH TABLES -## LOCK TABLES t1 write followed by flush tables t1 should succeed due to MDL upgrade. -## LOCK tables t2 read followed by flush tables t2 should fail with ER_TABLE_NOT_LOCKED_FOR_WRITE - - ---connection node_2 ---let $wsrep_last_committed_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---connection node_1 -LOCK TABLES t1 WRITE; -FLUSH TABLES t1; -UNLOCK TABLES; ---connection node_2 ---let $wsrep_last_committed_after = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---disable_query_log ---eval SELECT $wsrep_last_committed_after = $wsrep_last_committed_before + 1 AS wsrep_last_committed_diff; ---enable_query_log - - ---connection node_2 ---let $wsrep_last_committed_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---connection node_1 -LOCK TABLES t1 READ; ---error ER_TABLE_NOT_LOCKED_FOR_WRITE -FLUSH TABLES t1; -UNLOCK TABLES; ---connection node_2 ---let $wsrep_last_committed_after = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---disable_query_log ---eval SELECT $wsrep_last_committed_after = $wsrep_last_committed_before AS wsrep_last_committed_diff; ---enable_query_log ---connection node_1 -FLUSH TABLES t1; ---connection node_2 ---let $wsrep_last_committed_after = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---disable_query_log ---eval SELECT $wsrep_last_committed_after = $wsrep_last_committed_before + 1 AS wsrep_last_committed_diff; ---enable_query_log - - - ---connection node_1 -DROP TABLE t1; -DROP TABLE t2; -SET GLOBAL userstat= @userstat_old; -SET GLOBAL thread_statistics= @old_thread_statistics; diff --git a/mysql-test/suite/galera/t/galera_migrate.cnf b/mysql-test/suite/galera/t/galera_migrate.cnf deleted file mode 100644 index ed48f208e52..00000000000 --- a/mysql-test/suite/galera/t/galera_migrate.cnf +++ /dev/null @@ -1,59 +0,0 @@ -# -# This .cnf file starts 4 servers without enabling Galera. -# The galera_migrate.test will set wsrep_provider and the other settings as needed. -# - -!include include/default_mysqld.cnf - -[mysqld] -binlog-format=row -innodb_autoinc_lock_mode=2 -innodb_flush_log_at_trx_commit=2 -log-bin=mysqld-bin - -wsrep_node_address=127.0.0.1 -wsrep_causal_reads=ON -wsrep_sync_wait = 15 - -[mysqld.1] -#galera_port=@OPT.port -#ist_port=@OPT.port -#sst_port=@OPT.port - -[mysqld.2] -#galera_port=@OPT.port -#ist_port=@OPT.port -#sst_port=@OPT.port - -[mysqld.3] -#galera_port=@OPT.port -#ist_port=@OPT.port -#sst_port=@OPT.port - -[mysqld.4] -#galera_port=@OPT.port -#ist_port=@OPT.port -#sst_port=@OPT.port - -[ENV] -NODE_MYPORT_1= @mysqld.1.port -NODE_MYSOCK_1= @mysqld.1.socket - -NODE_MYPORT_2= @mysqld.2.port -NODE_MYSOCK_2= @mysqld.2.socket - -NODE_MYPORT_3= @mysqld.3.port -NODE_MYSOCK_3= @mysqld.3.socket - -NODE_MYPORT_4= @mysqld.4.port -NODE_MYSOCK_4= @mysqld.4.socket - -NODE_GALERAPORT_1= @mysqld.1.#galera_port -NODE_GALERAPORT_2= @mysqld.2.#galera_port -NODE_GALERAPORT_3= @mysqld.3.#galera_port -NODE_GALERAPORT_4= @mysqld.4.#galera_port - -NODE_SSTPORT_1= @mysqld.1.#sst_port -NODE_SSTPORT_2= @mysqld.2.#sst_port -NODE_SSTPORT_3= @mysqld.3.#sst_port -NODE_SSTPORT_4= @mysqld.4.#sst_port diff --git a/mysql-test/suite/galera/t/galera_migrate.test b/mysql-test/suite/galera/t/galera_migrate.test deleted file mode 100644 index 84897b66c6d..00000000000 --- a/mysql-test/suite/galera/t/galera_migrate.test +++ /dev/null @@ -1,204 +0,0 @@ -# -# Execute a migration from MariaDB replication to Galera replication. -# The test starts with 4 stand-alone servers defined by galera_migrate.cnf and then -# performs the following steps: -# -# 1. Begin with a single MySQL server -# 2. Establish traditional MySQL master-slave replication -# 3. Attach a new sever to serve as a MySQL replication slave -# 4. Enable Galera on the new slave and create a single-node Galera cluster -# 5. Attach a second Galera node -# 6. Turn off the traditional replication parts of the system -# 7. Continue replicating within Galera only -# - ---source include/big_test.inc ---source include/have_innodb.inc ---source include/have_log_bin.inc - -# -# Step #1 Begin with a single server -# - ---connect node_1, 127.0.0.1, root, , test, $NODE_MYPORT_1 - -CREATE TABLE t1 (f1 INTEGER) ENGINE=InnoDB; -INSERT INTO t1 VALUES (1); - -# -# Step #2. Establish traditional MySQL replication -# - ---connect node_2, 127.0.0.1, root, , test, $NODE_MYPORT_2 ---disable_query_log ---eval CHANGE MASTER TO MASTER_HOST='127.0.0.1', MASTER_PORT = $NODE_MYPORT_1; ---enable_query_log -START SLAVE; - ---connection node_1 -INSERT INTO t1 VALUES (2); - ---connection node_2 ---let $wait_condition = SELECT COUNT(*) = 1 FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 't1'; ---source include/wait_condition.inc - ---let $wait_condition = SELECT COUNT(*) = 2 FROM t1; ---source include/wait_condition.inc - -# -# Step #3. Attach a second slave, later to be converted to Galera -# - ---connect node_3, 127.0.0.1, root, , test, $NODE_MYPORT_3 ---disable_query_log ---eval CHANGE MASTER TO MASTER_HOST='127.0.0.1', MASTER_PORT = $NODE_MYPORT_1; ---enable_query_log -START SLAVE USER='root'; - ---connection node_1 -INSERT INTO t1 VALUES (3); - ---connection node_3 ---let $wait_condition = SELECT COUNT(*) = 1 FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 't1'; ---source include/wait_condition.inc - ---let $wait_condition = SELECT COUNT(*) = 3 FROM t1; ---source include/wait_condition.inc - -# -# Step #4. Convert this MySQL slave into a Galera node -# - ---connection node_1 -INSERT INTO t1 VALUES (4); - ---connection node_3 ---disable_query_log ---eval SET GLOBAL wsrep_provider='$WSREP_PROVIDER' ---eval SET GLOBAL wsrep_provider_options='base_port=$NODE_GALERAPORT_3' ---enable_query_log -SET GLOBAL wsrep_cluster_address='gcomm://'; - ---connection node_1 -INSERT INTO t1 VALUES (5); - ---connection node_3 ---let $wait_condition = SELECT COUNT(*) = 1 FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 't1'; ---source include/wait_condition.inc ---let $wait_condition = SELECT COUNT(*) = 5 FROM t1; ---source include/wait_condition.inc - ---let $wait_condition = SELECT VARIABLE_VALUE = 'ON' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_ready'; ---source include/wait_condition.inc - -SELECT VARIABLE_VALUE = 'Synced' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_local_state_comment'; -SELECT VARIABLE_VALUE = 'Primary' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_status'; -SELECT VARIABLE_VALUE = 1 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size'; - ---connection node_1 -INSERT INTO t1 VALUES (6); - -# -# Step #5. Attach a second Galera node using mysqldump SST -# - ---connection node_3 -# We need a user with a password for mysqldump SST -GRANT ALL PRIVILEGES ON *.* TO 'sst'; -SET GLOBAL wsrep_sst_auth = 'sst:'; - ---connect node_4, 127.0.0.1, root, , test, $NODE_MYPORT_4 -GRANT ALL PRIVILEGES ON *.* TO 'sst'; - ---disable_query_log ---eval SET GLOBAL wsrep_sst_method = 'mysqldump'; ---eval SET GLOBAL wsrep_provider='$WSREP_PROVIDER' ---eval SET GLOBAL wsrep_provider_options='base_port=$NODE_GALERAPORT_4' ---eval SET GLOBAL wsrep_sst_receive_address = '127.0.0.2:$NODE_MYPORT_4'; ---eval SET GLOBAL wsrep_cluster_address='gcomm://127.0.0.1:$NODE_GALERAPORT_3' ---enable_query_log - ---let $wait_condition = SELECT COUNT(*) = 1 FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 't1'; ---source include/wait_condition.inc - ---let $wait_condition = SELECT COUNT(*) = 6 FROM t1; ---source include/wait_condition.inc - ---let $wait_condition = SELECT VARIABLE_VALUE = 'ON' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_ready'; ---source include/wait_condition.inc - -SELECT VARIABLE_VALUE = 'Synced' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_local_state_comment'; -SELECT VARIABLE_VALUE = 'Primary' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_status'; -SELECT VARIABLE_VALUE = 2 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size'; - - -# -# Step #6. Turn off traditional replication -# - ---connection node_2 -STOP SLAVE; -RESET SLAVE ALL; - ---connection node_3 -STOP SLAVE; -RESET SLAVE ALL; - -# -# Step #7. Continue replicating within Galera only -# - -# We need fresh connections due to galera#191 - ---connect node_3a, 127.0.0.1, root, , test, $NODE_MYPORT_3 -INSERT INTO t1 VALUES (7); - ---connect node_4a, 127.0.0.1, root, , test, $NODE_MYPORT_4 -INSERT INTO t1 VALUES (8); - ---connection node_4a -SELECT COUNT(*) = 8 FROM t1; - ---let $wait_condition = SELECT VARIABLE_VALUE = 'ON' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_ready'; ---source include/wait_condition.inc - -SELECT VARIABLE_VALUE = 'Synced' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_local_state_comment'; -SELECT VARIABLE_VALUE = 'Primary' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_status'; -SELECT VARIABLE_VALUE = 2 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size'; - ---connection node_3a -SELECT COUNT(*) = 8 FROM t1; - ---let $wait_condition = SELECT VARIABLE_VALUE = 'ON' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_ready'; ---source include/wait_condition.inc - -SELECT VARIABLE_VALUE = 'Synced' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_local_state_comment'; -SELECT VARIABLE_VALUE = 'Primary' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_status'; -SELECT VARIABLE_VALUE = 2 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size'; - -# -# Teardown -# - ---connection node_1 -DROP TABLE t1; - ---connection node_2 -DROP TABLE t1; - ---connection node_3 -SET GLOBAL wsrep_provider = 'none'; -SET GLOBAL wsrep_sst_auth = ''; -SET GLOBAL wsrep_provider_options = ''; -DROP TABLE t1; -DROP USER sst; - ---connection node_4 -SET GLOBAL wsrep_provider = 'none'; -SET GLOBAL wsrep_sst_method = 'rsync'; -SET GLOBAL wsrep_provider_options = ''; -SET GLOBAL wsrep_sst_receive_address = 'AUTO'; -DROP TABLE t1; -DROP USER sst; - -CALL mtr.add_suppression("InnoDB: Error: Table \"mysql\"\\.\"innodb_index_stats\" not found"); -- cgit v1.2.1 From 6fc72ce169add16272e202b372e6570917365932 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Lindstr=C3=B6m?= Date: Fri, 7 Feb 2020 14:18:17 +0200 Subject: MDEV-21667 : Galera test failure on MW-336 Problem seems to be the fact that we did not enforce correct applier thread numbers after every command that effects them. Test changes only. --- mysql-test/suite/galera/r/MW-336.result | 52 ++++++++++++++++++++----- mysql-test/suite/galera/t/MW-336.test | 68 ++++++++++++++++++++++++++------- 2 files changed, 96 insertions(+), 24 deletions(-) (limited to 'mysql-test') diff --git a/mysql-test/suite/galera/r/MW-336.result b/mysql-test/suite/galera/r/MW-336.result index b91e73aaada..dc1f0763a3f 100644 --- a/mysql-test/suite/galera/r/MW-336.result +++ b/mysql-test/suite/galera/r/MW-336.result @@ -2,14 +2,27 @@ connection node_1; CREATE TABLE t1 (f1 INTEGER) Engine=InnoDB; SET GLOBAL wsrep_slave_threads = 10; # Set slave threads to 10 step 1 +SELECT VARIABLE_VALUE AS EXPECT_10 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; +EXPECT_10 +10 SET GLOBAL wsrep_slave_threads = 1; connection node_2; INSERT INTO t1 VALUES (1); connection node_1; +# Wait until one of the appliers has exited +SELECT VARIABLE_VALUE AS EXPECT_9 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; +EXPECT_9 +9 SET GLOBAL wsrep_slave_threads = 10; # Set slave threads to 10 step 2 +SELECT VARIABLE_VALUE AS EXPECT_10 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; +EXPECT_10 +10 SET GLOBAL wsrep_slave_threads = 20; # Set slave threads to 20 +SELECT VARIABLE_VALUE AS EXPECT_20 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; +EXPECT_20 +20 SET GLOBAL wsrep_slave_threads = 1; connection node_2; INSERT INTO t1 VALUES (1); @@ -22,28 +35,47 @@ INSERT INTO t1 VALUES (7); INSERT INTO t1 VALUES (8); INSERT INTO t1 VALUES (9); INSERT INTO t1 VALUES (10); -connection node_1; -SET GLOBAL wsrep_slave_threads = 10; -SELECT COUNT(*) FROM t1; -COUNT(*) -11 -# Set slave threads to 10 step 3 -connection node_2; INSERT INTO t1 VALUES (11); INSERT INTO t1 VALUES (12); INSERT INTO t1 VALUES (13); INSERT INTO t1 VALUES (14); -INSERT INTO t1 VALUES (15); INSERT INTO t1 VALUES (16); INSERT INTO t1 VALUES (17); INSERT INTO t1 VALUES (18); INSERT INTO t1 VALUES (19); INSERT INTO t1 VALUES (20); +connection node_1; +# Wait until 19 of the appliers has exited +SELECT VARIABLE_VALUE AS EXPECT_1 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; +EXPECT_1 +1 +SELECT COUNT(*) FROM t1; +COUNT(*) +20 +SET GLOBAL wsrep_slave_threads = 10; +# Set slave threads to 10 step 3 +SELECT VARIABLE_VALUE AS EXPECT_10 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; +EXPECT_10 +10 +connection node_1; +SET GLOBAL wsrep_slave_threads = 1; +connection node_2; INSERT INTO t1 VALUES (21); INSERT INTO t1 VALUES (22); +INSERT INTO t1 VALUES (23); +INSERT INTO t1 VALUES (24); +INSERT INTO t1 VALUES (25); +INSERT INTO t1 VALUES (26); +INSERT INTO t1 VALUES (27); +INSERT INTO t1 VALUES (28); +INSERT INTO t1 VALUES (29); +INSERT INTO t1 VALUES (30); connection node_1; +# Wait until slave threads back to 1 +SELECT VARIABLE_VALUE AS EXPECT_1 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; +EXPECT_1 +1 SELECT COUNT(*) FROM t1; COUNT(*) -23 -SET GLOBAL wsrep_slave_threads = 1; +30 DROP TABLE t1; diff --git a/mysql-test/suite/galera/t/MW-336.test b/mysql-test/suite/galera/t/MW-336.test index 0e92094da6c..83943c7d8ea 100644 --- a/mysql-test/suite/galera/t/MW-336.test +++ b/mysql-test/suite/galera/t/MW-336.test @@ -17,20 +17,31 @@ SET GLOBAL wsrep_slave_threads = 10; --let $wait_condition_on_error_output = SELECT COUNT(*), 10 as EXPECTED_VALUE FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE = 'wsrep applier idle'; show processlist --source include/wait_condition_with_debug.inc +SELECT VARIABLE_VALUE AS EXPECT_10 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; + SET GLOBAL wsrep_slave_threads = 1; --connection node_2 INSERT INTO t1 VALUES (1); --connection node_1 +--echo # Wait until one of the appliers has exited +--let $wait_condition = SELECT VARIABLE_VALUE = 9 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; +--let $wait_condition_on_error_output = SELECT COUNT(*), 9 as EXPECTED_VALUE FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE = 'wsrep applier idle'; show processlist +--source include/wait_condition_with_debug.inc + +SELECT VARIABLE_VALUE AS EXPECT_9 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; + SET GLOBAL wsrep_slave_threads = 10; # Note that above insert could be handled by one of the slave threads --echo # Set slave threads to 10 step 2 ---let $wait_condition = SELECT VARIABLE_VALUE >= 9 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; ---let $wait_condition_on_error_output = SELECT COUNT(*), 9 as EXPECTED_VALUE FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE = 'wsrep applier idle'; show processlist +--let $wait_condition = SELECT VARIABLE_VALUE = 10 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; +--let $wait_condition_on_error_output = SELECT COUNT(*), 10 as EXPECTED_VALUE FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE = 'wsrep applier idle'; show processlist --source include/wait_condition_with_debug.inc +SELECT VARIABLE_VALUE AS EXPECT_10 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; + SET GLOBAL wsrep_slave_threads = 20; --echo # Set slave threads to 20 @@ -38,6 +49,8 @@ SET GLOBAL wsrep_slave_threads = 20; --let $wait_condition_on_error_output = SELECT COUNT(*), 20 as EXPECTED_VALUE FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE = 'wsrep applier idle'; show processlist --source include/wait_condition_with_debug.inc +SELECT VARIABLE_VALUE AS EXPECT_20 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; + SET GLOBAL wsrep_slave_threads = 1; --connection node_2 @@ -51,30 +64,57 @@ INSERT INTO t1 VALUES (7); INSERT INTO t1 VALUES (8); INSERT INTO t1 VALUES (9); INSERT INTO t1 VALUES (10); - ---connection node_1 -SET GLOBAL wsrep_slave_threads = 10; -SELECT COUNT(*) FROM t1; ---echo # Set slave threads to 10 step 3 ---let $wait_condition = SELECT VARIABLE_VALUE = 10 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; ---let $wait_condition_on_error_output = SELECT COUNT(*), 10 as EXPECTED_VALUE FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE = 'wsrep applier idle'; show processlist ---source include/wait_condition_with_debug.inc - ---connection node_2 INSERT INTO t1 VALUES (11); INSERT INTO t1 VALUES (12); INSERT INTO t1 VALUES (13); INSERT INTO t1 VALUES (14); -INSERT INTO t1 VALUES (15); INSERT INTO t1 VALUES (16); INSERT INTO t1 VALUES (17); INSERT INTO t1 VALUES (18); INSERT INTO t1 VALUES (19); INSERT INTO t1 VALUES (20); + +--connection node_1 +--echo # Wait until 19 of the appliers has exited +--let $wait_condition = SELECT VARIABLE_VALUE = 1 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; +--let $wait_condition_on_error_output = SELECT COUNT(*), 1 as EXPECTED_VALUE FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE = 'wsrep applier idle'; show processlist +--source include/wait_condition_with_debug.inc + +SELECT VARIABLE_VALUE AS EXPECT_1 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; + +SELECT COUNT(*) FROM t1; + +SET GLOBAL wsrep_slave_threads = 10; +--echo # Set slave threads to 10 step 3 +--let $wait_condition = SELECT VARIABLE_VALUE = 10 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; +--let $wait_condition_on_error_output = SELECT COUNT(*), 10 as EXPECTED_VALUE FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE = 'wsrep applier idle'; show processlist +--source include/wait_condition_with_debug.inc + +SELECT VARIABLE_VALUE AS EXPECT_10 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; + +--connection node_1 +SET GLOBAL wsrep_slave_threads = 1; + +--connection node_2 INSERT INTO t1 VALUES (21); INSERT INTO t1 VALUES (22); +INSERT INTO t1 VALUES (23); +INSERT INTO t1 VALUES (24); +INSERT INTO t1 VALUES (25); +INSERT INTO t1 VALUES (26); +INSERT INTO t1 VALUES (27); +INSERT INTO t1 VALUES (28); +INSERT INTO t1 VALUES (29); +INSERT INTO t1 VALUES (30); --connection node_1 +--echo # Wait until slave threads back to 1 +--let $wait_condition = SELECT VARIABLE_VALUE = 1 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; +--let $wait_condition_on_error_output = SELECT COUNT(*), 1 as EXPECTED_VALUE FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE = 'wsrep applier idle'; show processlist +--source include/wait_condition_with_debug.inc + +SELECT VARIABLE_VALUE AS EXPECT_1 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; + SELECT COUNT(*) FROM t1; -SET GLOBAL wsrep_slave_threads = 1; + DROP TABLE t1; -- cgit v1.2.1 From a30ab52635b08725c6582c132413c1a90758c557 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Lindstr=C3=B6m?= Date: Fri, 31 Jan 2020 08:05:41 +0200 Subject: MDEV-21601 : Cleanup Galera disabled tests * Remove those tests that will not be supported on that release. * Make sure that correct tests are disabled and have MDEVs * Sort test names This should not be merged upwards. --- mysql-test/suite/galera/disabled.def | 7 - .../galera/r/galera_account_management.result | 65 ----- .../suite/galera/r/galera_as_master_gtid.result | 59 ----- .../r/galera_as_master_gtid_change_master.result | 15 -- .../galera/r/galera_as_slave_preordered.result | 19 -- .../r/galera_binlog_rows_query_log_events.result | 12 - mysql-test/suite/galera/r/galera_flush.result | 88 ------- mysql-test/suite/galera/r/galera_migrate.result | 79 ------ .../suite/galera/t/galera_account_management.test | 99 -------- .../suite/galera/t/galera_as_master_gtid.cnf | 8 - .../suite/galera/t/galera_as_master_gtid.test | 70 ------ .../t/galera_as_master_gtid_change_master.cnf | 8 - .../t/galera_as_master_gtid_change_master.test | 54 ---- .../suite/galera/t/galera_as_slave_preordered.cnf | 3 - .../suite/galera/t/galera_as_slave_preordered.test | 84 ------- .../t/galera_binlog_rows_query_log_events.test | 28 --- mysql-test/suite/galera/t/galera_flush.cnf | 10 - mysql-test/suite/galera/t/galera_flush.test | 273 --------------------- mysql-test/suite/galera/t/galera_migrate.cnf | 59 ----- mysql-test/suite/galera/t/galera_migrate.test | 204 --------------- 20 files changed, 1244 deletions(-) delete mode 100644 mysql-test/suite/galera/r/galera_account_management.result delete mode 100644 mysql-test/suite/galera/r/galera_as_master_gtid.result delete mode 100644 mysql-test/suite/galera/r/galera_as_master_gtid_change_master.result delete mode 100644 mysql-test/suite/galera/r/galera_as_slave_preordered.result delete mode 100644 mysql-test/suite/galera/r/galera_binlog_rows_query_log_events.result delete mode 100644 mysql-test/suite/galera/r/galera_flush.result delete mode 100644 mysql-test/suite/galera/r/galera_migrate.result delete mode 100644 mysql-test/suite/galera/t/galera_account_management.test delete mode 100644 mysql-test/suite/galera/t/galera_as_master_gtid.cnf delete mode 100644 mysql-test/suite/galera/t/galera_as_master_gtid.test delete mode 100644 mysql-test/suite/galera/t/galera_as_master_gtid_change_master.cnf delete mode 100644 mysql-test/suite/galera/t/galera_as_master_gtid_change_master.test delete mode 100644 mysql-test/suite/galera/t/galera_as_slave_preordered.cnf delete mode 100644 mysql-test/suite/galera/t/galera_as_slave_preordered.test delete mode 100644 mysql-test/suite/galera/t/galera_binlog_rows_query_log_events.test delete mode 100644 mysql-test/suite/galera/t/galera_flush.cnf delete mode 100644 mysql-test/suite/galera/t/galera_flush.test delete mode 100644 mysql-test/suite/galera/t/galera_migrate.cnf delete mode 100644 mysql-test/suite/galera/t/galera_migrate.test (limited to 'mysql-test') diff --git a/mysql-test/suite/galera/disabled.def b/mysql-test/suite/galera/disabled.def index 4ba8d8144c8..cf0120afb92 100644 --- a/mysql-test/suite/galera/disabled.def +++ b/mysql-test/suite/galera/disabled.def @@ -15,21 +15,14 @@ MW-328A : MDEV-21483 galera.MW-328A galera.MW-328B MW-328B : MDEV-21483 galera.MW-328A galera.MW-328B MW-329 : MDEV-19962 Galera test failure on MW-329 galera.galera_defaults : MDEV-21494 Galera test sporadic failure on galera.galera_defaults -galera_account_management : MariaDB 10.0 does not support ALTER USER -galera_as_master_gtid : Requires MySQL GTID -galera_as_master_gtid_change_master : Requires MySQL GTID galera_as_slave_gtid_myisam : MDEV-21421 galera.galera_as_slave_gtid_myisam -galera_as_slave_preordered : wsrep-preordered feature not merged to MariaDB galera_as_slave_replication_bundle : MDEV-15785 OPTION_GTID_BEGIN is set in Gtid_log_event::do_apply_event() galera_autoinc_sst_mariabackup : Known issue, may require porting MDEV-17458 from later versions -galera_binlog_rows_query_log_events: MariaDB does not support binlog_rows_query_log_events galera_binlog_stmt_autoinc : MDEV-19959 Galera test failure on galera_binlog_stmt_autoinc -galera_flush : MariaDB does not have global.thread_statistics galera_gcache_recover_manytrx : MDEV-18834 Galera test failure galera_ist_mariabackup : MDEV-18829 test leaves port open galera_ist_progress : MDEV-15236 fails when trying to read transfer status galera_load_data : MDEV-19968 galera.galera_load_data -galera_migrate : MariaDB does not support START SLAVE USER galera_parallel_autoinc_largetrx : MDEV-20916 galera.galera_parallel_autoinc_largetrx galera_parallel_simple : MDEV-20318 galera.galera_parallel_simple fails galera_shutdown_nonprim : MDEV-21493 galera.galera_shutdown_nonprim diff --git a/mysql-test/suite/galera/r/galera_account_management.result b/mysql-test/suite/galera/r/galera_account_management.result deleted file mode 100644 index 6c81d401136..00000000000 --- a/mysql-test/suite/galera/r/galera_account_management.result +++ /dev/null @@ -1,65 +0,0 @@ -connection node_1; -CREATE USER user1, user2 IDENTIFIED BY 'password'; -connection node_2; -SELECT COUNT(*) = 2 FROM mysql.user WHERE user IN ('user1', 'user2'); -COUNT(*) = 2 -1 -connection node_1; -ALTER USER user1 PASSWORD EXPIRE; -SELECT password_expired = 'Y' FROM mysql.user WHERE user = 'user1'; -password_expired = 'Y' -1 -connection node_2; -SELECT password_expired = 'Y' FROM mysql.user WHERE user = 'user1'; -password_expired = 'Y' -1 -connection node_1; -RENAME USER user2 TO user3; -connection node_2; -SELECT COUNT(*) = 0 FROM mysql.user WHERE user = 'user2'; -COUNT(*) = 0 -1 -SELECT COUNT(*) = 1 FROM mysql.user WHERE user = 'user3'; -COUNT(*) = 1 -1 -connection node_1; -SET PASSWORD FOR user3 = PASSWORD('foo'); -connection node_1; -SELECT password != '' FROM mysql.user WHERE user = 'user3'; -password != '' -1 -connection node_1; -DROP USER user1, user3; -connection node_2; -SELECT COUNT(*) = 0 FROM mysql.user WHERE user IN ('user1', 'user2'); -COUNT(*) = 0 -1 -connection node_1; -GRANT ALL ON *.* TO user4 IDENTIFIED BY 'password'; -connection node_2; -SELECT COUNT(*) = 1 FROM mysql.user WHERE user = 'user4'; -COUNT(*) = 1 -1 -SELECT Select_priv = 'Y' FROM mysql.user WHERE user = 'user4'; -Select_priv = 'Y' -1 -connection node_1; -CREATE USER user5; -GRANT PROXY ON user4 TO user5; -connection node_2; -SELECT COUNT(*) = 1 FROM mysql.proxies_priv WHERE user = 'user5'; -COUNT(*) = 1 -1 -connection node_1; -REVOKE ALL PRIVILEGES ON *.* FROM user4; -connection node_2; -SELECT Select_priv = 'N' FROM mysql.user WHERE user = 'user4'; -Select_priv = 'N' -1 -connection node_1; -REVOKE PROXY ON user4 FROM user5; -connection node_2; -SELECT COUNT(*) = 0 FROM mysql.proxies_priv WHERE user = 'user5'; -COUNT(*) = 0 -1 -DROP USER user4, user5; diff --git a/mysql-test/suite/galera/r/galera_as_master_gtid.result b/mysql-test/suite/galera/r/galera_as_master_gtid.result deleted file mode 100644 index 8dfe462d495..00000000000 --- a/mysql-test/suite/galera/r/galera_as_master_gtid.result +++ /dev/null @@ -1,59 +0,0 @@ -START SLAVE USER='root'; -Warnings: -Note 1759 Sending passwords in plain text without SSL/TLS is extremely insecure. -CREATE TABLE t1 (f1 INTEGER PRIMARY KEY) ENGINE=InnoDB; -INSERT INTO t1 VALUES(1); -uuids_do_not_match -1 -SHOW BINLOG EVENTS IN 'mysqld-bin.000002' FROM 120; -Log_name Pos Event_type Server_id End_log_pos Info -mysqld-bin.000002 120 Previous_gtids 1 151 -mysqld-bin.000002 151 Gtid 1 199 SET @@SESSION.GTID_NEXT= ':1' -mysqld-bin.000002 199 Query 1 327 use `test`; CREATE TABLE t1 (f1 INTEGER PRIMARY KEY) ENGINE=InnoDB -mysqld-bin.000002 327 Gtid 1 375 SET @@SESSION.GTID_NEXT= ':2' -mysqld-bin.000002 375 Query 1 452 BEGIN -mysqld-bin.000002 452 Table_map 1 497 table_id: # (test.t1) -mysqld-bin.000002 497 Write_rows 1 537 table_id: # flags: STMT_END_F -mysqld-bin.000002 537 Xid 1 568 COMMIT /* xid=# */ -INSERT INTO t1 VALUES(2); -uuids_do_not_match -1 -uuids_match -1 -SHOW BINLOG EVENTS IN 'mysqld-bin.000003' FROM 120; -Log_name Pos Event_type Server_id End_log_pos Info -mysqld-bin.000003 120 Previous_gtids 2 151 -mysqld-bin.000003 151 Gtid 1 199 SET @@SESSION.GTID_NEXT= ':1' -mysqld-bin.000003 199 Query 1 327 use `test`; CREATE TABLE t1 (f1 INTEGER PRIMARY KEY) ENGINE=InnoDB -mysqld-bin.000003 327 Gtid 1 375 SET @@SESSION.GTID_NEXT= ':2' -mysqld-bin.000003 375 Query 1 443 BEGIN -mysqld-bin.000003 443 Table_map 1 488 table_id: # (test.t1) -mysqld-bin.000003 488 Write_rows 1 528 table_id: # flags: STMT_END_F -mysqld-bin.000003 528 Xid 1 559 COMMIT /* xid=# */ -mysqld-bin.000003 559 Gtid 2 607 SET @@SESSION.GTID_NEXT= ':3' -mysqld-bin.000003 607 Query 2 684 BEGIN -mysqld-bin.000003 684 Table_map 2 729 table_id: # (test.t1) -mysqld-bin.000003 729 Write_rows 2 769 table_id: # flags: STMT_END_F -mysqld-bin.000003 769 Xid 2 800 COMMIT /* xid=# */ -uuids_do_not_match -1 -uuids_match -1 -SHOW BINLOG EVENTS IN 'mysqld-bin.000001' FROM 120; -Log_name Pos Event_type Server_id End_log_pos Info -mysqld-bin.000001 120 Previous_gtids 3 151 -mysqld-bin.000001 151 Gtid 1 199 SET @@SESSION.GTID_NEXT= ':1' -mysqld-bin.000001 199 Query 1 327 use `test`; CREATE TABLE t1 (f1 INTEGER PRIMARY KEY) ENGINE=InnoDB -mysqld-bin.000001 327 Gtid 1 375 SET @@SESSION.GTID_NEXT= ':2' -mysqld-bin.000001 375 Query 1 443 BEGIN -mysqld-bin.000001 443 Table_map 1 488 table_id: # (test.t1) -mysqld-bin.000001 488 Write_rows 1 528 table_id: # flags: STMT_END_F -mysqld-bin.000001 528 Xid 1 559 COMMIT /* xid=# */ -mysqld-bin.000001 559 Gtid 2 607 SET @@SESSION.GTID_NEXT= ':3' -mysqld-bin.000001 607 Query 2 675 BEGIN -mysqld-bin.000001 675 Table_map 2 720 table_id: # (test.t1) -mysqld-bin.000001 720 Write_rows 2 760 table_id: # flags: STMT_END_F -mysqld-bin.000001 760 Xid 2 791 COMMIT /* xid=# */ -DROP TABLE t1; -STOP SLAVE; -RESET SLAVE ALL; diff --git a/mysql-test/suite/galera/r/galera_as_master_gtid_change_master.result b/mysql-test/suite/galera/r/galera_as_master_gtid_change_master.result deleted file mode 100644 index 80fbccf58e2..00000000000 --- a/mysql-test/suite/galera/r/galera_as_master_gtid_change_master.result +++ /dev/null @@ -1,15 +0,0 @@ -START SLAVE USER='root'; -Warnings: -Note 1759 Sending passwords in plain text without SSL/TLS is extremely insecure. -CREATE TABLE t1 (f1 INTEGER PRIMARY KEY) ENGINE=InnoDB; -INSERT INTO t1 VALUES(1); -INSERT INTO t1 VALUES(2); -STOP SLAVE; -START SLAVE USER='root'; -Warnings: -Note 1759 Sending passwords in plain text without SSL/TLS is extremely insecure. -INSERT INTO t1 VALUES(3); -INSERT INTO t1 VALUES(4); -DROP TABLE t1; -STOP SLAVE; -RESET SLAVE ALL; diff --git a/mysql-test/suite/galera/r/galera_as_slave_preordered.result b/mysql-test/suite/galera/r/galera_as_slave_preordered.result deleted file mode 100644 index 27a08e73491..00000000000 --- a/mysql-test/suite/galera/r/galera_as_slave_preordered.result +++ /dev/null @@ -1,19 +0,0 @@ -START SLAVE USER='root'; -Warnings: -Note 1759 Sending passwords in plain text without SSL/TLS is extremely insecure. -CREATE TABLE ten (f1 INTEGER); -INSERT INTO ten VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10); -CREATE TABLE t1 (f1 INTEGER PRIMARY KEY AUTO_INCREMENT, f2 INTEGER) ENGINE=InnoDB; -SELECT COUNT(DISTINCT f1) = 2 * 100 * 10 * 10 FROM t1; -COUNT(DISTINCT f1) = 2 * 100 * 10 * 10 -1 -SELECT COUNT(*) = 2 * 100 * 10 * 10 FROM t1; -COUNT(*) = 2 * 100 * 10 * 10 -1 -SELECT COUNT(DISTINCT f1) = 2 * 100 * 10 * 10 FROM t1; -COUNT(DISTINCT f1) = 2 * 100 * 10 * 10 -1 -DROP TABLE t1; -DROP TABLE ten; -STOP SLAVE; -RESET SLAVE ALL; diff --git a/mysql-test/suite/galera/r/galera_binlog_rows_query_log_events.result b/mysql-test/suite/galera/r/galera_binlog_rows_query_log_events.result deleted file mode 100644 index 80ae3d0de2c..00000000000 --- a/mysql-test/suite/galera/r/galera_binlog_rows_query_log_events.result +++ /dev/null @@ -1,12 +0,0 @@ -SET GLOBAL binlog_rows_query_log_events=TRUE; -CREATE TABLE t1 (f1 INT PRIMARY KEY) ENGINE=InnoDB; -INSERT INTO t1 VALUES (1); -SELECT COUNT(*) = 1 FROM t1; -COUNT(*) = 1 -1 -UPDATE t1 SET f1 = 2 WHERE f1 = 1; -SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 2; -COUNT(*) = 1 -1 -SET GLOBAL binlog_rows_query_log_events = 0; -DROP TABLE t1; diff --git a/mysql-test/suite/galera/r/galera_flush.result b/mysql-test/suite/galera/r/galera_flush.result deleted file mode 100644 index 71226432eda..00000000000 --- a/mysql-test/suite/galera/r/galera_flush.result +++ /dev/null @@ -1,88 +0,0 @@ -DROP TABLE IF EXISTS t1, t2; -FLUSH DES_KEY_FILE; -wsrep_last_committed_diff -1 -FLUSH HOSTS; -wsrep_last_committed_diff -1 -SET GLOBAL wsrep_replicate_myisam = TRUE; -INSERT INTO mysql.user VALUES('localhost','user1',PASSWORD('pass1'), 'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0,'mysql_native_password','','N','N','',0); -FLUSH PRIVILEGES; -DELETE FROM mysql.user WHERE user = 'user1'; -SET GLOBAL wsrep_replicate_myisam = FALSE; -FLUSH PRIVILEGES; -FLUSH QUERY CACHE; -wsrep_last_committed_diff -1 -FLUSH STATUS; -wsrep_last_committed_diff -1 -FLUSH USER_RESOURCES; -wsrep_last_committed_diff -1 -FLUSH TABLES; -wsrep_last_committed_diff -1 -CREATE TABLE t2 (f1 INTEGER); -FLUSH TABLES t2; -wsrep_last_committed_diff -1 -FLUSH ERROR LOGS; -wsrep_last_committed_diff -1 -FLUSH SLOW LOGS; -wsrep_last_committed_diff -1 -FLUSH GENERAL LOGS; -wsrep_last_committed_diff -1 -FLUSH ENGINE LOGS; -wsrep_last_committed_diff -1 -FLUSH RELAY LOGS; -wsrep_last_committed_diff -1 -SET @userstat_old= @@userstat; -SET GLOBAL userstat=ON; -FLUSH CLIENT_STATISTICS; -FLUSH INDEX_STATISTICS; -FLUSH TABLE_STATISTICS; -FLUSH USER_STATISTICS; -wsrep_last_committed_diff -1 -SET @old_thread_statistics= @@global.thread_statistics; -SET GLOBAL thread_statistics= ON; -FLUSH THREAD_STATISTICS; -wsrep_last_committed_diff -1 -FLUSH CHANGED_PAGE_BITMAPS; -wsrep_last_committed_diff -1 -CREATE TABLE t1 (f1 INTEGER); -FLUSH LOGS; -FLUSH TABLES WITH READ LOCK; -UNLOCK TABLES; -FLUSH TABLES t1 WITH READ LOCK; -UNLOCK TABLES; -FLUSH TABLES t1 FOR EXPORT; -UNLOCK TABLES; -wsrep_last_committed_diff -1 -LOCK TABLES t1 WRITE; -FLUSH TABLES t1; -UNLOCK TABLES; -wsrep_last_committed_diff -1 -LOCK TABLES t1 READ; -FLUSH TABLES t1; -ERROR HY000: Table 't1' was locked with a READ lock and can't be updated -UNLOCK TABLES; -wsrep_last_committed_diff -1 -FLUSH TABLES t1; -wsrep_last_committed_diff -1 -DROP TABLE t1; -DROP TABLE t2; -SET GLOBAL userstat= @userstat_old; -SET GLOBAL thread_statistics= @old_thread_statistics; diff --git a/mysql-test/suite/galera/r/galera_migrate.result b/mysql-test/suite/galera/r/galera_migrate.result deleted file mode 100644 index aab3ffbd6b6..00000000000 --- a/mysql-test/suite/galera/r/galera_migrate.result +++ /dev/null @@ -1,79 +0,0 @@ -CREATE TABLE t1 (f1 INTEGER) ENGINE=InnoDB; -INSERT INTO t1 VALUES (1); -START SLAVE USER='root'; -Warnings: -Note 1759 Sending passwords in plain text without SSL/TLS is extremely insecure. -INSERT INTO t1 VALUES (2); -START SLAVE USER='root'; -Warnings: -Note 1759 Sending passwords in plain text without SSL/TLS is extremely insecure. -INSERT INTO t1 VALUES (3); -INSERT INTO t1 VALUES (4); -SET GLOBAL wsrep_cluster_address='gcomm://'; -INSERT INTO t1 VALUES (5); -SELECT VARIABLE_VALUE = 'Synced' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_local_state_comment'; -VARIABLE_VALUE = 'Synced' -1 -SELECT VARIABLE_VALUE = 'Primary' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_status'; -VARIABLE_VALUE = 'Primary' -1 -SELECT VARIABLE_VALUE = 1 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size'; -VARIABLE_VALUE = 1 -1 -INSERT INTO t1 VALUES (6); -GRANT ALL PRIVILEGES ON *.* TO 'sst'; -SET GLOBAL wsrep_sst_auth = 'sst:'; -GRANT ALL PRIVILEGES ON *.* TO 'sst'; -SELECT VARIABLE_VALUE = 'Synced' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_local_state_comment'; -VARIABLE_VALUE = 'Synced' -1 -SELECT VARIABLE_VALUE = 'Primary' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_status'; -VARIABLE_VALUE = 'Primary' -1 -SELECT VARIABLE_VALUE = 2 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size'; -VARIABLE_VALUE = 2 -1 -STOP SLAVE; -RESET SLAVE ALL; -STOP SLAVE; -RESET SLAVE ALL; -INSERT INTO t1 VALUES (7); -INSERT INTO t1 VALUES (8); -SELECT COUNT(*) = 8 FROM t1; -COUNT(*) = 8 -1 -SELECT VARIABLE_VALUE = 'Synced' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_local_state_comment'; -VARIABLE_VALUE = 'Synced' -1 -SELECT VARIABLE_VALUE = 'Primary' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_status'; -VARIABLE_VALUE = 'Primary' -1 -SELECT VARIABLE_VALUE = 2 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size'; -VARIABLE_VALUE = 2 -1 -SELECT COUNT(*) = 8 FROM t1; -COUNT(*) = 8 -1 -SELECT VARIABLE_VALUE = 'Synced' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_local_state_comment'; -VARIABLE_VALUE = 'Synced' -1 -SELECT VARIABLE_VALUE = 'Primary' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_status'; -VARIABLE_VALUE = 'Primary' -1 -SELECT VARIABLE_VALUE = 2 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size'; -VARIABLE_VALUE = 2 -1 -DROP TABLE t1; -DROP TABLE t1; -SET GLOBAL wsrep_provider = 'none'; -SET GLOBAL wsrep_sst_auth = ''; -SET GLOBAL wsrep_provider_options = ''; -DROP TABLE t1; -DROP USER sst; -SET GLOBAL wsrep_provider = 'none'; -SET GLOBAL wsrep_sst_method = 'rsync'; -SET GLOBAL wsrep_provider_options = ''; -SET GLOBAL wsrep_sst_receive_address = 'AUTO'; -DROP TABLE t1; -DROP USER sst; -CALL mtr.add_suppression("InnoDB: Error: Table \"mysql\"\\.\"innodb_index_stats\" not found"); diff --git a/mysql-test/suite/galera/t/galera_account_management.test b/mysql-test/suite/galera/t/galera_account_management.test deleted file mode 100644 index 6dea0fcfa9e..00000000000 --- a/mysql-test/suite/galera/t/galera_account_management.test +++ /dev/null @@ -1,99 +0,0 @@ -# -# Test the account management statements - GRANT, REVOKE, etc. -# - ---source include/galera_cluster.inc ---source include/have_innodb.inc - -# -# CREATE USER -# ---connection node_1 -CREATE USER user1, user2 IDENTIFIED BY 'password'; - ---connection node_2 -SELECT COUNT(*) = 2 FROM mysql.user WHERE user IN ('user1', 'user2'); - -# -# ALTER USER -# - ---connection node_1 -ALTER USER user1 PASSWORD EXPIRE; -SELECT password_expired = 'Y' FROM mysql.user WHERE user = 'user1'; - ---connection node_2 -SELECT password_expired = 'Y' FROM mysql.user WHERE user = 'user1'; - -# -# RENAME USER -# - ---connection node_1 -RENAME USER user2 TO user3; - ---connection node_2 -SELECT COUNT(*) = 0 FROM mysql.user WHERE user = 'user2'; -SELECT COUNT(*) = 1 FROM mysql.user WHERE user = 'user3'; - -# -# SET PASSWORD -# - ---connection node_1 -SET PASSWORD FOR user3 = PASSWORD('foo'); - ---connection node_1 -SELECT password != '' FROM mysql.user WHERE user = 'user3'; - -# -# DROP USER -# ---connection node_1 -DROP USER user1, user3; - ---connection node_2 -SELECT COUNT(*) = 0 FROM mysql.user WHERE user IN ('user1', 'user2'); - -# -# GRANT -# - ---connection node_1 -GRANT ALL ON *.* TO user4 IDENTIFIED BY 'password'; - ---connection node_2 -SELECT COUNT(*) = 1 FROM mysql.user WHERE user = 'user4'; -SELECT Select_priv = 'Y' FROM mysql.user WHERE user = 'user4'; - -# -# GRANT PROXY ON -# ---connection node_1 -CREATE USER user5; -GRANT PROXY ON user4 TO user5; - ---connection node_2 -SELECT COUNT(*) = 1 FROM mysql.proxies_priv WHERE user = 'user5'; - -# -# REVOKE -# - ---connection node_1 -REVOKE ALL PRIVILEGES ON *.* FROM user4; - ---connection node_2 -SELECT Select_priv = 'N' FROM mysql.user WHERE user = 'user4'; - -# -# REVOKE PROXY -# - ---connection node_1 -REVOKE PROXY ON user4 FROM user5; - ---connection node_2 -SELECT COUNT(*) = 0 FROM mysql.proxies_priv WHERE user = 'user5'; - -DROP USER user4, user5; diff --git a/mysql-test/suite/galera/t/galera_as_master_gtid.cnf b/mysql-test/suite/galera/t/galera_as_master_gtid.cnf deleted file mode 100644 index 19517556331..00000000000 --- a/mysql-test/suite/galera/t/galera_as_master_gtid.cnf +++ /dev/null @@ -1,8 +0,0 @@ -!include ../galera_2nodes_as_master.cnf - -[mysqld] -gtid-mode=ON -log-bin=mysqld-bin -log-slave-updates -enforce-gtid-consistency -binlog-format=ROW diff --git a/mysql-test/suite/galera/t/galera_as_master_gtid.test b/mysql-test/suite/galera/t/galera_as_master_gtid.test deleted file mode 100644 index 9db104b7cab..00000000000 --- a/mysql-test/suite/galera/t/galera_as_master_gtid.test +++ /dev/null @@ -1,70 +0,0 @@ -# -# Test Galera as a master to a MySQL slave with GTID -# -# The galera/galera_2node_master.cnf describes the setup of the nodes -# -# We check that all transactions originating from within Galera use a UUID that is -# different from the server_uuid of either node -# -# - ---source include/have_innodb.inc ---source include/have_log_bin.inc ---source include/galera_cluster.inc - ---connect node_3, 127.0.0.1, root, , test, $NODE_MYPORT_3 ---disable_query_log ---eval CHANGE MASTER TO MASTER_HOST='127.0.0.1', MASTER_PORT=$NODE_MYPORT_1; ---enable_query_log -START SLAVE USER='root'; - ---connection node_1 -CREATE TABLE t1 (f1 INTEGER PRIMARY KEY) ENGINE=InnoDB; -INSERT INTO t1 VALUES(1); - ---let $effective_uuid = `SELECT LEFT(@@global.gtid_executed, 36)` ---disable_query_log ---eval SELECT '$effective_uuid' != @@global.server_uuid AS uuids_do_not_match; ---enable_query_log - ---replace_result $effective_uuid ---replace_regex /table_id: [0-9]+/table_id: #/ /xid=[0-9]+/xid=#/ -SHOW BINLOG EVENTS IN 'mysqld-bin.000002' FROM 120; - ---connection node_2 -INSERT INTO t1 VALUES(2); - ---disable_query_log ---eval SELECT '$effective_uuid' != @@global.server_uuid AS uuids_do_not_match; ---eval SELECT '$effective_uuid' = LEFT(@@global.gtid_executed, 36) AS uuids_match; ---enable_query_log - ---replace_result $effective_uuid ---replace_regex /table_id: [0-9]+/table_id: #/ /xid=[0-9]+/xid=#/ -SHOW BINLOG EVENTS IN 'mysqld-bin.000003' FROM 120; - ---connection node_3 ---let $wait_condition = SELECT COUNT(*) = 1 FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 't1'; ---source include/wait_condition.inc - ---let $wait_condition = SELECT COUNT(*) = 2 FROM t1; ---source include/wait_condition.inc - ---disable_query_log ---eval SELECT '$effective_uuid' != @@global.server_uuid AS uuids_do_not_match; ---eval SELECT '$effective_uuid' = LEFT(@@global.gtid_executed, 36) AS uuids_match; ---enable_query_log - ---replace_result $effective_uuid ---replace_regex /table_id: [0-9]+/table_id: #/ /xid=[0-9]+/xid=#/ -SHOW BINLOG EVENTS IN 'mysqld-bin.000001' FROM 120; - ---connection node_1 -DROP TABLE t1; - ---connection node_3 ---let $wait_condition = SELECT COUNT(*) = 0 FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 't1'; ---source include/wait_condition.inc - -STOP SLAVE; -RESET SLAVE ALL; diff --git a/mysql-test/suite/galera/t/galera_as_master_gtid_change_master.cnf b/mysql-test/suite/galera/t/galera_as_master_gtid_change_master.cnf deleted file mode 100644 index 19517556331..00000000000 --- a/mysql-test/suite/galera/t/galera_as_master_gtid_change_master.cnf +++ /dev/null @@ -1,8 +0,0 @@ -!include ../galera_2nodes_as_master.cnf - -[mysqld] -gtid-mode=ON -log-bin=mysqld-bin -log-slave-updates -enforce-gtid-consistency -binlog-format=ROW diff --git a/mysql-test/suite/galera/t/galera_as_master_gtid_change_master.test b/mysql-test/suite/galera/t/galera_as_master_gtid_change_master.test deleted file mode 100644 index 23606d7ac4c..00000000000 --- a/mysql-test/suite/galera/t/galera_as_master_gtid_change_master.test +++ /dev/null @@ -1,54 +0,0 @@ -# -# Test that a MySQL slave can use CHANGE MASTER MASTER_AUTO_POSITION to begin replicating -# from another Galera node -# -# The galera/galera_2node_master.cnf describes the setup of the nodes -# -# - ---source include/have_innodb.inc ---source include/have_log_bin.inc ---source include/galera_cluster.inc - ---connect node_3, 127.0.0.1, root, , test, $NODE_MYPORT_3 ---disable_query_log ---eval CHANGE MASTER TO MASTER_HOST='127.0.0.1', MASTER_PORT=$NODE_MYPORT_1; ---enable_query_log -START SLAVE USER='root'; - ---connection node_1 -CREATE TABLE t1 (f1 INTEGER PRIMARY KEY) ENGINE=InnoDB; -INSERT INTO t1 VALUES(1); - ---connection node_2 -INSERT INTO t1 VALUES(2); - ---connection node_3 -STOP SLAVE; ---disable_query_log ---eval CHANGE MASTER TO MASTER_HOST='127.0.0.1', MASTER_PORT=$NODE_MYPORT_2, MASTER_AUTO_POSITION=1; ---enable_query_log -START SLAVE USER='root'; - ---connection node_1 -INSERT INTO t1 VALUES(3); - ---connection node_2 -INSERT INTO t1 VALUES(4); - ---connection node_3 ---let $wait_condition = SELECT COUNT(*) = 1 FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 't1'; ---source include/wait_condition.inc - ---let $wait_condition = SELECT COUNT(*) = 4 FROM t1; ---source include/wait_condition.inc - ---connection node_1 -DROP TABLE t1; - ---connection node_3 ---let $wait_condition = SELECT COUNT(*) = 0 FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 't1'; ---source include/wait_condition.inc - -STOP SLAVE; -RESET SLAVE ALL; diff --git a/mysql-test/suite/galera/t/galera_as_slave_preordered.cnf b/mysql-test/suite/galera/t/galera_as_slave_preordered.cnf deleted file mode 100644 index d1a0fb15ff3..00000000000 --- a/mysql-test/suite/galera/t/galera_as_slave_preordered.cnf +++ /dev/null @@ -1,3 +0,0 @@ -!include ../galera_2nodes_as_slave.cnf -[mysqld] -wsrep-preordered=TRUE diff --git a/mysql-test/suite/galera/t/galera_as_slave_preordered.test b/mysql-test/suite/galera/t/galera_as_slave_preordered.test deleted file mode 100644 index 6f221f83b3a..00000000000 --- a/mysql-test/suite/galera/t/galera_as_slave_preordered.test +++ /dev/null @@ -1,84 +0,0 @@ -# -# Test Galera as a slave to a MySQL master with --wsrep-preordered=TRUE -# -# The galera/galera_2node_slave.cnf describes the setup of the nodes -# - ---source include/have_innodb.inc ---source include/have_log_bin.inc - -# As node #1 is not a Galera node, we connect to node #2 in order to run include/galera_cluster.inc ---connect node_2a, 127.0.0.1, root, , test, $NODE_MYPORT_2 ---source include/galera_cluster.inc - ---connection node_2 ---disable_query_log ---eval CHANGE MASTER TO MASTER_HOST='127.0.0.1', MASTER_PORT=$NODE_MYPORT_1; ---enable_query_log -START SLAVE USER='root'; - -# -# Issue many large-ish transaction on the async master -# - ---connection node_1 -CREATE TABLE ten (f1 INTEGER); -INSERT INTO ten VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10); - -CREATE TABLE t1 (f1 INTEGER PRIMARY KEY AUTO_INCREMENT, f2 INTEGER) ENGINE=InnoDB; - ---disable_query_log ---let $count = 100 -while ($count) -{ - --eval INSERT INTO t1 (f2) SELECT 1 FROM ten AS a1, ten AS a2; - --dec $count -} ---enable_query_log - -# -# While the async transactions are being applied, issue another set of transactions -# on the Galera node. -# - ---connection node_2 ---let $wait_condition = SELECT COUNT(*) = 1 FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 't1'; ---source include/wait_condition.inc - ---let $count = 100 ---disable_query_log -while ($count) -{ - --eval INSERT INTO t1 (f2) SELECT 1 FROM ten AS a1, ten AS a2; - --dec $count -} ---enable_query_log - -# -# Confirm that all transactions successfully committed -# - ---let $wait_condition = SELECT COUNT(*) = 2 * 100 * 10 * 10 FROM t1; ---source include/wait_condition.inc - -SELECT COUNT(DISTINCT f1) = 2 * 100 * 10 * 10 FROM t1; - ---connect node_3, 127.0.0.1, root, , test, $NODE_MYPORT_3 ---connection node_3 -SELECT COUNT(*) = 2 * 100 * 10 * 10 FROM t1; -SELECT COUNT(DISTINCT f1) = 2 * 100 * 10 * 10 FROM t1; - -# -# Cleanup -# - ---connection node_1 -DROP TABLE t1; -DROP TABLE ten; - ---connection node_2 ---let $wait_condition = SELECT COUNT(*) = 0 FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 't1'; ---source include/wait_condition.inc - -STOP SLAVE; -RESET SLAVE ALL; diff --git a/mysql-test/suite/galera/t/galera_binlog_rows_query_log_events.test b/mysql-test/suite/galera/t/galera_binlog_rows_query_log_events.test deleted file mode 100644 index 95bc85c4cab..00000000000 --- a/mysql-test/suite/galera/t/galera_binlog_rows_query_log_events.test +++ /dev/null @@ -1,28 +0,0 @@ -# -# Test that Galera continues to run even with binlog-rows-query-log-events=TRUE -# - ---source include/galera_cluster.inc ---source include/have_innodb.inc - ---let $binlog_rows_query_log_events_orig = `SELECT @@binlog_rows_query_log_events` - -SET GLOBAL binlog_rows_query_log_events=TRUE; - -CREATE TABLE t1 (f1 INT PRIMARY KEY) ENGINE=InnoDB; - -INSERT INTO t1 VALUES (1); - ---connection node_2 -SELECT COUNT(*) = 1 FROM t1; - ---connection node_1 -UPDATE t1 SET f1 = 2 WHERE f1 = 1; - ---connection node_2 -SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 2; - ---connection node_1 ---eval SET GLOBAL binlog_rows_query_log_events = $binlog_rows_query_log_events_orig - -DROP TABLE t1; diff --git a/mysql-test/suite/galera/t/galera_flush.cnf b/mysql-test/suite/galera/t/galera_flush.cnf deleted file mode 100644 index e2d869ab364..00000000000 --- a/mysql-test/suite/galera/t/galera_flush.cnf +++ /dev/null @@ -1,10 +0,0 @@ -!include ../galera_2nodes.cnf - -[mysqld.1] -query_cache_type=1 -query_cache_size=1000000 - -[mysqld.2] -query_cache_type=1 -query_cache_size=1000000 - diff --git a/mysql-test/suite/galera/t/galera_flush.test b/mysql-test/suite/galera/t/galera_flush.test deleted file mode 100644 index 77e95f62fda..00000000000 --- a/mysql-test/suite/galera/t/galera_flush.test +++ /dev/null @@ -1,273 +0,0 @@ -# -# Test that various FLUSH commands are replicated. Whenever possible, check the slave for the effects. -# - ---source include/galera_cluster.inc ---source include/have_innodb.inc ---source include/have_perfschema.inc ---source include/have_query_cache.inc - ---disable_warnings -DROP TABLE IF EXISTS t1, t2; ---enable_warnings -# -# The following FLUSH statements should be replicated -# - ---connection node_2 ---let $wsrep_last_committed_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---connection node_1 -FLUSH DES_KEY_FILE; ---connection node_2 ---let $wsrep_last_committed_after = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---disable_query_log ---eval SELECT $wsrep_last_committed_after = $wsrep_last_committed_before + 1 AS wsrep_last_committed_diff; ---enable_query_log - - ---connection node_2 ---let $wsrep_last_committed_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---connection node_1 -FLUSH HOSTS; ---connection node_2 ---let $wsrep_last_committed_after = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---disable_query_log ---eval SELECT $wsrep_last_committed_after = $wsrep_last_committed_before + 1 AS wsrep_last_committed_diff; ---enable_query_log - ---connection node_1 -SET GLOBAL wsrep_replicate_myisam = TRUE; -INSERT INTO mysql.user VALUES('localhost','user1',PASSWORD('pass1'), 'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0,'mysql_native_password','','N','N','',0); -FLUSH PRIVILEGES; ---connect node_2a, 127.0.0.1, user1, pass1, test, $NODE_MYPORT_2 ---connection node_1 -DELETE FROM mysql.user WHERE user = 'user1'; -SET GLOBAL wsrep_replicate_myisam = FALSE; -FLUSH PRIVILEGES; - - ---connection node_2 ---let $wsrep_last_committed_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---connection node_1 -FLUSH QUERY CACHE; ---connection node_2 ---let $wsrep_last_committed_after = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---disable_query_log ---eval SELECT $wsrep_last_committed_after = $wsrep_last_committed_before + 1 AS wsrep_last_committed_diff; ---enable_query_log - - ---connection node_2 ---let $wsrep_last_committed_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---connection node_1 -FLUSH STATUS; - ---connection node_2 ---let $wsrep_last_committed_after = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---disable_query_log ---eval SELECT $wsrep_last_committed_after = $wsrep_last_committed_before + 1 AS wsrep_last_committed_diff; ---enable_query_log - - ---connection node_2 ---let $wsrep_last_committed_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---connection node_1 -FLUSH USER_RESOURCES; ---connection node_2 ---let $wsrep_last_committed_after = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---disable_query_log ---eval SELECT $wsrep_last_committed_after = $wsrep_last_committed_before + 1 AS wsrep_last_committed_diff; ---enable_query_log - - ---connection node_2 ---let $wsrep_last_committed_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---connection node_1 -FLUSH TABLES; ---connection node_2 ---let $wsrep_last_committed_after = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---disable_query_log ---eval SELECT $wsrep_last_committed_after = $wsrep_last_committed_before + 1 AS wsrep_last_committed_diff; ---enable_query_log - ---connection node_1 -CREATE TABLE t2 (f1 INTEGER); - ---connection node_2 ---let $wsrep_last_committed_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---connection node_1 -FLUSH TABLES t2; ---connection node_2 ---let $wsrep_last_committed_after = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---disable_query_log ---eval SELECT $wsrep_last_committed_after = $wsrep_last_committed_before + 1 AS wsrep_last_committed_diff; ---enable_query_log - - ---connection node_2 ---let $wsrep_last_committed_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---connection node_1 -FLUSH ERROR LOGS; ---connection node_2 ---let $wsrep_last_committed_after = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---disable_query_log ---eval SELECT $wsrep_last_committed_after = $wsrep_last_committed_before + 1 AS wsrep_last_committed_diff; ---enable_query_log - - ---connection node_2 ---let $wsrep_last_committed_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---connection node_1 -FLUSH SLOW LOGS; ---connection node_2 ---let $wsrep_last_committed_after = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---disable_query_log ---eval SELECT $wsrep_last_committed_after = $wsrep_last_committed_before + 1 AS wsrep_last_committed_diff; ---enable_query_log - ---connection node_2 ---let $wsrep_last_committed_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---connection node_1 -FLUSH GENERAL LOGS; ---connection node_2 ---let $wsrep_last_committed_after = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---disable_query_log ---eval SELECT $wsrep_last_committed_after = $wsrep_last_committed_before + 1 AS wsrep_last_committed_diff; ---enable_query_log - ---connection node_2 ---let $wsrep_last_committed_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---connection node_1 -FLUSH ENGINE LOGS; ---connection node_2 ---let $wsrep_last_committed_after = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---disable_query_log ---eval SELECT $wsrep_last_committed_after = $wsrep_last_committed_before + 1 AS wsrep_last_committed_diff; ---enable_query_log - ---connection node_2 ---let $wsrep_last_committed_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---connection node_1 -FLUSH RELAY LOGS; ---connection node_2 ---let $wsrep_last_committed_after = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---disable_query_log ---eval SELECT $wsrep_last_committed_after = $wsrep_last_committed_before + 1 AS wsrep_last_committed_diff; ---enable_query_log - ---connection node_1 -SET @userstat_old= @@userstat; -SET GLOBAL userstat=ON; - ---connection node_2 ---let $wsrep_last_committed_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---connection node_1 -FLUSH CLIENT_STATISTICS; -FLUSH INDEX_STATISTICS; -FLUSH TABLE_STATISTICS; -FLUSH USER_STATISTICS; ---connection node_2 ---let $wsrep_last_committed_after = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---disable_query_log ---eval SELECT $wsrep_last_committed_after = $wsrep_last_committed_before + 4 AS wsrep_last_committed_diff; ---enable_query_log - - ---connection node_1 -SET @old_thread_statistics= @@global.thread_statistics; -SET GLOBAL thread_statistics= ON; - ---connection node_2 ---let $wsrep_last_committed_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---connection node_1 -FLUSH THREAD_STATISTICS; ---connection node_2 ---let $wsrep_last_committed_after = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---disable_query_log ---eval SELECT $wsrep_last_committed_after = $wsrep_last_committed_before + 1 AS wsrep_last_committed_diff; ---enable_query_log - - ---connection node_2 ---let $wsrep_last_committed_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---connection node_1 -FLUSH CHANGED_PAGE_BITMAPS; ---connection node_2 ---let $wsrep_last_committed_after = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---disable_query_log ---eval SELECT $wsrep_last_committed_after = $wsrep_last_committed_before + 1 AS wsrep_last_committed_diff; ---enable_query_log - - -# -# The following statements should not be replicated: FLUSH LOGS, FLUSH TABLES WITH LOCKS -# - - ---connection node_1 -CREATE TABLE t1 (f1 INTEGER); - ---connection node_2 ---let $wsrep_last_committed_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` - ---connection node_1 -FLUSH LOGS; -FLUSH TABLES WITH READ LOCK; -UNLOCK TABLES; -FLUSH TABLES t1 WITH READ LOCK; -UNLOCK TABLES; -FLUSH TABLES t1 FOR EXPORT; -UNLOCK TABLES; - ---connection node_2 ---let $wsrep_last_committed_after = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---disable_query_log ---eval SELECT $wsrep_last_committed_after = $wsrep_last_committed_before AS wsrep_last_committed_diff; ---enable_query_log - - -## Test LOCK TABLES with FLUSH TABLES -## LOCK TABLES t1 write followed by flush tables t1 should succeed due to MDL upgrade. -## LOCK tables t2 read followed by flush tables t2 should fail with ER_TABLE_NOT_LOCKED_FOR_WRITE - - ---connection node_2 ---let $wsrep_last_committed_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---connection node_1 -LOCK TABLES t1 WRITE; -FLUSH TABLES t1; -UNLOCK TABLES; ---connection node_2 ---let $wsrep_last_committed_after = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---disable_query_log ---eval SELECT $wsrep_last_committed_after = $wsrep_last_committed_before + 1 AS wsrep_last_committed_diff; ---enable_query_log - - ---connection node_2 ---let $wsrep_last_committed_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---connection node_1 -LOCK TABLES t1 READ; ---error ER_TABLE_NOT_LOCKED_FOR_WRITE -FLUSH TABLES t1; -UNLOCK TABLES; ---connection node_2 ---let $wsrep_last_committed_after = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---disable_query_log ---eval SELECT $wsrep_last_committed_after = $wsrep_last_committed_before AS wsrep_last_committed_diff; ---enable_query_log ---connection node_1 -FLUSH TABLES t1; ---connection node_2 ---let $wsrep_last_committed_after = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'` ---disable_query_log ---eval SELECT $wsrep_last_committed_after = $wsrep_last_committed_before + 1 AS wsrep_last_committed_diff; ---enable_query_log - - - ---connection node_1 -DROP TABLE t1; -DROP TABLE t2; -SET GLOBAL userstat= @userstat_old; -SET GLOBAL thread_statistics= @old_thread_statistics; diff --git a/mysql-test/suite/galera/t/galera_migrate.cnf b/mysql-test/suite/galera/t/galera_migrate.cnf deleted file mode 100644 index ed48f208e52..00000000000 --- a/mysql-test/suite/galera/t/galera_migrate.cnf +++ /dev/null @@ -1,59 +0,0 @@ -# -# This .cnf file starts 4 servers without enabling Galera. -# The galera_migrate.test will set wsrep_provider and the other settings as needed. -# - -!include include/default_mysqld.cnf - -[mysqld] -binlog-format=row -innodb_autoinc_lock_mode=2 -innodb_flush_log_at_trx_commit=2 -log-bin=mysqld-bin - -wsrep_node_address=127.0.0.1 -wsrep_causal_reads=ON -wsrep_sync_wait = 15 - -[mysqld.1] -#galera_port=@OPT.port -#ist_port=@OPT.port -#sst_port=@OPT.port - -[mysqld.2] -#galera_port=@OPT.port -#ist_port=@OPT.port -#sst_port=@OPT.port - -[mysqld.3] -#galera_port=@OPT.port -#ist_port=@OPT.port -#sst_port=@OPT.port - -[mysqld.4] -#galera_port=@OPT.port -#ist_port=@OPT.port -#sst_port=@OPT.port - -[ENV] -NODE_MYPORT_1= @mysqld.1.port -NODE_MYSOCK_1= @mysqld.1.socket - -NODE_MYPORT_2= @mysqld.2.port -NODE_MYSOCK_2= @mysqld.2.socket - -NODE_MYPORT_3= @mysqld.3.port -NODE_MYSOCK_3= @mysqld.3.socket - -NODE_MYPORT_4= @mysqld.4.port -NODE_MYSOCK_4= @mysqld.4.socket - -NODE_GALERAPORT_1= @mysqld.1.#galera_port -NODE_GALERAPORT_2= @mysqld.2.#galera_port -NODE_GALERAPORT_3= @mysqld.3.#galera_port -NODE_GALERAPORT_4= @mysqld.4.#galera_port - -NODE_SSTPORT_1= @mysqld.1.#sst_port -NODE_SSTPORT_2= @mysqld.2.#sst_port -NODE_SSTPORT_3= @mysqld.3.#sst_port -NODE_SSTPORT_4= @mysqld.4.#sst_port diff --git a/mysql-test/suite/galera/t/galera_migrate.test b/mysql-test/suite/galera/t/galera_migrate.test deleted file mode 100644 index 84897b66c6d..00000000000 --- a/mysql-test/suite/galera/t/galera_migrate.test +++ /dev/null @@ -1,204 +0,0 @@ -# -# Execute a migration from MariaDB replication to Galera replication. -# The test starts with 4 stand-alone servers defined by galera_migrate.cnf and then -# performs the following steps: -# -# 1. Begin with a single MySQL server -# 2. Establish traditional MySQL master-slave replication -# 3. Attach a new sever to serve as a MySQL replication slave -# 4. Enable Galera on the new slave and create a single-node Galera cluster -# 5. Attach a second Galera node -# 6. Turn off the traditional replication parts of the system -# 7. Continue replicating within Galera only -# - ---source include/big_test.inc ---source include/have_innodb.inc ---source include/have_log_bin.inc - -# -# Step #1 Begin with a single server -# - ---connect node_1, 127.0.0.1, root, , test, $NODE_MYPORT_1 - -CREATE TABLE t1 (f1 INTEGER) ENGINE=InnoDB; -INSERT INTO t1 VALUES (1); - -# -# Step #2. Establish traditional MySQL replication -# - ---connect node_2, 127.0.0.1, root, , test, $NODE_MYPORT_2 ---disable_query_log ---eval CHANGE MASTER TO MASTER_HOST='127.0.0.1', MASTER_PORT = $NODE_MYPORT_1; ---enable_query_log -START SLAVE; - ---connection node_1 -INSERT INTO t1 VALUES (2); - ---connection node_2 ---let $wait_condition = SELECT COUNT(*) = 1 FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 't1'; ---source include/wait_condition.inc - ---let $wait_condition = SELECT COUNT(*) = 2 FROM t1; ---source include/wait_condition.inc - -# -# Step #3. Attach a second slave, later to be converted to Galera -# - ---connect node_3, 127.0.0.1, root, , test, $NODE_MYPORT_3 ---disable_query_log ---eval CHANGE MASTER TO MASTER_HOST='127.0.0.1', MASTER_PORT = $NODE_MYPORT_1; ---enable_query_log -START SLAVE USER='root'; - ---connection node_1 -INSERT INTO t1 VALUES (3); - ---connection node_3 ---let $wait_condition = SELECT COUNT(*) = 1 FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 't1'; ---source include/wait_condition.inc - ---let $wait_condition = SELECT COUNT(*) = 3 FROM t1; ---source include/wait_condition.inc - -# -# Step #4. Convert this MySQL slave into a Galera node -# - ---connection node_1 -INSERT INTO t1 VALUES (4); - ---connection node_3 ---disable_query_log ---eval SET GLOBAL wsrep_provider='$WSREP_PROVIDER' ---eval SET GLOBAL wsrep_provider_options='base_port=$NODE_GALERAPORT_3' ---enable_query_log -SET GLOBAL wsrep_cluster_address='gcomm://'; - ---connection node_1 -INSERT INTO t1 VALUES (5); - ---connection node_3 ---let $wait_condition = SELECT COUNT(*) = 1 FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 't1'; ---source include/wait_condition.inc ---let $wait_condition = SELECT COUNT(*) = 5 FROM t1; ---source include/wait_condition.inc - ---let $wait_condition = SELECT VARIABLE_VALUE = 'ON' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_ready'; ---source include/wait_condition.inc - -SELECT VARIABLE_VALUE = 'Synced' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_local_state_comment'; -SELECT VARIABLE_VALUE = 'Primary' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_status'; -SELECT VARIABLE_VALUE = 1 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size'; - ---connection node_1 -INSERT INTO t1 VALUES (6); - -# -# Step #5. Attach a second Galera node using mysqldump SST -# - ---connection node_3 -# We need a user with a password for mysqldump SST -GRANT ALL PRIVILEGES ON *.* TO 'sst'; -SET GLOBAL wsrep_sst_auth = 'sst:'; - ---connect node_4, 127.0.0.1, root, , test, $NODE_MYPORT_4 -GRANT ALL PRIVILEGES ON *.* TO 'sst'; - ---disable_query_log ---eval SET GLOBAL wsrep_sst_method = 'mysqldump'; ---eval SET GLOBAL wsrep_provider='$WSREP_PROVIDER' ---eval SET GLOBAL wsrep_provider_options='base_port=$NODE_GALERAPORT_4' ---eval SET GLOBAL wsrep_sst_receive_address = '127.0.0.2:$NODE_MYPORT_4'; ---eval SET GLOBAL wsrep_cluster_address='gcomm://127.0.0.1:$NODE_GALERAPORT_3' ---enable_query_log - ---let $wait_condition = SELECT COUNT(*) = 1 FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 't1'; ---source include/wait_condition.inc - ---let $wait_condition = SELECT COUNT(*) = 6 FROM t1; ---source include/wait_condition.inc - ---let $wait_condition = SELECT VARIABLE_VALUE = 'ON' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_ready'; ---source include/wait_condition.inc - -SELECT VARIABLE_VALUE = 'Synced' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_local_state_comment'; -SELECT VARIABLE_VALUE = 'Primary' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_status'; -SELECT VARIABLE_VALUE = 2 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size'; - - -# -# Step #6. Turn off traditional replication -# - ---connection node_2 -STOP SLAVE; -RESET SLAVE ALL; - ---connection node_3 -STOP SLAVE; -RESET SLAVE ALL; - -# -# Step #7. Continue replicating within Galera only -# - -# We need fresh connections due to galera#191 - ---connect node_3a, 127.0.0.1, root, , test, $NODE_MYPORT_3 -INSERT INTO t1 VALUES (7); - ---connect node_4a, 127.0.0.1, root, , test, $NODE_MYPORT_4 -INSERT INTO t1 VALUES (8); - ---connection node_4a -SELECT COUNT(*) = 8 FROM t1; - ---let $wait_condition = SELECT VARIABLE_VALUE = 'ON' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_ready'; ---source include/wait_condition.inc - -SELECT VARIABLE_VALUE = 'Synced' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_local_state_comment'; -SELECT VARIABLE_VALUE = 'Primary' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_status'; -SELECT VARIABLE_VALUE = 2 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size'; - ---connection node_3a -SELECT COUNT(*) = 8 FROM t1; - ---let $wait_condition = SELECT VARIABLE_VALUE = 'ON' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_ready'; ---source include/wait_condition.inc - -SELECT VARIABLE_VALUE = 'Synced' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_local_state_comment'; -SELECT VARIABLE_VALUE = 'Primary' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_status'; -SELECT VARIABLE_VALUE = 2 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size'; - -# -# Teardown -# - ---connection node_1 -DROP TABLE t1; - ---connection node_2 -DROP TABLE t1; - ---connection node_3 -SET GLOBAL wsrep_provider = 'none'; -SET GLOBAL wsrep_sst_auth = ''; -SET GLOBAL wsrep_provider_options = ''; -DROP TABLE t1; -DROP USER sst; - ---connection node_4 -SET GLOBAL wsrep_provider = 'none'; -SET GLOBAL wsrep_sst_method = 'rsync'; -SET GLOBAL wsrep_provider_options = ''; -SET GLOBAL wsrep_sst_receive_address = 'AUTO'; -DROP TABLE t1; -DROP USER sst; - -CALL mtr.add_suppression("InnoDB: Error: Table \"mysql\"\\.\"innodb_index_stats\" not found"); -- cgit v1.2.1 From d72038a738b2ece7f50453e0f366ad0b9e5ed7e0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Lindstr=C3=B6m?= Date: Fri, 7 Feb 2020 14:18:17 +0200 Subject: MDEV-21667 : Galera test failure on MW-336 Problem seems to be the fact that we did not enforce correct applier thread numbers after every command that effects them. Test changes only. --- mysql-test/suite/galera/r/MW-336.result | 52 ++++++++++++++++++++----- mysql-test/suite/galera/t/MW-336.test | 68 ++++++++++++++++++++++++++------- 2 files changed, 96 insertions(+), 24 deletions(-) (limited to 'mysql-test') diff --git a/mysql-test/suite/galera/r/MW-336.result b/mysql-test/suite/galera/r/MW-336.result index b91e73aaada..dc1f0763a3f 100644 --- a/mysql-test/suite/galera/r/MW-336.result +++ b/mysql-test/suite/galera/r/MW-336.result @@ -2,14 +2,27 @@ connection node_1; CREATE TABLE t1 (f1 INTEGER) Engine=InnoDB; SET GLOBAL wsrep_slave_threads = 10; # Set slave threads to 10 step 1 +SELECT VARIABLE_VALUE AS EXPECT_10 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; +EXPECT_10 +10 SET GLOBAL wsrep_slave_threads = 1; connection node_2; INSERT INTO t1 VALUES (1); connection node_1; +# Wait until one of the appliers has exited +SELECT VARIABLE_VALUE AS EXPECT_9 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; +EXPECT_9 +9 SET GLOBAL wsrep_slave_threads = 10; # Set slave threads to 10 step 2 +SELECT VARIABLE_VALUE AS EXPECT_10 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; +EXPECT_10 +10 SET GLOBAL wsrep_slave_threads = 20; # Set slave threads to 20 +SELECT VARIABLE_VALUE AS EXPECT_20 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; +EXPECT_20 +20 SET GLOBAL wsrep_slave_threads = 1; connection node_2; INSERT INTO t1 VALUES (1); @@ -22,28 +35,47 @@ INSERT INTO t1 VALUES (7); INSERT INTO t1 VALUES (8); INSERT INTO t1 VALUES (9); INSERT INTO t1 VALUES (10); -connection node_1; -SET GLOBAL wsrep_slave_threads = 10; -SELECT COUNT(*) FROM t1; -COUNT(*) -11 -# Set slave threads to 10 step 3 -connection node_2; INSERT INTO t1 VALUES (11); INSERT INTO t1 VALUES (12); INSERT INTO t1 VALUES (13); INSERT INTO t1 VALUES (14); -INSERT INTO t1 VALUES (15); INSERT INTO t1 VALUES (16); INSERT INTO t1 VALUES (17); INSERT INTO t1 VALUES (18); INSERT INTO t1 VALUES (19); INSERT INTO t1 VALUES (20); +connection node_1; +# Wait until 19 of the appliers has exited +SELECT VARIABLE_VALUE AS EXPECT_1 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; +EXPECT_1 +1 +SELECT COUNT(*) FROM t1; +COUNT(*) +20 +SET GLOBAL wsrep_slave_threads = 10; +# Set slave threads to 10 step 3 +SELECT VARIABLE_VALUE AS EXPECT_10 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; +EXPECT_10 +10 +connection node_1; +SET GLOBAL wsrep_slave_threads = 1; +connection node_2; INSERT INTO t1 VALUES (21); INSERT INTO t1 VALUES (22); +INSERT INTO t1 VALUES (23); +INSERT INTO t1 VALUES (24); +INSERT INTO t1 VALUES (25); +INSERT INTO t1 VALUES (26); +INSERT INTO t1 VALUES (27); +INSERT INTO t1 VALUES (28); +INSERT INTO t1 VALUES (29); +INSERT INTO t1 VALUES (30); connection node_1; +# Wait until slave threads back to 1 +SELECT VARIABLE_VALUE AS EXPECT_1 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; +EXPECT_1 +1 SELECT COUNT(*) FROM t1; COUNT(*) -23 -SET GLOBAL wsrep_slave_threads = 1; +30 DROP TABLE t1; diff --git a/mysql-test/suite/galera/t/MW-336.test b/mysql-test/suite/galera/t/MW-336.test index 0e92094da6c..83943c7d8ea 100644 --- a/mysql-test/suite/galera/t/MW-336.test +++ b/mysql-test/suite/galera/t/MW-336.test @@ -17,20 +17,31 @@ SET GLOBAL wsrep_slave_threads = 10; --let $wait_condition_on_error_output = SELECT COUNT(*), 10 as EXPECTED_VALUE FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE = 'wsrep applier idle'; show processlist --source include/wait_condition_with_debug.inc +SELECT VARIABLE_VALUE AS EXPECT_10 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; + SET GLOBAL wsrep_slave_threads = 1; --connection node_2 INSERT INTO t1 VALUES (1); --connection node_1 +--echo # Wait until one of the appliers has exited +--let $wait_condition = SELECT VARIABLE_VALUE = 9 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; +--let $wait_condition_on_error_output = SELECT COUNT(*), 9 as EXPECTED_VALUE FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE = 'wsrep applier idle'; show processlist +--source include/wait_condition_with_debug.inc + +SELECT VARIABLE_VALUE AS EXPECT_9 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; + SET GLOBAL wsrep_slave_threads = 10; # Note that above insert could be handled by one of the slave threads --echo # Set slave threads to 10 step 2 ---let $wait_condition = SELECT VARIABLE_VALUE >= 9 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; ---let $wait_condition_on_error_output = SELECT COUNT(*), 9 as EXPECTED_VALUE FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE = 'wsrep applier idle'; show processlist +--let $wait_condition = SELECT VARIABLE_VALUE = 10 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; +--let $wait_condition_on_error_output = SELECT COUNT(*), 10 as EXPECTED_VALUE FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE = 'wsrep applier idle'; show processlist --source include/wait_condition_with_debug.inc +SELECT VARIABLE_VALUE AS EXPECT_10 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; + SET GLOBAL wsrep_slave_threads = 20; --echo # Set slave threads to 20 @@ -38,6 +49,8 @@ SET GLOBAL wsrep_slave_threads = 20; --let $wait_condition_on_error_output = SELECT COUNT(*), 20 as EXPECTED_VALUE FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE = 'wsrep applier idle'; show processlist --source include/wait_condition_with_debug.inc +SELECT VARIABLE_VALUE AS EXPECT_20 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; + SET GLOBAL wsrep_slave_threads = 1; --connection node_2 @@ -51,30 +64,57 @@ INSERT INTO t1 VALUES (7); INSERT INTO t1 VALUES (8); INSERT INTO t1 VALUES (9); INSERT INTO t1 VALUES (10); - ---connection node_1 -SET GLOBAL wsrep_slave_threads = 10; -SELECT COUNT(*) FROM t1; ---echo # Set slave threads to 10 step 3 ---let $wait_condition = SELECT VARIABLE_VALUE = 10 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; ---let $wait_condition_on_error_output = SELECT COUNT(*), 10 as EXPECTED_VALUE FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE = 'wsrep applier idle'; show processlist ---source include/wait_condition_with_debug.inc - ---connection node_2 INSERT INTO t1 VALUES (11); INSERT INTO t1 VALUES (12); INSERT INTO t1 VALUES (13); INSERT INTO t1 VALUES (14); -INSERT INTO t1 VALUES (15); INSERT INTO t1 VALUES (16); INSERT INTO t1 VALUES (17); INSERT INTO t1 VALUES (18); INSERT INTO t1 VALUES (19); INSERT INTO t1 VALUES (20); + +--connection node_1 +--echo # Wait until 19 of the appliers has exited +--let $wait_condition = SELECT VARIABLE_VALUE = 1 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; +--let $wait_condition_on_error_output = SELECT COUNT(*), 1 as EXPECTED_VALUE FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE = 'wsrep applier idle'; show processlist +--source include/wait_condition_with_debug.inc + +SELECT VARIABLE_VALUE AS EXPECT_1 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; + +SELECT COUNT(*) FROM t1; + +SET GLOBAL wsrep_slave_threads = 10; +--echo # Set slave threads to 10 step 3 +--let $wait_condition = SELECT VARIABLE_VALUE = 10 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; +--let $wait_condition_on_error_output = SELECT COUNT(*), 10 as EXPECTED_VALUE FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE = 'wsrep applier idle'; show processlist +--source include/wait_condition_with_debug.inc + +SELECT VARIABLE_VALUE AS EXPECT_10 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; + +--connection node_1 +SET GLOBAL wsrep_slave_threads = 1; + +--connection node_2 INSERT INTO t1 VALUES (21); INSERT INTO t1 VALUES (22); +INSERT INTO t1 VALUES (23); +INSERT INTO t1 VALUES (24); +INSERT INTO t1 VALUES (25); +INSERT INTO t1 VALUES (26); +INSERT INTO t1 VALUES (27); +INSERT INTO t1 VALUES (28); +INSERT INTO t1 VALUES (29); +INSERT INTO t1 VALUES (30); --connection node_1 +--echo # Wait until slave threads back to 1 +--let $wait_condition = SELECT VARIABLE_VALUE = 1 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; +--let $wait_condition_on_error_output = SELECT COUNT(*), 1 as EXPECTED_VALUE FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND STATE = 'wsrep applier idle'; show processlist +--source include/wait_condition_with_debug.inc + +SELECT VARIABLE_VALUE AS EXPECT_1 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count'; + SELECT COUNT(*) FROM t1; -SET GLOBAL wsrep_slave_threads = 1; + DROP TABLE t1; -- cgit v1.2.1