Changeset: e73e34b82dbb for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=e73e34b82dbb
Added Files:
        sql/test/testdb-upgrade-chain/Tests/All
        sql/test/testdb-upgrade-chain/Tests/dump.SQL.py
        sql/test/testdb-upgrade-chain/Tests/dump.reqtests
        sql/test/testdb-upgrade-chain/Tests/dump.stable.err
        sql/test/testdb-upgrade-chain/Tests/dump.stable.out
        sql/test/testdb-upgrade-chain/Tests/dump.stable.out.Windows
        sql/test/testdb-upgrade-chain/Tests/dump.timeout
        sql/test/testdb-upgrade-chain/Tests/package.py
        sql/test/testdb-upgrade-chain/Tests/package.reqtests
        sql/test/testdb-upgrade-chain/Tests/package.stable.err
        sql/test/testdb-upgrade-chain/Tests/package.stable.out
        sql/test/testdb-upgrade-chain/Tests/unpackage.py
        sql/test/testdb-upgrade-chain/Tests/unpackage.stable.err
        sql/test/testdb-upgrade-chain/Tests/unpackage.stable.out
        sql/test/testdb-upgrade-chain/Tests/upgrade.SQL.py
        sql/test/testdb-upgrade-chain/Tests/upgrade.reqtests
        sql/test/testdb-upgrade-chain/Tests/upgrade.stable.err
        sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out
        sql/test/testdb-upgrade/Tests/All
        sql/test/testdb-upgrade/Tests/dump.SQL.py
        sql/test/testdb-upgrade/Tests/dump.reqtests
        sql/test/testdb-upgrade/Tests/dump.stable.err
        sql/test/testdb-upgrade/Tests/dump.stable.out
        sql/test/testdb-upgrade/Tests/dump.stable.out.Windows
        sql/test/testdb-upgrade/Tests/dump.timeout
        sql/test/testdb-upgrade/Tests/unpackage.py
        sql/test/testdb-upgrade/Tests/unpackage.stable.err
        sql/test/testdb-upgrade/Tests/unpackage.stable.out
        sql/test/testdb-upgrade/Tests/upgrade.SQL.py
        sql/test/testdb-upgrade/Tests/upgrade.reqtests
        sql/test/testdb-upgrade/Tests/upgrade.stable.err
        sql/test/testdb-upgrade/Tests/upgrade.stable.out
        sql/test/testdb/Tests/testdb-package.py
        sql/test/testdb/Tests/testdb-package.reqtests
        sql/test/testdb/Tests/testdb-package.stable.err
        sql/test/testdb/Tests/testdb-package.stable.out
Modified Files:
        java/ChangeLog.Jul2012
        java/src/nl/cwi/monetdb/jdbc/MonetConnection.java
        java/src/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
        monetdb5/extras/jaql/json.c
        sql/test/testdb/Tests/All
        testing/Mtest.py.in
Branch: Oct2012
Log Message:

Merge with Jul2012 branch.


diffs (truncated from 405906 to 300 lines):

diff --git a/java/ChangeLog.Jul2012 b/java/ChangeLog.Jul2012
--- a/java/ChangeLog.Jul2012
+++ b/java/ChangeLog.Jul2012
@@ -1,3 +1,7 @@
 # ChangeLog file for java
 # This file is updated with Maddlog
 
+* Tue Aug 14 2012 Fabian Groffen <fab...@cwi.nl>
+- Fixed a bug where DatabaseMetaData.getURL() did return null:0 for
+  hostname:port.
+
diff --git a/java/src/nl/cwi/monetdb/jdbc/MonetConnection.java 
b/java/src/nl/cwi/monetdb/jdbc/MonetConnection.java
--- a/java/src/nl/cwi/monetdb/jdbc/MonetConnection.java
+++ b/java/src/nl/cwi/monetdb/jdbc/MonetConnection.java
@@ -1249,10 +1249,7 @@ public class MonetConnection extends Mon
         * @return a String representing this Object
         */
        public String toString() {
-               String language = "";
-               if (lang == LANG_MAL) language = "?language=mal";
-               return "MonetDB Connection (jdbc:monetdb://" + hostname +
-                               ":" + port + "/" + database + language + ") " + 
+               return "MonetDB Connection (" + getJDBCURL() + ") " + 
                                (closed ? "connected" : "disconnected");
        }
 
@@ -1379,6 +1376,14 @@ public class MonetConnection extends Mon
 
        //== end methods of interface Connection
 
