MonetDB: properties - Merged with default

2021-01-15 Thread Pedro Ferreira
Changeset: aaa2fa89bbb3 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=aaa2fa89bbb3
Modified Files:
gdk/gdk_batop.c
gdk/gdk_private.h
sql/backends/monet5/rel_bin.c
sql/backends/monet5/sql.c
sql/backends/monet5/sql_statement.c
sql/backends/monet5/sql_upgrades.c
sql/server/rel_exp.c
sql/server/rel_optimizer.c
sql/server/rel_schema.c
sql/server/rel_select.c
sql/server/rel_updates.c
sql/storage/bat/bat_storage.c
sql/storage/sql_storage.h
sql/storage/store.c
tools/monetdbe/monetdbe.c
Branch: properties
Log Message:

Merged with default


diffs (truncated from 24726 to 300 lines):

diff --git a/.hgtags b/.hgtags
--- a/.hgtags
+++ b/.hgtags
@@ -791,3 +791,5 @@ cb4b3f021774b60ffd84c3004d341ec04de736f3
 bd91504a03736565fb2dff13cd4c94c738e81aa0 Oct2020_release
 ac8254a47e87d0be9df2a623e2c2fcf67c0f982d Oct2020_7
 ac8254a47e87d0be9df2a623e2c2fcf67c0f982d Oct2020_SP1_release
+929f5e280bc1532a2bfaab127ca7915dc3b69a33 Oct2020_9
+929f5e280bc1532a2bfaab127ca7915dc3b69a33 Oct2020_SP2_release
diff --git a/MonetDB.spec b/MonetDB.spec
--- a/MonetDB.spec
+++ b/MonetDB.spec
@@ -84,7 +84,7 @@ Group: Applications/Databases
 License: MPLv2.0
 URL: https://www.monetdb.org/
 BugURL: https://bugs.monetdb.org/
-Source: 
https://www.monetdb.org/downloads/sources/Oct2020-SP1/%{name}-%{version}.tar.bz2
+Source: 
https://www.monetdb.org/downloads/sources/Oct2020-SP2/%{name}-%{version}.tar.bz2
 
 # The Fedora packaging document says we need systemd-rpm-macros for
 # the _unitdir and _tmpfilesdir macros to exist; however on RHEL 7
@@ -823,6 +823,35 @@ else
 fi
 
 %changelog
+* Mon Jan 11 2021 Sjoerd Mullender  - 11.39.9-20210111
+- Rebuilt.
+- GH#6862: mserver5: crashes under update_table() when calling lib_sql.so
+  ( max_clients = 2048)
+- GH#7002: monetdb stop fails
+- GH#7012: mclient enters an infinite loop when a file on the command line
+  does not exist
+- GH#7013: Select * on grouped view: wrong error "cannot use non GROUP BY
+  column 'a1' in query results without an aggregate function"
+- GH#7017: mal seems to leak in functions
+- GH#7020: release an older savepoint causes "BATproject2: does not match
+  always"
+- GH#7021: savepoints crash mserver5
+- GH#7022: transaction with an unreleased savepoint not properly persisted
+- GH#7023: CREATE VIEW: SELECT: cannot use non GROUP BY column '%1' in
+  query results without an aggregate function
+- GH#7024: DELETE FROM or TRUNCATE on freshly created table leads to
+  loosing all further inserts in same transaction
+- GH#7030: DROP TABLE with AUTO_INCREMENT doesn't drop sequence causing
+  left-over dependency
+- GH#7034: User with sysadmin role cannot create another user
+- GH#7035: UPDATE and SELECT column privileges
+
+* Thu Dec 10 2020 Pedro Ferreira  - 
11.39.9-20210111
+- sql: CREATE [OR REPLACE] TRIGGER schema_name.trigger_name is now disallowed,
+  because the trigger will be stored on the same schema as the table it
+  refers to. Use a schema-qualified on the table reference (ie ON clause)
+  when necessary.
+
 * Wed Nov 18 2020 Sjoerd Mullender  - 11.39.7-20201118
 - Rebuilt.
 - BZ#6890: Add support of xz/lzma (de)compression on MS Windows
@@ -1359,4278 +1388,3 @@ fi
   thereby avoiding the interaction with other queries, but loosing
   insight of competing queries. The stethoscope should be used for that.
 
-* Sat Feb 22 2020 Sjoerd Mullender  - 11.35.19-20200222
-- Rebuilt.
-- BZ#6829: NTILE window function returns incorrect results
-
-* Fri Feb 21 2020 Sjoerd Mullender  - 11.35.17-20200221
-- Rebuilt.
-- BZ#6827: CUME_DIST window function returns incorrect results
-
-* Mon Feb 17 2020 Sjoerd Mullender  - 11.35.15-20200217
-- Rebuilt.
-- BZ#6817: running analyze on a schema which contains a stream table
-  stops with an error
-- BZ#6819: functions do not persist
-
-* Wed Feb 12 2020 Sjoerd Mullender  - 11.35.13-20200212
-- Rebuilt.
-
-* Tue Feb 11 2020 Sjoerd Mullender  - 11.35.11-20200211
-- Rebuilt.
-- BZ#6805: Using the cascade operator in a drop table statement ends in
-  an exit from the Monetdb shell.
-- BZ#6807: Median_avg and quantile_avg ignore NULL values
-- BZ#6815: query with ifthenelse() crashes mserver5
-- BZ#6816: Monetdb Crashes on INSERT statement after ALTER statement in
-  another connection
-
-* Wed Dec 18 2019 Sjoerd Mullender  - 11.35.9-20191218
-- Rebuilt.
-- BZ#6804: DNS resolution of 0.0.0.0 fails on recent Ubuntus
-
-* Tue Dec 17 2019 Sjoerd Mullender  - 11.35.7-20191217
-- Rebuilt.
-
-* Thu Dec 12 2019 Sjoerd Mullender  - 11.35.5-20191212
-- Rebuilt.
-- BZ#6723: columns aliases duplicates should not be allowed. automatic
-  aliasing required.
-- BZ#6724: Prepare confuses types when more than one argument is used
-- BZ#6726: Python aggregation does not create aggr_group when aggregating
-  over all rows
-- BZ#6765: GRANT SELECT privilege on a subset of table columns results
-  in access denied error when 

MonetDB: Oct2020 - Updated previous bug and had to add this one:...

2021-01-15 Thread Pedro Ferreira
Changeset: 3aed0d1bbb09 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=3aed0d1bbb09
Modified Files:
sql/test/SQLancer/Tests/sqlancer04.sql
sql/test/SQLancer/Tests/sqlancer09.sql
Branch: Oct2020
Log Message:

Updated previous bug and had to add this one: BATgroup_internal: Assertion 
(hs)->nbucket >= 256 failed


diffs (39 lines):

diff --git a/sql/test/SQLancer/Tests/sqlancer04.sql 
b/sql/test/SQLancer/Tests/sqlancer04.sql
--- a/sql/test/SQLancer/Tests/sqlancer04.sql
+++ b/sql/test/SQLancer/Tests/sqlancer04.sql
@@ -427,13 +427,13 @@ ROLLBACK;
 
 select cast(count(1) as interval second) from (values (false)) as v6(vc0); 
