Changeset: 84d6976104eb for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=84d6976104eb
Added Files:
        sql/test/BugTracker-2009/Tests/SingleServer
        sql/test/BugTracker-2009/Tests/create_on_ro_db_crash.SF-2830238.SQL.py
        sql/test/BugTracker-2009/Tests/lost_update.SF-2790020.SQL.py
        sql/test/BugTracker-2010/Tests/SingleServer
        sql/test/BugTracker-2010/Tests/new-readonly-db.Bug-2695.SQL.py
        sql/test/BugTracker-2020/Tests/functions-not-persist.Bug-6819.SQL.py
Removed Files:
        sql/test/BugTracker-2009/Tests/create_on_ro_db_crash.SF-2830238.py
        sql/test/BugTracker-2009/Tests/lost_update.SF-2790020.py
        sql/test/BugTracker-2010/Tests/new-readonly-db.Bug-2695.py
        sql/test/BugTracker-2020/Tests/functions-not-persist.Bug-6819.py
Branch: Nov2019
Log Message:

Added single server runs for BugTrackers 2009 and 2010


diffs (166 lines):

diff --git a/sql/test/BugTracker-2009/Tests/SingleServer 
b/sql/test/BugTracker-2009/Tests/SingleServer
new file mode 100644
diff --git a/sql/test/BugTracker-2009/Tests/create_on_ro_db_crash.SF-2830238.py 
b/sql/test/BugTracker-2009/Tests/create_on_ro_db_crash.SF-2830238.SQL.py
rename from sql/test/BugTracker-2009/Tests/create_on_ro_db_crash.SF-2830238.py
rename to sql/test/BugTracker-2009/Tests/create_on_ro_db_crash.SF-2830238.SQL.py
--- a/sql/test/BugTracker-2009/Tests/create_on_ro_db_crash.SF-2830238.py
+++ b/sql/test/BugTracker-2009/Tests/create_on_ro_db_crash.SF-2830238.SQL.py
@@ -1,15 +1,22 @@
-import sys
-import os
+import os, socket, sys, tempfile, shutil
 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()
+os.mkdir(os.path.join(farm_dir, 'db1'))
+myport = freeport()
+
 def client(input):
-    c = process.client('sql',
-                         stdin = process.PIPE,
-                         stdout = process.PIPE,
-                         stderr = process.PIPE)
+    c = process.client('sql', port = myport, dbname='db1', stdin = 
process.PIPE, stdout = process.PIPE, stderr = process.PIPE)
     out, err = c.communicate(input)
     sys.stdout.write(out)
     sys.stderr.write(err)
