1
0
mirror of https://github.com/MariaDB/server.git synced 2025-08-01 03:47:19 +03:00

main.subselect* often fails on CI with ER_SUBQUERY_NO_1_ROW

Using mysql.slow_log was a test table would generate more than
one row if there was more than one row in the table.

Replace this table with a empty table with PK.

Reviewer: Rex Johnston
This commit is contained in:
Daniel Black
2023-11-30 14:14:10 +11:00
parent cd79f10211
commit 2fe3e033e6
7 changed files with 56 additions and 35 deletions

View File

@ -7163,24 +7163,26 @@ drop table t1;
# #
# MDEV-7565: Server crash with Signal 6 (part 2) # MDEV-7565: Server crash with Signal 6 (part 2)
# #
truncate table mysql.slow_log; create table t1 (id int not null primary key);
Select Select
(Select Sum(`TestCase`.Revenue) From mysql.slow_log E (Select Sum(`TestCase`.Revenue) From t1 E
Where TestCase.TemplateID not in (Select 1 from mysql.slow_log where 2=2) Where TestCase.TemplateID not in (Select 1 from t1 where 2=2)
) As `ControlRev` ) As `ControlRev`
From From
(Select 3 as Revenue, 4 as TemplateID) As `TestCase` (Select 3 as Revenue, 4 as TemplateID) As `TestCase`
Group By TestCase.Revenue, TestCase.TemplateID; Group By TestCase.Revenue, TestCase.TemplateID;
ControlRev ControlRev
NULL NULL
drop table t1;
# #
# MDEV-7445:Server crash with Signal 6 # MDEV-7445:Server crash with Signal 6
# #
create table t1 (id int not null primary key);
CREATE PROCEDURE procedure2() CREATE PROCEDURE procedure2()
BEGIN BEGIN
Select Select
(Select Sum(`TestCase`.Revenue) From mysql.slow_log E (Select Sum(`TestCase`.Revenue) From t1 E
Where TestCase.TemplateID not in (Select 1 from mysql.slow_log where 2=2) Where TestCase.TemplateID not in (Select 1 from t1 where 2=2)
) As `ControlRev` ) As `ControlRev`
From From
(Select 3 as Revenue, 4 as TemplateID) As `TestCase` (Select 3 as Revenue, 4 as TemplateID) As `TestCase`
@ -7193,6 +7195,7 @@ call procedure2();
ControlRev ControlRev
NULL NULL
drop procedure procedure2; drop procedure procedure2;
drop table t1;
# #
# MDEV-7846:Server crashes in Item_subselect::fix # MDEV-7846:Server crashes in Item_subselect::fix
#_fields or fails with Thread stack overrun #_fields or fails with Thread stack overrun

View File

@ -5995,25 +5995,27 @@ drop table t1;
--echo # MDEV-7565: Server crash with Signal 6 (part 2) --echo # MDEV-7565: Server crash with Signal 6 (part 2)
--echo # --echo #
truncate table mysql.slow_log; create table t1 (id int not null primary key);
Select Select
(Select Sum(`TestCase`.Revenue) From mysql.slow_log E (Select Sum(`TestCase`.Revenue) From t1 E
Where TestCase.TemplateID not in (Select 1 from mysql.slow_log where 2=2) Where TestCase.TemplateID not in (Select 1 from t1 where 2=2)
) As `ControlRev` ) As `ControlRev`
From From
(Select 3 as Revenue, 4 as TemplateID) As `TestCase` (Select 3 as Revenue, 4 as TemplateID) As `TestCase`
Group By TestCase.Revenue, TestCase.TemplateID; Group By TestCase.Revenue, TestCase.TemplateID;
drop table t1;
--echo # --echo #
--echo # MDEV-7445:Server crash with Signal 6 --echo # MDEV-7445:Server crash with Signal 6
--echo # --echo #
create table t1 (id int not null primary key);
--delimiter | --delimiter |
CREATE PROCEDURE procedure2() CREATE PROCEDURE procedure2()
BEGIN BEGIN
Select Select
(Select Sum(`TestCase`.Revenue) From mysql.slow_log E (Select Sum(`TestCase`.Revenue) From t1 E
Where TestCase.TemplateID not in (Select 1 from mysql.slow_log where 2=2) Where TestCase.TemplateID not in (Select 1 from t1 where 2=2)
) As `ControlRev` ) As `ControlRev`
From From
(Select 3 as Revenue, 4 as TemplateID) As `TestCase` (Select 3 as Revenue, 4 as TemplateID) As `TestCase`
@ -6025,6 +6027,7 @@ call procedure2();
call procedure2(); call procedure2();
drop procedure procedure2; drop procedure procedure2;
drop table t1;
--echo # --echo #

