Changeset: 4a8a45f4decb for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/4a8a45f4decb
Modified Files:
        gdk/gdk_group.c
Branch: default
Log Message:

Merge with Jul2021 branch.


diffs (truncated from 1757 to 300 lines):

diff --git a/gdk/gdk_group.c b/gdk/gdk_group.c
--- a/gdk/gdk_group.c
+++ b/gdk/gdk_group.c
@@ -704,10 +704,9 @@ BATgroup_internal(BAT **groups, BAT **ex
                        if (prop)
                                maxgrp = prop->val.oval;
                        MT_lock_unset(&b->theaplock);
-                       if (is_oid_nil(maxgrp) &&
-                           BATordered(g) &&
-                           BATordered_rev(g))
-                               maxgrp = 0;
+                       if (is_oid_nil(maxgrp) /* && BATcount(g) < 10240 */) {
+                               BATmax(g, &maxgrp);
+                       }
                }
                if (maxgrp == 0)
                        g = NULL; /* single group */
@@ -1150,9 +1149,6 @@ BATgroup_internal(BAT **groups, BAT **ex
                        nbucket |= nbucket >> 32;
 #endif
                        nbucket++;
-                       /* nbucket is a power of two, so ctz(nbucket)
-                        * tells us which power of two */
-                       bits = 8 * SIZEOF_OID - ctz(nbucket);
                } else {
                        nbucket = MAX(HASHmask(cnt), 1 << 16);
                }
@@ -1172,6 +1168,9 @@ BATgroup_internal(BAT **groups, BAT **ex
                                break;
                        }
                }
