MonetDB: properties - Merged with default
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:...
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...
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
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
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 ...
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.
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
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.
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...
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
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
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
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...
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.
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