Changeset: 235a273756da for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=235a273756da
Modified Files:
monetdb5/optimizer/opt_postfix.c
sql/test/SQLancer/Tests/sqlancer02.test
sql/test/SQLancer/Tests/sqlancer04.test
sql/test/SQLancer/Tests/sqlancer10.test
sql/test/SQLancer/Tests/sqlancer11.test
Branch: default
Log Message:
I got the flag swapping wrong (I thought it was the complement). Also removed
semicolons at the end of test queries
diffs (182 lines):
diff --git a/monetdb5/optimizer/opt_postfix.c b/monetdb5/optimizer/opt_postfix.c
--- a/monetdb5/optimizer/opt_postfix.c
+++ b/monetdb5/optimizer/opt_postfix.c
@@ -76,16 +76,16 @@ OPTpostfixImplementation(Client cntxt, M
ValRecord *x =
&getVarConstant(mb, getArg(p, 6)), cst = {.vtype = TYPE_int};
switch (x->val.ival) {
case JOIN_LT:
- cst.val.ival =
JOIN_GE;
- break;
- case JOIN_LE:
cst.val.ival =
JOIN_GT;
break;
+ case JOIN_LE:
+ cst.val.ival =
JOIN_GE;
+ break;
case JOIN_GT:
- cst.val.ival =
JOIN_LE;
+ cst.val.ival =
JOIN_LT;
break;
case JOIN_GE:
- cst.val.ival =
JOIN_LT;
+ cst.val.ival =
JOIN_LE;
break;
default:
cst.val.ival =
x->val.ival;
diff --git a/sql/test/SQLancer/Tests/sqlancer02.test
b/sql/test/SQLancer/Tests/sqlancer02.test
--- a/sql/test/SQLancer/Tests/sqlancer02.test
+++ b/sql/test/SQLancer/Tests/sqlancer02.test
@@ -522,7 +522,7 @@ 896
statement error
SELECT ALL t1.c0 FROM t1, t2 CROSS JOIN ((SELECT 1 FROM t2)
EXCEPT (SELECT ALL ((CASE 0.1 WHEN 0.2 THEN t2.c2 END)>(greatest(t2.c2,
t2.c0))) FROM t2)) AS sub0
-WHERE (3.0) IS NOT NULL; --error
+WHERE (3.0) IS NOT NULL
statement ok
ROLLBACK
diff --git a/sql/test/SQLancer/Tests/sqlancer04.test
b/sql/test/SQLancer/Tests/sqlancer04.test
--- a/sql/test/SQLancer/Tests/sqlancer04.test
+++ b/sql/test/SQLancer/Tests/sqlancer04.test
@@ -57,7 +57,7 @@ else coalesce (case coalesce (dayofmonth
cast(t0.c3 as double)) then case least(t0.c1, t0.c1) when case t0.c2 when
interval '5' month then r'*pf6/+}öq壚,j2\302\205K]sNKk,_%Tu' when 1016331084
then r'0.4'
else r'*' end then 0.8 end when sql_min(t0.c3, t0.c3) then coalesce
(cast(t0.c2 as decimal), "second"(t0.c3), cast(t0.c2 as decimal),
0.9) when coalesce (cast(t0.c1 as double), 0.2) then 0.0 else 0.0 end, 0.2)
end from t0 where (interval '6' month)
-is not null group by cast(dayofmonth(t0.c0) as string(679)), 0.2; --error,
types sec_interval(0,0) and tinyint(8,0) are not equal
+is not null group by cast(dayofmonth(t0.c0) as string(679)), 0.2
statement ok
ROLLBACK
diff --git a/sql/test/SQLancer/Tests/sqlancer10.test
b/sql/test/SQLancer/Tests/sqlancer10.test
--- a/sql/test/SQLancer/Tests/sqlancer10.test
+++ b/sql/test/SQLancer/Tests/sqlancer10.test
@@ -219,7 +219,7 @@ statement ok
ROLLBACK
query I rowsort
-select case 3 <> any(select 4) when true then 2 when false then 8 end;
+select case 3 <> any(select 4) when true then 2 when false then 8 end
----
2
@@ -242,3 +242,31 @@ 6
statement ok
ROLLBACK
+statement ok
+START TRANSACTION
+
+statement ok
+CREATE TABLE "t0" ("c0" INT NOT NULL,CONSTRAINT "t0_c0_pkey" PRIMARY KEY
("c0"),CONSTRAINT "t0_c0_unique" UNIQUE ("c0"))
+
+statement ok
+INSERT INTO "t0" VALUES (0),(-10),(1),(2)
+
+statement ok
+CREATE TABLE "t1" ("c0" INT)
+
+statement ok
+INSERT INTO "t1" VALUES
(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),
+(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),
+(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(4),(6),(1),(1)
+
+query I rowsort
+SELECT ALL t1.c0 FROM t0, t1 WHERE ((t0.c0)>(least(9, t1.c0)))
+----
+1
+1
+
+query I rowsort
+SELECT CAST(SUM(count) AS BIGINT) FROM (SELECT CAST(((t0.c0)>(least(9,
t1.c0))) AS INT) as count FROM t0, t1) as res
+----
+2
+
diff --git a/sql/test/SQLancer/Tests/sqlancer11.test
b/sql/test/SQLancer/Tests/sqlancer11.test
--- a/sql/test/SQLancer/Tests/sqlancer11.test
+++ b/sql/test/SQLancer/Tests/sqlancer11.test
@@ -708,7 +708,7 @@ statement ok
START TRANSACTION
statement ok
-CREATE TABLE "sys"."t0" ("c1" REAL NOT NULL,"c2" SMALLINT,"c3" UUID);
+CREATE TABLE "sys"."t0" ("c1" REAL NOT NULL,"c2" SMALLINT,"c3" UUID)
statement ok
INSERT INTO "sys"."t0" VALUES (1.2981725e+09, 0,
'7dd474c9-f093-8ecd-5f7c-0f9100ac11ba'),(0.49708593, 0,
'0aead7ff-1812-bac2-fb0e-f982697d5ddd'),
@@ -750,7 +750,7 @@ statement ok
INSERT INTO "t2" VALUES (4),(5),(6),(7),(8),(9),(10),(11),(12),(13),(0)
query I rowsort
-SELECT 1 FROM t0, t2 RIGHT OUTER JOIN (VALUES (((SELECT '1') INTERSECT ALL
(SELECT DISTINCT '3' FROM t2 AS l1t2 WHERE FALSE)))) AS sub0 ON ('6' LIKE
(SELECT DISTINCT 'e' FROM t1 AS l2t1)) GROUP BY t0.c1;
+SELECT 1 FROM t0, t2 RIGHT OUTER JOIN (VALUES (((SELECT '1') INTERSECT ALL
(SELECT DISTINCT '3' FROM t2 AS l1t2 WHERE FALSE)))) AS sub0 ON ('6' LIKE
(SELECT DISTINCT 'e' FROM t1 AS l2t1)) GROUP BY t0.c1
----
1
1
@@ -758,7 +758,7 @@ 1
1
query I rowsort
-SELECT 1 FROM t0, t2 RIGHT OUTER JOIN (VALUES (((SELECT '1') INTERSECT ALL
(SELECT DISTINCT '3' FROM t2 AS l1t2 WHERE FALSE)))) AS sub0 ON ('6' LIKE
(SELECT DISTINCT 'e' FROM t1 AS l2t1)) GROUP BY t0.c1 HAVING count(*) <> 0;
+SELECT 1 FROM t0, t2 RIGHT OUTER JOIN (VALUES (((SELECT '1') INTERSECT ALL
(SELECT DISTINCT '3' FROM t2 AS l1t2 WHERE FALSE)))) AS sub0 ON ('6' LIKE
(SELECT DISTINCT 'e' FROM t1 AS l2t1)) GROUP BY t0.c1 HAVING count(*) <> 0
----
1
1
@@ -766,12 +766,12 @@ 1
1
query I rowsort
-SELECT 1 FROM t0, t2 RIGHT OUTER JOIN (VALUES (((SELECT '1') INTERSECT ALL
(SELECT DISTINCT '3' FROM t2 AS l1t2 WHERE FALSE)))) AS sub0 ON ('6' LIKE
(SELECT DISTINCT 'e' FROM t1 AS l2t1)) GROUP BY t0.c1 HAVING NOT (count(*) <>
0);
+SELECT 1 FROM t0, t2 RIGHT OUTER JOIN (VALUES (((SELECT '1') INTERSECT ALL
(SELECT DISTINCT '3' FROM t2 AS l1t2 WHERE FALSE)))) AS sub0 ON ('6' LIKE
(SELECT DISTINCT 'e' FROM t1 AS l2t1)) GROUP BY t0.c1 HAVING NOT (count(*) <> 0)
----
query I rowsort
-SELECT 1 FROM t0, t2 RIGHT OUTER JOIN (VALUES (((SELECT '1') INTERSECT ALL
(SELECT DISTINCT '3' FROM t2 AS l1t2 WHERE FALSE)))) AS sub0 ON ('6' LIKE
(SELECT DISTINCT 'e' FROM t1 AS l2t1)) GROUP BY t0.c1 HAVING (count(*) <> 0) IS
NULL;
+SELECT 1 FROM t0, t2 RIGHT OUTER JOIN (VALUES (((SELECT '1') INTERSECT ALL
(SELECT DISTINCT '3' FROM t2 AS l1t2 WHERE FALSE)))) AS sub0 ON ('6' LIKE
(SELECT DISTINCT 'e' FROM t1 AS l2t1)) GROUP BY t0.c1 HAVING (count(*) <> 0) IS
NULL
----
@@ -800,7 +800,7 @@ statement ok
INSERT INTO "t2" VALUES ('6b1b3e0e-655f-cbf3-bfa6-58cac0fdb5b7', -156155021)
query T rowsort
-SELECT t1.c2 FROM t1, t2 RIGHT OUTER JOIN (VALUES (UUID
'131b9167-efFa-92FE-523A-5EF2Ca7963a8', 1)) AS sub0 ON false WHERE ((SELECT
DISTINCT 3 FROM t0 AS l2t0) EXCEPT ALL (SELECT 2 FROM t0 AS l2t0)) IS NULL;
+SELECT t1.c2 FROM t1, t2 RIGHT OUTER JOIN (VALUES (UUID
'131b9167-efFa-92FE-523A-5EF2Ca7963a8', 1)) AS sub0 ON false WHERE ((SELECT
DISTINCT 3 FROM t0 AS l2t0) EXCEPT ALL (SELECT 2 FROM t0 AS l2t0)) IS NULL
----
7982
7982
@@ -822,7 +822,7 @@ 7982
7982
query T rowsort
-SELECT ((SELECT DISTINCT 3 FROM t0 AS l2t0) EXCEPT ALL (SELECT 2 FROM t0 AS
l2t0)) IS NULL FROM t1, t2 RIGHT OUTER JOIN (VALUES (UUID
'131b9167-efFa-92FE-523A-5EF2Ca7963a8', 1)) AS sub0 ON false;
+SELECT ((SELECT DISTINCT 3 FROM t0 AS l2t0) EXCEPT ALL (SELECT 2 FROM t0 AS
l2t0)) IS NULL FROM t1, t2 RIGHT OUTER JOIN (VALUES (UUID
'131b9167-efFa-92FE-523A-5EF2Ca7963a8', 1)) AS sub0 ON false
----
True
True
@@ -897,20 +897,20 @@ statement ok
START TRANSACTION
statement ok
-CREATE TABLE "sys"."t0" ("c0" BIGINT,"c2" DECIMAL(18,3),"c4" BIGINT,"c5"
VARCHAR(253));
+CREATE TABLE "sys"."t0" ("c0" BIGINT,"c2" DECIMAL(18,3),"c4" BIGINT,"c5"
VARCHAR(253))
statement ok
-CREATE TABLE "sys"."t1" ("c2" BINARY LARGE OBJECT);
+CREATE TABLE "sys"."t1" ("c2" BINARY LARGE OBJECT)
statement ok
-CREATE TABLE "sys"."t2" ("c2" BIGINT);
+CREATE TABLE "sys"."t2" ("c2" BIGINT)
statement ok
-INSERT INTO "sys"."t2" VALUES (6),(7),(1),(1457323133),(8);
+INSERT INTO "sys"."t2" VALUES (6),(7),(1),(1457323133),(8)
statement ok
INSERT INTO t1(c2) VALUES(COALESCE(BLOB '23f0', ifthenelse(FALSE, BLOB '',
BLOB '70'), COALESCE(BLOB 'f7b1FD', BLOB 'A0', BLOB '0c', BLOB '', BLOB ''))),
-(CASE WHEN NOT EXISTS (SELECT ALL l2t2.c2 FROM t2 AS l2t2, t0 AS l2t0, t1 AS
l2t1 WHERE FALSE) THEN BLOB 'F0' ELSE (SELECT DISTINCT NULL WHERE TRUE) END);
+(CASE WHEN NOT EXISTS (SELECT ALL l2t2.c2 FROM t2 AS l2t2, t0 AS l2t0, t1 AS
l2t1 WHERE FALSE) THEN BLOB 'F0' ELSE (SELECT DISTINCT NULL WHERE TRUE) END)
statement ok
ROLLBACK
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list