Changeset: 1d9ee75506c2 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=1d9ee75506c2
Added Files:
sql/test/BugTracker-2019/Tests/remote-table-non-existent-column.Bug-6750.py
Modified Files:
sql/test/BugTracker-2019/Tests/All
Branch: Apr2019
Log Message:
Added test for bug 6750.
diffs (71 lines):
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
@@ -30,3 +30,4 @@ sequence-first-next-value.Bug-6743
sequences-defaults.Bug-6744
sequences-types.Bug-6745
alter_table_drop_column.Bug-6749
+remote-table-non-existent-column.Bug-6750
diff --git
a/sql/test/BugTracker-2019/Tests/remote-table-non-existent-column.Bug-6750.py
b/sql/test/BugTracker-2019/Tests/remote-table-non-existent-column.Bug-6750.py
new file mode 100644
--- /dev/null
+++
b/sql/test/BugTracker-2019/Tests/remote-table-non-existent-column.Bug-6750.py
@@ -0,0 +1,58 @@
+import os
+import socket
+import sys
+import tempfile
+import shutil
+import pymonetdb
+
+try:
+ from MonetDBtesting import process
+except ImportError:
+ import process
+
+
+def freeport():
+ sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
+ sock.bind(('', 0))
+ port = sock.getsockname()[1]
+ sock.close()
+ return port
+
+
+farm_dir = tempfile.mkdtemp()
+
+prt1 = freeport()
+prc1 = process.server(mapiport=prt1, dbname='node1',
dbfarm=os.path.join(farm_dir, 'node1'), stdin=process.PIPE,
stdout=process.PIPE, stderr=process.PIPE)
+conn1 = pymonetdb.connect(database='node1', port=prt1, autocommit=True)
+cur1 = conn1.cursor()
+cur1.execute("start transaction;")
+cur1.execute("create table tab1 (col1 clob);")
+cur1.execute("insert into tab1 values ('a');")
+cur1.execute("create table tab2 (col1 tinyint);")
+cur1.execute("insert into tab2 values (1);")
+cur1.execute("commit;")
+cur1.close()
+conn1.close()
+
+prt2 = freeport()
+prc2 = process.server(mapiport=prt2, dbname='node2',
dbfarm=os.path.join(farm_dir, 'node2'), stdin=process.PIPE,
stdout=process.PIPE, stderr=process.PIPE)
+conn2 = pymonetdb.connect(database='node2', port=prt2, autocommit=True)
+cur2 = conn2.cursor()
+cur2.execute("start transaction;")
+cur2.execute("create remote table tab1 (col1 clob, col2 int) on
'mapi:monetdb://localhost:"+str(prt1)+"/node1';")
+cur2.execute("create remote table tab2 (col1 double) on
'mapi:monetdb://localhost:"+str(prt1)+"/node1';")
+cur2.execute("select col2 from tab1;") # col2 doesn't exist
+cur2.execute("select col1 from tab2;") # col1 is not a floating point column
+cur2.execute("rollback;")
+cur2.close()
+conn2.close()
+
+out, err = prc1.communicate()
+sys.stdout.write(out)
+sys.stderr.write(err)
+
+out, err = prc2.communicate()
+sys.stdout.write(out)
+sys.stderr.write(err)
+
+shutil.rmtree(farm_dir)
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list