1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94
|
UPDATE performance_schema.setup_instruments
SET FLAGS = '', ENABLED='NO'
WHERE NAME LIKE 'memory/%';
UPDATE performance_schema.setup_instruments
SET FLAGS = 'controlled', ENABLED='YES'
WHERE NAME IN ('memory/sql/Prepared_statement::infrastructure',
'memory/sql/Prepared_statement::main_mem_root');
# Switch to (con1, localhost, root, , )
# Switch to (con2, localhost, root, , )
PREPARE stmt1 FROM "SELECT 1 FROM DUAL;";
PREPARE stmt2a FROM "SELECT 2 FROM DUAL;";
PREPARE stmt2b FROM "SELECT 2+2 FROM DUAL;";
# Switch to connection default
connection check_status
CON1 threads PASSED
connection check_status
CON1 statement history PASSED
offending_ctrl_digests DIGEST_TEXT MAX_CONTROLLED_MEMORY max_ctrl
offending_total_digests DIGEST_TEXT MAX_TOTAL_MEMORY max_total
connection check_status
CON2 threads PASSED
connection check_status
CON2 statement history PASSED
offending_ctrl_digests DIGEST_TEXT MAX_CONTROLLED_MEMORY max_ctrl
offending_total_digests DIGEST_TEXT MAX_TOTAL_MEMORY max_total
EXECUTE stmt1;
1
1
EXECUTE stmt2a;
2
2
EXECUTE stmt2b;
2+2
4
# Switch to connection default
connection check_status
CON1 threads PASSED
connection check_status
CON1 statement history PASSED
offending_ctrl_digests DIGEST_TEXT MAX_CONTROLLED_MEMORY max_ctrl
offending_total_digests DIGEST_TEXT MAX_TOTAL_MEMORY max_total
connection check_status
CON2 threads PASSED
connection check_status
CON2 statement history PASSED
offending_ctrl_digests DIGEST_TEXT MAX_CONTROLLED_MEMORY max_ctrl
offending_total_digests DIGEST_TEXT MAX_TOTAL_MEMORY max_total
EXECUTE stmt1;
1
1
EXECUTE stmt2a;
2
2
EXECUTE stmt2b;
2+2
4
# Switch to connection default
connection check_status
CON1 threads PASSED
connection check_status
CON1 statement history PASSED
offending_ctrl_digests DIGEST_TEXT MAX_CONTROLLED_MEMORY max_ctrl
offending_total_digests DIGEST_TEXT MAX_TOTAL_MEMORY max_total
connection check_status
CON2 threads PASSED
connection check_status
CON2 statement history PASSED
offending_ctrl_digests DIGEST_TEXT MAX_CONTROLLED_MEMORY max_ctrl
offending_total_digests DIGEST_TEXT MAX_TOTAL_MEMORY max_total
DEALLOCATE PREPARE stmt1;
DEALLOCATE PREPARE stmt2a;
DEALLOCATE PREPARE stmt2b;
# Switch to connection default
connection check_status
CON1 threads PASSED
connection check_status
CON1 statement history PASSED
offending_ctrl_digests DIGEST_TEXT MAX_CONTROLLED_MEMORY max_ctrl
offending_total_digests DIGEST_TEXT MAX_TOTAL_MEMORY max_total
connection check_status
CON2 threads PASSED
connection check_status
CON2 statement history PASSED
offending_ctrl_digests DIGEST_TEXT MAX_CONTROLLED_MEMORY max_ctrl
offending_total_digests DIGEST_TEXT MAX_TOTAL_MEMORY max_total
UPDATE performance_schema.setup_instruments
SET FLAGS = '', ENABLED='YES';
UPDATE performance_schema.setup_instruments
SET FLAGS = 'controlled'
where (find_in_set('controlled_by_default', PROPERTIES));
UPDATE performance_schema.setup_threads SET ENABLED = 'YES';
UPDATE performance_schema.threads SET INSTRUMENTED = 'YES';
DROP PROCEDURE test.verify_thread;
DROP TABLE test.enforced;
|