1
0
mirror of https://github.com/MariaDB/server.git synced 2025-06-12 01:53:02 +03:00
Files
mariadb/mysql-test/t/stat_tables_partition.test
Sergei Petrunia 7e9ffc69ec MDEV-21472: ALTER TABLE ... ANALYZE PARTITION ... with EITS reads and locks all rows
Do not collect EITS statistics for this statement:

  ALTER TABLE t ANALYZE PARTITION p

EITS stats are currently global, not per-partition.
Collecting global stats when we are asked to process just one partition
causes issues for DBAs.
2020-07-29 23:27:40 +03:00

44 lines
1.2 KiB
Plaintext

--source include/have_partition.inc
--echo #
--echo # Bug mdev-3866: valgrind complain from ANALYZE on a table with BIT field
--echo #
SET use_stat_tables = 'preferably';
CREATE TABLE t1 (pk int PRIMARY KEY, a bit(1), INDEX idx(a)
) ENGINE=MyISAM PARTITION BY KEY(pk) PARTITIONS 2;
INSERT INTO t1 VALUES (1,1),(2,0),(3,0),(4,1);
ANALYZE TABLE t1;
DROP TABLE t1;
--echo #
--echo # MDEV-21472: ALTER TABLE ... ANALYZE PARTITION ... with EITS reads and locks all rows
--echo #
CREATE TABLE t1 (
id int(11) auto_increment primary key,
c1 int(11) DEFAULT NULL
) PARTITION BY RANGE (id) (
PARTITION p0 VALUES LESS THAN (4),
PARTITION p1 VALUES LESS THAN MAXVALUE
);
insert into t1(c1) values (1),(1),(1),(1), (1),(1),(1),(1);
insert into t1(c1) select c1 from t1;
insert into t1(c1) select c1 from t1;
select count(*) from t1;
select count(*) from t1 where id <4;
flush status;
set session use_stat_tables='preferably';
--echo # Must NOT show "Engine-independent statistics collected":
alter table t1 analyze partition p0;
--echo # Should not have Handler_read_rnd_next=34
show session status like 'Handler_read_rnd%';
drop table t1;
SET use_stat_tables = DEFAULT;