Changeset: c0d174a666d5 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=c0d174a666d5
Added Files:
monetdb5/optimizer/Tests/inline12.malC
monetdb5/optimizer/Tests/inline12.stable.err
monetdb5/optimizer/Tests/inline12.stable.out
sql/server/rel_partition.c
sql/server/rel_partition.h
sql/test/BugTracker-2016/Tests/DISTINCT_with_correlated_scalar_subquery_crashes_mserver.Bug-3920.sql
sql/test/BugTracker-2016/Tests/DISTINCT_with_correlated_scalar_subquery_crashes_mserver.Bug-3920.stable.err
sql/test/BugTracker-2016/Tests/DISTINCT_with_correlated_scalar_subquery_crashes_mserver.Bug-3920.stable.out
sql/test/BugTracker-2016/Tests/create_table_from_complex_query.Bug-3921.sql
sql/test/BugTracker-2016/Tests/create_table_from_complex_query.Bug-3921.stable.err
sql/test/BugTracker-2016/Tests/create_table_from_complex_query.Bug-3921.stable.out
sql/test/BugTracker-2016/Tests/projectionpath-prefix.Bug.sql
sql/test/BugTracker-2016/Tests/projectionpath-prefix.Bug.stable.err
sql/test/BugTracker-2016/Tests/projectionpath-prefix.Bug.stable.out
sql/test/BugTracker-2016/Tests/storagemodel.Bug-3923.sql
sql/test/BugTracker-2016/Tests/storagemodel.Bug-3923.stable.err
sql/test/BugTracker-2016/Tests/storagemodel.Bug-3923.stable.out
Modified Files:
clients/Tests/MAL-signatures.stable.out
clients/Tests/MAL-signatures.stable.out.int128
clients/Tests/SQL-dump.stable.out
clients/Tests/SQL-dump.stable.out.int128
clients/mapiclient/stethoscope.c
gdk/gdk_atoms.c
gdk/gdk_hash.h
gdk/gdk_project.c
geom/sql/Tests/conformance_load.stable.out
java/ChangeLog
java/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
java/src/main/java/nl/cwi/monetdb/jdbc/MonetStatement.java
monetdb5/ChangeLog
monetdb5/ChangeLog.Jul2015
monetdb5/mal/Tests/dynamicload.stable.err
monetdb5/mal/Tests/tst903.stable.out
monetdb5/mal/Tests/tst904.stable.out
monetdb5/mal/Tests/tst905.stable.out
monetdb5/mal/Tests/tst907.stable.out
monetdb5/mal/mal_builder.c
monetdb5/mal/mal_instruction.c
monetdb5/mal/mal_resolve.c
monetdb5/modules/atoms/uuid.c
monetdb5/modules/mal/Tests/manifold.stable.out
monetdb5/modules/mal/Tests/manifoldstr.stable.out
monetdb5/optimizer/Tests/All
monetdb5/optimizer/Tests/JPexample.stable.out
monetdb5/optimizer/Tests/Mexample.stable.out
monetdb5/optimizer/Tests/inline02.stable.out
monetdb5/optimizer/Tests/inline03.stable.out
monetdb5/optimizer/Tests/inline04.stable.out
monetdb5/optimizer/Tests/inline05.stable.out
monetdb5/optimizer/Tests/inline06.stable.out
monetdb5/optimizer/Tests/inline07.stable.out
monetdb5/optimizer/Tests/inline08.stable.out
monetdb5/optimizer/Tests/inline09.stable.out
monetdb5/optimizer/Tests/inline10.stable.out
monetdb5/optimizer/Tests/inlineCst.stable.out
monetdb5/optimizer/Tests/inlineFunction2.stable.out
monetdb5/optimizer/Tests/inlineIfthen.stable.out
monetdb5/optimizer/Tests/manifold2.stable.out
monetdb5/optimizer/Tests/manifold2.stable.out.single
monetdb5/optimizer/Tests/projectionchain.stable.out
monetdb5/optimizer/opt_deadcode.c
monetdb5/optimizer/opt_generator.c
monetdb5/optimizer/opt_inline.c
monetdb5/optimizer/opt_mitosis.c
monetdb5/optimizer/opt_multiplex.c
monetdb5/optimizer/opt_profiler.c
monetdb5/optimizer/opt_projectionpath.c
monetdb5/optimizer/opt_pushselect.c
monetdb5/optimizer/opt_remap.c
sql/backends/monet5/Tests/rapi12.stable.out
sql/backends/monet5/rel_bin.c
sql/backends/monet5/sql.c
sql/backends/monet5/sql.mal
sql/backends/monet5/sql_gencode.c
sql/backends/monet5/sql_optimizer.c
sql/backends/monet5/sql_statement.c
sql/backends/monet5/sql_statement.h
sql/backends/monet5/sql_upgrades.c
sql/backends/monet5/vaults/bam/Tests/query2.5.stable.out
sql/backends/monet5/vaults/bam/Tests/query2.5.stable.out.int128
sql/backends/monet5/vaults/bam/Tests/query2.6.stable.out
sql/benchmarks/ssbm/Tests/04-explain.stable.out
sql/benchmarks/ssbm/Tests/04-explain.stable.out.int128
sql/benchmarks/ssbm/Tests/05-explain.stable.out
sql/benchmarks/ssbm/Tests/05-explain.stable.out.int128
sql/benchmarks/ssbm/Tests/06-explain.stable.out
sql/benchmarks/ssbm/Tests/06-explain.stable.out.int128
sql/benchmarks/ssbm/Tests/07-explain.stable.out
sql/benchmarks/ssbm/Tests/07-explain.stable.out.int128
sql/benchmarks/ssbm/Tests/08-explain.stable.out
sql/benchmarks/ssbm/Tests/08-explain.stable.out.int128
sql/benchmarks/ssbm/Tests/09-explain.stable.out
sql/benchmarks/ssbm/Tests/09-explain.stable.out.int128
sql/benchmarks/ssbm/Tests/10-explain.stable.out
sql/benchmarks/ssbm/Tests/10-explain.stable.out.int128
sql/benchmarks/ssbm/Tests/11-explain.stable.out
sql/benchmarks/ssbm/Tests/11-explain.stable.out.int128
sql/benchmarks/ssbm/Tests/12-explain.stable.out
sql/benchmarks/ssbm/Tests/12-explain.stable.out.int128
sql/benchmarks/ssbm/Tests/13-explain.stable.out
sql/benchmarks/ssbm/Tests/13-explain.stable.out.int128
sql/benchmarks/tpch/Tests/02-explain.stable.out
sql/benchmarks/tpch/Tests/02-plan.stable.out
sql/benchmarks/tpch/Tests/03-explain.stable.out
sql/benchmarks/tpch/Tests/03-explain.stable.out.int128
sql/benchmarks/tpch/Tests/05-explain.stable.out
sql/benchmarks/tpch/Tests/05-explain.stable.out.32bit
sql/benchmarks/tpch/Tests/05-explain.stable.out.int128
sql/benchmarks/tpch/Tests/07-explain.stable.out
sql/benchmarks/tpch/Tests/07-explain.stable.out.int128
sql/benchmarks/tpch/Tests/08-explain.stable.out
sql/benchmarks/tpch/Tests/08-explain.stable.out.int128
sql/benchmarks/tpch/Tests/09-explain.stable.out
sql/benchmarks/tpch/Tests/09-explain.stable.out.int128
sql/benchmarks/tpch/Tests/10-explain.stable.out
sql/benchmarks/tpch/Tests/10-explain.stable.out.int128
sql/benchmarks/tpch/Tests/15-explain.stable.out
sql/benchmarks/tpch/Tests/15-explain.stable.out.int128
sql/benchmarks/tpch/Tests/16-explain.stable.out
sql/benchmarks/tpch/Tests/16-explain.stable.out.32bit
sql/benchmarks/tpch/Tests/17-explain.stable.out
sql/benchmarks/tpch/Tests/17-explain.stable.out.int128
sql/benchmarks/tpch/Tests/17-plan.stable.out
sql/benchmarks/tpch/Tests/17-plan.stable.out.int128
sql/benchmarks/tpch/Tests/18-explain.stable.out
sql/benchmarks/tpch/Tests/18-explain.stable.out.int128
sql/benchmarks/tpch/Tests/19-explain.stable.out
sql/benchmarks/tpch/Tests/19-explain.stable.out.int128
sql/benchmarks/tpch/Tests/20-explain.stable.out
sql/benchmarks/tpch/Tests/20-explain.stable.out.32bit
sql/benchmarks/tpch/Tests/20-explain.stable.out.int128
sql/benchmarks/tpch/Tests/20-plan.stable.out
sql/benchmarks/tpch/Tests/20-plan.stable.out.int128
sql/benchmarks/tpch/Tests/21-explain.stable.out
sql/benchmarks/tpch/Tests/21-explain.stable.out.32bit
sql/benchmarks/tpch/Tests/21-plan.stable.out
sql/benchmarks/tpch/Tests/22-explain.stable.out.int128
sql/benchmarks/tpch/fileleak/Tests/leaks.stable.out
sql/include/sql_relation.h
sql/jdbc/tests/Tests/All
sql/jdbc/tests/Tests/Test_Dobjects.stable.out
sql/scripts/75_storagemodel.sql
sql/server/Makefile.ag
sql/server/rel_exp.c
sql/server/rel_optimizer.c
sql/server/rel_rel.c
sql/server/rel_select.c
sql/test/BugTracker-2011/Tests/func_iter_vs_bulk.Bug-2826.stable.out
sql/test/BugTracker-2012/Tests/rewrite_like_into_likesubselect.Bug-3179.stable.out
sql/test/BugTracker-2013/Tests/correlated_select.Bug-3250.stable.out
sql/test/BugTracker-2014/Tests/nil_2dec_lng.Bug-3592.stable.out
sql/test/BugTracker-2015/Tests/ambiguous.Bug-3803.stable.out.int128
sql/test/BugTracker-2015/Tests/apply_merge_distinct.Bug-3760.stable.out
sql/test/BugTracker-2015/Tests/crash.Bug-3736.stable.out
sql/test/BugTracker-2015/Tests/div_zero.Bug-3742.stable.out
sql/test/BugTracker-2015/Tests/missed-error.Bug-3842.stable.out
sql/test/BugTracker-2015/Tests/msqldump-merge-and-remote-tables.Bug-3774.stable.out
sql/test/BugTracker-2015/Tests/msqldump_generates_incorrect_syntax_ON_UPDATE_null.Bug-3839.stable.out
sql/test/BugTracker-2015/Tests/reserved_keywords.Bug-3613.stable.out
sql/test/BugTracker-2015/Tests/sys_tracelog.Bug-3887.stable.out
sql/test/BugTracker-2016/Tests/All
sql/test/SQLite_regress/sqllogictest/Tests/select1.test.stable.out
sql/test/SQLite_regress/sqllogictest/Tests/select1.test.stable.out.int128
sql/test/SQLite_regress/sqllogictest/Tests/select2.test.stable.out
sql/test/SQLite_regress/sqllogictest/Tests/select2.test.stable.out.int128
sql/test/SQLite_regress/sqllogictest/Tests/select3.test.stable.out
sql/test/SQLite_regress/sqllogictest/Tests/select3.test.stable.out.int128
sql/test/Tests/systemfunctions.stable.out
sql/test/Tests/systemfunctions.stable.out.int128
sql/test/bugs/Tests/apply_with_union_assertion.stable.out
sql/test/leaks/Tests/check1.stable.out.int128
sql/test/leaks/Tests/check2.stable.out.int128
sql/test/leaks/Tests/check3.stable.out.int128
sql/test/leaks/Tests/check4.stable.out.int128
sql/test/leaks/Tests/check5.stable.out.int128
sql/test/mergetables/Tests/mergequery.stable.out
sql/test/pg_regress/Tests/int8.stable.out
sql/test/remote/Tests/partition_elim.stable.out
sql/test/testdb-upgrade-chain-hge/Tests/dump.stable.out
sql/test/testdb-upgrade-hge/Tests/dump.stable.out
testing/Mtest.py.in
Branch: mosaic
Log Message:
merge with default
diffs (truncated from 26569 to 300 lines):
diff --git a/clients/Tests/SQL-dump.stable.out
b/clients/Tests/SQL-dump.stable.out
--- a/clients/Tests/SQL-dump.stable.out
+++ b/clients/Tests/SQL-dump.stable.out
@@ -1008,6 +1008,60 @@ external name sql.sysmon_stop;
create function sys."storage"()
returns table ("schema" string, "table" string, "column" string, "type"
string, "mode" string, location string, "count" bigint, typewidth int,
columnsize bigint, heapsize bigint, hashes bigint, phash boolean, imprints
bigint, sorted boolean, compress boolean)
external name sql."storage";
+create function sys."storage"( sname string)
+returns table (
+ "schema" string,
+ "table" string,
+ "column" string,
+ "type" string,
+ "mode" string,
+ location string,
+ "count" bigint,
+ typewidth int,
+ columnsize bigint,
+ heapsize bigint,
+ hashes bigint,
+ phash boolean,
+ imprints bigint,
+ sorted boolean
+)
+external name sql."storage";
+create function sys."storage"( sname string, tname string)
+returns table (
+ "schema" string,
+ "table" string,
+ "column" string,
+ "type" string,
+ "mode" string,
+ location string,
+ "count" bigint,
+ typewidth int,
+ columnsize bigint,
+ heapsize bigint,
+ hashes bigint,
+ phash boolean,
+ imprints bigint,
+ sorted boolean
+)
+external name sql."storage";
+create function sys."storage"( sname string, tname string, cname string)
+returns table (
+ "schema" string,
+ "table" string,
+ "column" string,
+ "type" string,
+ "mode" string,
+ location string,
+ "count" bigint,
+ typewidth int,
+ columnsize bigint,
+ heapsize bigint,
+ hashes bigint,
+ phash boolean,
+ imprints bigint,
+ sorted boolean
+)
+external name sql."storage";
create function sys.storagemodel()
returns table (
"schema" string,
diff --git a/gdk/gdk_atoms.c b/gdk/gdk_atoms.c
--- a/gdk/gdk_atoms.c
+++ b/gdk/gdk_atoms.c
@@ -82,13 +82,13 @@ dblCmp(const dbl *l, const dbl *r)
static BUN
bteHash(const bte *v)
{
- return (BUN) *(const unsigned char *) v;
+ return (BUN) mix_bte(*(const unsigned char *) v);
}
static BUN
shtHash(const sht *v)
{
- return (BUN) *(const unsigned short *) v;
+ return (BUN) mix_sht(*(const unsigned short *) v);
}
static BUN
@@ -100,15 +100,14 @@ intHash(const int *v)
static BUN
lngHash(const lng *v)
{
- return (BUN) mix_int(((const unsigned int *) v)[0] ^ ((const unsigned
int *) v)[1]);
+ return (BUN) mix_lng(*(const ulng *) v);
}
#ifdef HAVE_HGE
static BUN
hgeHash(const hge *v)
{
- return (BUN) mix_int(((const unsigned int *) v)[0] ^ ((const unsigned
int *) v)[1] ^ \
- ((const unsigned int *) v)[2] ^ ((const unsigned
int *) v)[3]);
+ return (BUN) mix_hge(*(const uhge *) v);
}
#endif
diff --git a/gdk/gdk_hash.h b/gdk/gdk_hash.h
--- a/gdk/gdk_hash.h
+++ b/gdk/gdk_hash.h
@@ -128,13 +128,16 @@ gdk_export BUN HASHlist(Hash *h, BUN i);
} while (0)
#endif
-#define mix_bte(X) ((unsigned int) (X))
-#define mix_sht(X) ((unsigned int) (X))
-#define mix_int(X) (((X)>>7)^((X)>>13)^((X)>>21)^(X))
-#define mix_lng(X) mix_int((unsigned int) ((X) ^ ((X) >> 32)))
+#define mix_bte(X) ((unsigned int) (unsigned char) (X))
+#define mix_sht(X) ((unsigned int) (unsigned short) (X))
+#define mix_int(X) (((unsigned int) (X) >> 7) ^ \
+ ((unsigned int) (X) >> 13) ^ \
+ ((unsigned int) (X) >> 21) ^ \
+ (unsigned int) (X))
+#define mix_lng(X) mix_int((unsigned int) ((ulng) (X) ^ \
+ ((ulng) (X) >> 32)))
#ifdef HAVE_HGE
-#define mix_hge(X) mix_int((unsigned int) ((X) ^ ((X) >> 32) ^ \
- ((X) >> 64) ^ ((X) >> 96)))
+#define mix_hge(X) mix_lng((ulng) ((uhge) (X) ^ ((uhge) (X) >> 64)))
#endif
#define hash_loc(H,V) hash_any(H,V)
#define hash_var(H,V) hash_any(H,V)
diff --git a/gdk/gdk_project.c b/gdk/gdk_project.c
--- a/gdk/gdk_project.c
+++ b/gdk/gdk_project.c
@@ -525,14 +525,18 @@ BATprojectchain(BAT **bats)
/* only dense-tailed BATs before last: we can return a
* slice and manipulate offsets and head seqbase */
ALGODEBUG fprintf(stderr, "#BATprojectchain with %d BATs, size
"BUNFMT", type %s, using BATslice("BUNFMT","BUNFMT")\n", n, cnt, ATOMname(tpe),
off, off + cnt);
- bn = BATslice(b, off, off + cnt);
- if (bn == NULL) {
- GDKfree(ba);
- return NULL;
+ if (BATtdense(b)) {
+ bn = BATdense(hseq, tseq, cnt);
+ } else {
+ bn = BATslice(b, off, off + cnt);
+ if (bn == NULL) {
+ GDKfree(ba);
+ return NULL;
+ }
+ BATseqbase(bn, hseq);
+ if (bn->ttype == TYPE_void)
+ BATseqbase(BATmirror(bn), tseq);
}
- BATseqbase(bn, hseq);
- if (bn->ttype == TYPE_void)
- BATseqbase(BATmirror(bn), tseq);
GDKfree(ba);
return bn;
}
diff --git a/geom/sql/Tests/conformance_load.stable.out
b/geom/sql/Tests/conformance_load.stable.out
--- a/geom/sql/Tests/conformance_load.stable.out
+++ b/geom/sql/Tests/conformance_load.stable.out
@@ -20,30 +20,6 @@ stdout of test 'conformance_load` in dir
# MonetDB/SQL module loaded
Ready.
-#WARNING To speedup geom.Dimension a bulk operator implementation is needed
-#WARNING To speedup geom.AsText a bulk operator implementation is needed
-#WARNING To speedup geom.SRID a bulk operator implementation is needed
-#WARNING To speedup geom.IsEmpty a bulk operator implementation is needed
-#WARNING To speedup geom.IsSimple a bulk operator implementation is needed
-#WARNING To speedup geom.Length a bulk operator implementation is needed
-#WARNING To speedup geom.Area a bulk operator implementation is needed
-#WARNING To speedup geom.Length a bulk operator implementation is needed
-#WARNING To speedup geom.Area a bulk operator implementation is needed
-#WARNING To speedup geom.Equals a bulk operator implementation is needed
-#WARNING To speedup geom.Disjoint a bulk operator implementation is needed
-#WARNING To speedup geom.Touches a bulk operator implementation is needed
-#WARNING To speedup geom.Within a bulk operator implementation is needed
-#WARNING To speedup geom.Overlaps a bulk operator implementation is needed
-#WARNING To speedup geom.Contains a bulk operator implementation is needed
-#WARNING To speedup geom.Relate a bulk operator implementation is needed
-#WARNING To speedup geom.Intersection a bulk operator implementation is needed
-#WARNING To speedup geom.AsText a bulk operator implementation is needed
-#WARNING To speedup geom.Difference a bulk operator implementation is needed
-#WARNING To speedup geom.AsText a bulk operator implementation is needed
-#WARNING To speedup geom.SymDifference a bulk operator implementation is needed
-#WARNING To speedup geom.AsText a bulk operator implementation is needed
-#WARNING To speedup geom.ConvexHull a bulk operator implementation is needed
-#WARNING To speedup geom.AsText a bulk operator implementation is needed
# 14:27:16 >
# 14:27:16 > "mclient" "-lsql" "-ftest" "-Eutf-8" "-i" "-e"
"--host=/var/tmp/mtest-17423" "--port=30565"
diff --git a/java/ChangeLog b/java/ChangeLog
--- a/java/ChangeLog
+++ b/java/ChangeLog
@@ -1,10 +1,18 @@
# ChangeLog file for java
# This file is updated with Maddlog
+* Thu Feb 11 2016 Martin van Dinther <[email protected]>
+- Implemented methods getProcedures() and getProcedureColumns()
+ in DatabaseMetadata.java. They used to return an empty resultset.
+ Now they return the expected Procedures and ProcedureColumns.
+ Also getProcedureColumns() now returns a resultset with all 20 columns
+ instead of 13 columns previously.
+
* Thu Feb 4 2016 Martin van Dinther <[email protected]>
- Method getFunctionColumns() in DatabaseMetadata used to throw an
SQLException: getFunctionColumns(String, String, String, String) is
- not implemented This method is now implemented and returns a resultset.
+ not implemented.
+ This method is now implemented and returns a resultset.
* Thu Jan 28 2016 Martin van Dinther <[email protected]>
- Method getFunctions() in DatabaseMetadata used to throw an SQLException:
diff --git a/java/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
b/java/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
--- a/java/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
+++ b/java/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
@@ -203,7 +203,7 @@ public class MonetDatabaseMetaData exten
/**
* What is the version of this database product.
*
- * @return a fixed version number, yes it's quick and dirty
+ * @return the mserver5 version number string
* @throws SQLException if a database access error occurs
*/
@Override
@@ -214,8 +214,7 @@ public class MonetDatabaseMetaData exten
}
/**
- * What is the name of this JDBC driver? If we don't know this
- * we are doing something wrong!
+ * What is the name of this JDBC driver?
*
* @return the JDBC driver name
*/
@@ -228,7 +227,7 @@ public class MonetDatabaseMetaData exten
* What is the version string of this JDBC driver? Again, this is
* static.
*
- * @return the JDBC driver name.
+ * @return the JDBC driver version string
*/
@Override
public String getDriverVersion() {
@@ -238,7 +237,7 @@ public class MonetDatabaseMetaData exten
/**
* What is this JDBC driver's major version number?
*
- * @return the JDBC driver major version
+ * @return the JDBC driver major version number
*/
@Override
public int getDriverMajorVersion() {
@@ -248,7 +247,7 @@ public class MonetDatabaseMetaData exten
/**
* What is this JDBC driver's minor version number?
*
- * @return the JDBC driver minor version
+ * @return the JDBC driver minor version number
*/
@Override
public int getDriverMinorVersion() {
@@ -881,13 +880,12 @@ public class MonetDatabaseMetaData exten
/**
* What is the database vendor's preferred term for "procedure"?
- * Traditionally, "function" has been used.
*
* @return the vendor term
*/
@Override
public String getProcedureTerm() {
- return "function";
+ return "procedure";
}
/**
@@ -1538,28 +1536,28 @@ public class MonetDatabaseMetaData exten
/**
* Get a description of stored procedures available in a catalog
- * Currently not applicable and not implemented, returns null
*
* <p>Only procedure descriptions matching the schema and procedure
- * name criteria are returned. They are ordered by PROCEDURE_SCHEM
- * and PROCEDURE_NAME
+ * name criteria are returned. They are ordered by PROCEDURE_SCHEM,
+ * PROCEDURE_NAME and SPECIFIC_NAME.
*
* <p>Each procedure description has the following columns:
* <ol>
* <li><b>PROCEDURE_CAT</b> String => procedure catalog (may be null)
* <li><b>PROCEDURE_SCHEM</b> String => procedure schema (may be null)
* <li><b>PROCEDURE_NAME</b> String => procedure name
- * <li><b>Field 4</b> reserved (make it null)
- * <li><b>Field 5</b> reserved (make it null)
- * <li><b>Field 6</b> reserved (make it null)
+ * <li><b>Field4</b> reserved (make it null)
+ * <li><b>Field5</b> reserved (make it null)
+ * <li><b>Field6</b> reserved (make it null)
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list