--error
 
-CREATE TABLE IF NOT EXISTS t0(c0 boolean  UNIQUE PRIMARY KEY, c1 DOUBLE , 
UNIQUE(c1, c0));
-CREATE TABLE IF NOT EXISTS t1(LIKE t0);
+CREATE TABLE t0(c0 BOOLEAN PRIMARY KEY,c1 DOUBLE);
+CREATE TABLE t1(LIKE t0);
 ALTER TABLE t1 ADD FOREIGN KEY (c0) REFERENCES t0(c0);
 ALTER TABLE t1 ADD PRIMARY KEY(c0, c1);
 INSERT INTO t0(c0) VALUES(FALSE),(TRUE);
-INSERT INTO t1(c1, c0) VALUES(0.3, FALSE), (0.5, true), (0.0, 
true), (497053888, false), (1, true), (4, true);
+INSERT INTO t1(c1, c0) VALUES(0.3, FALSE), (0.5, true), (0.0, true), (4, 
false), (1, true), (4, true);
 DELETE FROM t1 WHERE NOT least(t1.c0, t1.c0);
-UPDATE t1 SET c1 = (CAST(((0.17)>>(0.12)) AS INT)) WHERE t1.c1 BETWEEN 
SYMMETRIC 3 AND 7 + t1.c1;
+UPDATE t1 SET c1 = 0 WHERE t1.c1 BETWEEN SYMMETRIC 3 AND 7 + t1.c1;
 DROP TABLE t1;
 DROP TABLE t0;
