Commit 811c6d21 authored by unknown's avatar unknown
Browse files

fix (bug #10303: Misleading Last_query_cost value).


sql/sql_cache.cc:
  fix (bug #10303: Misleading Last_query_cost value).
  set the last_query_cost to 0.0 in case we use the query cache.
parent 2a0f9f33
Loading
Loading
Loading
Loading
+16 −0
Original line number Diff line number Diff line
@@ -1127,3 +1127,19 @@ Qcache_hits 9
drop procedure f1;
drop table t1;
set GLOBAL query_cache_size=0;
SET GLOBAL query_cache_size=102400;
create table t1(a int);
insert into t1 values(0), (1), (4), (5);
select * from t1 where a > 3;
a
4
5
select * from t1 where a > 3;
a
4
5
show status like 'last_query_cost';
Variable_name	Value
Last_query_cost	0.000000
drop table t1;
SET GLOBAL query_cache_size=0;
+6 −0
Original line number Diff line number Diff line
@@ -17,3 +17,9 @@ Variable_name Value
Table_locks_immediate	3
Table_locks_waited	1
drop table t1;
select 1;
1
1
show status like 'last_query_cost';
Variable_name	Value
Last_query_cost	0.000000
+13 −0
Original line number Diff line number Diff line
@@ -816,3 +816,16 @@ drop table t1;
set GLOBAL query_cache_size=0;

# End of 4.1 tests

#
# Bug #10303: problem with last_query_cost
#

SET GLOBAL query_cache_size=102400;
create table t1(a int);
insert into t1 values(0), (1), (4), (5);
select * from t1 where a > 3;
select * from t1 where a > 3;
show status like 'last_query_cost';
drop table t1;
SET GLOBAL query_cache_size=0;
+7 −0
Original line number Diff line number Diff line
@@ -37,3 +37,10 @@ show status like 'Table_lock%';
drop table t1;

# End of 4.1 tests

#
# lost_query_cost
#

select 1;
show status like 'last_query_cost';
+1 −0
Original line number Diff line number Diff line
@@ -1178,6 +1178,7 @@ sql mode: 0x%lx, sort len: %lu, conncat len: %lu",
#endif /*!EMBEDDED_LIBRARY*/

  thd->limit_found_rows = query->found_rows();
  thd->status_var.last_query_cost= 0.0;

  BLOCK_UNLOCK_RD(query_block);
  DBUG_RETURN(1);				// Result sent to client