mirror of
https://github.com/MariaDB/server.git
synced 2025-08-08 11:22:35 +03:00
Added Handler_read_rnd_deleted, number of deleted rows found with ha_read_rnd_first.
This commit is contained in:
@@ -1556,6 +1556,7 @@ Handler_read_key 0
|
|||||||
Handler_read_next 0
|
Handler_read_next 0
|
||||||
Handler_read_prev 0
|
Handler_read_prev 0
|
||||||
Handler_read_rnd 0
|
Handler_read_rnd 0
|
||||||
|
Handler_read_rnd_deleted 0
|
||||||
Handler_read_rnd_next 7
|
Handler_read_rnd_next 7
|
||||||
drop table t1,t2;
|
drop table t1,t2;
|
||||||
CREATE TABLE t1(c1 VARCHAR(33), KEY USING BTREE (c1));
|
CREATE TABLE t1(c1 VARCHAR(33), KEY USING BTREE (c1));
|
||||||
|
@@ -79,6 +79,7 @@ Handler_read_key 0
|
|||||||
Handler_read_next 0
|
Handler_read_next 0
|
||||||
Handler_read_prev 0
|
Handler_read_prev 0
|
||||||
Handler_read_rnd 0
|
Handler_read_rnd 0
|
||||||
|
Handler_read_rnd_deleted 0
|
||||||
Handler_read_rnd_next 0
|
Handler_read_rnd_next 0
|
||||||
flush status;
|
flush status;
|
||||||
select * from (select * from t1 where f1 in (2,3)) tt where f11=2;
|
select * from (select * from t1 where f1 in (2,3)) tt where f11=2;
|
||||||
@@ -91,6 +92,7 @@ Handler_read_key 0
|
|||||||
Handler_read_next 0
|
Handler_read_next 0
|
||||||
Handler_read_prev 0
|
Handler_read_prev 0
|
||||||
Handler_read_rnd 0
|
Handler_read_rnd 0
|
||||||
|
Handler_read_rnd_deleted 0
|
||||||
Handler_read_rnd_next 12
|
Handler_read_rnd_next 12
|
||||||
for merged views
|
for merged views
|
||||||
create view v1 as select * from t1;
|
create view v1 as select * from t1;
|
||||||
@@ -162,6 +164,7 @@ Handler_read_key 0
|
|||||||
Handler_read_next 0
|
Handler_read_next 0
|
||||||
Handler_read_prev 0
|
Handler_read_prev 0
|
||||||
Handler_read_rnd 0
|
Handler_read_rnd 0
|
||||||
|
Handler_read_rnd_deleted 0
|
||||||
Handler_read_rnd_next 0
|
Handler_read_rnd_next 0
|
||||||
flush status;
|
flush status;
|
||||||
select * from v4 where f2 in (1,3);
|
select * from v4 where f2 in (1,3);
|
||||||
@@ -174,6 +177,7 @@ Handler_read_key 0
|
|||||||
Handler_read_next 0
|
Handler_read_next 0
|
||||||
Handler_read_prev 0
|
Handler_read_prev 0
|
||||||
Handler_read_rnd 0
|
Handler_read_rnd 0
|
||||||
|
Handler_read_rnd_deleted 0
|
||||||
Handler_read_rnd_next 12
|
Handler_read_rnd_next 12
|
||||||
for materialized derived tables
|
for materialized derived tables
|
||||||
explain for simple derived
|
explain for simple derived
|
||||||
@@ -224,6 +228,7 @@ Handler_read_key 0
|
|||||||
Handler_read_next 0
|
Handler_read_next 0
|
||||||
Handler_read_prev 0
|
Handler_read_prev 0
|
||||||
Handler_read_rnd 0
|
Handler_read_rnd 0
|
||||||
|
Handler_read_rnd_deleted 0
|
||||||
Handler_read_rnd_next 0
|
Handler_read_rnd_next 0
|
||||||
flush status;
|
flush status;
|
||||||
select * from t1 join (select * from t2 group by f2) tt on f1=f2;
|
select * from t1 join (select * from t2 group by f2) tt on f1=f2;
|
||||||
@@ -238,6 +243,7 @@ Handler_read_key 11
|
|||||||
Handler_read_next 3
|
Handler_read_next 3
|
||||||
Handler_read_prev 0
|
Handler_read_prev 0
|
||||||
Handler_read_rnd 11
|
Handler_read_rnd 11
|
||||||
|
Handler_read_rnd_deleted 0
|
||||||
Handler_read_rnd_next 36
|
Handler_read_rnd_next 36
|
||||||
for materialized views
|
for materialized views
|
||||||
drop view v1,v2,v3;
|
drop view v1,v2,v3;
|
||||||
@@ -311,6 +317,7 @@ Handler_read_key 22
|
|||||||
Handler_read_next 22
|
Handler_read_next 22
|
||||||
Handler_read_prev 0
|
Handler_read_prev 0
|
||||||
Handler_read_rnd 0
|
Handler_read_rnd 0
|
||||||
|
Handler_read_rnd_deleted 0
|
||||||
Handler_read_rnd_next 60
|
Handler_read_rnd_next 60
|
||||||
explain showing late materialization
|
explain showing late materialization
|
||||||
flush status;
|
flush status;
|
||||||
@@ -326,6 +333,7 @@ Handler_read_key 0
|
|||||||
Handler_read_next 0
|
Handler_read_next 0
|
||||||
Handler_read_prev 0
|
Handler_read_prev 0
|
||||||
Handler_read_rnd 0
|
Handler_read_rnd 0
|
||||||
|
Handler_read_rnd_deleted 0
|
||||||
Handler_read_rnd_next 0
|
Handler_read_rnd_next 0
|
||||||
flush status;
|
flush status;
|
||||||
select * from t1 join v2 on f1=f2;
|
select * from t1 join v2 on f1=f2;
|
||||||
@@ -340,6 +348,7 @@ Handler_read_key 11
|
|||||||
Handler_read_next 3
|
Handler_read_next 3
|
||||||
Handler_read_prev 0
|
Handler_read_prev 0
|
||||||
Handler_read_rnd 11
|
Handler_read_rnd 11
|
||||||
|
Handler_read_rnd_deleted 0
|
||||||
Handler_read_rnd_next 36
|
Handler_read_rnd_next 36
|
||||||
explain extended select * from v1 join v4 on f1=f2;
|
explain extended select * from v1 join v4 on f1=f2;
|
||||||
id select_type table type possible_keys key key_len ref rows filtered Extra
|
id select_type table type possible_keys key key_len ref rows filtered Extra
|
||||||
@@ -433,6 +442,7 @@ Handler_read_key 2
|
|||||||
Handler_read_next 2
|
Handler_read_next 2
|
||||||
Handler_read_prev 0
|
Handler_read_prev 0
|
||||||
Handler_read_rnd 8
|
Handler_read_rnd 8
|
||||||
|
Handler_read_rnd_deleted 0
|
||||||
Handler_read_rnd_next 39
|
Handler_read_rnd_next 39
|
||||||
flush status;
|
flush status;
|
||||||
merged in merged derived join merged in merged derived
|
merged in merged derived join merged in merged derived
|
||||||
|
@@ -1240,6 +1240,7 @@ Handler_read_key 5
|
|||||||
Handler_read_next 0
|
Handler_read_next 0
|
||||||
Handler_read_prev 0
|
Handler_read_prev 0
|
||||||
Handler_read_rnd 0
|
Handler_read_rnd 0
|
||||||
|
Handler_read_rnd_deleted 0
|
||||||
Handler_read_rnd_next 6
|
Handler_read_rnd_next 6
|
||||||
DROP TABLE t1,t2;
|
DROP TABLE t1,t2;
|
||||||
CREATE TABLE t1 (c int PRIMARY KEY, e int NOT NULL);
|
CREATE TABLE t1 (c int PRIMARY KEY, e int NOT NULL);
|
||||||
@@ -1499,6 +1500,7 @@ Handler_read_key 4
|
|||||||
Handler_read_next 5
|
Handler_read_next 5
|
||||||
Handler_read_prev 0
|
Handler_read_prev 0
|
||||||
Handler_read_rnd 0
|
Handler_read_rnd 0
|
||||||
|
Handler_read_rnd_deleted 0
|
||||||
Handler_read_rnd_next 1048581
|
Handler_read_rnd_next 1048581
|
||||||
flush status;
|
flush status;
|
||||||
select sum(t3.b) from t2 left join t3 on t3.a=t2.a and t2.a <> 10;
|
select sum(t3.b) from t2 left join t3 on t3.a=t2.a and t2.a <> 10;
|
||||||
@@ -1511,6 +1513,7 @@ Handler_read_key 4
|
|||||||
Handler_read_next 5
|
Handler_read_next 5
|
||||||
Handler_read_prev 0
|
Handler_read_prev 0
|
||||||
Handler_read_rnd 0
|
Handler_read_rnd 0
|
||||||
|
Handler_read_rnd_deleted 0
|
||||||
Handler_read_rnd_next 1048581
|
Handler_read_rnd_next 1048581
|
||||||
drop table t1,t2,t3;
|
drop table t1,t2,t3;
|
||||||
#
|
#
|
||||||
|
@@ -1251,6 +1251,7 @@ Handler_read_key 5
|
|||||||
Handler_read_next 9
|
Handler_read_next 9
|
||||||
Handler_read_prev 0
|
Handler_read_prev 0
|
||||||
Handler_read_rnd 3
|
Handler_read_rnd 3
|
||||||
|
Handler_read_rnd_deleted 0
|
||||||
Handler_read_rnd_next 6
|
Handler_read_rnd_next 6
|
||||||
DROP TABLE t1,t2;
|
DROP TABLE t1,t2;
|
||||||
CREATE TABLE t1 (c int PRIMARY KEY, e int NOT NULL);
|
CREATE TABLE t1 (c int PRIMARY KEY, e int NOT NULL);
|
||||||
@@ -1510,6 +1511,7 @@ Handler_read_key 4
|
|||||||
Handler_read_next 5
|
Handler_read_next 5
|
||||||
Handler_read_prev 0
|
Handler_read_prev 0
|
||||||
Handler_read_rnd 5
|
Handler_read_rnd 5
|
||||||
|
Handler_read_rnd_deleted 0
|
||||||
Handler_read_rnd_next 1048581
|
Handler_read_rnd_next 1048581
|
||||||
flush status;
|
flush status;
|
||||||
select sum(t3.b) from t2 left join t3 on t3.a=t2.a and t2.a <> 10;
|
select sum(t3.b) from t2 left join t3 on t3.a=t2.a and t2.a <> 10;
|
||||||
@@ -1522,6 +1524,7 @@ Handler_read_key 4
|
|||||||
Handler_read_next 5
|
Handler_read_next 5
|
||||||
Handler_read_prev 0
|
Handler_read_prev 0
|
||||||
Handler_read_rnd 5
|
Handler_read_rnd 5
|
||||||
|
Handler_read_rnd_deleted 0
|
||||||
Handler_read_rnd_next 1048581
|
Handler_read_rnd_next 1048581
|
||||||
drop table t1,t2,t3;
|
drop table t1,t2,t3;
|
||||||
#
|
#
|
||||||
|
@@ -427,6 +427,7 @@ Handler_read_key 6
|
|||||||
Handler_read_next 2
|
Handler_read_next 2
|
||||||
Handler_read_prev 0
|
Handler_read_prev 0
|
||||||
Handler_read_rnd 0
|
Handler_read_rnd 0
|
||||||
|
Handler_read_rnd_deleted 0
|
||||||
Handler_read_rnd_next 5
|
Handler_read_rnd_next 5
|
||||||
DROP TABLE t1,t2,t3,t4;
|
DROP TABLE t1,t2,t3,t4;
|
||||||
CREATE TABLE t1 (
|
CREATE TABLE t1 (
|
||||||
|
@@ -382,6 +382,7 @@ Handler_read_key 2
|
|||||||
Handler_read_next 4
|
Handler_read_next 4
|
||||||
Handler_read_prev 0
|
Handler_read_prev 0
|
||||||
Handler_read_rnd 0
|
Handler_read_rnd 0
|
||||||
|
Handler_read_rnd_deleted 0
|
||||||
Handler_read_rnd_next 0
|
Handler_read_rnd_next 0
|
||||||
EXPLAIN PARTITIONS SELECT c1 FROM t2 WHERE (c1 > 10 AND c1 < 13) OR (c1 > 17 AND c1 < 20);
|
EXPLAIN PARTITIONS SELECT c1 FROM t2 WHERE (c1 > 10 AND c1 < 13) OR (c1 > 17 AND c1 < 20);
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
@@ -400,6 +401,7 @@ Handler_read_key 2
|
|||||||
Handler_read_next 4
|
Handler_read_next 4
|
||||||
Handler_read_prev 0
|
Handler_read_prev 0
|
||||||
Handler_read_rnd 0
|
Handler_read_rnd 0
|
||||||
|
Handler_read_rnd_deleted 0
|
||||||
Handler_read_rnd_next 0
|
Handler_read_rnd_next 0
|
||||||
DROP TABLE t1,t2;
|
DROP TABLE t1,t2;
|
||||||
CREATE TABLE `t1` (
|
CREATE TABLE `t1` (
|
||||||
@@ -430,6 +432,7 @@ Handler_read_key 1
|
|||||||
Handler_read_next 2
|
Handler_read_next 2
|
||||||
Handler_read_prev 0
|
Handler_read_prev 0
|
||||||
Handler_read_rnd 0
|
Handler_read_rnd 0
|
||||||
|
Handler_read_rnd_deleted 0
|
||||||
Handler_read_rnd_next 0
|
Handler_read_rnd_next 0
|
||||||
EXPLAIN PARTITIONS SELECT c1 FROM t2 WHERE (c1 > 2 AND c1 < 5);
|
EXPLAIN PARTITIONS SELECT c1 FROM t2 WHERE (c1 > 2 AND c1 < 5);
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
@@ -446,6 +449,7 @@ Handler_read_key 1
|
|||||||
Handler_read_next 2
|
Handler_read_next 2
|
||||||
Handler_read_prev 0
|
Handler_read_prev 0
|
||||||
Handler_read_rnd 0
|
Handler_read_rnd 0
|
||||||
|
Handler_read_rnd_deleted 0
|
||||||
Handler_read_rnd_next 0
|
Handler_read_rnd_next 0
|
||||||
EXPLAIN PARTITIONS SELECT c1 FROM t1 WHERE (c1 > 12 AND c1 < 15);
|
EXPLAIN PARTITIONS SELECT c1 FROM t1 WHERE (c1 > 12 AND c1 < 15);
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
@@ -462,6 +466,7 @@ Handler_read_key 1
|
|||||||
Handler_read_next 2
|
Handler_read_next 2
|
||||||
Handler_read_prev 0
|
Handler_read_prev 0
|
||||||
Handler_read_rnd 0
|
Handler_read_rnd 0
|
||||||
|
Handler_read_rnd_deleted 0
|
||||||
Handler_read_rnd_next 0
|
Handler_read_rnd_next 0
|
||||||
EXPLAIN PARTITIONS SELECT c1 FROM t2 WHERE (c1 > 12 AND c1 < 15);
|
EXPLAIN PARTITIONS SELECT c1 FROM t2 WHERE (c1 > 12 AND c1 < 15);
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
@@ -478,6 +483,7 @@ Handler_read_key 1
|
|||||||
Handler_read_next 2
|
Handler_read_next 2
|
||||||
Handler_read_prev 0
|
Handler_read_prev 0
|
||||||
Handler_read_rnd 0
|
Handler_read_rnd 0
|
||||||
|
Handler_read_rnd_deleted 0
|
||||||
Handler_read_rnd_next 0
|
Handler_read_rnd_next 0
|
||||||
DROP TABLE t1,t2;
|
DROP TABLE t1,t2;
|
||||||
create table t1 (a int) partition by list ((a/3)*10 div 1)
|
create table t1 (a int) partition by list ((a/3)*10 div 1)
|
||||||
|
@@ -2639,7 +2639,10 @@ flush status;
|
|||||||
delete from t2 where b > 5;
|
delete from t2 where b > 5;
|
||||||
show status like 'Handler_read_rnd_next';
|
show status like 'Handler_read_rnd_next';
|
||||||
Variable_name Value
|
Variable_name Value
|
||||||
Handler_read_rnd_next 1215
|
Handler_read_rnd_next 815
|
||||||
|
show status like 'Handler_read_rnd_deleted';
|
||||||
|
Variable_name Value
|
||||||
|
Handler_read_rnd_deleted 400
|
||||||
show status like 'Handler_read_key';
|
show status like 'Handler_read_key';
|
||||||
Variable_name Value
|
Variable_name Value
|
||||||
Handler_read_key 0
|
Handler_read_key 0
|
||||||
@@ -2653,7 +2656,10 @@ flush status;
|
|||||||
delete from t2 where b < 5 or b > 3;
|
delete from t2 where b < 5 or b > 3;
|
||||||
show status like 'Handler_read_rnd_next';
|
show status like 'Handler_read_rnd_next';
|
||||||
Variable_name Value
|
Variable_name Value
|
||||||
Handler_read_rnd_next 1215
|
Handler_read_rnd_next 515
|
||||||
|
show status like 'Handler_read_rnd_deleted';
|
||||||
|
Variable_name Value
|
||||||
|
Handler_read_rnd_deleted 700
|
||||||
show status like 'Handler_read_key';
|
show status like 'Handler_read_key';
|
||||||
Variable_name Value
|
Variable_name Value
|
||||||
Handler_read_key 0
|
Handler_read_key 0
|
||||||
|
@@ -3082,6 +3082,7 @@ Handler_read_key 1
|
|||||||
Handler_read_next 0
|
Handler_read_next 0
|
||||||
Handler_read_prev 0
|
Handler_read_prev 0
|
||||||
Handler_read_rnd 0
|
Handler_read_rnd 0
|
||||||
|
Handler_read_rnd_deleted 0
|
||||||
Handler_read_rnd_next 0
|
Handler_read_rnd_next 0
|
||||||
flush status;
|
flush status;
|
||||||
execute st;
|
execute st;
|
||||||
@@ -3094,6 +3095,7 @@ Handler_read_key 1
|
|||||||
Handler_read_next 0
|
Handler_read_next 0
|
||||||
Handler_read_prev 0
|
Handler_read_prev 0
|
||||||
Handler_read_rnd 0
|
Handler_read_rnd 0
|
||||||
|
Handler_read_rnd_deleted 0
|
||||||
Handler_read_rnd_next 0
|
Handler_read_rnd_next 0
|
||||||
flush status;
|
flush status;
|
||||||
select * from t1 use index() where a=3;
|
select * from t1 use index() where a=3;
|
||||||
@@ -3106,6 +3108,7 @@ Handler_read_key 0
|
|||||||
Handler_read_next 0
|
Handler_read_next 0
|
||||||
Handler_read_prev 0
|
Handler_read_prev 0
|
||||||
Handler_read_rnd 0
|
Handler_read_rnd 0
|
||||||
|
Handler_read_rnd_deleted 0
|
||||||
Handler_read_rnd_next 8
|
Handler_read_rnd_next 8
|
||||||
flush status;
|
flush status;
|
||||||
execute st;
|
execute st;
|
||||||
@@ -3118,6 +3121,7 @@ Handler_read_key 1
|
|||||||
Handler_read_next 0
|
Handler_read_next 0
|
||||||
Handler_read_prev 0
|
Handler_read_prev 0
|
||||||
Handler_read_rnd 0
|
Handler_read_rnd 0
|
||||||
|
Handler_read_rnd_deleted 0
|
||||||
Handler_read_rnd_next 0
|
Handler_read_rnd_next 0
|
||||||
deallocate prepare st;
|
deallocate prepare st;
|
||||||
drop table t1;
|
drop table t1;
|
||||||
|
@@ -4342,6 +4342,7 @@ Handler_read_key 2
|
|||||||
Handler_read_next 0
|
Handler_read_next 0
|
||||||
Handler_read_prev 0
|
Handler_read_prev 0
|
||||||
Handler_read_rnd 0
|
Handler_read_rnd 0
|
||||||
|
Handler_read_rnd_deleted 0
|
||||||
Handler_read_rnd_next 6
|
Handler_read_rnd_next 6
|
||||||
DROP TABLE t1, t2;
|
DROP TABLE t1, t2;
|
||||||
CREATE TABLE t1 (f1 bigint(20) NOT NULL default '0',
|
CREATE TABLE t1 (f1 bigint(20) NOT NULL default '0',
|
||||||
|
@@ -281,6 +281,7 @@ Handler_read_key 4
|
|||||||
Handler_read_next 0
|
Handler_read_next 0
|
||||||
Handler_read_prev 0
|
Handler_read_prev 0
|
||||||
Handler_read_rnd 7
|
Handler_read_rnd 7
|
||||||
|
Handler_read_rnd_deleted 0
|
||||||
Handler_read_rnd_next 23
|
Handler_read_rnd_next 23
|
||||||
Handler_rollback 0
|
Handler_rollback 0
|
||||||
Handler_savepoint 0
|
Handler_savepoint 0
|
||||||
@@ -296,7 +297,34 @@ Created_tmp_files 0
|
|||||||
Created_tmp_tables 2
|
Created_tmp_tables 2
|
||||||
Handler_tmp_update 2
|
Handler_tmp_update 2
|
||||||
Handler_tmp_write 7
|
Handler_tmp_write 7
|
||||||
Rows_tmp_read 34
|
Rows_tmp_read 35
|
||||||
|
drop table t1;
|
||||||
|
CREATE TABLE t1 (i int(11) DEFAULT NULL, KEY i (i) ) ENGINE=MyISAM;
|
||||||
|
insert into t1 values (1),(2),(3),(4),(5);
|
||||||
|
flush status;
|
||||||
|
select * from t1 where i=5 union select * from t1 where i=5;
|
||||||
|
i
|
||||||
|
5
|
||||||
|
show status like "handler%";
|
||||||
|
Variable_name Value
|
||||||
|
Handler_commit 0
|
||||||
|
Handler_delete 0
|
||||||
|
Handler_discover 0
|
||||||
|
Handler_prepare 0
|
||||||
|
Handler_read_first 0
|
||||||
|
Handler_read_key 2
|
||||||
|
Handler_read_next 2
|
||||||
|
Handler_read_prev 0
|
||||||
|
Handler_read_rnd 0
|
||||||
|
Handler_read_rnd_deleted 1
|
||||||
|
Handler_read_rnd_next 2
|
||||||
|
Handler_rollback 0
|
||||||
|
Handler_savepoint 0
|
||||||
|
Handler_savepoint_rollback 0
|
||||||
|
Handler_tmp_update 0
|
||||||
|
Handler_tmp_write 2
|
||||||
|
Handler_update 0
|
||||||
|
Handler_write 0
|
||||||
drop table t1;
|
drop table t1;
|
||||||
set @@global.concurrent_insert= @old_concurrent_insert;
|
set @@global.concurrent_insert= @old_concurrent_insert;
|
||||||
SET GLOBAL log_output = @old_log_output;
|
SET GLOBAL log_output = @old_log_output;
|
||||||
|
@@ -106,6 +106,7 @@ Handler_read_key 3
|
|||||||
Handler_read_next 0
|
Handler_read_next 0
|
||||||
Handler_read_prev 0
|
Handler_read_prev 0
|
||||||
Handler_read_rnd 0
|
Handler_read_rnd 0
|
||||||
|
Handler_read_rnd_deleted 0
|
||||||
Handler_read_rnd_next 5
|
Handler_read_rnd_next 5
|
||||||
Handler_rollback 2
|
Handler_rollback 2
|
||||||
Handler_savepoint 0
|
Handler_savepoint 0
|
||||||
|
@@ -427,5 +427,6 @@ Handler_read_key 6
|
|||||||
Handler_read_next 2
|
Handler_read_next 2
|
||||||
Handler_read_prev 0
|
Handler_read_prev 0
|
||||||
Handler_read_rnd 0
|
Handler_read_rnd 0
|
||||||
|
Handler_read_rnd_deleted 0
|
||||||
Handler_read_rnd_next 5
|
Handler_read_rnd_next 5
|
||||||
DROP TABLE t1,t2,t3,t4;
|
DROP TABLE t1,t2,t3,t4;
|
||||||
|
@@ -276,6 +276,7 @@ Handler_read_key 0
|
|||||||
Handler_read_next 0
|
Handler_read_next 0
|
||||||
Handler_read_prev 0
|
Handler_read_prev 0
|
||||||
Handler_read_rnd 0
|
Handler_read_rnd 0
|
||||||
|
Handler_read_rnd_deleted 0
|
||||||
Handler_read_rnd_next 0
|
Handler_read_rnd_next 0
|
||||||
flush status;
|
flush status;
|
||||||
update t1 set a=9999 order by a limit 1;
|
update t1 set a=9999 order by a limit 1;
|
||||||
@@ -290,6 +291,7 @@ Handler_read_key 0
|
|||||||
Handler_read_next 0
|
Handler_read_next 0
|
||||||
Handler_read_prev 0
|
Handler_read_prev 0
|
||||||
Handler_read_rnd 2
|
Handler_read_rnd 2
|
||||||
|
Handler_read_rnd_deleted 0
|
||||||
Handler_read_rnd_next 18
|
Handler_read_rnd_next 18
|
||||||
flush status;
|
flush status;
|
||||||
delete from t1 order by a limit 1;
|
delete from t1 order by a limit 1;
|
||||||
@@ -300,6 +302,7 @@ Handler_read_key 0
|
|||||||
Handler_read_next 0
|
Handler_read_next 0
|
||||||
Handler_read_prev 0
|
Handler_read_prev 0
|
||||||
Handler_read_rnd 1
|
Handler_read_rnd 1
|
||||||
|
Handler_read_rnd_deleted 0
|
||||||
Handler_read_rnd_next 9
|
Handler_read_rnd_next 9
|
||||||
flush status;
|
flush status;
|
||||||
delete from t1 order by a desc limit 1;
|
delete from t1 order by a desc limit 1;
|
||||||
@@ -310,6 +313,7 @@ Handler_read_key 0
|
|||||||
Handler_read_next 0
|
Handler_read_next 0
|
||||||
Handler_read_prev 0
|
Handler_read_prev 0
|
||||||
Handler_read_rnd 1
|
Handler_read_rnd 1
|
||||||
|
Handler_read_rnd_deleted 0
|
||||||
Handler_read_rnd_next 8
|
Handler_read_rnd_next 8
|
||||||
alter table t1 disable keys;
|
alter table t1 disable keys;
|
||||||
Warnings:
|
Warnings:
|
||||||
@@ -323,6 +327,7 @@ Handler_read_key 0
|
|||||||
Handler_read_next 0
|
Handler_read_next 0
|
||||||
Handler_read_prev 0
|
Handler_read_prev 0
|
||||||
Handler_read_rnd 1
|
Handler_read_rnd 1
|
||||||
|
Handler_read_rnd_deleted 0
|
||||||
Handler_read_rnd_next 7
|
Handler_read_rnd_next 7
|
||||||
select * from t1;
|
select * from t1;
|
||||||
a b
|
a b
|
||||||
@@ -376,6 +381,7 @@ Handler_read_key 1
|
|||||||
Handler_read_next 1
|
Handler_read_next 1
|
||||||
Handler_read_prev 0
|
Handler_read_prev 0
|
||||||
Handler_read_rnd 1
|
Handler_read_rnd 1
|
||||||
|
Handler_read_rnd_deleted 0
|
||||||
Handler_read_rnd_next 0
|
Handler_read_rnd_next 0
|
||||||
drop table t1, t2;
|
drop table t1, t2;
|
||||||
create table t1(f1 int, `*f2` int);
|
create table t1(f1 int, `*f2` int);
|
||||||
|
@@ -1086,12 +1086,14 @@ show status like 'Handler_read_key';
|
|||||||
flush status;
|
flush status;
|
||||||
delete from t2 where b > 5;
|
delete from t2 where b > 5;
|
||||||
show status like 'Handler_read_rnd_next';
|
show status like 'Handler_read_rnd_next';
|
||||||
|
show status like 'Handler_read_rnd_deleted';
|
||||||
show status like 'Handler_read_key';
|
show status like 'Handler_read_key';
|
||||||
show status like 'Handler_read_prev';
|
show status like 'Handler_read_prev';
|
||||||
show status like 'Handler_read_next';
|
show status like 'Handler_read_next';
|
||||||
flush status;
|
flush status;
|
||||||
delete from t2 where b < 5 or b > 3;
|
delete from t2 where b < 5 or b > 3;
|
||||||
show status like 'Handler_read_rnd_next';
|
show status like 'Handler_read_rnd_next';
|
||||||
|
show status like 'Handler_read_rnd_deleted';
|
||||||
show status like 'Handler_read_key';
|
show status like 'Handler_read_key';
|
||||||
show status like 'Handler_read_prev';
|
show status like 'Handler_read_prev';
|
||||||
show status like 'Handler_read_next';
|
show status like 'Handler_read_next';
|
||||||
|
@@ -368,6 +368,16 @@ show status like 'Handler%';
|
|||||||
show status like '%tmp%';
|
show status like '%tmp%';
|
||||||
drop table t1;
|
drop table t1;
|
||||||
|
|
||||||
|
#
|
||||||
|
# Test of handler status counts
|
||||||
|
#
|
||||||
|
CREATE TABLE t1 (i int(11) DEFAULT NULL, KEY i (i) ) ENGINE=MyISAM;
|
||||||
|
insert into t1 values (1),(2),(3),(4),(5);
|
||||||
|
flush status;
|
||||||
|
select * from t1 where i=5 union select * from t1 where i=5;
|
||||||
|
show status like "handler%";
|
||||||
|
drop table t1;
|
||||||
|
|
||||||
# End of 5.3 tests
|
# End of 5.3 tests
|
||||||
|
|
||||||
# Restore global concurrent_insert value. Keep in the end of the test file.
|
# Restore global concurrent_insert value. Keep in the end of the test file.
|
||||||
|
@@ -3938,6 +3938,8 @@ int ha_partition::rnd_next(uchar *buf)
|
|||||||
int result= HA_ERR_END_OF_FILE;
|
int result= HA_ERR_END_OF_FILE;
|
||||||
uint part_id= m_part_spec.start_part;
|
uint part_id= m_part_spec.start_part;
|
||||||
DBUG_ENTER("ha_partition::rnd_next");
|
DBUG_ENTER("ha_partition::rnd_next");
|
||||||
|
|
||||||
|
/* upper level will increment this once again at end of call */
|
||||||
decrement_statistics(&SSV::ha_read_rnd_next_count);
|
decrement_statistics(&SSV::ha_read_rnd_next_count);
|
||||||
|
|
||||||
if (NO_CURRENT_PART_ID == part_id)
|
if (NO_CURRENT_PART_ID == part_id)
|
||||||
|
@@ -8294,6 +8294,7 @@ SHOW_VAR status_vars[]= {
|
|||||||
{"Handler_read_next", (char*) offsetof(STATUS_VAR, ha_read_next_count), SHOW_LONG_STATUS},
|
{"Handler_read_next", (char*) offsetof(STATUS_VAR, ha_read_next_count), SHOW_LONG_STATUS},
|
||||||
{"Handler_read_prev", (char*) offsetof(STATUS_VAR, ha_read_prev_count), SHOW_LONG_STATUS},
|
{"Handler_read_prev", (char*) offsetof(STATUS_VAR, ha_read_prev_count), SHOW_LONG_STATUS},
|
||||||
{"Handler_read_rnd", (char*) offsetof(STATUS_VAR, ha_read_rnd_count), SHOW_LONG_STATUS},
|
{"Handler_read_rnd", (char*) offsetof(STATUS_VAR, ha_read_rnd_count), SHOW_LONG_STATUS},
|
||||||
|
{"Handler_read_rnd_deleted", (char*) offsetof(STATUS_VAR, ha_read_rnd_deleted_count), SHOW_LONG_STATUS},
|
||||||
{"Handler_read_rnd_next", (char*) offsetof(STATUS_VAR, ha_read_rnd_next_count), SHOW_LONG_STATUS},
|
{"Handler_read_rnd_next", (char*) offsetof(STATUS_VAR, ha_read_rnd_next_count), SHOW_LONG_STATUS},
|
||||||
{"Handler_rollback", (char*) offsetof(STATUS_VAR, ha_rollback_count), SHOW_LONG_STATUS},
|
{"Handler_rollback", (char*) offsetof(STATUS_VAR, ha_rollback_count), SHOW_LONG_STATUS},
|
||||||
{"Handler_savepoint", (char*) offsetof(STATUS_VAR, ha_savepoint_count), SHOW_LONG_STATUS},
|
{"Handler_savepoint", (char*) offsetof(STATUS_VAR, ha_savepoint_count), SHOW_LONG_STATUS},
|
||||||
|
@@ -571,6 +571,7 @@ typedef struct system_status_var
|
|||||||
ulong ha_read_prev_count;
|
ulong ha_read_prev_count;
|
||||||
ulong ha_read_rnd_count;
|
ulong ha_read_rnd_count;
|
||||||
ulong ha_read_rnd_next_count;
|
ulong ha_read_rnd_next_count;
|
||||||
|
ulong ha_read_rnd_deleted_count;
|
||||||
/*
|
/*
|
||||||
This number doesn't include calls to the default implementation and
|
This number doesn't include calls to the default implementation and
|
||||||
calls made by range access. The intent is to count only calls made by
|
calls made by range access. The intent is to count only calls made by
|
||||||
@@ -3747,10 +3748,17 @@ inline int handler::ha_ft_read(uchar *buf)
|
|||||||
|
|
||||||
inline int handler::ha_rnd_next(uchar *buf)
|
inline int handler::ha_rnd_next(uchar *buf)
|
||||||
{
|
{
|
||||||
increment_statistics(&SSV::ha_read_rnd_next_count);
|
|
||||||
int error= rnd_next(buf);
|
int error= rnd_next(buf);
|
||||||
if (!error)
|
if (!error)
|
||||||
|
{
|
||||||
update_rows_read();
|
update_rows_read();
|
||||||
|
increment_statistics(&SSV::ha_read_rnd_next_count);
|
||||||
|
}
|
||||||
|
else if (error == HA_ERR_RECORD_DELETED)
|
||||||
|
increment_statistics(&SSV::ha_read_rnd_deleted_count);
|
||||||
|
else
|
||||||
|
increment_statistics(&SSV::ha_read_rnd_next_count);
|
||||||
|
|
||||||
table->status=error ? STATUS_NOT_FOUND: 0;
|
table->status=error ? STATUS_NOT_FOUND: 0;
|
||||||
return error;
|
return error;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user