View File

@ -7163,24 +7163,26 @@ drop table t1;
# #
# MDEV-7565: Server crash with Signal 6 (part 2) # MDEV-7565: Server crash with Signal 6 (part 2)
# #
truncate table mysql.slow_log; create table t1 (id int not null primary key);
Select Select
(Select Sum(`TestCase`.Revenue) From mysql.slow_log E (Select Sum(`TestCase`.Revenue) From t1 E
Where TestCase.TemplateID not in (Select 1 from mysql.slow_log where 2=2) Where TestCase.TemplateID not in (Select 1 from t1 where 2=2)
) As `ControlRev` ) As `ControlRev`
From From
(Select 3 as Revenue, 4 as TemplateID) As `TestCase` (Select 3 as Revenue, 4 as TemplateID) As `TestCase`
Group By TestCase.Revenue, TestCase.TemplateID; Group By TestCase.Revenue, TestCase.TemplateID;
ControlRev ControlRev
NULL NULL
drop table t1;
# #
# MDEV-7445:Server crash with Signal 6 # MDEV-7445:Server crash with Signal 6
# #
create table t1 (id int not null primary key);
CREATE PROCEDURE procedure2() CREATE PROCEDURE procedure2()
BEGIN BEGIN
Select Select
(Select Sum(`TestCase`.Revenue) From mysql.slow_log E (Select Sum(`TestCase`.Revenue) From t1 E
Where TestCase.TemplateID not in (Select 1 from mysql.slow_log where 2=2) Where TestCase.TemplateID not in (Select 1 from t1 where 2=2)
) As `ControlRev` ) As `ControlRev`
From From
(Select 3 as Revenue, 4 as TemplateID) As `TestCase` (Select 3 as Revenue, 4 as TemplateID) As `TestCase`
@ -7193,6 +7195,7 @@ call procedure2();
ControlRev ControlRev
NULL NULL
drop procedure procedure2; drop procedure procedure2;
drop table t1;
# #
# MDEV-7846:Server crashes in Item_subselect::fix # MDEV-7846:Server crashes in Item_subselect::fix
#_fields or fails with Thread stack overrun #_fields or fails with Thread stack overrun

View File