+       public String getJDBCURL() {
+               String language = "";
+               if (lang == LANG_MAL)
+                       language = "?language=mal";
+               return "jdbc:monetdb://" + hostname + ":" + port + "/" +
+                       database + language;
+       }
+
        /**
         * Returns whether the BLOB type should be mapped to BINARY type.
         */
diff --git a/java/src/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java 
b/java/src/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
--- a/java/src/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
+++ b/java/src/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
@@ -54,8 +54,6 @@ public class MonetDatabaseMetaData exten
         * value is read, it is kept in a Map for reuse.
         */
        private synchronized String getEnv(String key) {
-               
-
                // if due to concurrency on this Class envs is assigned twice, I
                // just don't care here
                Map<String,String> menvs = envs.get(con);
@@ -132,9 +130,7 @@ public class MonetDatabaseMetaData exten
         * @throws SQLException if a database access error occurs
         */
        public String getURL() throws SQLException {
-               return "jdbc:monetdb://" + getEnv("host") +
-                       ":" + getEnv("mapi_port") + "/" +
-                       getEnv("gdk_dbname");
+               return ((MonetConnection)con).getJDBCURL();
        }
 
        /**
diff --git a/monetdb5/extras/jaql/json.c b/monetdb5/extras/jaql/json.c
--- a/monetdb5/extras/jaql/json.c
+++ b/monetdb5/extras/jaql/json.c
@@ -109,11 +109,16 @@ read_from_stream(jsonbat *jb, char **pos
 
        shift = *pos - jb->streambuf;
        if (*pos == jb->streambuf + jb->streambuflen) {
+               size_t rshift = *recall - jb->streambuf;
                char *newbuf = realloc(jb->streambuf, jb->streambuflen += 8096);
                if (newbuf == NULL)
                        return 0;
                jb->streambuf = newbuf;
                *pos = jb->streambuf + shift;
+               if (pos != start)
+                       *start = jb->streambuf;
+               if (recall != NULL)
+                       *recall = jb->streambuf + rshift;
        }
 
        sret = mnstr_read(jb->is, *pos, 1, jb->streambuflen - shift - 1);
diff --git a/sql/test/testdb-upgrade-chain/Tests/All 
b/sql/test/testdb-upgrade-chain/Tests/All
new file mode 100644
--- /dev/null
+++ b/sql/test/testdb-upgrade-chain/Tests/All
@@ -0,0 +1,4 @@
+PREVCHAINREL?unpackage
+PREVCHAINREL?upgrade
+PREVCHAINREL&RELEASERUN?package
+PREVCHAINREL?dump
diff --git a/sql/test/testdb-upgrade-chain/Tests/dump.SQL.py 
b/sql/test/testdb-upgrade-chain/Tests/dump.SQL.py
new file mode 100644
--- /dev/null
+++ b/sql/test/testdb-upgrade-chain/Tests/dump.SQL.py
@@ -0,0 +1,10 @@
+import sys
+try:
+    from MonetDBtesting import process
+except ImportError:
+    import process
+
+p = process.client('sqldump', stdout = process.PIPE, stderr = process.PIPE)
+out, err = p.communicate()
+sys.stdout.write(out)
+sys.stderr.write(err)
diff --git a/sql/test/testdb-upgrade-chain/Tests/dump.reqtests 
b/sql/test/testdb-upgrade-chain/Tests/dump.reqtests
new file mode 100644
--- /dev/null
+++ b/sql/test/testdb-upgrade-chain/Tests/dump.reqtests
@@ -0,0 +1,1 @@
+upgrade
diff --git a/sql/test/testdb-upgrade-chain/Tests/dump.stable.err 
b/sql/test/testdb-upgrade-chain/Tests/dump.stable.err
new file mode 100644
--- /dev/null
+++ b/sql/test/testdb-upgrade-chain/Tests/dump.stable.err
@@ -0,0 +1,37 @@
+stderr of test 'dump` in directory 'test/testdb-upgrade-chain` itself:
+
+
+# 15:37:18 >  
+# 15:37:18 >  "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" 
"gdk_dbfarm=/ufs/sjoerd/Monet-stable/var/MonetDB" "--set" "mapi_open=true" 
"--set" "mapi_port=31490" "--set" "monet_prompt=" "--trace" "--forcemito" 
"--set" "mal_listing=2" "--dbname=mTests_test_testdb-upgrade-chain" "--set" 
"mal_listing=0"
+# 15:37:18 >  
+
+# builtin opt  gdk_dbname = demo
+# builtin opt  gdk_dbfarm = /ufs/sjoerd/Monet-stable/var/monetdb5/dbfarm
+# builtin opt  gdk_debug = 0
+# builtin opt  gdk_alloc_map = no
+# builtin opt  gdk_vmtrim = yes
+# 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  gdk_dbfarm = /ufs/sjoerd/Monet-stable/var/MonetDB
+# cmdline opt  mapi_open = true
+# cmdline opt  mapi_port = 31490
+# cmdline opt  monet_prompt = 
+# cmdline opt  mal_listing = 2
+# cmdline opt  gdk_dbname = mTests_test_testdb-upgrade-chain
+# cmdline opt  mal_listing = 0
+
+# 15:37:18 >  
+# 15:37:18 >  "/usr/bin/python" "dump.SQL.py" "dump"
+# 15:37:18 >  
+
+
+# 15:39:24 >  
+# 15:39:24 >  "Done."
+# 15:39:24 >  
+
diff --git a/sql/test/testdb-upgrade-chain/Tests/dump.stable.out 
b/sql/test/testdb-upgrade-chain/Tests/dump.stable.out
new file mode 100644
--- /dev/null
+++ b/sql/test/testdb-upgrade-chain/Tests/dump.stable.out
@@ -0,0 +1,101266 @@
+stdout of test 'dump` in directory 'test/testdb-upgrade-chain` itself:
+
+
+# 15:37:18 >  
+# 15:37:18 >  "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" 
"gdk_dbfarm=/ufs/sjoerd/Monet-stable/var/MonetDB" "--set" "mapi_open=true" 
"--set" "mapi_port=31490" "--set" "monet_prompt=" "--trace" "--forcemito" 
"--set" "mal_listing=2" "--dbname=mTests_test_testdb-upgrade-chain" "--set" 
"mal_listing=0"
+# 15:37:18 >  
+
+# MonetDB 5 server v11.11.8 (hg id: 34fcf4e7226d+)
+# This is an unreleased version
+# Serving database 'mTests_test_testdb-upgrade-chain', using 8 threads
+# Compiled for x86_64-unknown-linux-gnu/64bit with 64bit OIDs dynamically 
linked
+# Found 15.629 GiB available main-memory.
+# Copyright (c) 1993-July 2008 CWI.
+# Copyright (c) August 2008-2012 MonetDB B.V., all rights reserved
+# Visit http://www.monetdb.org/ for further information
+# Listening for connection requests on mapi:monetdb://madrid.ins.cwi.nl:31490/
+# MonetDB/GIS module loaded
+# MonetDB/JAQL module loaded
+# MonetDB/SQL module loaded
+
+Ready.
+
+# 15:37:18 >  
+# 15:37:18 >  "/usr/bin/python" "dump.SQL.py" "dump"
+# 15:37:18 >  
+
+START TRANSACTION;
+CREATE USER "testuser" WITH ENCRYPTED PASSWORD 
'e9e633097ab9ceb3e48ec3f70ee2beba41d05d5420efee5da85f97d97005727587fda33ef4ff2322088f4c79e8133cc9cd9f3512f4d3a303cbdb5bc585415a00'
 NAME 'Test User' SCHEMA "sys";
+CREATE SCHEMA "testschema" AUTHORIZATION "testuser";
+ALTER USER "testuser" SET SCHEMA "testschema";
+CREATE SEQUENCE "testschema"."selfref_seq" AS INTEGER;
+CREATE SEQUENCE "testschema"."test_seq" AS INTEGER;
+SET SCHEMA "testschema";
+CREATE TABLE "testschema"."smallstring" (
+       "string1" VARCHAR(5),
+       "string2" CHAR(5),
+       "string3" CHARACTER LARGE OBJECT
+);
+COPY 66 RECORDS INTO "testschema"."smallstring" FROM stdin USING DELIMITERS 
'\t','\n','"';
+"a0"   "b0"    "c0"
+"a1"   "b1"    "c1"
+"a2"   "b2"    "c2"
+"a3"   "b3"    "c3"
+"a4"   "b4"    "c4"
+"a5"   "b5"    "c5"
+"a6"   "b6"    "c6"
+"a7"   "b7"    "c7"
+"a8"   "b8"    "c8"
+"a9"   "b9"    "c9"
+"a10"  "b10"   "c10"
+"a0"   "b0"    "c0"
+"a1"   "b1"    "c1"
+"a2"   "b2"    "c2"
+"a3"   "b3"    "c3"
+"a4"   "b4"    "c4"
+"a5"   "b5"    "c5"
+"a6"   "b6"    "c6"
+"a7"   "b7"    "c7"
+"a8"   "b8"    "c8"
+"a9"   "b9"    "c9"
+"a10"  "b10"   "c10"
+"a0"   "b0"    "c0"
+"a1"   "b1"    "c1"
+"a2"   "b2"    "c2"
+"a3"   "b3"    "c3"
+"a4"   "b4"    "c4"
+"a5"   "b5"    "c5"
+"a6"   "b6"    "c6"
+"a7"   "b7"    "c7"
+"a8"   "b8"    "c8"
+"a9"   "b9"    "c9"
+"a10"  "b10"   "c10"
+"a0"   "b0"    "c0"
+"a1"   "b1"    "c1"
+"a2"   "b2"    "c2"
+"a3"   "b3"    "c3"
+"a4"   "b4"    "c4"
+"a5"   "b5"    "c5"
+"a6"   "b6"    "c6"
+"a7"   "b7"    "c7"
+"a8"   "b8"    "c8"
+"a9"   "b9"    "c9"
+"a10"  "b10"   "c10"
+"a0"   "b0"    "c0"
+"a1"   "b1"    "c1"
+"a2"   "b2"    "c2"
+"a3"   "b3"    "c3"
+"a4"   "b4"    "c4"
+"a5"   "b5"    "c5"
+"a6"   "b6"    "c6"
+"a7"   "b7"    "c7"
+"a8"   "b8"    "c8"
+"a9"   "b9"    "c9"
+"a10"  "b10"   "c10"
+"a0"   "b0"    "c0"
+"a1"   "b1"    "c1"
+"a2"   "b2"    "c2"
+"a3"   "b3"    "c3"
+"a4"   "b4"    "c4"
+"a5"   "b5"    "c5"
+"a6"   "b6"    "c6"
+"a7"   "b7"    "c7"
+"a8"   "b8"    "c8"
+"a9"   "b9"    "c9"
+"a10"  "b10"   "c10"
+CREATE TABLE "testschema"."mediumstring" (
+       "string1" VARCHAR(20),
+       "string2" CHAR(20),
+       "string3" CHARACTER LARGE OBJECT
+);
+COPY 1001 RECORDS INTO "testschema"."mediumstring" FROM stdin USING DELIMITERS 
'\t','\n','"';
+"a222833216428103"     "b222833216428103"      "c222833216428103"
+"a22462275706708"      "b22462275706708"       "c22462275706708"
+"a207961069219280"     "b207961069219280"      "c207961069219280"
+"a1430667456508"       "b1430667456508"        "c1430667456508"
+"a143912596726204"     "b143912596726204"      "c143912596726204"
+"a35882931026608"      "b35882931026608"       "c35882931026608"
+"a12630311241498"      "b12630311241498"       "c12630311241498"
+"a1147528919691"       "b1147528919691"        "c1147528919691"
+"a2463126399106"       "b2463126399106"        "c2463126399106"
+"a26499139713669"      "b26499139713669"       "c26499139713669"
+"a1248634873065"       "b1248634873065"        "c1248634873065"
+"a78212594930635"      "b78212594930635"       "c78212594930635"
+"a14529139788559"      "b14529139788559"       "c14529139788559"
+"a10412828415305"      "b10412828415305"       "c10412828415305"
+"a754999078504"        "b754999078504" "c754999078504"
+"a985134955047"        "b985134955047" "c985134955047"
+"a27593261253403"      "b27593261253403"       "c27593261253403"
+"a29091483332322"      "b29091483332322"       "c29091483332322"
+"a29783294642194"      "b29783294642194"       "c29783294642194"
+"a61212319516165"      "b61212319516165"       "c61212319516165"
+"a9790291319652"       "b9790291319652"        "c9790291319652"
+"a128551073512834"     "b128551073512834"      "c128551073512834"
+"a107222526426812"     "b107222526426812"      "c107222526426812"
+"a192822630622328"     "b192822630622328"      "c192822630622328"
+"a1819108732235"       "b1819108732235"        "c1819108732235"
+"a10323207312962"      "b10323207312962"       "c10323207312962"
+"a15370296666320"      "b15370296666320"       "c15370296666320"
+"a187742599011153"     "b187742599011153"      "c187742599011153"
_______________________________________________
Checkin-list mailing list
Checkin-list@monetdb.org
http://mail.monetdb.org/mailman/listinfo/checkin-list

Reply via email to