Changeset: b33e46da54c5 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=b33e46da54c5
Modified Files:
sql/server/sql_atom.c
sql/test/SQLancer/Tests/sqlancer05.sql
sql/test/SQLancer/Tests/sqlancer05.stable.out
Branch: Oct2020
Log Message:
Making SQLancer happy, don't test for true and false values for strings. THe
current heuristic was incorrect
diffs (61 lines):
diff --git a/sql/server/sql_atom.c b/sql/server/sql_atom.c
--- a/sql/server/sql_atom.c
+++ b/sql/server/sql_atom.c
@@ -1435,8 +1435,6 @@ atom_is_true(atom *a)
return a->data.val.fval != 0;
case TYPE_dbl:
return a->data.val.dval != 0;
- case TYPE_str:
- return strcmp(a->data.val.sval, "") != 0;
default:
return 0;
}
@@ -1464,8 +1462,6 @@ atom_is_false(atom *a)
return a->data.val.fval == 0;
case TYPE_dbl:
return a->data.val.dval == 0;
- case TYPE_str:
- return strcmp(a->data.val.sval, "") == 0;
default:
return 0;
}
diff --git a/sql/test/SQLancer/Tests/sqlancer05.sql
b/sql/test/SQLancer/Tests/sqlancer05.sql
--- a/sql/test/SQLancer/Tests/sqlancer05.sql
+++ b/sql/test/SQLancer/Tests/sqlancer05.sql
@@ -115,3 +115,10 @@ INSERT INTO t1(c0) VALUES(0.40), (0.75);
UPDATE t1 SET c0 = 0.28 WHERE (CAST(INTERVAL '31' MONTH AS STRING)) NOT IN
(COALESCE('靟', 'P먌+}I*CpQ'));
SELECT c0 FROM t1;
DROP TABLE t1;
+
+SELECT 1 WHERE '0';
+ --empty
+SELECT 1 WHERE NOT '0';
+ -- 1
+SELECT 1 WHERE '0' IS NULL;
+ --empty
diff --git a/sql/test/SQLancer/Tests/sqlancer05.stable.out
b/sql/test/SQLancer/Tests/sqlancer05.stable.out
--- a/sql/test/SQLancer/Tests/sqlancer05.stable.out
+++ b/sql/test/SQLancer/Tests/sqlancer05.stable.out
@@ -158,6 +158,22 @@ stdout of test 'sqlancer05` in directory
[ 0.400 ]
[ 0.750 ]
#DROP TABLE t1;
+#SELECT 1 WHERE '0';
+% .%2 # table_name
+% %2 # name
+% tinyint # type
+% 1 # length
+#SELECT 1 WHERE NOT '0';
+% .%3 # table_name
+% %3 # name
+% tinyint # type
+% 1 # length
+[ 1 ]
+#SELECT 1 WHERE '0' IS NULL;
+% .%2 # table_name
+% %2 # name
+% tinyint # type
+% 1 # length
# 12:00:38 >
# 12:00:38 > "Done."
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list