# # Tests for the performance_schema host_cache. # # Simulate failures from client / server protocol: # - reported in COUNT_HANDSHAKE_ERRORS # aud further causes blocking errors: # - reported in SUM_CONNECT_ERRORS # - reported in COUNT_HOST_BLOCKED_ERRORS --source include/not_embedded.inc --source include/have_debug.inc --source include/have_ipv6.inc --source include/have_perfschema.inc flush status; flush hosts; flush user_resources; select @@global.debug; select @@global.max_connect_errors; select @@global.max_connect_errors into @saved_max_connect_errors; set global max_connect_errors = 2; grant select on test.* to 'root'@'santa.claus.ipv6.example.com'; connect (con1,"::1",root,,test,$MASTER_MYPORT,); select "Con1 is alive"; select current_user(); disconnect con1; --connection default set global debug_dbug= "+d,vio_peer_addr_fake_ipv6,getnameinfo_fake_ipv6,getaddrinfo_fake_good_ipv6,native_password_bad_reply"; --disable_query_log --error ER_ACCESS_DENIED_ERROR connect (con2a,"::1",quota,,test,$MASTER_MYPORT,); --enable_query_log --connection default --source ../include/hostcache_dump.inc --disable_query_log --error ER_ACCESS_DENIED_ERROR connect (con2b,"::1",quota,,test,$MASTER_MYPORT,); --enable_query_log --connection default --source ../include/hostcache_dump.inc --disable_query_log --error ER_ACCESS_DENIED_ERROR connect (con2c,"::1",quota,,test,$MASTER_MYPORT,); --enable_query_log --connection default --source ../include/hostcache_dump.inc --disable_query_log --error ER_HOST_IS_BLOCKED connect (con2d,"::1",quota,,test,$MASTER_MYPORT,); --enable_query_log --connection default --source ../include/hostcache_dump.inc --disable_query_log --error ER_HOST_IS_BLOCKED connect (con2e,"::1",quota,,test,$MASTER_MYPORT,); --enable_query_log --connection default --source ../include/hostcache_dump.inc # Now that the host is blocked, check that flush works flush hosts; --disable_query_log --error ER_ACCESS_DENIED_ERROR connect (con2c,"::1",quota,,test,$MASTER_MYPORT,); --enable_query_log --connection default --source ../include/hostcache_dump.inc revoke select on test.* from 'root'@'santa.claus.ipv6.example.com'; drop user 'root'@'santa.claus.ipv6.example.com'; set global max_connect_errors = @saved_max_connect_errors; set global debug_dbug= default;