@@ -19,14 +26,19 @@ create table t2 (a int);
 '''
 
 def main():
-    s = process.server(args = ["--set", "gdk_readonly=yes"],
-                       stdin = process.PIPE,
-                       stdout = process.PIPE,
-                       stderr = process.PIPE)
+    s = process.server(mapiport=myport, dbname='db1', 
dbfarm=os.path.join(farm_dir, 'db1'), stdin = process.PIPE,
+                       stdout = process.PIPE, stderr = process.PIPE) # Start 
the server without readonly one time to initialize catalog
+    out, err = s.communicate()
+    sys.stdout.write(out)
+    sys.stderr.write(err)
+    s = process.server(args = ["--set", "gdk_readonly=yes"], mapiport=myport, 
dbname='db1', dbfarm=os.path.join(farm_dir, 'db1'), stdin = process.PIPE,
+                       stdout = process.PIPE, stderr = process.PIPE)
     client(script1)
     out, err = s.communicate()
     sys.stdout.write(out)
     sys.stderr.write(err)
 
+    shutil.rmtree(farm_dir)
+
 if __name__ == '__main__':
     main()
diff --git a/sql/test/BugTracker-2009/Tests/lost_update.SF-2790020.py 
b/sql/test/BugTracker-2009/Tests/lost_update.SF-2790020.SQL.py
rename from sql/test/BugTracker-2009/Tests/lost_update.SF-2790020.py
rename to sql/test/BugTracker-2009/Tests/lost_update.SF-2790020.SQL.py
--- a/sql/test/BugTracker-2009/Tests/lost_update.SF-2790020.py
+++ b/sql/test/BugTracker-2009/Tests/lost_update.SF-2790020.SQL.py
@@ -1,15 +1,23 @@
-import sys
-import os
-import time
+import os, socket, sys, tempfile, shutil, time
 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()
+os.mkdir(os.path.join(farm_dir, 'db1'))
+myport = freeport()
+
 def server():
-    return process.server(stdin = process.PIPE,
-                          stdout = process.PIPE,
-                          stderr = process.PIPE)
+    return process.server(mapiport=myport, dbname='db1', 
dbfarm=os.path.join(farm_dir, 'db1'), stdin = process.PIPE,
+                   stdout = process.PIPE, stderr = process.PIPE)
 
 def server_stop(s):
     out, err = s.communicate()
@@ -17,10 +25,7 @@ def server_stop(s):
     sys.stderr.write(err)
 
 def client(input):
-    c = process.client('sql',
-                       stdin = process.PIPE,
-                       stdout = process.PIPE,
-                       stderr = process.PIPE)
+    c = process.client('sql', port = myport, dbname='db1', stdin = 
process.PIPE, stdout = process.PIPE, stderr = process.PIPE)
     out, err = c.communicate(input)
     sys.stdout.write(out)
     sys.stderr.write(err)
@@ -73,5 +78,7 @@ def main():
     client(cleanup)
     server_stop(s)
 
+    shutil.rmtree(farm_dir)
+
 if __name__ == '__main__':
     main()
diff --git a/sql/test/BugTracker-2010/Tests/SingleServer 
b/sql/test/BugTracker-2010/Tests/SingleServer
new file mode 100644
diff --git a/sql/test/BugTracker-2010/Tests/new-readonly-db.Bug-2695.py 
b/sql/test/BugTracker-2010/Tests/new-readonly-db.Bug-2695.SQL.py
rename from sql/test/BugTracker-2010/Tests/new-readonly-db.Bug-2695.py
rename to sql/test/BugTracker-2010/Tests/new-readonly-db.Bug-2695.SQL.py
--- a/sql/test/BugTracker-2010/Tests/new-readonly-db.Bug-2695.py
+++ b/sql/test/BugTracker-2010/Tests/new-readonly-db.Bug-2695.SQL.py
@@ -1,24 +1,24 @@
-from __future__ import print_function
-
+import os, socket, sys, tempfile, shutil
 try:
     from MonetDBtesting import process
 except ImportError:
     import process
-import os
 
-dbfarm = os.getenv('GDK_DBFARM')
-tstdb = os.getenv('TSTDB')
-
-if not tstdb or not dbfarm:
-    print('No TSTDB or GDK_DBFARM in environment')
-    sys.exit(1)
+def freeport():
+    sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
+    sock.bind(('', 0))
+    port = sock.getsockname()[1]
+    sock.close()
+    return port
 
-dbname = tstdb + '-2695'
+farm_dir = tempfile.mkdtemp()
+os.mkdir(os.path.join(farm_dir, 'db1'))
+myport = freeport()
 
-# clean up before we start
-if os.path.exists(os.path.join(dbfarm, dbname)):
-    import shutil
-    shutil.rmtree(os.path.join(dbfarm, dbname))
+s = process.server(args = ['--readonly'], mapiport=myport, dbname='db1', 
dbfarm=os.path.join(farm_dir, 'db1'), stdin = process.PIPE,
+                   stdout = process.PIPE, stderr = process.PIPE)
+out, err = s.communicate()
+sys.stdout.write(out)
+sys.stderr.write(err)
 
-s = process.server(args = ['--readonly'], dbname = dbname)
-s.wait()
+shutil.rmtree(farm_dir)
diff --git a/sql/test/BugTracker-2020/Tests/functions-not-persist.Bug-6819.py 
b/sql/test/BugTracker-2020/Tests/functions-not-persist.Bug-6819.SQL.py
rename from sql/test/BugTracker-2020/Tests/functions-not-persist.Bug-6819.py
rename to sql/test/BugTracker-2020/Tests/functions-not-persist.Bug-6819.SQL.py
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to