Changeset: 7f138b59ffd0 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/7f138b59ffd0
Branch: default
Log Message:

Merge with Sep2022 branch.


diffs (132 lines):

diff --git a/.hgtags b/.hgtags
--- a/.hgtags
+++ b/.hgtags
@@ -775,3 +775,4 @@ 470e524a786ee0e94c7901ec98d95ac351a0e472
 9785fa2a471fe32495e07479edf110335ddaa750 Jan2022_17
 26ffeb5af5240c807a6583fd6eb4ee2c9cd210d2 Jan2022_19
 3191fee438036ac0da1e6f31481b9681399123b5 Jan2022_21
+3191fee438036ac0da1e6f31481b9681399123b5 Jan2022_SP4_release
diff --git a/monetdb5/modules/mal/mal_mapi.c b/monetdb5/modules/mal/mal_mapi.c
--- a/monetdb5/modules/mal/mal_mapi.c
+++ b/monetdb5/modules/mal/mal_mapi.c
@@ -838,6 +838,8 @@ SERVERlisten(int port, const char *usock
                GDKfree(usockfilenew);
 #endif
 
+       fflush(stdout);
+
        return MAL_SUCCEED;
 }
 
diff --git a/sql/server/rel_optimize_proj.c b/sql/server/rel_optimize_proj.c
--- a/sql/server/rel_optimize_proj.c
+++ b/sql/server/rel_optimize_proj.c
@@ -1835,7 +1835,7 @@ rel_push_aggr_down(visitor *v, sql_rel *
                node *n, *m;
                list *lgbe = NULL, *rgbe = NULL, *gbe = NULL, *exps = NULL;
 
-               if (u->op == op_project)
+               if (u->op == op_project && !need_distinct(u))
                        u = u->l;
 
                if (!u || !is_union(u->op) || need_distinct(u) || is_single(u) 
|| !u->exps || rel_is_ref(u))
diff --git a/sql/test/BugTracker-2022/Tests/All 
b/sql/test/BugTracker-2022/Tests/All
--- a/sql/test/BugTracker-2022/Tests/All
+++ b/sql/test/BugTracker-2022/Tests/All
@@ -12,3 +12,4 @@ dump-table-data.Bug-7282
 NOT_WIN32?cudf-grouped-aggr.Bug-7285
 create_func_with_case_and_in
 single_row_in_rel_order_by_column.Bug-7306
+push-aggr-down-removes-distinct-on-union-all.Bug-7318
diff --git 
a/sql/test/BugTracker-2022/Tests/push-aggr-down-removes-distinct-on-union-all.Bug-7318.test
 
b/sql/test/BugTracker-2022/Tests/push-aggr-down-removes-distinct-on-union-all.Bug-7318.test
new file mode 100644
--- /dev/null
+++ 
b/sql/test/BugTracker-2022/Tests/push-aggr-down-removes-distinct-on-union-all.Bug-7318.test
@@ -0,0 +1,27 @@
+statement ok
+create table foo (n int, m int)
+
+statement ok
+create table bar (n int, m int)
+
+statement ok
+insert into foo values (1,1), (2,1), (1,2), (3,1)
+
+statement ok
+insert into bar values (2,2), (3,2), (1,3), (3,3)
+
+statement ok
+create view fub as
+    select * from foo
+    union all
+    select * from bar
+
+query I nosort
+select count(distinct n) from fub
+----
+3
+
+query I nosort
+select count(*) from (select distinct n from fub) as subq
+----
+3
diff --git a/sql/test/testdb-upgrade-hge/Tests/dump.stable.out 
b/sql/test/testdb-upgrade-hge/Tests/dump.stable.out
--- a/sql/test/testdb-upgrade-hge/Tests/dump.stable.out
+++ b/sql/test/testdb-upgrade-hge/Tests/dump.stable.out
@@ -4,6 +4,7 @@ CREATE USER "testuser" WITH ENCRYPTED PA
 CREATE SCHEMA "testschema" AUTHORIZATION "testuser";
 COMMENT ON SCHEMA "testschema" IS 'a schema used for testing';
 ALTER USER "testuser" SET SCHEMA "testschema";
+GRANT COPY FROM TO "testuser";
 CREATE SEQUENCE "testschema"."selfref_seq" AS INTEGER;
 COMMENT ON SEQUENCE "testschema"."selfref_seq" IS 'sequence number for selfref 
table';
 CREATE SEQUENCE "testschema"."test_seq" AS INTEGER;
@@ -101438,6 +101439,8 @@ ALTER TABLE "testschema"."keytest2" ADD 
 ALTER TABLE "testschema"."selfref" ADD CONSTRAINT "selfref_parentid_fkey" 
FOREIGN KEY ("parentid") REFERENCES "testschema"."selfref" ("id");
 ALTER SEQUENCE "testschema"."selfref_seq" RESTART WITH 7 NO CYCLE;
 ALTER SEQUENCE "testschema"."test_seq" RESTART WITH 8 INCREMENT BY 3 MINVALUE 
5 MAXVALUE 10 CYCLE;
+GRANT SELECT("string1") ON "testschema"."smallstring" TO "testuser" WITH GRANT 
OPTION;
+GRANT SELECT("string3") ON "testschema"."smallstring" TO "testuser" WITH GRANT 
OPTION;
 GRANT EXECUTE ON FUNCTION "testschema"."keyjoin" TO "public";
 SET SCHEMA "sys";
 COMMIT;
diff --git a/sql/test/testdb-upgrade/Tests/dump.stable.out 
b/sql/test/testdb-upgrade/Tests/dump.stable.out
--- a/sql/test/testdb-upgrade/Tests/dump.stable.out
+++ b/sql/test/testdb-upgrade/Tests/dump.stable.out
@@ -4,6 +4,7 @@ CREATE USER "testuser" WITH ENCRYPTED PA
 CREATE SCHEMA "testschema" AUTHORIZATION "testuser";
 COMMENT ON SCHEMA "testschema" IS 'a schema used for testing';
 ALTER USER "testuser" SET SCHEMA "testschema";
+GRANT COPY FROM TO "testuser";
 CREATE SEQUENCE "testschema"."selfref_seq" AS INTEGER;
 COMMENT ON SEQUENCE "testschema"."selfref_seq" IS 'sequence number for selfref 
table';
 CREATE SEQUENCE "testschema"."test_seq" AS INTEGER;
@@ -101438,6 +101439,8 @@ ALTER TABLE "testschema"."keytest2" ADD 
 ALTER TABLE "testschema"."selfref" ADD CONSTRAINT "selfref_parentid_fkey" 
FOREIGN KEY ("parentid") REFERENCES "testschema"."selfref" ("id");
 ALTER SEQUENCE "testschema"."selfref_seq" RESTART WITH 7 NO CYCLE;
 ALTER SEQUENCE "testschema"."test_seq" RESTART WITH 8 INCREMENT BY 3 MINVALUE 
5 MAXVALUE 10 CYCLE;
+GRANT SELECT("string1") ON "testschema"."smallstring" TO "testuser" WITH GRANT 
OPTION;
+GRANT SELECT("string3") ON "testschema"."smallstring" TO "testuser" WITH GRANT 
OPTION;
 GRANT EXECUTE ON FUNCTION "testschema"."keyjoin" TO "public";
 SET SCHEMA "sys";
 COMMIT;
diff --git a/testing/Mtest.py.in b/testing/Mtest.py.in
--- a/testing/Mtest.py.in
+++ b/testing/Mtest.py.in
@@ -2639,13 +2639,14 @@ class ServerClass:
             res = mapiportre.search(connurl)
             port = res.group('port')
         else:
-            while True:
+            loadedseen = False
+            while port is None or not loadedseen:
                 line = proc.stdout.readline()
                 if not line:
                     break
                 self.outfile.write(line)
                 if 'MonetDB/SQL module loaded' in line:
-                    break
+                    loadedseen = True
                 res = mapiportre.search(line)
                 if res is not None:
                     port = res.group('port')
_______________________________________________
checkin-list mailing list -- checkin-list@monetdb.org
To unsubscribe send an email to checkin-list-le...@monetdb.org

Reply via email to