+               /* nbucket is a power of two, so ctz(nbucket)
+                * tells us which power of two */
+               bits = 8 * SIZEOF_OID - ctz(nbucket);
                if ((hs = GDKzalloc(sizeof(Hash))) == NULL ||
                    (hs->heaplink.farmid = BBPselectfarm(TRANSIENT, b->ttype, 
hashheap)) < 0 ||
                    (hs->heapbckt.farmid = BBPselectfarm(TRANSIENT, b->ttype, 
hashheap)) < 0) {
diff --git a/sql/test/Dependencies/Tests/dependency_loop.test 
b/sql/test/Dependencies/Tests/dependency_loop.test
--- a/sql/test/Dependencies/Tests/dependency_loop.test
+++ b/sql/test/Dependencies/Tests/dependency_loop.test
@@ -174,5 +174,5 @@ UNION
 query I rowsort
 select count(*) from dependencies where depend_type = 5
 ----
-983
+988
 
diff --git a/sql/test/Dependencies/Tests/dependency_owner_schema_3.test 
b/sql/test/Dependencies/Tests/dependency_owner_schema_3.test
--- a/sql/test/Dependencies/Tests/dependency_owner_schema_3.test
+++ b/sql/test/Dependencies/Tests/dependency_owner_schema_3.test
@@ -48,7 +48,7 @@ DEP_SCHEMA
 query TTT rowsort
 SELECT t.name, v.name, 'DEP_VIEW' from sys.tables as t, sys.tables as v, 
sys.dependencies as dep where t.id = dep.id AND v.id = dep.depend_id AND 
dep.depend_type = 5 AND v.type in (1, 11, 21, 31) order by t.name, v.name
 ----
-564 values hashing to cff98513dfae81673eb5b21ca15700dc
+567 values hashing to 8b580f5d307e1080938ac3d092a712b1
 
 query TTT rowsort
 SELECT t.name, i.name, 'DEP_INDEX' from sys.tables as t, sys.idxs as i where 
i.table_id = t.id and i.name not in (select name from sys.keys) and t.type in 
(0, 10, 20, 30) order by t.name, i.name
@@ -126,7 +126,7 @@ DEP_FUNC
 query TTT rowsort
 SELECT c.name, v.name, 'DEP_VIEW' from sys.columns as c, sys.tables as v, 
sys.dependencies as dep where c.id = dep.id AND v.id = dep.depend_id AND 
dep.depend_type = 5 AND v.type in (1, 11, 21, 31) order by c.name, v.name
 ----
-1974 values hashing to abcbd4ad07690fa48e84a43f050b9e94
+1986 values hashing to c139c99ef312a3411f9f4f0fc090e3de
 
 query TTT rowsort
 SELECT c.name, k.name, 'DEP_KEY' from sys.columns as c,  sys.objects as kc, 
sys.keys as k where kc."name" = c.name AND kc.id = k.id AND k.table_id = 
c.table_id AND k.rkey = -1 order by c.name, k.name
diff --git a/sql/test/SQLancer/Tests/sqlancer16.test 
b/sql/test/SQLancer/Tests/sqlancer16.test
--- a/sql/test/SQLancer/Tests/sqlancer16.test
+++ b/sql/test/SQLancer/Tests/sqlancer16.test
@@ -276,3 +276,1685 @@ 40
 statement ok
 ROLLBACK
 
+statement ok
+START TRANSACTION
+
+statement ok
+CREATE TABLE "t2"("c0" BOOLEAN,"c1" INTERVAL MONTH)
+
+statement ok rowcount 1667
+COPY 1667 RECORDS INTO "t2" FROM stdin USING DELIMITERS E'\t',E'\n','"'
+<COPY_INTO_DATA>
+NULL   4
+NULL   9
+true   8
+false  3
+true   1
+true   2
+true   5
+false  NULL
+false  6
+NULL   2
+NULL   -6
+NULL   9
+false  NULL
+false  8
+true   9
+NULL   2
+NULL   2
+NULL   4
+NULL   3
+false  1
+true   5
+NULL   3
+false  NULL
+false  NULL
+true   NULL
+NULL   2
+NULL   -3
+NULL   1
+NULL   6
+NULL   5
+false  2
+NULL   1
+NULL   1
+false  5
+false  9
+true   3
+NULL   3
+false  NULL
+false  NULL
+true   NULL
+false  NULL
+false  NULL
+NULL   NULL
+false  NULL
+true   NULL
+false  NULL
+NULL   800744337
+NULL   1654938552
+true   0
+false  7
+NULL   0
+false  NULL
+NULL   1
+NULL   -1677738130
+false  NULL
+true   NULL
+true   NULL
+true   NULL
+false  NULL
+false  NULL
+false  5
+NULL   5
+NULL   5
+true   NULL
+NULL   4
+true   -7
+false  8
+NULL   7
+NULL   2
+true   453586260
+true   -1
+true   4
+true   NULL
+true   NULL
+false  6
+false  -988496729
+false  0
+false  NULL
+false  NULL
+false  NULL
+false  NULL
+false  1691392886
+false  613459341
+false  NULL
+true   NULL
+true   NULL
+false  NULL
+false  NULL
+true   NULL
+NULL   4
+false  NULL
+false  NULL
+false  5
+false  148074740
+false  NULL
+NULL   9
+NULL   4
+true   -988496729
+false  NULL
+true   NULL
+true   NULL
+false  -1619861971
+true   8
+true   7
+true   -1004662197
+true   15
+true   3
+true   -1294390707
+NULL   8
+false  5
+false  NULL
+true   NULL
+false  NULL
+true   9
+false  7
+NULL   NULL
+false  NULL
+true   NULL
+NULL   1656546916
+NULL   392995436
+NULL   3
+NULL   8
+NULL   -919661697
+false  -1733663855
+true   -1473223402
+true   1
+false  2
+true   7
+false  NULL
+false  NULL
+NULL   1
+NULL   9
+NULL   -6
+true   -55427963
+true   1611700361
+false  8
+false  6
+true   NULL
+NULL   4
+NULL   -120767692
+NULL   3
+NULL   1
+NULL   21
+false  -1593408214
+false  476950309
+true   NULL
+true   NULL
+NULL   6
+false  NULL
+NULL   0
+false  1
+NULL   4
+NULL   1
+false  7
+false  NULL
+false  NULL
+false  NULL
+NULL   6
+NULL   6
+NULL   1294390707
+true   1294390707
+false  1294390707
+false  NULL
+true   NULL
+true   2133765221
+true   4
+true   1691392886
+true   5
+NULL   1654938552
+NULL   0
+NULL   2
+true   453586268
+NULL   6
+NULL   2
+NULL   1766239771
+false  3
+true   2
+NULL   -9
+false  -1294390707
+false  8
+true   2
+false  8
+NULL   2
+NULL   3
+NULL   4
+true   1448357523
+NULL   NULL
+false  NULL
+true   NULL
+NULL   5
+false  4
+false  NULL
+true   NULL
+false  8
+true   NULL
+true   NULL
+true   NULL
+true   NULL
+true   NULL
+false  NULL
+NULL   0
+false  6
+true   6
+NULL   5
+false  5
+false  9
+false  7
+false  -352483684
+false  NULL
+NULL   8
+true   NULL
+false  5
+true   -2
+NULL   0
+NULL   4
+false  NULL
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to