mirror of
https://github.com/MariaDB/server.git
synced 2025-08-01 03:47:19 +03:00
Fix and testcase for BUG#4984
The crash is eliminated but still it is weird/inefficent that ROR-intersection is used when performing updates in empty table. mysql-test/r/index_merge_ror_cpk.result: Fix and testcase for BUG#4984 mysql-test/t/index_merge_ror_cpk.test: Fix and testcase for BUG#4984 sql/opt_range.cc: Don't call index_end() for CPK quick select inside of a ROR-intersection. sql/opt_range.h: Fix and testcase for BUG#4984
This commit is contained in:
@ -97,3 +97,24 @@ pk1 pk2 key1 key2
|
||||
95 58 10 10
|
||||
95 59 10 10
|
||||
drop table t1;
|
||||
create table t1
|
||||
(
|
||||
RUNID varchar(22),
|
||||
SUBMITNR varchar(5),
|
||||
ORDERNR char(1) ,
|
||||
PROGRAMM varchar(8),
|
||||
TESTID varchar(4),
|
||||
UCCHECK char(1),
|
||||
ETEXT varchar(80),
|
||||
ETEXT_TYPE char(1),
|
||||
INFO char(1),
|
||||
SEVERITY tinyint(3),
|
||||
TADIRFLAG char(1),
|
||||
PRIMARY KEY (RUNID,SUBMITNR,ORDERNR,PROGRAMM,TESTID,UCCHECK),
|
||||
KEY `TVERM~KEY` (PROGRAMM,TESTID,UCCHECK)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
||||
update t1 set `ETEXT` = '', `ETEXT_TYPE`='', `INFO`='', `SEVERITY`='', `TADIRFLAG`=''
|
||||
WHERE
|
||||
`RUNID`= '' AND `SUBMITNR`= '' AND `ORDERNR`='' AND `PROGRAMM`='' AND
|
||||
`TESTID`='' AND `UCCHECK`='';
|
||||
drop table t1;
|
||||
|
@ -81,4 +81,28 @@ explain select pk1,pk2,key1,key2 from t1 where key1 = 10 and key2=10 limit 10;
|
||||
select pk1,pk2,key1,key2 from t1 where key1 = 10 and key2=10 limit 10;
|
||||
|
||||
drop table t1;
|
||||
# Testcase for BUG#4984
|
||||
create table t1
|
||||
(
|
||||
RUNID varchar(22),
|
||||
SUBMITNR varchar(5),
|
||||
ORDERNR char(1) ,
|
||||
PROGRAMM varchar(8),
|
||||
TESTID varchar(4),
|
||||
UCCHECK char(1),
|
||||
ETEXT varchar(80),
|
||||
ETEXT_TYPE char(1),
|
||||
INFO char(1),
|
||||
SEVERITY tinyint(3),
|
||||
TADIRFLAG char(1),
|
||||
PRIMARY KEY (RUNID,SUBMITNR,ORDERNR,PROGRAMM,TESTID,UCCHECK),
|
||||
KEY `TVERM~KEY` (PROGRAMM,TESTID,UCCHECK)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
||||
|
||||
update t1 set `ETEXT` = '', `ETEXT_TYPE`='', `INFO`='', `SEVERITY`='', `TADIRFLAG`=''
|
||||
WHERE
|
||||
`RUNID`= '' AND `SUBMITNR`= '' AND `ORDERNR`='' AND `PROGRAMM`='' AND
|
||||
`TESTID`='' AND `UCCHECK`='';
|
||||
|
||||
drop table t1;
|
||||
|
||||
|
Reference in New Issue
Block a user