diff --git a/sql/test/SQLancer/Tests/sqlancer09.sql 
b/sql/test/SQLancer/Tests/sqlancer09.sql
--- a/sql/test/SQLancer/Tests/sqlancer09.sql
+++ b/sql/test/SQLancer/Tests/sqlancer09.sql
@@ -420,3 +420,14 @@ inner join (values (+ (88)), (greatest(0
 or(v0.vc1)) group by v0.vc1) as sub1 where (v0.vc0) in (0.06683239) group by 
least(-1913343924, 10622),
 ((v1.vc1)not ilike(least(v1.vc1, v1.vc1)));
 ROLLBACK;
+
+CREATE TABLE t0(c0 BOOLEAN PRIMARY KEY, c1 DOUBLE);
+CREATE TABLE t1(LIKE t0);
+INSERT INTO t1(c0) VALUES(true);
+ALTER TABLE t1 ADD FOREIGN KEY (c0) REFERENCES t0(c0);
+TRUNCATE t1;
+ALTER TABLE t1 ADD PRIMARY KEY(c0, c1);
+INSERT INTO t1(c1, c0) 
VALUES(7,true),(5,false),(2,true),(4,false),(3,false),(1,true),(4,true);
+UPDATE t1 SET c1 = 0 WHERE t1.c1 BETWEEN SYMMETRIC 3 AND 7 + t1.c1;
+DROP TABLE t1;
+DROP TABLE t0;
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: Oct2020 - SQLancer: cannot create object. Enough bugs f...

2021-01-15 Thread Pedro Ferreira
Changeset: d835a9f6c14d for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=d835a9f6c14d
Modified Files:
sql/test/SQLancer/Tests/sqlancer04.sql
Branch: Oct2020
Log Message:

SQLancer: cannot create object. Enough bugs for now


diffs (18 lines):

diff --git a/sql/test/SQLancer/Tests/sqlancer04.sql 
b/sql/test/SQLancer/Tests/sqlancer04.sql
--- a/sql/test/SQLancer/Tests/sqlancer04.sql
+++ b/sql/test/SQLancer/Tests/sqlancer04.sql
@@ -426,3 +426,14 @@ ILIKE(CAST(30792 AS STRING(381) as r
 ROLLBACK;
 
 select cast(count(1) as interval second) from (values (false)) as v6(vc0); 
--error
+
+CREATE TABLE IF NOT EXISTS t0(c0 boolean  UNIQUE PRIMARY KEY, c1 DOUBLE , 
UNIQUE(c1, c0));
+CREATE TABLE IF NOT EXISTS t1(LIKE t0);
+ALTER TABLE t1 ADD FOREIGN KEY (c0) REFERENCES t0(c0);
+ALTER TABLE t1 ADD PRIMARY KEY(c0, c1);
+INSERT INTO t0(c0) VALUES(FALSE),(TRUE);
+INSERT INTO t1(c1, c0) VALUES(0.3, FALSE), (0.5, true), (0.0, 
true), (497053888, false), (1, true), (4, true);
+DELETE FROM t1 WHERE NOT least(t1.c0, t1.c0);
+UPDATE t1 SET c1 = (CAST(((0.17)>>(0.12)) AS INT)) WHERE t1.c1 BETWEEN 
SYMMETRIC 3 AND 7 + t1.c1;
+DROP TABLE t1;
+DROP TABLE t0;
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: nospare - also handle savepoints in the objectset

2021-01-15 Thread Niels Nes
Changeset: 97b81d42ba82 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=97b81d42ba82
Modified Files:
sql/storage/bat/bat_storage.c
sql/storage/objectset.c
sql/storage/sql_catalog.c
sql/storage/sql_storage.h
Branch: nospare
Log Message:

also handle savepoints in the objectset


diffs (73 lines):

diff --git a/sql/storage/bat/bat_storage.c b/sql/storage/bat/bat_storage.c
--- a/sql/storage/bat/bat_storage.c
+++ b/sql/storage/bat/bat_storage.c
@@ -60,15 +60,6 @@ make_cookie(sql_trans *tr, sql_delta *de
 
 static int tr_merge_delta( sql_trans *tr, sql_delta *obat);
 
-static int
-tr_version_of_parent(sql_trans *tr, ulng ts)
-{
-   for( tr = tr->parent; tr; tr = tr->parent)
-   if (tr->tid == ts)
-   return 1;
-   return 0;
-}
-
 static sql_delta *
 temp_dup_delta(ulng tid, int type)
 {
diff --git a/sql/storage/objectset.c b/sql/storage/objectset.c
--- a/sql/storage/objectset.c
+++ b/sql/storage/objectset.c
@@ -277,6 +277,7 @@ tc_gc_objectversion(sql_store Store, sql
objectversion *ov = (objectversion*)change->data;
 
if (ov->deleted || !commit_ts) {
+   /* TODO handle savepoints */
if (ov->ts < oldest || (ov->ts == commit_ts && commit_ts == 
oldest) || !commit_ts) {
int ok = LOG_OK;
objectversion_destroy(Store, ov, commit_ts, oldest);
@@ -445,11 +446,12 @@ find_name(objectset *os, const char *nam
return NULL;
 }
 
+
 static objectversion*
 get_valid_object(sql_trans *tr, objectversion *ov)
 {
while(ov) {
-   if (ov->ts == tr->tid || ov->ts < tr->ts)
+   if (ov->ts == tr->tid || (tr->parent && 
tr_version_of_parent(tr, ov->ts)) || ov->ts < tr->ts)
return ov;
else
ov = ov->older;
diff --git a/sql/storage/sql_catalog.c b/sql/storage/sql_catalog.c
--- a/sql/storage/sql_catalog.c
+++ b/sql/storage/sql_catalog.c
@@ -81,6 +81,15 @@ trans_add(sql_trans *tr, sql_base *b, vo
tr->changes = sa_list_append(tr->sa, tr->changes, change);
 }
 
+int
+tr_version_of_parent(sql_trans *tr, ulng ts)
+{
+   for( tr = tr->parent; tr; tr = tr->parent)
+   if (tr->tid == ts)
+   return 1;
+   return 0;
+}
+
 static void *
 _cs_find_name(changeset * cs, const char *name)
 {
diff --git a/sql/storage/sql_storage.h b/sql/storage/sql_storage.h
--- a/sql/storage/sql_storage.h
+++ b/sql/storage/sql_storage.h
@@ -491,5 +491,6 @@ typedef struct sql_change {
 } sql_change;
 
 extern void trans_add(sql_trans *tr, sql_base *b, void *data, tc_cleanup_fptr 
cleanup, tc_log_fptr log);
+extern int tr_version_of_parent(sql_trans *tr, ulng ts);
 
 #endif /*SQL_STORAGE_H */
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: nospare - merged with default

2021-01-15 Thread Niels Nes
Changeset: 8501fd99054c for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=8501fd99054c
Branch: nospare
Log Message:

merged with default


diffs (221 lines):

diff --git a/sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128 
b/sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128
--- a/sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128
+++ b/sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128
@@ -4206,6 +4206,7 @@ Running database upgrade commands:
 set schema "sys";
 ALTER TABLE sys.keywords SET READ WRITE;
 DELETE FROM sys.keywords where keyword = 'STREAM';
+INSERT INTO sys.keywords VALUES ('BIG'), ('LITTLE'), ('NATIVE'), ('ENDIAN');
 ALTER TABLE sys.table_types SET READ WRITE;
 DELETE FROM sys.table_types where table_type_id = 4;
 ALTER TABLE sys.function_types SET READ WRITE;
diff --git 
a/sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.ppc64.int128 
b/sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.ppc64.int128
--- a/sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.ppc64.int128
+++ b/sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.ppc64.int128
@@ -4206,6 +4206,7 @@ Running database upgrade commands:
 set schema "sys";
 ALTER TABLE sys.keywords SET READ WRITE;
 DELETE FROM sys.keywords where keyword = 'STREAM';
+INSERT INTO sys.keywords VALUES ('BIG'), ('LITTLE'), ('NATIVE'), ('ENDIAN');
 ALTER TABLE sys.table_types SET READ WRITE;
 DELETE FROM sys.table_types where table_type_id = 4;
 ALTER TABLE sys.function_types SET READ WRITE;
diff --git a/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out 
b/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out
--- a/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out
+++ b/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out
@@ -3611,6 +3611,7 @@ Running database upgrade commands:
 set schema "sys";
 ALTER TABLE sys.keywords SET READ WRITE;
 DELETE FROM sys.keywords where keyword = 'STREAM';
+INSERT INTO sys.keywords VALUES ('BIG'), ('LITTLE'), ('NATIVE'), ('ENDIAN');
 ALTER TABLE sys.table_types SET READ WRITE;
 DELETE FROM sys.table_types where table_type_id = 4;
 ALTER TABLE sys.function_types SET READ WRITE;
diff --git a/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.32bit 
b/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.32bit
--- a/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.32bit
+++ b/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.32bit
@@ -3611,6 +3611,7 @@ Running database upgrade commands:
 set schema "sys";
 ALTER TABLE sys.keywords SET READ WRITE;
 DELETE FROM sys.keywords where keyword = 'STREAM';
+INSERT INTO sys.keywords VALUES ('BIG'), ('LITTLE'), ('NATIVE'), ('ENDIAN');
 ALTER TABLE sys.table_types SET READ WRITE;
 DELETE FROM sys.table_types where table_type_id = 4;
 ALTER TABLE sys.function_types SET READ WRITE;
diff --git a/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.int128 
b/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.int128
--- a/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.int128
+++ b/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.int128
@@ -4280,6 +4280,7 @@ Running database upgrade commands:
 set schema "sys";
 ALTER TABLE sys.keywords SET READ WRITE;
 DELETE FROM sys.keywords where keyword = 'STREAM';
+INSERT INTO sys.keywords VALUES ('BIG'), ('LITTLE'), ('NATIVE'), ('ENDIAN');
 ALTER TABLE sys.table_types SET READ WRITE;
 DELETE FROM sys.table_types where table_type_id = 4;
 ALTER TABLE sys.function_types SET READ WRITE;
diff --git a/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.ppc64 
b/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.ppc64
--- a/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.ppc64
+++ b/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.ppc64
@@ -3611,6 +3611,7 @@ Running database upgrade commands:
 set schema "sys";
 ALTER TABLE sys.keywords SET READ WRITE;
 DELETE FROM sys.keywords where keyword = 'STREAM';
+INSERT INTO sys.keywords VALUES ('BIG'), ('LITTLE'), ('NATIVE'), ('ENDIAN');
 ALTER TABLE sys.table_types SET READ WRITE;
 DELETE FROM sys.table_types where table_type_id = 4;
 ALTER TABLE sys.function_types SET READ WRITE;
diff --git 
a/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.ppc64.int128 
b/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.ppc64.int128
--- a/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.ppc64.int128
+++ b/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.ppc64.int128
@@ -4280,6 +4280,7 @@ Running database upgrade commands:
 set schema "sys";
 ALTER TABLE sys.keywords SET READ WRITE;
 DELETE FROM sys.keywords where keyword = 'STREAM';
+INSERT INTO sys.keywords VALUES ('BIG'), ('LITTLE'), ('NATIVE'), ('ENDIAN');
 ALTER TABLE sys.table_types SET READ WRITE;
 DELETE FROM sys.table_types where table_type_id = 4;
 ALTER TABLE sys.function_types SET READ WRITE;
diff --git 

MonetDB: nospare - mergeddddddd with default (ie copybinary and ...

2021-01-15 Thread Niels Nes
Changeset: 1065fb37f75b for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=1065fb37f75b
Modified Files:
sql/backends/monet5/rel_bin.c
sql/backends/monet5/sql.c
sql/backends/monet5/sql.h
sql/backends/monet5/sql_statement.c
sql/backends/monet5/sql_upgrades.c
sql/include/sql_list.h
sql/server/rel_optimizer.c
sql/server/rel_schema.c
sql/server/rel_select.c
sql/server/rel_updates.c
sql/storage/bat/bat_storage.c
sql/storage/sql_storage.h
sql/storage/store.c
Branch: nospare
Log Message:

mergeddd with default (ie copybinary and sqlancer fixes)


diffs (truncated from 13866 to 300 lines):

diff --git a/clients/Tests/MAL-signatures.stable.out 
b/clients/Tests/MAL-signatures.stable.out
--- a/clients/Tests/MAL-signatures.stable.out
+++ b/clients/Tests/MAL-signatures.stable.out
@@ -621,8 +621,8 @@ stdout of test 'MAL-signatures` in direc
 [ "algebra",   "ilike","command algebra.ilike(X_1:str, X_2:str, 
X_3:str):bit ","PCREilike3;",  ""  ]
 [ "algebra",   "ilikejoin","command algebra.ilikejoin(X_1:bat[:str], 
X_2:bat[:str], X_3:bat[:oid], X_4:bat[:oid], X_5:bit, X_6:lng, 
X_7:bit):bat[:oid] ",  "ILIKEjoin1;",  ""  ]
 [ "algebra",   "ilikejoin","command algebra.ilikejoin(X_2:bat[:str], 
X_3:bat[:str], X_4:bat[:oid], X_5:bat[:oid], X_6:bit, X_7:lng, X_8:bit) 
(X_0:bat[:oid], X_1:bat[:oid]) ", "ILIKEjoin;",   ""  ]
-[ "algebra",   "ilikejoin","command algebra.ilikejoin(X_1:bat[:str], 
X_2:bat[:str], X_3:str, X_4:bat[:oid], X_5:bat[:oid], X_6:bit, X_7:lng, 
X_8:bit):bat[:oid] ", "ILIKEjoin_esc1;",  ""  ]
-[ "algebra",   "ilikejoin","command algebra.ilikejoin(X_2:bat[:str], 
X_3:bat[:str], X_4:str, X_5:bat[:oid], X_6:bat[:oid], X_7:bit, X_8:lng, 
X_9:bit) (X_0:bat[:oid], X_1:bat[:oid]) ","ILIKEjoin_esc;",   ""  ]
+[ "algebra",   "ilikejoin","command algebra.ilikejoin(X_1:bat[:str], 
X_2:bat[:str], X_3:bat[:str], X_4:bat[:oid], X_5:bat[:oid], X_6:bit, X_7:lng, 
X_8:bit):bat[:oid] ",   "ILIKEjoin_esc1;",  ""  ]
+[ "algebra",   "ilikejoin","command algebra.ilikejoin(X_2:bat[:str], 
X_3:bat[:str], X_4:bat[:str], X_5:bat[:oid], X_6:bat[:oid], X_7:bit, X_8:lng, 
X_9:bit) (X_0:bat[:oid], X_1:bat[:oid]) ",  "ILIKEjoin_esc;",   ""  
]
 [ "algebra",   "ilikeselect",  "command algebra.ilikeselect(X_1:bat[:str], 
X_2:bat[:oid], X_3:str, X_4:str, X_5:bit):bat[:oid] ",  "PCRElikeselect1;", 
""  ]
 [ "algebra",   "ilikeselect",  "command algebra.ilikeselect(X_1:bat[:str], 
X_2:bat[:oid], X_3:str, X_4:bit):bat[:oid] ",   "PCRElikeselect4;", ""  
]
 [ "algebra",   "intersect","command algebra.intersect(X_1:bat[:any_1], 
X_2:bat[:any_1], X_3:bat[:oid], X_4:bat[:oid], X_5:bit, X_6:bit, 
X_7:lng):bat[:oid] ",  "ALGintersect;",""  ]
@@ -634,8 +634,8 @@ stdout of test 'MAL-signatures` in direc
 [ "algebra",   "like", "command algebra.like(X_1:str, X_2:str, X_3:str):bit ", 
"PCRElike3;",   ""  ]
 [ "algebra",   "likejoin", "command algebra.likejoin(X_1:bat[:str], 
X_2:bat[:str], X_3:bat[:oid], X_4:bat[:oid], X_5:bit, X_6:lng, 
X_7:bit):bat[:oid] ",   "LIKEjoin1;",   ""  ]
 [ "algebra",   "likejoin", "command algebra.likejoin(X_2:bat[:str], 
X_3:bat[:str], X_4:bat[:oid], X_5:bat[:oid], X_6:bit, X_7:lng, X_8:bit) 
(X_0:bat[:oid], X_1:bat[:oid]) ",  "LIKEjoin;",""  ]
-[ "algebra",   "likejoin", "command algebra.likejoin(X_1:bat[:str], 
X_2:bat[:str], X_3:str, X_4:bat[:oid], X_5:bat[:oid], X_6:bit, X_7:lng, 
X_8:bit):bat[:oid] ",  "LIKEjoin_esc1;",   ""  ]
-[ "algebra",   "likejoin", "command algebra.likejoin(X_2:bat[:str], 
X_3:bat[:str], X_4:str, X_5:bat[:oid], X_6:bat[:oid], X_7:bit, X_8:lng, 
X_9:bit) (X_0:bat[:oid], X_1:bat[:oid]) ", "LIKEjoin_esc;",""  ]
+[ "algebra",   "likejoin", "command algebra.likejoin(X_1:bat[:str], 
X_2:bat[:str], X_3:bat[:str], X_4:bat[:oid], X_5:bat[:oid], X_6:bit, X_7:lng, 
X_8:bit):bat[:oid] ","LIKEjoin_esc1;",   ""  ]
+[ "algebra",   "likejoin", "command algebra.likejoin(X_2:bat[:str], 
X_3:bat[:str], X_4:bat[:str], X_5:bat[:oid], X_6:bat[:oid], X_7:bit, X_8:lng, 
X_9:bit) (X_0:bat[:oid], X_1:bat[:oid]) ",   "LIKEjoin_esc;","" 
 ]
 [ "algebra",   "likeselect",   "command algebra.likeselect(X_1:bat[:str], 
X_2:bat[:oid], X_3:str, X_4:str, X_5:bit, X_6:bit):bat[:oid] ",  
"PCRElikeselect2;", ""  ]
 [ "algebra",   "likeselect",   "command algebra.likeselect(X_1:bat[:str], 
X_2:bat[:oid], X_3:str, X_4:str, X_5:bit):bat[:oid] ",   
"PCRElikeselect3;", ""  ]
 [ "algebra",   "likeselect",   "command algebra.likeselect(X_1:bat[:str], 
X_2:bat[:oid], X_3:str, X_4:bit):bat[:oid] ","PCRElikeselect5;", "" 
 ]
@@ -9111,6 +9111,8 @@ stdout of test 'MAL-signatures` in direc
 [ "oltp",  "table","unsafe pattern oltp.table() 

MonetDB: default - Undo accidental checkin.

2021-01-15 Thread Sjoerd Mullender
Changeset: ff5333fd21bb for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=ff5333fd21bb
Modified Files:
sql/test/sql_dump/Tests/dump.test
Branch: default
Log Message:

Undo accidental checkin.


diffs (12 lines):

diff --git a/sql/test/sql_dump/Tests/dump.test 
b/sql/test/sql_dump/Tests/dump.test
--- a/sql/test/sql_dump/Tests/dump.test
+++ b/sql/test/sql_dump/Tests/dump.test
@@ -291,7 +291,7 @@ statement ok
 COMMIT
 
 query T nosort
-SELECT o, stmt FROM sys.dump_database(FALSE) ORDER BY o ASC
+SELECT stmt FROM sys.dump_database(FALSE) ORDER BY o ASC
 
 START TRANSACTION;
 SET SCHEMA "sys";
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Approved histogram

2021-01-15 Thread Pedro Ferreira
Changeset: f81f47e8cbe5 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=f81f47e8cbe5
Modified Files:
sql/test/miscellaneous/Tests/simple_plans.test
Branch: default
Log Message:

Approved histogram


diffs (12 lines):

diff --git a/sql/test/miscellaneous/Tests/simple_plans.test 
b/sql/test/miscellaneous/Tests/simple_plans.test
--- a/sql/test/miscellaneous/Tests/simple_plans.test
+++ b/sql/test/miscellaneous/Tests/simple_plans.test
@@ -283,6 +283,8 @@ sql.bind
 1
 algebra.projection
 2
+bat.single
+1
 algebra.likejoin
 1
 algebra.project
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Approve upgrade.

2021-01-15 Thread Sjoerd Mullender
Changeset: e07f21762cde for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=e07f21762cde
Modified Files:
sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128
sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.ppc64.int128
sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out
sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.32bit
sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.int128
sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.ppc64
sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.ppc64.int128
sql/test/emptydb-upgrade-hge/Tests/upgrade.stable.out.int128
sql/test/emptydb-upgrade/Tests/upgrade.stable.out
sql/test/emptydb-upgrade/Tests/upgrade.stable.out.32bit
sql/test/emptydb-upgrade/Tests/upgrade.stable.out.int128
sql/test/sql_dump/Tests/dump.test
sql/test/testdb-upgrade-chain-hge/Tests/upgrade.stable.out.int128
sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out
sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out.32bit
sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out.int128
sql/test/testdb-upgrade-hge/Tests/upgrade.stable.out.int128
sql/test/testdb-upgrade/Tests/upgrade.stable.out
sql/test/testdb-upgrade/Tests/upgrade.stable.out.32bit
sql/test/testdb-upgrade/Tests/upgrade.stable.out.int128
Branch: default
Log Message:

Approve upgrade.


diffs (221 lines):

diff --git a/sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128 
b/sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128
--- a/sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128
+++ b/sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128
@@ -4206,6 +4206,7 @@ Running database upgrade commands:
 set schema "sys";
 ALTER TABLE sys.keywords SET READ WRITE;
 DELETE FROM sys.keywords where keyword = 'STREAM';
+INSERT INTO sys.keywords VALUES ('BIG'), ('LITTLE'), ('NATIVE'), ('ENDIAN');
 ALTER TABLE sys.table_types SET READ WRITE;
 DELETE FROM sys.table_types where table_type_id = 4;
 ALTER TABLE sys.function_types SET READ WRITE;
diff --git 
a/sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.ppc64.int128 
b/sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.ppc64.int128
--- a/sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.ppc64.int128
+++ b/sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.ppc64.int128
@@ -4206,6 +4206,7 @@ Running database upgrade commands:
 set schema "sys";
 ALTER TABLE sys.keywords SET READ WRITE;
 DELETE FROM sys.keywords where keyword = 'STREAM';
+INSERT INTO sys.keywords VALUES ('BIG'), ('LITTLE'), ('NATIVE'), ('ENDIAN');
 ALTER TABLE sys.table_types SET READ WRITE;
 DELETE FROM sys.table_types where table_type_id = 4;
 ALTER TABLE sys.function_types SET READ WRITE;
diff --git a/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out 
b/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out
--- a/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out
+++ b/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out
@@ -3611,6 +3611,7 @@ Running database upgrade commands:
 set schema "sys";
 ALTER TABLE sys.keywords SET READ WRITE;
 DELETE FROM sys.keywords where keyword = 'STREAM';
+INSERT INTO sys.keywords VALUES ('BIG'), ('LITTLE'), ('NATIVE'), ('ENDIAN');
 ALTER TABLE sys.table_types SET READ WRITE;
 DELETE FROM sys.table_types where table_type_id = 4;
 ALTER TABLE sys.function_types SET READ WRITE;
diff --git a/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.32bit 
b/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.32bit
--- a/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.32bit
+++ b/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.32bit
@@ -3611,6 +3611,7 @@ Running database upgrade commands:
 set schema "sys";
 ALTER TABLE sys.keywords SET READ WRITE;
 DELETE FROM sys.keywords where keyword = 'STREAM';
+INSERT INTO sys.keywords VALUES ('BIG'), ('LITTLE'), ('NATIVE'), ('ENDIAN');
 ALTER TABLE sys.table_types SET READ WRITE;
 DELETE FROM sys.table_types where table_type_id = 4;
 ALTER TABLE sys.function_types SET READ WRITE;
diff --git a/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.int128 
b/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.int128
--- a/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.int128
+++ b/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.int128
@@ -4280,6 +4280,7 @@ Running database upgrade commands:
 set schema "sys";
 ALTER TABLE sys.keywords SET READ WRITE;
 DELETE FROM sys.keywords where keyword = 'STREAM';
+INSERT INTO sys.keywords VALUES ('BIG'), ('LITTLE'), ('NATIVE'), ('ENDIAN');
 ALTER TABLE sys.table_types SET READ WRITE;
 DELETE FROM sys.table_types where table_type_id = 4;
 ALTER TABLE sys.function_types SET READ WRITE;
diff --git 

MonetDB: nospare - reworked the temp tables (now split in global...

2021-01-15 Thread Niels Nes
Changeset: 4fb611bd75cb for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=4fb611bd75cb
Modified Files:
sql/backends/monet5/sql_execute.c
sql/backends/monet5/sql_gencode.c
sql/backends/monet5/sql_scenario.c
sql/backends/monet5/wlr.c
sql/include/sql_catalog.h
sql/server/rel_psm.c
sql/server/sql_mvc.h
sql/server/sql_qc.c
sql/storage/bat/bat_storage.c
sql/storage/bat/bat_storage.h
sql/storage/bat/bat_table.c
sql/storage/bat/bat_utils.c
sql/storage/bat/bat_utils.h
sql/storage/sql_catalog.c
sql/storage/store.c
Branch: nospare
Log Message:

reworked the temp tables (now split in global and localtmps (is transaction 
local changeset))

as we now have a single multiversion-transaction tree functions are shared as 
well, ie use
module 'sql' to register the mal function, instead of 'user'. For prepare and 
current query
mal plans we still need to use a private ('user') module.


diffs (truncated from 1129 to 300 lines):

diff --git a/sql/backends/monet5/sql_execute.c 
b/sql/backends/monet5/sql_execute.c
--- a/sql/backends/monet5/sql_execute.c
+++ b/sql/backends/monet5/sql_execute.c
@@ -459,7 +459,7 @@ SQLstatementIntern(Client c, const char 
 * optimize and produce code.
 * We don't search the cache for a previous incarnation yet.
 */
-   if((msg = MSinitClientPrg(c, "user", nme)) != MAL_SUCCEED) {
+   if((msg = MSinitClientPrg(c, sql_private_module_name, nme)) != 
MAL_SUCCEED) {
goto endofcompile;
}
oldvtop = c->curprg->def->vtop;
@@ -774,7 +774,7 @@ RAstatement(Client c, MalBlkPtr mb, MalS
if (*opt && rel)
rel = sql_processrelation(m, rel, 1, 1);
 
-   if ((msg = MSinitClientPrg(c, "user", "test")) != MAL_SUCCEED) {
+   if ((msg = MSinitClientPrg(c, sql_private_module_name, "test")) 
!= MAL_SUCCEED) {
rel_destroy(rel);
return msg;
}
diff --git a/sql/backends/monet5/sql_gencode.c 
b/sql/backends/monet5/sql_gencode.c
--- a/sql/backends/monet5/sql_gencode.c
+++ b/sql/backends/monet5/sql_gencode.c
@@ -787,9 +787,9 @@ backend_dumpproc(backend *be, Client c, 
if (argc < MAXARG)
argc = MAXARG;
if (cq)
-   c->curprg = newFunctionArgs(userRef, putName(cq->name), 
FUNCTIONsymbol, argc);
+   c->curprg = newFunctionArgs(putName(sql_private_module_name), 
putName(cq->name), FUNCTIONsymbol, argc);
else
-   c->curprg = newFunctionArgs(userRef, "tmp", FUNCTIONsymbol, 
argc);
+   c->curprg = newFunctionArgs(putName(sql_private_module_name), 
"tmp", FUNCTIONsymbol, argc);
if (c->curprg == NULL) {
sql_error(m, 001, SQLSTATE(HY013) MAL_MALLOC_FAIL);
return NULL;
@@ -801,7 +801,7 @@ backend_dumpproc(backend *be, Client c, 
curInstr = getInstrPtr(mb, 0);
/* we do not return anything */
setVarType(mb, 0, TYPE_void);
-   setModuleId(curInstr, userRef);
+   setModuleId(curInstr, putName(sql_private_module_name));
 
if (m->params) {/* needed for prepare statements */
 
@@ -1154,7 +1154,7 @@ backend_create_sql_func(backend *be, sql
}
 
backup = c->curprg;
-   curPrg = c->curprg = newFunctionArgs(userRef, putName(f->base.name), 
FUNCTIONsymbol, (f->res && f->type == F_UNION ? list_length(f->res) : 1) + 
(f->vararg && ops ? list_length(ops) : f->ops ? list_length(f->ops) : 0));
+   curPrg = c->curprg = newFunctionArgs(putName(sql_shared_module_name), 
putName(f->base.name), FUNCTIONsymbol, (f->res && f->type == F_UNION ? 
list_length(f->res) : 1) + (f->vararg && ops ? list_length(ops) : f->ops ? 
list_length(f->ops) : 0));
if( curPrg == NULL) {
sql_error(m, 001, SQLSTATE(HY013) MAL_MALLOC_FAIL);
goto cleanup;
diff --git a/sql/backends/monet5/sql_scenario.c 
b/sql/backends/monet5/sql_scenario.c
--- a/sql/backends/monet5/sql_scenario.c
+++ b/sql/backends/monet5/sql_scenario.c
@@ -417,10 +417,12 @@ SQLinit(Client c)
/* check whether table sys.systemfunctions exists: if
 * it doesn't, this is probably a restart of the
 * server after an incomplete initialization */
-   sql_schema *s = mvc_bind_schema(m, "sys");
-   sql_table *t = s ? mvc_bind_table(m, s, "systemfunctions") : 
NULL;
-   if (t == NULL)
-   store->first = 1;
+   if ((msg = SQLtrans(m)) == MAL_SUCCEED) {
+   sql_schema *s = mvc_bind_schema(m, "sys");
+   sql_table *t = s ? mvc_bind_table(m, s, 
"systemfunctions") : NULL;
+   if (t == NULL)
+   store->first = 

MonetDB: default - Merged with Oct2020

2021-01-15 Thread Pedro Ferreira
Changeset: 2b21a252268f for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=2b21a252268f
Modified Files:
gdk/gdk_bat.c
gdk/gdk_batop.c
gdk/gdk_private.h
sql/backends/monet5/sql_statement.c
sql/server/rel_exp.c
sql/test/SQLancer/Tests/sqlancer04.test
sql/test/SQLancer/Tests/sqlancer05.test
Branch: default
Log Message:

Merged with Oct2020


diffs (truncated from 572 to 300 lines):

diff --git a/gdk/gdk_align.c b/gdk/gdk_align.c
--- a/gdk/gdk_align.c
+++ b/gdk/gdk_align.c
@@ -284,8 +284,8 @@ VIEWreset(BAT *b)
 
if (tp == 0) {
/* only sharing the vheap */
-   assert(ATOMstorage(b->ttype) == TYPE_str);
-   return unshare_string_heap(b);
+   assert(ATOMvarsized(b->ttype));
+   return unshare_varsized_heap(b);
}
 
BAT *v = VIEWcreate(b->hseqbase, b);
diff --git a/gdk/gdk_bat.c b/gdk/gdk_bat.c
--- a/gdk/gdk_bat.c
+++ b/gdk/gdk_bat.c
@@ -1062,7 +1062,7 @@ BUNappend(BAT *b, const void *t, bool fo
}
}
 
-   if (unshare_string_heap(b) != GDK_SUCCEED) {
+   if (unshare_varsized_heap(b) != GDK_SUCCEED) {
return GDK_FAIL;
}
 
diff --git a/gdk/gdk_batop.c b/gdk/gdk_batop.c
--- a/gdk/gdk_batop.c
+++ b/gdk/gdk_batop.c
@@ -19,10 +19,10 @@
 #include "gdk_private.h"
 
 gdk_return
-unshare_string_heap(BAT *b)
+unshare_varsized_heap(BAT *b)
 {
assert(b->batCacheid > 0);
-   if (ATOMstorage(b->ttype) == TYPE_str &&
+   if (ATOMvarsized(b->ttype) &&
b->tvheap->parentid != b->batCacheid) {
Heap *h = GDKzalloc(sizeof(Heap));
if (h == NULL)
@@ -116,7 +116,7 @@ insert_string_bat(BAT *b, BAT *n, struct
   ci->tpe == cand_dense) {
toff = 0;
} else if (b->tvheap->parentid != bid &&
-  unshare_string_heap(b) != GDK_SUCCEED) {
+  unshare_varsized_heap(b) != GDK_SUCCEED) {
return GDK_FAIL;
}
}
@@ -191,7 +191,7 @@ insert_string_bat(BAT *b, BAT *n, struct
}
}
}
-   } else if (unshare_string_heap(b) != GDK_SUCCEED)
+   } else if (unshare_varsized_heap(b) != GDK_SUCCEED)
return GDK_FAIL;
if (toff == 0 && n->twidth == b->twidth && ci->tpe == cand_dense) {
/* we don't need to do any translation of offset
diff --git a/gdk/gdk_private.h b/gdk/gdk_private.h
--- a/gdk/gdk_private.h
+++ b/gdk/gdk_private.h
@@ -247,7 +247,7 @@ ssize_t strToStr(char **restrict dst, si
__attribute__((__visibility__("hidden")));
 gdk_return strWrite(const char *a, stream *s, size_t cnt)
__attribute__((__visibility__("hidden")));
-gdk_return unshare_string_heap(BAT *b)
+gdk_return unshare_varsized_heap(BAT *b)
__attribute__((__warn_unused_result__))
__attribute__((__visibility__("hidden")));
 void VIEWdestroy(BAT *b)
diff --git a/monetdb5/optimizer/opt_emptybind.c 
b/monetdb5/optimizer/opt_emptybind.c
--- a/monetdb5/optimizer/opt_emptybind.c
+++ b/monetdb5/optimizer/opt_emptybind.c
@@ -35,21 +35,6 @@
}  } while (0)
 
 
-static int
-withoutMitosis(MalBlkPtr mb)
-{
-   InstrPtr p;
-
-   for(int i = mb->stop-1; i>=0; i--) {
-   p = mb->stmt[i];
-   if (p->token == ENDsymbol)
-   break;
-   if (getFunctionId(p) == mitosisRef)
-   return (p->token == REMsymbol);
-}
-   return 0;
-}
-
 str
 OPTemptybindImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr 
pci)
 {
@@ -62,7 +47,6 @@ OPTemptybindImplementation(Client cntxt,
str sch,tbl;
int etop= 0, esize= 256;
str msg = MAL_SUCCEED;
-   int no_mitosis = withoutMitosis(mb);
 
(void) stk;
(void) cntxt;
@@ -211,19 +195,6 @@ OPTemptybindImplementation(Client cntxt,
continue;
}
}
-   // delta operations without updates can be replaced by an pack 
of base and inserts
-   if (getModuleId(p)== sqlRef && getFunctionId(p) == deltaRef  && 
p->argc == 5){
-   if (no_mitosis && empty[getArg(p,2)] && 
empty[getArg(p,3)]){
-   actions++;
-   clrFunction(p);
-   setModuleId(p,matRef);
-   setFunctionId(p,packRef);
-   p->argc = 3;
-   getArg(p, 2) = getArg(p, 4);
-   p->typechk= TYPE_UNKNOWN;
-   }
-   continue;
-   }
 
if (getModuleId(p)== sqlRef && getFunctionId(p) == 

MonetDB: Oct2020 - Merged with Jun2020

2021-01-15 Thread Pedro Ferreira
Changeset: 1bd4fdb7b2d7 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=1bd4fdb7b2d7
Modified Files:
monetdb5/optimizer/opt_emptybind.c
Branch: Oct2020
Log Message:

Merged with Jun2020


diffs (53 lines):

diff --git a/monetdb5/optimizer/opt_emptybind.c 
b/monetdb5/optimizer/opt_emptybind.c
--- a/monetdb5/optimizer/opt_emptybind.c
+++ b/monetdb5/optimizer/opt_emptybind.c
@@ -35,21 +35,6 @@
}  } while (0)
 
 
-static int
-withoutMitosis(MalBlkPtr mb)
-{
-   InstrPtr p;
-
-   for(int i = mb->stop-1; i>=0; i--) {
-   p = mb->stmt[i];
-   if (p->token == ENDsymbol)
-   break;
-   if (getFunctionId(p) == mitosisRef)
-   return (p->token == REMsymbol);
-}
-   return 0;
-}
-
 str
 OPTemptybindImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr 
pci)
 {
@@ -62,7 +47,6 @@ OPTemptybindImplementation(Client cntxt,
str sch,tbl;
int etop= 0, esize= 256;
str msg = MAL_SUCCEED;
-   int no_mitosis = withoutMitosis(mb);
 
(void) stk;
(void) cntxt;
@@ -211,19 +195,6 @@ OPTemptybindImplementation(Client cntxt,
continue;
}
}
-   // delta operations without updates can be replaced by an pack 
of base and inserts
-   if (getModuleId(p)== sqlRef && getFunctionId(p) == deltaRef  && 
p->argc == 5){
-   if (no_mitosis && empty[getArg(p,2)] && 
empty[getArg(p,3)]){
-   actions++;
-   clrFunction(p);
-   setModuleId(p,matRef);
-   setFunctionId(p,packRef);
-   p->argc = 3;
-   getArg(p, 2) = getArg(p, 4);
-   p->typechk= TYPE_UNKNOWN;
-   }
-   continue;
-   }
 
if (getModuleId(p)== sqlRef && getFunctionId(p) == 
projectdeltaRef) {
if( empty[getArg(p,3)] && empty[getArg(p,4)] ){
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: Jun2020-mmt - Merged with Jun2020

2021-01-15 Thread Pedro Ferreira
Changeset: a203c76724b6 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=a203c76724b6
Branch: Jun2020-mmt
Log Message:

Merged with Jun2020


diffs (53 lines):

diff --git a/monetdb5/optimizer/opt_emptybind.c 
b/monetdb5/optimizer/opt_emptybind.c
--- a/monetdb5/optimizer/opt_emptybind.c
+++ b/monetdb5/optimizer/opt_emptybind.c
@@ -35,21 +35,6 @@
}  } while (0)
 
 
-static int
-withoutMitosis(MalBlkPtr mb)
-{
-   InstrPtr p;
-
-   for(int i = mb->stop-1; i>=0; i--) {
-   p = mb->stmt[i];
-   if (p->token == ENDsymbol)
-   break;
-   if (getFunctionId(p) == mitosisRef)
-   return (p->token == REMsymbol);
-}
-   return 0;
-}
-
 str
 OPTemptybindImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr 
pci)
 {
@@ -62,7 +47,6 @@ OPTemptybindImplementation(Client cntxt,
str sch,tbl;
int etop= 0, esize= 256;
str msg = MAL_SUCCEED;
-   int no_mitosis = withoutMitosis(mb);
 
(void) stk;
(void) cntxt;
@@ -211,19 +195,6 @@ OPTemptybindImplementation(Client cntxt,
continue;
}
}
-   // delta operations without updates can be replaced by an pack 
of base and inserts
-   if (getModuleId(p)== sqlRef && getFunctionId(p) == deltaRef  && 
p->argc == 5){
-   if (no_mitosis && empty[getArg(p,2)] && 
empty[getArg(p,3)]){
-   actions++;
-   clrFunction(p);
-   setModuleId(p,matRef);
-   setFunctionId(p,packRef);
-   p->argc = 3;
-   getArg(p, 2) = getArg(p, 4);
-   p->typechk= TYPE_UNKNOWN;
-   }
-   continue;
-   }
 
if (getModuleId(p)== sqlRef && getFunctionId(p) == 
projectdeltaRef) {
if( empty[getArg(p,3)] && empty[getArg(p,4)] ){
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: Oct2020 - Small bugfix, don't show the label on error i...

2021-01-15 Thread Pedro Ferreira
Changeset: e573bd725229 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=e573bd725229
Modified Files:
sql/backends/monet5/generator/Tests/generator01.stable.err
sql/backends/monet5/generator/Tests/generator04.stable.err
sql/server/rel_exp.c
sql/test/SQLancer/Tests/sqlancer04.sql
sql/test/SQLancer/Tests/sqlancer04.stable.err
Branch: Oct2020
Log Message:

Small bugfix, don't show the label on error if that's the case


diffs (63 lines):

diff --git a/sql/backends/monet5/generator/Tests/generator01.stable.err 
b/sql/backends/monet5/generator/Tests/generator01.stable.err
--- a/sql/backends/monet5/generator/Tests/generator01.stable.err
+++ b/sql/backends/monet5/generator/Tests/generator01.stable.err
@@ -103,7 +103,7 @@ ERROR = !Illegal generator range
 CODE  = 42000
 MAPI  = (monetdb) /var/tmp/mtest-30274/.s.monetdb.37685
 QUERY = select * from generate_series(cast(null as timestamp),10,1) ;
-ERROR = !types tinyint(4,0) and timestamp(7,0) are not equal for column '%2'
+ERROR = !types tinyint(4,0) and timestamp(7,0) are not equal
 CODE  = 42000
 MAPI  = (monetdb) /var/tmp/mtest-30274/.s.monetdb.37685
 QUERY = select * from generate_series(null,cast(10 as timestamp),cast(1 as 
interval second)) ;
diff --git a/sql/backends/monet5/generator/Tests/generator04.stable.err 
b/sql/backends/monet5/generator/Tests/generator04.stable.err
--- a/sql/backends/monet5/generator/Tests/generator04.stable.err
+++ b/sql/backends/monet5/generator/Tests/generator04.stable.err
@@ -53,7 +53,7 @@ MAPI  = (monetdb) /var/tmp/mtest-30274/.
 QUERY = select * from generate_series(
timestamp '2008-03-01 00:00',
timestamp '2008-03-04 12:00');
-ERROR = !types timestamp(7,0) and tinyint(8,0) are not equal for column '%1'
+ERROR = !types timestamp(7,0) and tinyint(8,0) are not equal
 CODE  = 42000
 
 # 21:38:52 >  
diff --git a/sql/server/rel_exp.c b/sql/server/rel_exp.c
--- a/sql/server/rel_exp.c
+++ b/sql/server/rel_exp.c
@@ -2962,9 +2962,9 @@ exp_check_type(mvc *sql, sql_subtype *t,
t->type->sqlname,
t->digits,
t->scale,
-   (exp->type == e_column ? " for column '" : ""),
-   (exp->type == e_column ? exp_name(exp) : ""),
-   (exp->type == e_column ? "'" : "")
+   (exp->type == e_column && !has_label(exp) ? " for 
column '" : ""),
+   (exp->type == e_column && !has_label(exp) ? 
exp_name(exp) : ""),
+   (exp->type == e_column && !has_label(exp) ? "'" : "")
);
return res;
}
diff --git a/sql/test/SQLancer/Tests/sqlancer04.sql 
b/sql/test/SQLancer/Tests/sqlancer04.sql
--- a/sql/test/SQLancer/Tests/sqlancer04.sql
+++ b/sql/test/SQLancer/Tests/sqlancer04.sql
@@ -424,3 +424,5 @@ WHERE (v4.vc0) IN (-2081865947, 30436)) 
 0.10216334194461484941029993933625519275665283203125) AS STRING(478 AS 
sub2 ON ((greatest(r'', r'32228'))NOT
 ILIKE(CAST(30792 AS STRING(381) as res;
 ROLLBACK;
+
+select cast(count(1) as interval second) from (values (false)) as v6(vc0); 
--error
diff --git a/sql/test/SQLancer/Tests/sqlancer04.stable.err 
b/sql/test/SQLancer/Tests/sqlancer04.stable.err
--- a/sql/test/SQLancer/Tests/sqlancer04.stable.err
+++ b/sql/test/SQLancer/Tests/sqlancer04.stable.err
@@ -55,6 +55,10 @@ MAPI  = (monetdb) /var/tmp/mtest-13844/.
 QUERY = select coalesce(-1129107763, '1415606329') from (values(1),(2)) as 
t0(c0);
 ERROR = !value too long for type (var)char(10)
 CODE  = 22001
+MAPI  = (monetdb) /var/tmp/mtest-150622/.s.monetdb.34547
+QUERY = select cast(count(1) as interval second) from (values (false)) as 
v6(vc0); --error
+ERROR = !types bigint(64,0) and sec_interval(13,0) are not equal
+CODE  = 42000
 
 # 09:44:50 >  
 # 09:44:50 >  "Done."
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: Oct2020 - Actually unshare vheap when not a string heap.

2021-01-15 Thread Sjoerd Mullender
Changeset: c55453c6b9ab for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=c55453c6b9ab
Modified Files:
gdk/gdk_align.c
gdk/gdk_bat.c
gdk/gdk_batop.c
gdk/gdk_private.h
Branch: Oct2020
Log Message:

Actually unshare vheap when not a string heap.


diffs (70 lines):

diff --git a/gdk/gdk_align.c b/gdk/gdk_align.c
--- a/gdk/gdk_align.c
+++ b/gdk/gdk_align.c
@@ -285,7 +285,7 @@ VIEWreset(BAT *b)
if (tp == 0) {
/* only sharing the vheap */
assert(ATOMvarsized(b->ttype));
-   return unshare_string_heap(b);
+   return unshare_varsized_heap(b);
}
 
BAT *v = VIEWcreate(b->hseqbase, b);
diff --git a/gdk/gdk_bat.c b/gdk/gdk_bat.c
--- a/gdk/gdk_bat.c
+++ b/gdk/gdk_bat.c
@@ -1055,7 +1055,7 @@ BUNappend(BAT *b, const void *t, bool fo
}
}
 
-   if (unshare_string_heap(b) != GDK_SUCCEED) {
+   if (unshare_varsized_heap(b) != GDK_SUCCEED) {
return GDK_FAIL;
}
 
diff --git a/gdk/gdk_batop.c b/gdk/gdk_batop.c
--- a/gdk/gdk_batop.c
+++ b/gdk/gdk_batop.c
@@ -19,10 +19,10 @@
 #include "gdk_private.h"
 
 gdk_return
-unshare_string_heap(BAT *b)
+unshare_varsized_heap(BAT *b)
 {
assert(b->batCacheid > 0);
-   if (ATOMstorage(b->ttype) == TYPE_str &&
+   if (ATOMvarsized(b->ttype) &&
b->tvheap->parentid != b->batCacheid) {
Heap *h = GDKzalloc(sizeof(Heap));
if (h == NULL)
@@ -116,7 +116,7 @@ insert_string_bat(BAT *b, BAT *n, struct
   ci->tpe == cand_dense) {
toff = 0;
} else if (b->tvheap->parentid != bid &&
-  unshare_string_heap(b) != GDK_SUCCEED) {
+  unshare_varsized_heap(b) != GDK_SUCCEED) {
return GDK_FAIL;
}
}
@@ -191,7 +191,7 @@ insert_string_bat(BAT *b, BAT *n, struct
}
}
}
-   } else if (unshare_string_heap(b) != GDK_SUCCEED)
+   } else if (unshare_varsized_heap(b) != GDK_SUCCEED)
return GDK_FAIL;
if (toff == 0 && n->twidth == b->twidth && ci->tpe == cand_dense) {
/* we don't need to do any translation of offset
diff --git a/gdk/gdk_private.h b/gdk/gdk_private.h
--- a/gdk/gdk_private.h
+++ b/gdk/gdk_private.h
@@ -247,7 +247,7 @@ ssize_t strToStr(char **restrict dst, si
__attribute__((__visibility__("hidden")));
 gdk_return strWrite(const char *a, stream *s, size_t cnt)
__attribute__((__visibility__("hidden")));
-gdk_return unshare_string_heap(BAT *b)
+gdk_return unshare_varsized_heap(BAT *b)
__attribute__((__warn_unused_result__))
__attribute__((__visibility__("hidden")));
 void VIEWdestroy(BAT *b)
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list