Changeset: 548bf027aa5f for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=548bf027aa5f
Added Files:
        sql/test/BugTracker-2019/Tests/insert-into-select.Bug-6718.sql
        sql/test/BugTracker-2019/Tests/insert-into-select.Bug-6718.stable.err
        sql/test/BugTracker-2019/Tests/insert-into-select.Bug-6718.stable.out
Modified Files:
        monetdb5/mal/mal_import.c
        sql/test/BugTracker-2019/Tests/All
Branch: default
Log Message:

Merge with Apr2019 branch.


diffs (255 lines):

diff --git a/monetdb5/mal/mal_import.c b/monetdb5/mal/mal_import.c
--- a/monetdb5/mal/mal_import.c
+++ b/monetdb5/mal/mal_import.c
@@ -267,7 +267,7 @@ evalFile(str fname, int listing)
                if (fd)
                        close_stream(fd);
                throw(MAL,"mal.eval", "WARNING: could not open file '%s'\n", 
fname);
-       } 
+       }
 
        c= MCinitClient((oid)0, bstream_create(fd, 128 * BLOCK),0);
        if( c == NULL){
diff --git a/sql/test/BugTracker-2019/Tests/All 
b/sql/test/BugTracker-2019/Tests/All
--- a/sql/test/BugTracker-2019/Tests/All
+++ b/sql/test/BugTracker-2019/Tests/All
@@ -15,3 +15,4 @@ prepared-merge-statement.Bug-6706
 view-where-cast-error.Bug-6712
 correlated-subquery-aggregation.Bug-6714
 merge-statement-aliases.Bug-6715
+insert-into-select.Bug-6718
diff --git a/sql/test/BugTracker-2019/Tests/insert-into-select.Bug-6718.sql 
b/sql/test/BugTracker-2019/Tests/insert-into-select.Bug-6718.sql
new file mode 100644
--- /dev/null
+++ b/sql/test/BugTracker-2019/Tests/insert-into-select.Bug-6718.sql
@@ -0,0 +1,58 @@
+CREATE TABLE test2 (
+order_number SERIAL,
+order_id INTEGER NOT NULL,
+qnt INTEGER NOT NULL
+);
+
+\d test2
+
+COPY 5 RECORDS INTO test2 FROM stdin USING DELIMITERS '|','\n';
+1|32|57
+2|15|105
+3|33|0
+4|57|20
+5|67|134
+;
+
+SELECT * FROM test2;
+
+
+CREATE TABLE test1 (
+id INTEGER NOT NULL,
+qnt INTEGER,
+order_number INTEGER NOT NULL,
+CONSTRAINT pk_test1_id PRIMARY KEY ("id", "qnt"),
+CONSTRAINT pk_order_number FOREIGN KEY ("order_number") REFERENCES 
+test2("order_number")
+);
+
+\d test1
+
+SELECT test2.order_id, 
+test2.qnt, test2.order_number from test2;
+
+INSERT INTO test1 (id, qnt, order_number) SELECT test2.order_id, 
+test2.qnt, test2.order_number from test2;
+
+SELECT * FROM test1;
+
+
+CREATE TABLE test3 (id, qnt, order_number) AS SELECT test2.order_id, 
+test2.qnt, test2.order_number from test2;
+
+\d test3
+
+SELECT * FROM test3;
+
+ALTER TABLE test3 ALTER id SET NOT NULL;
+ALTER TABLE test3 ALTER order_number SET NOT NULL;
+ALTER TABLE test3 ADD CONSTRAINT pk_test3_id PRIMARY KEY ("id", "qnt");
+ALTER TABLE test3 ADD CONSTRAINT fk_order_number FOREIGN KEY ("order_number") 
REFERENCES 
+test2("order_number");
+
+\d test3
+
+DROP TABLE test3;
+DROP TABLE test1;
+DROP TABLE test2;
+
diff --git 
a/sql/test/BugTracker-2019/Tests/insert-into-select.Bug-6718.stable.err 
b/sql/test/BugTracker-2019/Tests/insert-into-select.Bug-6718.stable.err
new file mode 100644
--- /dev/null
+++ b/sql/test/BugTracker-2019/Tests/insert-into-select.Bug-6718.stable.err
@@ -0,0 +1,32 @@
+stderr of test 'insert-into-select.Bug-6718` in directory 
'sql/test/BugTracker-2019` itself:
+
+
+# 12:34:40 >  
+# 12:34:40 >  "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" 
"mapi_open=true" "--set" "mapi_port=35973" "--set" 
"mapi_usock=/var/tmp/mtest-18256/.s.monetdb.35973" "--set" "monet_prompt=" 
"--forcemito" 
"--dbpath=/export/scratch1/dinther/INSTALL/var/MonetDB/mTests_sql_test_BugTracker-2019"
 "--set" "embedded_c=true"
+# 12:34:40 >  
+
+# builtin opt  gdk_dbpath = 
/export/scratch1/dinther/INSTALL/var/monetdb5/dbfarm/demo
+# 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 = 35973
+# cmdline opt  mapi_usock = /var/tmp/mtest-18256/.s.monetdb.35973
+# cmdline opt  monet_prompt = 
+# cmdline opt  gdk_dbpath = 
/export/scratch1/dinther/INSTALL/var/MonetDB/mTests_sql_test_BugTracker-2019
+# cmdline opt  embedded_c = true
+
+# 12:34:40 >  
+# 12:34:40 >  "mclient" "-lsql" "-ftest" "-tnone" "-Eutf-8" "-i" "-e" 
"--host=/var/tmp/mtest-18256" "--port=35973"
+# 12:34:40 >  
+
+
+# 12:34:41 >  
+# 12:34:41 >  "Done."
+# 12:34:41 >  
+
diff --git 
a/sql/test/BugTracker-2019/Tests/insert-into-select.Bug-6718.stable.out 
b/sql/test/BugTracker-2019/Tests/insert-into-select.Bug-6718.stable.out
new file mode 100644
--- /dev/null
+++ b/sql/test/BugTracker-2019/Tests/insert-into-select.Bug-6718.stable.out
@@ -0,0 +1,130 @@
+stdout of test 'insert-into-select.Bug-6718` in directory 
'sql/test/BugTracker-2019` itself:
+
+
+# 12:34:40 >  
+# 12:34:40 >  "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" 
"mapi_open=true" "--set" "mapi_port=35973" "--set" 
"mapi_usock=/var/tmp/mtest-18256/.s.monetdb.35973" "--set" "monet_prompt=" 
"--forcemito" 
"--dbpath=/export/scratch1/dinther/INSTALL/var/MonetDB/mTests_sql_test_BugTracker-2019"
 "--set" "embedded_c=true"
+# 12:34:40 >  
+
+# MonetDB 5 server v11.33.4 (hg id: f1eb242b35e9+)
+# This is an unreleased version
+# Serving database 'mTests_sql_test_BugTracker-2019', using 4 threads
+# Compiled for x86_64-unknown-linux-gnu/64bit with 128bit integers
+# Found 31.305 GiB available main-memory.
+# Copyright (c) 1993 - July 2008 CWI.
+# Copyright (c) August 2008 - 2019 MonetDB B.V., all rights reserved
+# Visit https://www.monetdb.org/ for further information
+# Listening for connection requests on mapi:monetdb://catskill.da.cwi.nl:35973/
+# Listening for UNIX domain connection requests on 
mapi:monetdb:///var/tmp/mtest-18256/.s.monetdb.35973
+# MonetDB/GIS module loaded
+# MonetDB/SQL module loaded
+
+Ready.
+
+# 12:34:40 >  
+# 12:34:40 >  "mclient" "-lsql" "-ftest" "-tnone" "-Eutf-8" "-i" "-e" 
"--host=/var/tmp/mtest-18256" "--port=35973"
+# 12:34:40 >  
+
+#CREATE TABLE test2 (
+#order_number SERIAL,
+#order_id INTEGER NOT NULL,
+#qnt INTEGER NOT NULL
+#);
+CREATE TABLE "sys"."test2" (
+       "order_number" INTEGER       NOT NULL DEFAULT next value for 
"sys"."seq_8973",
+       "order_id"     INTEGER       NOT NULL,
+       "qnt"          INTEGER       NOT NULL,
+       CONSTRAINT "test2_order_number_pkey" PRIMARY KEY ("order_number")
+);
+#COPY 5 RECORDS INTO test2 FROM stdin USING DELIMITERS '|','\n';
+#1|32|57
+#2|15|105
+#3|33|0
+#4|57|20
+#5|67|134
+[ 5    ]
+#SELECT * FROM test2;
+% sys.test2,   sys.test2,      sys.test2 # table_name
+% order_number,        order_id,       qnt # name
+% int, int,    int # type
+% 1,   2,      3 # length
+[ 1,   32,     57      ]
+[ 2,   15,     105     ]
+[ 3,   33,     0       ]
+[ 4,   57,     20      ]
+[ 5,   67,     134     ]
+#CREATE TABLE test1 (
+#id INTEGER NOT NULL,
+#qnt INTEGER,
+#order_number INTEGER NOT NULL,
+#CONSTRAINT pk_test1_id PRIMARY KEY ("id", "qnt"),
+#CONSTRAINT pk_order_number FOREIGN KEY ("order_number") REFERENCES 
+#test2("order_number")
+#);
+CREATE TABLE "sys"."test1" (
+       "id"           INTEGER       NOT NULL,
+       "qnt"          INTEGER       NOT NULL,
+       "order_number" INTEGER       NOT NULL,
+       CONSTRAINT "pk_test1_id" PRIMARY KEY ("id", "qnt"),
+       CONSTRAINT "pk_order_number" FOREIGN KEY ("order_number") REFERENCES 
"sys"."test2" ("order_number")
+);
+#SELECT test2.order_id, 
+#test2.qnt, test2.order_number from test2;
+% sys.test2,   sys.test2,      sys.test2 # table_name
+% order_id,    qnt,    order_number # name
+% int, int,    int # type
+% 2,   3,      1 # length
+[ 32,  57,     1       ]
+[ 15,  105,    2       ]
+[ 33,  0,      3       ]
+[ 57,  20,     4       ]
+[ 67,  134,    5       ]
+#INSERT INTO test1 (id, qnt, order_number) SELECT test2.order_id, 
+#test2.qnt, test2.order_number from test2;
+[ 5    ]
+#SELECT * FROM test1;
+% sys.test1,   sys.test1,      sys.test1 # table_name
+% id,  qnt,    order_number # name
+% int, int,    int # type
+% 2,   3,      1 # length
+[ 32,  57,     1       ]
+[ 15,  105,    2       ]
+[ 33,  0,      3       ]
+[ 57,  20,     4       ]
+[ 67,  134,    5       ]
+#CREATE TABLE test3 (id, qnt, order_number) AS SELECT test2.order_id, 
+#test2.qnt, test2.order_number from test2;
+CREATE TABLE "sys"."test3" (
+       "id"           INTEGER,
+       "qnt"          INTEGER,
+       "order_number" INTEGER
+);
+#SELECT * FROM test3;
+% sys.test3,   sys.test3,      sys.test3 # table_name
+% id,  qnt,    order_number # name
+% int, int,    int # type
+% 2,   3,      1 # length
+[ 32,  57,     1       ]
+[ 15,  105,    2       ]
+[ 33,  0,      3       ]
+[ 57,  20,     4       ]
+[ 67,  134,    5       ]
+#ALTER TABLE test3 ALTER id SET NOT NULL;
+#ALTER TABLE test3 ALTER order_number SET NOT NULL;
+#ALTER TABLE test3 ADD CONSTRAINT pk_test3_id PRIMARY KEY ("id", "qnt");
+#ALTER TABLE test3 ADD CONSTRAINT fk_order_number FOREIGN KEY ("order_number") 
REFERENCES 
+#test2("order_number");
+CREATE TABLE "sys"."test3" (
+       "id"           INTEGER       NOT NULL,
+       "qnt"          INTEGER       NOT NULL,
+       "order_number" INTEGER       NOT NULL,
+       CONSTRAINT "pk_test3_id" PRIMARY KEY ("id", "qnt"),
+       CONSTRAINT "fk_order_number" FOREIGN KEY ("order_number") REFERENCES 
"sys"."test2" ("order_number")
+);
+#DROP TABLE test3;
+#DROP TABLE test1;
+#DROP TABLE test2;
+
+# 12:34:41 >  
+# 12:34:41 >  "Done."
+# 12:34:41 >  
+
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to