Hi, Sergei!
On Oct 18, Sergei Petrunia wrote:
Hello,
After recent changes in the [SHOW] EXPLAIN architecture in MariaDB, it became
really easy to add an option to print EXPLAIN(*) output into the slow query log,
so I went ahead and implemented it.
@@log_slow_verbosity has got a 'explain' flag, and if it is on, the slow query
log entries look like this:
# Time: 131017 21:26:02
# User@Host: root[root] @ localhost []
# Thread_id: 2 Schema: dbt3sf1 QC_hit: No
# Query_time: 5.535819 Lock_time: 0.000350 Rows_sent: 1 Rows_examined: 65633
## <explain>
## id select_type table type possible_keys key key_len ref rows Extra
## 1 SIMPLE nation ref PRIMARY,n_name n_name 26 const 1 Using where; Using index
## 1 SIMPLE customer ref PRIMARY,i_c_nationkey i_c_nationkey 5 dbt3sf1.nation.n_nationkey 25124 Using index
## 1 SIMPLE orders ref i_o_custkey i_o_custkey 5 dbt3sf1.customer.c_custkey 7 Using index
## </explain>
SET timestamp=1382030762;
select count(*) from customer, orders, nation where c_custkey=o_custkey and c_nationkey=n_nationkey and n_name='GERMANY';
It seems, pt-slow-query-log has no problem parsing this.
Open questions:
- Is this syntax OK?
Yes, assuming you use tabs as column separators, not spaces.
- Currently, some statements (like SHOW KEYS) print a dumb explain that
shows that full table scan is used. There is a suggestion to not print
EXPLAIN for any SHOW statements. Is this ok?
Yes. If users will complain we can always change it back later.
Regards,
Sergei
_______________________________________________
Mailing list: https://launchpad.net/~maria-developers
Post to : maria-developers@xxxxxxxxxxxxxxxxxxx
Unsubscribe : https://launchpad.net/~maria-developers
More help : https://help.launchpad.net/ListHelp