Current Path : /home/usr.opt/mysql57/mysql-test/include/ |
FreeBSD hs32.drive.ne.jp 9.1-RELEASE FreeBSD 9.1-RELEASE #1: Wed Jan 14 12:18:08 JST 2015 root@hs32.drive.ne.jp:/sys/amd64/compile/hs32 amd64 |
Current File : //home/usr.opt/mysql57/mysql-test/include/explain_other.inc |
# Prerequisites: # connections: # cq - connection where queries are run # ce - connection where explain is run # variables: # query - query to explain # format - explain format: 'json' for json, or traditional otherwise # point - syncing point --disable_reconnect connection cq; --disable_result_log --disable_query_log let $QID= `SELECT CONNECTION_ID()`; eval SET DEBUG_SYNC= '$point SIGNAL ready_for_explain WAIT_FOR explained'; send_eval $query; connection ce; --disable_result_log --disable_query_log if ($format == 'json') { let $fmt= FORMAT=JSON; } if ($format != 'json') { let $fmt= FORMAT=TRADITIONAL; } --enable_result_log --echo EXPLAIN $fmt FOR QUERY '$query' # Let the query being explained reach the sync point SET DEBUG_SYNC= 'now WAIT_FOR ready_for_explain'; SET DEBUG_SYNC= 'after_explain_other SIGNAL explained'; --error $err --eval EXPLAIN $fmt FOR CONNECTION $QID; connection cq; --disable_result_log --disable_query_log reap; SET DEBUG_SYNC= 'RESET'; --enable_query_log --enable_result_log --enable_reconnect