@ -7156,24 +7156,26 @@ drop table t1;
# #
# MDEV-7565: Server crash with Signal 6 (part 2) # MDEV-7565: Server crash with Signal 6 (part 2)
# #
truncate table mysql.slow_log; create table t1 (id int not null primary key);
Select Select
(Select Sum(`TestCase`.Revenue) From mysql.slow_log E (Select Sum(`TestCase`.Revenue) From t1 E
Where TestCase.TemplateID not in (Select 1 from mysql.slow_log where 2=2) Where TestCase.TemplateID not in (Select 1 from t1 where 2=2)
) As `ControlRev` ) As `ControlRev`
From From
(Select 3 as Revenue, 4 as TemplateID) As `TestCase` (Select 3 as Revenue, 4 as TemplateID) As `TestCase`
Group By TestCase.Revenue, TestCase.TemplateID; Group By TestCase.Revenue, TestCase.TemplateID;
ControlRev ControlRev
NULL NULL
drop table t1;
# #
# MDEV-7445:Server crash with Signal 6 # MDEV-7445:Server crash with Signal 6
# #
create table t1 (id int not null primary key);
CREATE PROCEDURE procedure2() CREATE PROCEDURE procedure2()
BEGIN BEGIN
Select Select
(Select Sum(`TestCase`.Revenue) From mysql.slow_log E (Select Sum(`TestCase`.Revenue) From t1 E
Where TestCase.TemplateID not in (Select 1 from mysql.slow_log where 2=2) Where TestCase.TemplateID not in (Select 1 from t1 where 2=2)
) As `ControlRev` ) As `ControlRev`
From From
(Select 3 as Revenue, 4 as TemplateID) As `TestCase` (Select 3 as Revenue, 4 as TemplateID) As `TestCase`
@ -7186,6 +7188,7 @@ call procedure2();
ControlRev ControlRev
NULL NULL
drop procedure procedure2; drop procedure procedure2;
drop table t1;
# #
# MDEV-7846:Server crashes in Item_subselect::fix # MDEV-7846:Server crashes in Item_subselect::fix
#_fields or fails with Thread stack overrun #_fields or fails with Thread stack overrun

View File

@ -7154,24 +7154,26 @@ drop table t1;
# #
# MDEV-7565: Server crash with Signal 6 (part 2) # MDEV-7565: Server crash with Signal 6 (part 2)
# #
truncate table mysql.slow_log; create table t1 (id int not null primary key);
Select Select
(Select Sum(`TestCase`.Revenue) From mysql.slow_log E (Select Sum(`TestCase`.Revenue) From t1 E
Where TestCase.TemplateID not in (Select 1 from mysql.slow_log where 2=2) Where TestCase.TemplateID not in (Select 1 from t1 where 2=2)
) As `ControlRev` ) As `ControlRev`
From From
(Select 3 as Revenue, 4 as TemplateID) As `TestCase` (Select 3 as Revenue, 4 as TemplateID) As `TestCase`
Group By TestCase.Revenue, TestCase.TemplateID; Group By TestCase.Revenue, TestCase.TemplateID;
ControlRev ControlRev
NULL NULL
drop table t1;
# #
# MDEV-7445:Server crash with Signal 6 # MDEV-7445:Server crash with Signal 6
# #
create table t1 (id int not null primary key);
CREATE PROCEDURE procedure2() CREATE PROCEDURE procedure2()
BEGIN BEGIN
Select Select
(Select Sum(`TestCase`.Revenue) From mysql.slow_log E (Select Sum(`TestCase`.Revenue) From t1 E
Where TestCase.TemplateID not in (Select 1 from mysql.slow_log where 2=2) Where TestCase.TemplateID not in (Select 1 from t1 where 2=2)
) As `ControlRev` ) As `ControlRev`
From From
(Select 3 as Revenue, 4 as TemplateID) As `TestCase` (Select 3 as Revenue, 4 as TemplateID) As `TestCase`
@ -7184,6 +7186,7 @@ call procedure2();
ControlRev ControlRev
NULL NULL
drop procedure procedure2; drop procedure procedure2;
drop table t1;
# #
# MDEV-7846:Server crashes in Item_subselect::fix # MDEV-7846:Server crashes in Item_subselect::fix
#_fields or fails with Thread stack overrun #_fields or fails with Thread stack overrun

View File

