Changeset: 08e635240cb1 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/08e635240cb1
Added Files:
sql/backends/monet5/UDF/udf/Tests/alastair_udf_mergetable_bug.py
sql/backends/monet5/UDF/udf/Tests/sqlancer.test
sql/backends/monet5/UDF/udf/Tests/string-length.Bug-3999.test
Removed Files:
monetdb5/optimizer/Tests/dataflow.maltest
sql/test/scripts/Tests/alastair_udf_mergetable_bug.py
Modified Files:
monetdb5/optimizer/Tests/All
monetdb5/optimizer/Tests/SingleServer
sql/backends/monet5/UDF/udf/Tests/All
sql/test/BugTracker-2016/Tests/SingleServer
sql/test/BugTracker-2016/Tests/string-length.Bug-3999.test
sql/test/SQLancer/Tests/SingleServer
sql/test/SQLancer/Tests/sqlancer01.test
sql/test/SQLancer/Tests/sqlancer10.test
sql/test/scripts/Tests/All
testing/Mtest.py.in
Branch: Dec2025
Log Message:
Concentrate tests using extra modules; skip embedded tests if not installed.
Some fixes for testing from RPM builds, especially when not everything
is installed (udf and microbenchark modules are never installed, geom is
optional).
diffs (truncated from 345 to 300 lines):
diff --git a/monetdb5/optimizer/Tests/All b/monetdb5/optimizer/Tests/All
--- a/monetdb5/optimizer/Tests/All
+++ b/monetdb5/optimizer/Tests/All
@@ -72,7 +72,6 @@ Mexample
commonTerms
argumenttypes
-THREADS>=2?dataflow
THREADS>=2?dataflow3
THREADS>=2?dataflow4
THREADS>=2?dataflow5
diff --git a/monetdb5/optimizer/Tests/SingleServer
b/monetdb5/optimizer/Tests/SingleServer
--- a/monetdb5/optimizer/Tests/SingleServer
+++ b/monetdb5/optimizer/Tests/SingleServer
@@ -1,1 +0,0 @@
---loadmodule microbenchmark
diff --git a/monetdb5/optimizer/Tests/dataflow.maltest
b/monetdb5/optimizer/Tests/dataflow.maltest
deleted file mode 100644
--- a/monetdb5/optimizer/Tests/dataflow.maltest
+++ /dev/null
@@ -1,30 +0,0 @@
-statement ok
-include microbenchmark
-
-statement ok
-function tst();
-s:= microbenchmark.uniform(0:oid, 100000:lng, 100000);
-l:= aggr.min(s);
-h:= l;
-z:= nil:bat[:oid];
- t1:= algebra.select(s,nil:bat[:oid],l,h,true,true,false);
- t2:= algebra.select(s,nil:bat[:oid],l,h,true,true,false);
- t3:= algebra.select(s,nil:bat[:oid],l,h,true,true,false);
- t4:= algebra.select(s,nil:bat[:oid],l,h,true,true,false);
- t5:= algebra.select(s,nil:bat[:oid],l,h,true,true,false);
- t6:= algebra.select(s,nil:bat[:oid],l,h,true,true,false);
- t7:= algebra.select(s,nil:bat[:oid],l,h,true,true,false);
- t8:= algebra.select(s,nil:bat[:oid],l,h,true,true,false);
- z:= mat.pack(t1,t2,t3,t4,t5,t6,t7,t8);
-mdb.var();
-c:= aggr.count(z);
-io.print(c);
-io.print("done");
-end tst
-
-statement ok
-optimizer.dataflow("user","tst")
-
-statement ok
-optimizer.garbageCollector("user","tst")
-
diff --git a/sql/backends/monet5/UDF/udf/Tests/All
b/sql/backends/monet5/UDF/udf/Tests/All
--- a/sql/backends/monet5/UDF/udf/Tests/All
+++ b/sql/backends/monet5/UDF/udf/Tests/All
@@ -1,2 +1,5 @@
udf-reverse
udf-fuse
+string-length.Bug-3999
+sqlancer
+alastair_udf_mergetable_bug
diff --git a/sql/test/scripts/Tests/alastair_udf_mergetable_bug.py
b/sql/backends/monet5/UDF/udf/Tests/alastair_udf_mergetable_bug.py
rename from sql/test/scripts/Tests/alastair_udf_mergetable_bug.py
rename to sql/backends/monet5/UDF/udf/Tests/alastair_udf_mergetable_bug.py
diff --git a/sql/backends/monet5/UDF/udf/Tests/sqlancer.test
b/sql/backends/monet5/UDF/udf/Tests/sqlancer.test
new file mode 100644
--- /dev/null
+++ b/sql/backends/monet5/UDF/udf/Tests/sqlancer.test
@@ -0,0 +1,54 @@
+query T rowsort
+select reverse(E'8 \\rcr੧[bp1eMY쫺4j5s뮯!<Rn4*}')
+----
+}*4nR<!뮯s5j4쫺YMe1pb[੧rcr\ 8
+
+statement ok
+CREATE TABLE integers(i INTEGER)
+
+statement ok
+insert into integers(i) values(((length(reverse(E'8
\rcr੧[bp1eMY쫺4j5s뮯!<Rn4*}')))>>(((- (- (528640982)))&(ascii('528640982'))))))
+
+query I nosort
+SELECT i from integers order by i
+----
+0
+
+statement ok
+START TRANSACTION
+
+statement ok
+CREATE TABLE "t0" ("c1" DECIMAL(18,3),"c2" DOUBLE,"c3" BIGINT)
+
+statement ok
+INSERT INTO "t0" VALUES (0.777, 0.7536489655766666, 8)
+
+statement ok
+CREATE TABLE "t1" ("c0" DECIMAL(18,3))
+
+statement ok
+INSERT INTO "t1" VALUES (0.276),(0.525),(0.660),(0.567),(0.476),(482405851.000)
+
+statement ok
+CREATE TABLE "t2" ("c0" DECIMAL(18,3))
+
+statement ok
+INSERT INTO "t2" VALUES (0.314),(0.314),(0.314),(0.314),(0.314),(0.314)
+
+query T nosort
+SELECT group_concat('a') FROM t1 RIGHT OUTER JOIN ((SELECT t1.c0, 1, t2.c0
FROM t1, t2) except ALL (SELECT t0.c2, 1, 8 FROM t0)) AS sub0 ON EXISTS (SELECT
1)
+----
+a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a
+
+query TI nosort
+SELECT listagg(ALL CASE sql_min('pX1~e*', '1041995366') WHEN reverse(' ') THEN
COALESCE('-879625247', '0.19731369376302454', '1470019653', 'uUBi*') WHEN
"right"('e', 0.8362747) THEN '-1627785951'
+ELSE substr('{!)5DӾ2_', 1) END), -1807892187 FROM t1 RIGHT OUTER JOIN ((SELECT
t1.c0, (SELECT DISTINCT CAST(l1t1.c0 AS INT) FROM t1 AS l1t1, t2 AS l1t2 WHERE
TRUE), t2.c0, -879625247 FROM t0, t1, t2
+JOIN (SELECT DISTINCT 2.73848834E8, -879625247) AS sub0 ON CASE WHEN FALSE
THEN 'FALSE' WHEN TRUE THEN FALSE WHEN FALSE THEN FALSE END) INTERSECT ALL
(SELECT ALL ((CASE WHEN TRUE THEN 3 WHEN FALSE
+THEN 321224835 WHEN TRUE THEN 0.19240692 WHEN FALSE THEN 4 WHEN TRUE THEN 5
END)/(+ (t0.c2))), ((SELECT CAST(l1t1.c0 AS bigint) FROM t2 AS l1t2, t1 AS l1t1
WHERE NULL) EXCEPT ALL (SELECT DISTINCT 7
+FROM t2 AS l1t2, t0 AS l1t0, t1 AS l1t1 WHERE FALSE)), 8, ((CAST(t2.c0 AS
BIGINT))|(51872538)) FROM t0, t1, t2)) AS sub0 ON EXISTS ((SELECT DISTINCT
((1)*(l1t1.c0)) FROM t1 AS l1t1, t0 AS l1t0
+WHERE FALSE) UNION DISTINCT (SELECT 0.9873177792769359 FROM t1 AS l1t1, t2 AS
l1t2, t0 AS l1t0 WHERE TRUE)) WHERE COALESCE(8, 0.47, t1.c0, t1.c0) =
ANY(VALUES (NULLIF(0.66, 0.64))) GROUP BY 2
+----
+
+statement ok
+ROLLBACK
+
diff --git a/sql/backends/monet5/UDF/udf/Tests/string-length.Bug-3999.test
b/sql/backends/monet5/UDF/udf/Tests/string-length.Bug-3999.test
new file mode 100644
--- /dev/null
+++ b/sql/backends/monet5/UDF/udf/Tests/string-length.Bug-3999.test
@@ -0,0 +1,10 @@
+query I rowsort
+SELECT length(reverse(' 67890')) as "ten"
+----
+10
+
+query I rowsort
+SELECT sys.length(reverse(' 67890')) as "ten"
+----
+10
+
diff --git a/sql/test/BugTracker-2016/Tests/SingleServer
b/sql/test/BugTracker-2016/Tests/SingleServer
--- a/sql/test/BugTracker-2016/Tests/SingleServer
+++ b/sql/test/BugTracker-2016/Tests/SingleServer
@@ -1,1 +0,0 @@
---loadmodule udf
diff --git a/sql/test/BugTracker-2016/Tests/string-length.Bug-3999.test
b/sql/test/BugTracker-2016/Tests/string-length.Bug-3999.test
--- a/sql/test/BugTracker-2016/Tests/string-length.Bug-3999.test
+++ b/sql/test/BugTracker-2016/Tests/string-length.Bug-3999.test
@@ -19,11 +19,6 @@ SELECT length(' 67890') as "ten"
10
query I rowsort
-SELECT length(reverse(' 67890')) as "ten"
-----
-10
-
-query I rowsort
SELECT sys.length('123 ') as "four"
----
4
@@ -43,11 +38,6 @@ SELECT sys.length(' 67890') as "ten"
----
10
-query I rowsort
-SELECT sys.length(reverse(' 67890')) as "ten"
-----
-10
-
statement ok
CREATE TABLE tvarchar (val VARCHAR(9) NOT NULL)
diff --git a/sql/test/SQLancer/Tests/SingleServer
b/sql/test/SQLancer/Tests/SingleServer
--- a/sql/test/SQLancer/Tests/SingleServer
+++ b/sql/test/SQLancer/Tests/SingleServer
@@ -1,1 +0,0 @@
---loadmodule udf
diff --git a/sql/test/SQLancer/Tests/sqlancer01.test
b/sql/test/SQLancer/Tests/sqlancer01.test
--- a/sql/test/SQLancer/Tests/sqlancer01.test
+++ b/sql/test/SQLancer/Tests/sqlancer01.test
@@ -40,20 +40,6 @@ CREATE TABLE t0 (a1 INT, a2 int, a3 int)
statement ok
UPDATE t0 SET a2 = (- (- (t0.a1))), a3 =
(ascii(CAST(ascii('}悂Y8K*韖5<c>^n8_X1X|p(''bX') AS STRING(920)))) WHERE NOT
(((0.27023923567918073) NOT IN (0.9149447665258329)) = FALSE)
-statement ok
-insert into integers(i) values(((length(reverse(E'8
\rcr੧[bp1eMY쫺4j5s뮯!<Rn4*}')))>>(((- (- (528640982)))&(ascii('528640982'))))))
-
-query I nosort
-SELECT i from integers order by i
-----
-NULL
-0
-
-query T rowsort
-select reverse(E'8 \\rcr੧[bp1eMY쫺4j5s뮯!<Rn4*}')
-----
-}*4nR<!뮯s5j4쫺YMe1pb[੧rcr\ 8
-
query I rowsort
select true in (1 in (1))
----
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
@@ -484,44 +484,6 @@ statement ok
START TRANSACTION
statement ok
-CREATE TABLE "t0" ("c1" DECIMAL(18,3),"c2" DOUBLE,"c3" BIGINT)
-
-statement ok
-INSERT INTO "t0" VALUES (0.777, 0.7536489655766666, 8)
-
-statement ok
-CREATE TABLE "t1" ("c0" DECIMAL(18,3))
-
-statement ok
-INSERT INTO "t1" VALUES (0.276),(0.525),(0.660),(0.567),(0.476),(482405851.000)
-
-statement ok
-CREATE TABLE "t2" ("c0" DECIMAL(18,3))
-
-statement ok
-INSERT INTO "t2" VALUES (0.314),(0.314),(0.314),(0.314),(0.314),(0.314)
-
-query T nosort
-SELECT group_concat('a') FROM t1 RIGHT OUTER JOIN ((SELECT t1.c0, 1, t2.c0
FROM t1, t2) except ALL (SELECT t0.c2, 1, 8 FROM t0)) AS sub0 ON EXISTS (SELECT
1)
-----
-a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a
-
-query TI nosort
-SELECT listagg(ALL CASE sql_min('pX1~e*', '1041995366') WHEN reverse(' ') THEN
COALESCE('-879625247', '0.19731369376302454', '1470019653', 'uUBi*') WHEN
"right"('e', 0.8362747) THEN '-1627785951'
-ELSE substr('{!)5DӾ2_', 1) END), -1807892187 FROM t1 RIGHT OUTER JOIN ((SELECT
t1.c0, (SELECT DISTINCT CAST(l1t1.c0 AS INT) FROM t1 AS l1t1, t2 AS l1t2 WHERE
TRUE), t2.c0, -879625247 FROM t0, t1, t2
-JOIN (SELECT DISTINCT 2.73848834E8, -879625247) AS sub0 ON CASE WHEN FALSE
THEN 'FALSE' WHEN TRUE THEN FALSE WHEN FALSE THEN FALSE END) INTERSECT ALL
(SELECT ALL ((CASE WHEN TRUE THEN 3 WHEN FALSE
-THEN 321224835 WHEN TRUE THEN 0.19240692 WHEN FALSE THEN 4 WHEN TRUE THEN 5
END)/(+ (t0.c2))), ((SELECT CAST(l1t1.c0 AS bigint) FROM t2 AS l1t2, t1 AS l1t1
WHERE NULL) EXCEPT ALL (SELECT DISTINCT 7
-FROM t2 AS l1t2, t0 AS l1t0, t1 AS l1t1 WHERE FALSE)), 8, ((CAST(t2.c0 AS
BIGINT))|(51872538)) FROM t0, t1, t2)) AS sub0 ON EXISTS ((SELECT DISTINCT
((1)*(l1t1.c0)) FROM t1 AS l1t1, t0 AS l1t0
-WHERE FALSE) UNION DISTINCT (SELECT 0.9873177792769359 FROM t1 AS l1t1, t2 AS
l1t2, t0 AS l1t0 WHERE TRUE)) WHERE COALESCE(8, 0.47, t1.c0, t1.c0) =
ANY(VALUES (NULLIF(0.66, 0.64))) GROUP BY 2
-----
-
-statement ok
-ROLLBACK
-
-statement ok
-START TRANSACTION
-
-statement ok
CREATE TABLE "t0" ("c1" DECIMAL(18,3) NOT NULL,"c2" BOOLEAN,"c3" DECIMAL(18,3)
NOT NULL,CONSTRAINT "t0_c1_pkey" PRIMARY KEY ("c1"),CONSTRAINT "t0_c1_unique"
UNIQUE ("c1"),CONSTRAINT "t0_c3_unique" UNIQUE ("c3"))
statement ok
diff --git a/sql/test/scripts/Tests/All b/sql/test/scripts/Tests/All
--- a/sql/test/scripts/Tests/All
+++ b/sql/test/scripts/Tests/All
@@ -1,5 +1,3 @@
-alastair_udf_mergetable_bug
-
fsum
THREADS=1?fsum1 # this requires adding '--set gdk_nrthreads=1' in SingleServer
diff --git a/testing/Mtest.py.in b/testing/Mtest.py.in
--- a/testing/Mtest.py.in
+++ b/testing/Mtest.py.in
@@ -65,6 +65,7 @@ tbre = re.compile(r'^(?P<bats>\d+) bats
# collect errors if not verbose
errors = []
+warnings = []
# default is no color (these three functions may get redefined)
@@ -484,12 +485,16 @@ def ErrXit(TEXT):
def Warn(TEXT):
+ msg = f'{THISFILE} Warning: {TEXT}'
+ if not verbose:
+ warnings.append(msg)
+ return
try:
print(end='', flush=True)
except IOError:
pass
try:
- print('\n%s Warning: %s\n' % (THISFILE, TEXT), file=sys.stderr,
flush=True)
+ print(f'\n{msg}\n', file=sys.stderr, flush=True)
except IOError:
pass
@@ -1196,8 +1201,11 @@ def PerformDir(env, testdir, testlist, t
# restart server
inmem = single_in_memory
opts = []
+ hasloadmod = False
for o in options:
- if o.startswith('embedded'):
+ if o.startswith('--loadmodule'):
+ hasloadmod = True
+ elif o.startswith('embedded'):
inmem = False
if o == 'odbc_loader':
orig_odbcsysini = environ.pop('ODBCSYSINI', None)
@@ -1234,6 +1242,9 @@ def PerformDir(env, testdir, testlist, t
dbg=env.get('DBG'))
pSrvr.LaunchIt(cwd=TSTTRGDIR, env=environ)
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]