if (`select count(*) = 0 from information_schema.plugins where plugin_name = 'feedback' and plugin_status='active'`) { --skip Feedback plugin is not active } if (`select @@feedback_url = ""`) { --skip Feedback plugin is not active } select plugin_status from information_schema.plugins where plugin_name='feedback'; # Every SELECT from INFORMATION_SCHEMA.FEEDBACK increases the value of 'FEEDBACK used'. # We cannot record the actual value, because the test can be executed more than once, # but we can check that the value indeed increases as expected. # There is still a room for some race condition, e.g. if at the very moment # between first SELECT to store the value and the next SELECT to check that it increases, # the feedback plugin is activated. But the probability of it is close to 0, # so lets get back to it if it ever happens. # Lets say the plugin was used X times before this SELECT SELECT variable_value INTO @feedback_used FROM information_schema.feedback where variable_name = 'FEEDBACK used'; # Now $feedback_used == X+1, and 'FEEDBACK used' is also X+1. And variable_value is increased again when we run the next SELECT SELECT variable_value = @feedback_used + 1 as 'MUST BE 1' FROM information_schema.feedback where variable_name = 'FEEDBACK used'; # Now when we are happy with 'FEEDBACK used', we can check everything else --replace_result https http --sorted_result select * from information_schema.feedback where variable_name like 'feed%' and variable_name not like '%_uid' and variable_name not like 'FEEDBACK used' and variable_name not like '%debug%'; # Embedded server does not use the table mysqld.user and thus # does not automatically use utf8mb4 on startup. Use it manually. --disable_query_log if (`SELECT VERSION() LIKE '%embedded%'`) { create temporary table t1 (a json); } --enable_query_log SELECT VARIABLE_VALUE>0, VARIABLE_NAME FROM INFORMATION_SCHEMA.FEEDBACK WHERE VARIABLE_NAME LIKE 'Collation used %' ORDER BY VARIABLE_NAME; prepare stmt from "SELECT VARIABLE_VALUE>0, VARIABLE_NAME FROM INFORMATION_SCHEMA.FEEDBACK WHERE VARIABLE_NAME LIKE 'Collation used %' ORDER BY VARIABLE_NAME"; execute stmt; execute stmt; deallocate prepare stmt;