@ -7169,24 +7169,26 @@ drop table t1;
# #
# MDEV-7565: Server crash with Signal 6 (part 2) # MDEV-7565: Server crash with Signal 6 (part 2)
# #
truncate table mysql.slow_log; create table t1 (id int not null primary key);
Select Select
(Select Sum(`TestCase`.Revenue) From mysql.slow_log E (Select Sum(`TestCase`.Revenue) From t1 E
Where TestCase.TemplateID not in (Select 1 from mysql.slow_log where 2=2) Where TestCase.TemplateID not in (Select 1 from t1 where 2=2)
) As `ControlRev` ) As `ControlRev`
From From
(Select 3 as Revenue, 4 as TemplateID) As `TestCase` (Select 3 as Revenue, 4 as TemplateID) As `TestCase`
Group By TestCase.Revenue, TestCase.TemplateID; Group By TestCase.Revenue, TestCase.TemplateID;
ControlRev ControlRev
NULL NULL
drop table t1;
# #
# MDEV-7445:Server crash with Signal 6 # MDEV-7445:Server crash with Signal 6
# #
create table t1 (id int not null primary key);
CREATE PROCEDURE procedure2() CREATE PROCEDURE procedure2()
BEGIN BEGIN
Select Select
(Select Sum(`TestCase`.Revenue) From mysql.slow_log E (Select Sum(`TestCase`.Revenue) From t1 E
Where TestCase.TemplateID not in (Select 1 from mysql.slow_log where 2=2) Where TestCase.TemplateID not in (Select 1 from t1 where 2=2)
) As `ControlRev` ) As `ControlRev`
From From
(Select 3 as Revenue, 4 as TemplateID) As `TestCase` (Select 3 as Revenue, 4 as TemplateID) As `TestCase`
@ -7199,6 +7201,7 @@ call procedure2();
ControlRev ControlRev
NULL NULL
drop procedure procedure2; drop procedure procedure2;
drop table t1;
# #
# MDEV-7846:Server crashes in Item_subselect::fix # MDEV-7846:Server crashes in Item_subselect::fix
#_fields or fails with Thread stack overrun #_fields or fails with Thread stack overrun

View File

@ -7154,24 +7154,26 @@ drop table t1;
# #
# MDEV-7565: Server crash with Signal 6 (part 2) # MDEV-7565: Server crash with Signal 6 (part 2)
# #
truncate table mysql.slow_log; create table t1 (id int not null primary key);
Select Select
(Select Sum(`TestCase`.Revenue) From mysql.slow_log E (Select Sum(`TestCase`.Revenue) From t1 E
Where TestCase.TemplateID not in (Select 1 from mysql.slow_log where 2=2) Where TestCase.TemplateID not in (Select 1 from t1 where 2=2)
) As `ControlRev` ) As `ControlRev`
From From
(Select 3 as Revenue, 4 as TemplateID) As `TestCase` (Select 3 as Revenue, 4 as TemplateID) As `TestCase`
Group By TestCase.Revenue, TestCase.TemplateID; Group By TestCase.Revenue, TestCase.TemplateID;
ControlRev ControlRev
NULL NULL
drop table t1;
# #
# MDEV-7445:Server crash with Signal 6 # MDEV-7445:Server crash with Signal 6
# #
create table t1 (id int not null primary key);
CREATE PROCEDURE procedure2() CREATE PROCEDURE procedure2()
BEGIN BEGIN
Select Select
(Select Sum(`TestCase`.Revenue) From mysql.slow_log E (Select Sum(`TestCase`.Revenue) From t1 E
Where TestCase.TemplateID not in (Select 1 from mysql.slow_log where 2=2) Where TestCase.TemplateID not in (Select 1 from t1 where 2=2)
) As `ControlRev` ) As `ControlRev`
From From
(Select 3 as Revenue, 4 as TemplateID) As `TestCase` (Select 3 as Revenue, 4 as TemplateID) As `TestCase`
@ -7184,6 +7186,7 @@ call procedure2();
ControlRev ControlRev
NULL NULL
drop procedure procedure2; drop procedure procedure2;
drop table t1;
# #
# MDEV-7846:Server crashes in Item_subselect::fix # MDEV-7846:Server crashes in Item_subselect::fix
#_fields or fails with Thread stack overrun #_fields or fails with Thread stack overrun