mirror of
https://github.com/MariaDB/server.git
synced 2025-01-19 05:22:25 +01:00
Manual merge
This commit is contained in:
commit
50fcba46f4
3 changed files with 53 additions and 0 deletions
|
@ -1,5 +1,31 @@
|
|||
drop table if exists t1, t2;
|
||||
#
|
||||
# Bug#56287: crash when using Partition datetime in sub in query
|
||||
#
|
||||
CREATE TABLE t1
|
||||
(c1 bigint(20) unsigned NOT NULL AUTO_INCREMENT,
|
||||
c2 varchar(40) not null default '',
|
||||
c3 datetime not NULL,
|
||||
PRIMARY KEY (c1,c3),
|
||||
KEY partidx(c3))
|
||||
ENGINE=InnoDB
|
||||
PARTITION BY RANGE (TO_DAYS(c3))
|
||||
(PARTITION p200912 VALUES LESS THAN (to_days('2010-01-01')),
|
||||
PARTITION p201103 VALUES LESS THAN (to_days('2011-04-01')),
|
||||
PARTITION p201912 VALUES LESS THAN MAXVALUE);
|
||||
insert into t1(c2,c3) values ("Test row",'2010-01-01 00:00:00');
|
||||
SELECT PARTITION_NAME, TABLE_ROWS FROM INFORMATION_SCHEMA.PARTITIONS WHERE TABLE_NAME = 't1' AND TABLE_SCHEMA = 'test';
|
||||
PARTITION_NAME TABLE_ROWS
|
||||
p200912 0
|
||||
p201103 1
|
||||
p201912 0
|
||||
SELECT count(*) FROM t1 p where c3 in
|
||||
(select c3 from t1 t where t.c3 < date '2011-04-26 19:19:44'
|
||||
and t.c3 > date '2011-04-26 19:18:44') ;
|
||||
count(*)
|
||||
0
|
||||
DROP TABLE t1;
|
||||
#
|
||||
# Bug#54747: Deadlock between REORGANIZE PARTITION and
|
||||
# SELECT is not detected
|
||||
#
|
||||
|
|
|
@ -8,6 +8,31 @@ drop table if exists t1, t2;
|
|||
|
||||
let $MYSQLD_DATADIR= `SELECT @@datadir`;
|
||||
|
||||
--echo #
|
||||
--echo # Bug#56287: crash when using Partition datetime in sub in query
|
||||
--echo #
|
||||
|
||||
CREATE TABLE t1
|
||||
(c1 bigint(20) unsigned NOT NULL AUTO_INCREMENT,
|
||||
c2 varchar(40) not null default '',
|
||||
c3 datetime not NULL,
|
||||
PRIMARY KEY (c1,c3),
|
||||
KEY partidx(c3))
|
||||
ENGINE=InnoDB
|
||||
PARTITION BY RANGE (TO_DAYS(c3))
|
||||
(PARTITION p200912 VALUES LESS THAN (to_days('2010-01-01')),
|
||||
PARTITION p201103 VALUES LESS THAN (to_days('2011-04-01')),
|
||||
PARTITION p201912 VALUES LESS THAN MAXVALUE);
|
||||
|
||||
insert into t1(c2,c3) values ("Test row",'2010-01-01 00:00:00');
|
||||
|
||||
SELECT PARTITION_NAME, TABLE_ROWS FROM INFORMATION_SCHEMA.PARTITIONS WHERE TABLE_NAME = 't1' AND TABLE_SCHEMA = 'test';
|
||||
SELECT count(*) FROM t1 p where c3 in
|
||||
(select c3 from t1 t where t.c3 < date '2011-04-26 19:19:44'
|
||||
and t.c3 > date '2011-04-26 19:18:44') ;
|
||||
|
||||
DROP TABLE t1;
|
||||
|
||||
--echo #
|
||||
--echo # Bug#54747: Deadlock between REORGANIZE PARTITION and
|
||||
--echo # SELECT is not detected
|
||||
|
|
|
@ -4618,6 +4618,7 @@ int ha_partition::partition_scan_set_up(uchar * buf, bool idx_read_flag)
|
|||
key not found.
|
||||
*/
|
||||
DBUG_PRINT("info", ("scan with no partition to scan"));
|
||||
table->status= STATUS_NOT_FOUND;
|
||||
DBUG_RETURN(HA_ERR_END_OF_FILE);
|
||||
}
|
||||
if (m_part_spec.start_part == m_part_spec.end_part)
|
||||
|
@ -4642,6 +4643,7 @@ int ha_partition::partition_scan_set_up(uchar * buf, bool idx_read_flag)
|
|||
if (start_part == MY_BIT_NONE)
|
||||
{
|
||||
DBUG_PRINT("info", ("scan with no partition to scan"));
|
||||
table->status= STATUS_NOT_FOUND;
|
||||
DBUG_RETURN(HA_ERR_END_OF_FILE);
|
||||
}
|
||||
if (start_part > m_part_spec.start_part)
|
||||
|
|
Loading…
Reference in a new issue