Changeset: 13957da3e185 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=13957da3e185 Added Files: sql/test/mergetables/Tests/emptymergequery.stable.err sql/test/mergetables/Tests/emptymergequery.stable.out sql/test/mergetables/Tests/mergeloadidx.sql sql/test/mergetables/Tests/mergeloadidx.stable.err sql/test/mergetables/Tests/mergeloadidx.stable.out Modified Files: sql/backends/monet5/bam/Tests/mergetable.stable.err sql/backends/monet5/bam/Tests/mergetable.stable.out sql/backends/monet5/bam/Tests/sql/mergetable.sql sql/server/rel_schema.c sql/server/rel_select.c sql/storage/store.c sql/test/mergetables/Tests/All Branch: bamloader Log Message:
Merge with default diffs (truncated from 361 to 300 lines): diff --git a/sql/backends/monet5/bam/Tests/mergetable.stable.err b/sql/backends/monet5/bam/Tests/mergetable.stable.err --- a/sql/backends/monet5/bam/Tests/mergetable.stable.err +++ b/sql/backends/monet5/bam/Tests/mergetable.stable.err @@ -118,21 +118,13 @@ stderr of test 'mergetable` in directory # 08:29:32 > "/usr/bin/python2" "mergetable.SQL.py" "mergetable" # 08:29:32 > -MAPI = (monetdb) /var/tmp/mtest-10986/.s.monetdb.37321 +MAPI = (monetdb) /var/tmp/mtest-17563/.s.monetdb.34280 QUERY = SELECT COUNT(*) FROM alignments; -ERROR = !Unable to query empty Merge or Replica tables -MAPI = (monetdb) /var/tmp/mtest-10986/.s.monetdb.37321 -QUERY = ALTER TABLE alignments ADD TABLE alignments_1; -ERROR = !ALTER MERGE TABLE: to be added table index doesn't match MERGE TABLE definition -MAPI = (monetdb) /var/tmp/mtest-10986/.s.monetdb.37321 -QUERY = SELECT COUNT(*) FROM alignments; -ERROR = !Unable to query empty Merge or Replica tables -MAPI = (monetdb) /var/tmp/mtest-10986/.s.monetdb.37321 -QUERY = ALTER TABLE alignments ADD TABLE alignments_2; -ERROR = !ALTER MERGE TABLE: to be added table index doesn't match MERGE TABLE definition -MAPI = (monetdb) /var/tmp/mtest-10986/.s.monetdb.37321 -QUERY = SELECT COUNT(*) FROM alignments; -ERROR = !Unable to query empty Merge or Replica tables +ERROR = !MERGE or REPLICA TABLE should have at least one table associated + +# 18:59:22 > +# 18:59:22 > "Done." +# 18:59:22 > # 08:29:33 > # 08:29:33 > "Done." diff --git a/sql/backends/monet5/bam/Tests/mergetable.stable.out b/sql/backends/monet5/bam/Tests/mergetable.stable.out --- a/sql/backends/monet5/bam/Tests/mergetable.stable.out +++ b/sql/backends/monet5/bam/Tests/mergetable.stable.out @@ -68,7 +68,25 @@ Ready. # "pnext" INT NOT NULL, # "tlen" INT NOT NULL, # "seq" STRING NOT NULL, -# "qual" STRING NOT NULL +# "qual" STRING NOT NULL, +#ALTER TABLE alignments ADD TABLE alignments_1; +#SELECT COUNT(*) FROM alignments; +% bam.L1 # table_name +% L1 # name +% wrd # type +% 2 # length +[ 71 ] +#ALTER TABLE alignments ADD TABLE alignments_2; +#SELECT COUNT(*) FROM alignments; +% .L1 # table_name +% L1 # name +% wrd # type +% 3 # length +[ 142 ] + +# 18:59:22 > +# 18:59:22 > "Done." +# 18:59:22 > # 08:29:33 > # 08:29:33 > "Done." diff --git a/sql/backends/monet5/bam/Tests/sql/mergetable.sql b/sql/backends/monet5/bam/Tests/sql/mergetable.sql --- a/sql/backends/monet5/bam/Tests/sql/mergetable.sql +++ b/sql/backends/monet5/bam/Tests/sql/mergetable.sql @@ -16,7 +16,8 @@ CREATE MERGE TABLE alignments ( "pnext" INT NOT NULL, "tlen" INT NOT NULL, "seq" STRING NOT NULL, - "qual" STRING NOT NULL + "qual" STRING NOT NULL, + CONSTRAINT "alignments_pkey_virtual_offset" PRIMARY KEY ("virtual_offset") ); SELECT COUNT(*) FROM alignments; diff --git a/sql/server/rel_schema.c b/sql/server/rel_schema.c --- a/sql/server/rel_schema.c +++ b/sql/server/rel_schema.c @@ -1161,7 +1161,7 @@ rel_alter_table(mvc *sql, dlist *qname, /* check tables */ if (nnt) { - if (rel_check_tables(sql, nt, nnt) < 0) + if (rel_check_tables(sql, t, nnt) < 0) return NULL; cs_add(&nt->tables, nnt, TR_NEW); } diff --git a/sql/server/rel_select.c b/sql/server/rel_select.c --- a/sql/server/rel_select.c +++ b/sql/server/rel_select.c @@ -1756,7 +1756,7 @@ table_ref(mvc *sql, sql_rel *rel, symbol return rel; } if ((isMergeTable(t) || isReplicaTable(t)) && list_empty(t->tables.set)) - return sql_error(sql, 02, "Unable to query empty Merge or Replica tables"); + return sql_error(sql, 02, "MERGE or REPLICA TABLE should have at least one table associated"); return rel_basetable(sql, t, tname); } else if (tableref->token == SQL_VALUES) { diff --git a/sql/storage/store.c b/sql/storage/store.c --- a/sql/storage/store.c +++ b/sql/storage/store.c @@ -1216,24 +1216,6 @@ dup_sql_table(sql_allocator *sa, sql_tab dup_sql_column(sa, nt, n->data); nt->columns.dset = NULL; nt->columns.nelm = NULL; - -/* - if (t->idxs.set) { - for (n = t->idxs.set->h; n; n = n->next) { - sql_idx *i = n->data; - mvc_copy_idx(sql, nt, i); - } - } - if (t->keys.set) { - for (n = t->keys.set->h; n; n = n->next) { - sql_key *k = n->data; - - mvc_copy_key(sql, nt, k); - } - } -*/ - /* TODO copy triggers */ - return nt; } diff --git a/sql/test/mergetables/Tests/All b/sql/test/mergetables/Tests/All --- a/sql/test/mergetables/Tests/All +++ b/sql/test/mergetables/Tests/All @@ -1,5 +1,6 @@ mergeinit mergeload +mergeloadidx mergequery emptymergequery alter diff --git a/sql/test/mergetables/Tests/emptymergequery.stable.err b/sql/test/mergetables/Tests/emptymergequery.stable.err new file mode 100644 --- /dev/null +++ b/sql/test/mergetables/Tests/emptymergequery.stable.err @@ -0,0 +1,40 @@ +stderr of test 'emptymergequery` in directory 'sql/test/mergetables` itself: + + +# 18:40:24 > +# 18:40:24 > "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" "mapi_open=true" "--set" "mapi_port=39369" "--set" "mapi_usock=/var/tmp/mtest-11671/.s.monetdb.39369" "--set" "monet_prompt=" "--forcemito" "--set" "mal_listing=2" "--dbpath=/home/niels/scratch/monetdb/Linux-x86_64/var/MonetDB/mTests_sql_test_mergetables" "--set" "mal_listing=0" "--set" "embedded_r=yes" +# 18:40:24 > + +# builtin opt gdk_dbpath = /home/niels/scratch/monetdb/Linux-x86_64/var/monetdb5/dbfarm/demo +# builtin opt gdk_debug = 0 +# builtin opt gdk_vmtrim = no +# builtin opt monet_prompt = > +# builtin opt monet_daemon = no +# builtin opt mapi_port = 50000 +# builtin opt mapi_open = false +# builtin opt mapi_autosense = false +# builtin opt sql_optimizer = default_pipe +# builtin opt sql_debug = 0 +# cmdline opt gdk_nr_threads = 0 +# cmdline opt mapi_open = true +# cmdline opt mapi_port = 39369 +# cmdline opt mapi_usock = /var/tmp/mtest-11671/.s.monetdb.39369 +# cmdline opt monet_prompt = +# cmdline opt mal_listing = 2 +# cmdline opt gdk_dbpath = /home/niels/scratch/monetdb/Linux-x86_64/var/MonetDB/mTests_sql_test_mergetables +# cmdline opt mal_listing = 0 +# cmdline opt embedded_r = yes +# cmdline opt gdk_debug = 536870922 + +# 18:40:24 > +# 18:40:24 > "mclient" "-lsql" "-ftest" "-Eutf-8" "-i" "-e" "--host=/var/tmp/mtest-11671" "--port=39369" +# 18:40:24 > + +MAPI = (monetdb) /var/tmp/mtest-11671/.s.monetdb.39369 +QUERY = select * from emptym; +ERROR = !MERGE or REPLICA TABLE should have at least one table associated + +# 18:40:24 > +# 18:40:24 > "Done." +# 18:40:24 > + diff --git a/sql/test/mergetables/Tests/emptymergequery.stable.out b/sql/test/mergetables/Tests/emptymergequery.stable.out new file mode 100644 --- /dev/null +++ b/sql/test/mergetables/Tests/emptymergequery.stable.out @@ -0,0 +1,34 @@ +stdout of test 'emptymergequery` in directory 'sql/test/mergetables` itself: + + +# 18:40:24 > +# 18:40:24 > "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" "mapi_open=true" "--set" "mapi_port=39369" "--set" "mapi_usock=/var/tmp/mtest-11671/.s.monetdb.39369" "--set" "monet_prompt=" "--forcemito" "--set" "mal_listing=2" "--dbpath=/home/niels/scratch/monetdb/Linux-x86_64/var/MonetDB/mTests_sql_test_mergetables" "--set" "mal_listing=0" "--set" "embedded_r=yes" +# 18:40:24 > + +# MonetDB 5 server v11.20.0 +# This is an unreleased version +# Serving database 'mTests_sql_test_mergetables', using 4 threads +# Compiled for x86_64-unknown-linux-gnu/64bit with 64bit OIDs and 128bit integers dynamically linked +# Found 7.334 GiB available main-memory. +# Copyright (c) 1993-July 2008 CWI. +# Copyright (c) August 2008-2014 MonetDB B.V., all rights reserved +# Visit http://www.monetdb.org/ for further information +# Listening for connection requests on mapi:monetdb://localhost.nes.nl:39369/ +# Listening for UNIX domain connection requests on mapi:monetdb:///var/tmp/mtest-11671/.s.monetdb.39369 +# MonetDB/GIS module loaded +# MonetDB/SQL module loaded +# MonetDB/R module loaded + +Ready. + +# 18:40:24 > +# 18:40:24 > "mclient" "-lsql" "-ftest" "-Eutf-8" "-i" "-e" "--host=/var/tmp/mtest-11671" "--port=39369" +# 18:40:24 > + +#create merge table emptym(i integer, j integer); +#drop table emptym; + +# 18:40:24 > +# 18:40:24 > "Done." +# 18:40:24 > + diff --git a/sql/test/mergetables/Tests/mergeloadidx.sql b/sql/test/mergetables/Tests/mergeloadidx.sql new file mode 100644 --- /dev/null +++ b/sql/test/mergetables/Tests/mergeloadidx.sql @@ -0,0 +1,24 @@ +CREATE TABLE part1 ( x double, y double, z double, constraint pkeytest_1 primary key (x,y,z)); +COPY 4 RECORDS INTO part1 FROM stdin USING DELIMITERS ' ','\n'; +0.0 0.0 0.0 +1.0 0.0 0.0 +0.0 1.0 0.0 +1.0 1.0 0.0 + +CREATE TABLE part2 ( x double, y double, z double, constraint pkeytest_2 primary key (x,y,z)); +COPY 4 RECORDS INTO part2 FROM stdin USING DELIMITERS ' ','\n'; +2.0 0.0 0.0 +3.0 0.0 0.0 +2.0 1.0 0.0 +3.0 1.0 0.0 + +CREATE MERGE TABLE complete ( x double, y double, z double, constraint pkeytest primary key (x,y,z)); + +ALTER TABLE complete ADD TABLE part1; +ALTER TABLE complete ADD TABLE part2; + +SELECT * FROM COMPLETE; + +DROP TABLE complete; +DROP TABLE part1; +DROP TABLE part2; diff --git a/sql/test/mergetables/Tests/mergeloadidx.stable.err b/sql/test/mergetables/Tests/mergeloadidx.stable.err new file mode 100644 --- /dev/null +++ b/sql/test/mergetables/Tests/mergeloadidx.stable.err @@ -0,0 +1,37 @@ +stderr of test 'mergeloadidx` in directory 'sql/test/mergetables` itself: + + +# 18:57:51 > +# 18:57:51 > "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" "mapi_open=true" "--set" "mapi_port=39339" "--set" "mapi_usock=/var/tmp/mtest-17284/.s.monetdb.39339" "--set" "monet_prompt=" "--forcemito" "--set" "mal_listing=2" "--dbpath=/home/niels/scratch/monetdb/Linux-x86_64/var/MonetDB/mTests_sql_test_mergetables" "--set" "mal_listing=0" "--set" "embedded_r=yes" +# 18:57:51 > + +# builtin opt gdk_dbpath = /home/niels/scratch/monetdb/Linux-x86_64/var/monetdb5/dbfarm/demo +# builtin opt gdk_debug = 0 +# builtin opt gdk_vmtrim = no +# builtin opt monet_prompt = > +# builtin opt monet_daemon = no +# builtin opt mapi_port = 50000 +# builtin opt mapi_open = false +# builtin opt mapi_autosense = false +# builtin opt sql_optimizer = default_pipe +# builtin opt sql_debug = 0 +# cmdline opt gdk_nr_threads = 0 +# cmdline opt mapi_open = true +# cmdline opt mapi_port = 39339 +# cmdline opt mapi_usock = /var/tmp/mtest-17284/.s.monetdb.39339 +# cmdline opt monet_prompt = +# cmdline opt mal_listing = 2 +# cmdline opt gdk_dbpath = /home/niels/scratch/monetdb/Linux-x86_64/var/MonetDB/mTests_sql_test_mergetables +# cmdline opt mal_listing = 0 +# cmdline opt embedded_r = yes +# cmdline opt gdk_debug = 536870922 + +# 18:57:51 > +# 18:57:51 > "mclient" "-lsql" "-ftest" "-Eutf-8" "-i" "-e" "--host=/var/tmp/mtest-17284" "--port=39339" +# 18:57:51 > + + +# 18:57:52 > +# 18:57:52 > "Done." +# 18:57:52 > + diff --git a/sql/test/mergetables/Tests/mergeloadidx.stable.out b/sql/test/mergetables/Tests/mergeloadidx.stable.out new file mode 100644 --- /dev/null +++ b/sql/test/mergetables/Tests/mergeloadidx.stable.out @@ -0,0 +1,65 @@ +stdout of test 'mergeloadidx` in directory 'sql/test/mergetables` itself: + + +# 18:57:51 > _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list