Changeset: 0975d3106fdf for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=0975d3106fdf
Added Files:
        sql/test/BugTracker-2016/Tests/nested-mal-with-multiplex.Bug-4035.sql
        
sql/test/BugTracker-2016/Tests/nested-mal-with-multiplex.Bug-4035.stable.err
        
sql/test/BugTracker-2016/Tests/nested-mal-with-multiplex.Bug-4035.stable.out
Modified Files:
        .hgtags
        MonetDB.spec
        NT/Makefile
        NT/installer32/MonetDB-ODBC-Installer.vdproj
        NT/installer32/MonetDB5-Geom-Module.vdproj
        NT/installer32/MonetDB5-SQL-Installer.vdproj
        NT/installer64/MonetDB-ODBC-Installer.vdproj
        NT/installer64/MonetDB5-Geom-Module.vdproj
        NT/installer64/MonetDB5-SQL-Installer.vdproj
        NT/monetdb_config.h.in
        NT/rules.msc
        clients/Tests/MAL-signatures.stable.out
        clients/Tests/MAL-signatures.stable.out.int128
        clients/Tests/exports.stable.out
        clients/mapilib/mapi.rc
        clients/odbc/driver/driver.rc
        clients/odbc/winsetup/setup.rc
        configure.ag
        debian/changelog
        gdk/gdk_bbp.c
        gdk/gdk_logger.c
        gdk/libbat.rc
        geom/monetdb5/geom.mal
        java/ChangeLog-Archive
        java/ChangeLog.Jun2016
        java/Makefile.ag
        java/build.properties
        java/pom.xml
        java/release.txt
        java/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
        libversions
        monetdb5/extras/rapi/converters.c.h
        monetdb5/extras/rapi/rapi.c
        monetdb5/mal/Tests/tst201.malC
        monetdb5/mal/mal_atom.c
        monetdb5/mal/mal_builder.c
        monetdb5/mal/mal_debugger.c
        monetdb5/mal/mal_function.c
        monetdb5/mal/mal_instruction.c
        monetdb5/mal/mal_instruction.h
        monetdb5/mal/mal_interpreter.c
        monetdb5/mal/mal_listing.c
        monetdb5/mal/mal_parser.c
        monetdb5/mal/mal_profiler.c
        monetdb5/mal/mal_resolve.c
        monetdb5/mal/mal_type.c
        monetdb5/mal/mal_type.h
        monetdb5/modules/atoms/batxml.c
        monetdb5/modules/atoms/blob.c
        monetdb5/modules/atoms/blob.h
        monetdb5/modules/atoms/color.h
        monetdb5/modules/atoms/identifier.c
        monetdb5/modules/atoms/inet.c
        monetdb5/modules/atoms/json.c
        monetdb5/modules/atoms/json.h
        monetdb5/modules/atoms/mcurl.c
        monetdb5/modules/atoms/mtime.h
        monetdb5/modules/atoms/str.h
        monetdb5/modules/atoms/streams.h
        monetdb5/modules/atoms/url.c
        monetdb5/modules/atoms/url.h
        monetdb5/modules/atoms/uuid.c
        monetdb5/modules/atoms/xml.h
        monetdb5/modules/kernel/aggr.c
        monetdb5/modules/kernel/alarm.c
        monetdb5/modules/kernel/algebra.h
        monetdb5/modules/kernel/bat5.h
        monetdb5/modules/kernel/batcolor.c
        monetdb5/modules/kernel/batcolor.h
        monetdb5/modules/kernel/batmmath.h
        monetdb5/modules/kernel/batstr.c
        monetdb5/modules/kernel/group.h
        monetdb5/modules/kernel/logger.c
        monetdb5/modules/kernel/microbenchmark.h
        monetdb5/modules/kernel/mmath.h
        monetdb5/modules/kernel/status.h
        monetdb5/modules/mal/batExtensions.h
        monetdb5/modules/mal/batcalc.c
        monetdb5/modules/mal/bbp.c
        monetdb5/modules/mal/bbp.h
        monetdb5/modules/mal/calc.c
        monetdb5/modules/mal/clients.h
        monetdb5/modules/mal/factories.h
        monetdb5/modules/mal/groupby.h
        monetdb5/modules/mal/inspect.c
        monetdb5/modules/mal/inspect.h
        monetdb5/modules/mal/iterator.h
        monetdb5/modules/mal/json_util.h
        monetdb5/modules/mal/language.h
        monetdb5/modules/mal/mal_io.h
        monetdb5/modules/mal/mal_mapi.c
        monetdb5/modules/mal/mal_mapi.h
        monetdb5/modules/mal/manifold.c
        monetdb5/modules/mal/manifold.h
        monetdb5/modules/mal/manual.h
        monetdb5/modules/mal/mat.h
        monetdb5/modules/mal/mdb.h
        monetdb5/modules/mal/mkey.h
        monetdb5/modules/mal/pcre.c
        monetdb5/modules/mal/profiler.h
        monetdb5/modules/mal/projectionpath.h
        monetdb5/modules/mal/querylog.h
        monetdb5/modules/mal/recycle.h
        monetdb5/modules/mal/remote.c
        monetdb5/modules/mal/remote.h
        monetdb5/modules/mal/sabaoth.h
        monetdb5/modules/mal/sample.h
        monetdb5/modules/mal/sysmon.h
        monetdb5/modules/mal/tablet.h
        monetdb5/modules/mal/tokenizer.h
        monetdb5/modules/mal/transaction.c
        monetdb5/modules/mal/txtsim.h
        monetdb5/modules/mal/zorder.h
        monetdb5/optimizer/opt_aliases.h
        monetdb5/optimizer/opt_candidates.h
        monetdb5/optimizer/opt_coercion.c
        monetdb5/optimizer/opt_coercion.h
        monetdb5/optimizer/opt_commonTerms.h
        monetdb5/optimizer/opt_constants.h
        monetdb5/optimizer/opt_costModel.h
        monetdb5/optimizer/opt_dataflow.h
        monetdb5/optimizer/opt_deadcode.h
        monetdb5/optimizer/opt_evaluate.h
        monetdb5/optimizer/opt_factorize.h
        monetdb5/optimizer/opt_garbageCollector.h
        monetdb5/optimizer/opt_generator.h
        monetdb5/optimizer/opt_inline.h
        monetdb5/optimizer/opt_json.h
        monetdb5/optimizer/opt_macro.h
        monetdb5/optimizer/opt_matpack.h
        monetdb5/optimizer/opt_mergetable.c
        monetdb5/optimizer/opt_mergetable.h
        monetdb5/optimizer/opt_mitosis.c
        monetdb5/optimizer/opt_mitosis.h
        monetdb5/optimizer/opt_multiplex.c
        monetdb5/optimizer/opt_multiplex.h
        monetdb5/optimizer/opt_pipes.h
        monetdb5/optimizer/opt_prelude.h
        monetdb5/optimizer/opt_profiler.h
        monetdb5/optimizer/opt_projectionpath.c
        monetdb5/optimizer/opt_projectionpath.h
        monetdb5/optimizer/opt_pushselect.c
        monetdb5/optimizer/opt_pushselect.h
        monetdb5/optimizer/opt_querylog.h
        monetdb5/optimizer/opt_recycler.h
        monetdb5/optimizer/opt_reduce.h
        monetdb5/optimizer/opt_remap.c
        monetdb5/optimizer/opt_remap.h
        monetdb5/optimizer/opt_remoteQueries.h
        monetdb5/optimizer/opt_reorder.h
        monetdb5/optimizer/opt_statistics.h
        monetdb5/optimizer/opt_support.h
        monetdb5/optimizer/opt_volcano.h
        monetdb5/optimizer/opt_wrapper.c
        monetdb5/optimizer/optimizer.h
        monetdb5/scheduler/run_adder.h
        monetdb5/scheduler/run_isolate.h
        monetdb5/scheduler/run_memo.h
        monetdb5/scheduler/run_pipeline.h
        monetdb5/scheduler/srvpool.h
        monetdb5/tools/libmonetdb5.rc
        sql/backends/monet5/UDF/pyapi/connection.c
        sql/backends/monet5/UDF/pyapi/pyapi.c
        sql/backends/monet5/UDF/pyapi/pyloader.c
        sql/backends/monet5/sql.c
        sql/backends/monet5/sql_execute.c
        sql/backends/monet5/sql_gencode.c
        sql/backends/monet5/sql_orderidx.c
        sql/backends/monet5/sql_rank.c
        sql/server/rel_optimizer.c
        
sql/test/BugTracker-2009/Tests/segfault_when_quitting_debugger.SF-2538837.stable.out
        sql/test/BugTracker-2011/Tests/crash_on_alias.Bug-2798.stable.out.int128
        sql/test/BugTracker-2013/Tests/corrupt-after-restart.Bug-3282.py
        sql/test/BugTracker-2014/Tests/nil_2dec_lng.Bug-3592.stable.out
        sql/test/BugTracker-2014/Tests/nil_2dec_lng.Bug-3592.stable.out.single
        sql/test/BugTracker-2016/Tests/All
        sql/test/bugs/Tests/select_select_bug.stable.out
        sql/test/mergetables/Tests/part-elim.stable.out
        testing/Mtest.py.in
        tools/merovingian/daemon/merovingian.c
        vertoo.data
Branch: pythonloader
Log Message:

Merge with default.


diffs (truncated from 9134 to 300 lines):

diff --git a/.hgtags b/.hgtags
--- a/.hgtags
+++ b/.hgtags
@@ -629,3 +629,6 @@ 192e3168234a5f9f8a4d1c4ce17805f608f001c3
 b29fdfe9c590f674208212bf4ead617beef4b73c Jun2016_release
 4a05df3932a97865ac7e4037361723d5563490b3 Jun2016_5
 4a05df3932a97865ac7e4037361723d5563490b3 Jun2016_SP1_release
+c8b06c670a635978640d742643c317b82c5f4b8c Jun2016_7
+4a05df3932a97865ac7e4037361723d5563490b3 Jun2016_SP1_release
+c8b06c670a635978640d742643c317b82c5f4b8c Jun2016_SP1_release
diff --git a/MonetDB.spec b/MonetDB.spec
--- a/MonetDB.spec
+++ b/MonetDB.spec
@@ -962,6 +962,44 @@ rm -f %{buildroot}%{_bindir}/Maddlog
 %postun -p /sbin/ldconfig
 
 %changelog
+* Wed Jul 13 2016 Sjoerd Mullender <sjo...@acm.org> - 11.23.7-20160713
+- Rebuilt.
+- BZ#4014: KILL signal
+- BZ#4021: Analyze query does not escape input [security]
+- BZ#4026: JDBC driver incorrectly converts TINYINT fields to String
+  instead of an integer type.
+- BZ#4028: inputs not the same size
+- BZ#4032: no decimal places after update. ODBC driver
+- BZ#4035: SQL Function call bug
+- BZ#4036: Possible sql_catalog corruption due to unclean backuped tail
+
+* Thu Jul  7 2016 Martin van Dinther <martin.van.dint...@monetdbsolutions.com> 
- 11.23.7-20160713
+- java: Corrected PROCEDURE_TYPE output value of method 
DatabaseMetaData.getProcedures().
+  It used to return procedureReturnsResult. Now it returns procedureNoResult.
+  Corrected ORDINAL_POSITION output value of method 
DatabaseMetaData.getProcedureColumns().
+  It used to start with 0, but as procedures do not return a result value it 
now
+  starts with 1 for all the procedure arguments, as defined by the JDBC API.
+- java: Improved output of method DatabaseMetaData.getProcedures(). The REMARKS
+  column now contains the procedure definition as stored in sys.functions.func.
+  The SPECIFIC_NAME column now contains the procedure unique identifier as
+  stored in sys.functions.id. This allows the caller to retrieve the specific
+  overloaded procedure which has the same name, but different arguments.
+  Also improved output of method DatabaseMetaData.getProcedureColumns().
+  The SPECIFIC_NAME column now contains the procedure unique identifier as
+  stored in sys.functions.id. This allows the caller to retrieve the proper
+  arguments of the specific overloaded procedure by matching the SPECIFIC_NAME
+  value.
+- java: Improved output of method DatabaseMetaData.getFunctions(). The REMARKS
+  column now contains the function definition as stored in sys.functions.func.
+  The SPECIFIC_NAME column now contains the function unique identifier as
+  stored in sys.functions.id. This allows the caller to retrieve the specific
+  overloaded function which has the same name, but different arguments.
+  Also improved output of method DatabaseMetaData.getFunctionColumns().
+  The SPECIFIC_NAME column now contains the function unique identifier as
+  stored in sys.functions.id. This allows the caller to retrieve the proper
+  arguments of the specific overloaded function by matching the SPECIFIC_NAME
+  value.
+
 * Mon Jul 04 2016 Sjoerd Mullender <sjo...@acm.org> - 11.23.5-20160704
 - Rebuilt.
 - BZ#4031: mclient doesn't accept - argument to refer to stdin
diff --git a/NT/Makefile b/NT/Makefile
--- a/NT/Makefile
+++ b/NT/Makefile
@@ -16,7 +16,7 @@ all: _all
 
 !INCLUDE "$(TOPDIR)\..\NT\rules.msc"
 
-_all: update_winconfig_conds_py "$(srcdir)\Makefile.msc" monetdb_config.h 
unistd.h inttypes.h .monetdb
+_all: update_winconfig_conds_py "$(srcdir)\Makefile.msc" monetdb_config.h 
unistd.h .monetdb
        $(MAKE) /nologo /f "$(srcdir)\Makefile.msc" "prefix=$(prefix)" 
"bits=$(bits)" all
 
 install: targetdirs all
@@ -46,14 +46,6 @@ unistd.h:
        $(ECHO) #endif >> unistd.h
        $(ECHO) #endif >> unistd.h
 
-inttypes.h:
-       $(ECHO) typedef signed char int8_t; > inttypes.h
-       $(ECHO) typedef unsigned char uint8_t; >> inttypes.h
-       $(ECHO) typedef short int16_t; >> inttypes.h
-       $(ECHO) typedef unsigned short uint16_t; >> inttypes.h
-       $(ECHO) typedef int int32_t; >> inttypes.h
-       $(ECHO) typedef unsigned int uint32_t; >> inttypes.h
-
 .monetdb:
        $(ECHO) user=monetdb> .monetdb
        $(ECHO) password=monetdb>> .monetdb
diff --git a/NT/monetdb_config.h.in b/NT/monetdb_config.h.in
--- a/NT/monetdb_config.h.in
+++ b/NT/monetdb_config.h.in
@@ -148,7 +148,7 @@
 /* #undef HAVE_FDATASYNC */
 
 /* Define to 1 if you have the <fenv.h> header file. */
-#if !defined(_MSC_VER) || _MSC_VER > 1600
+#if !defined(_MSC_VER) || _MSC_VER >= 1800
 #define HAVE_FENV_H 1
 #endif
 
@@ -234,7 +234,9 @@
 /* #undef HAVE_IEEEFP_H */
 
 /* Define to 1 if you have the <inttypes.h> header file. */
-#define HAVE_INTTYPES_H 1      /* generated by the Makefile */
+#if !defined(_MSC_VER) || _MSC_VER >= 1800
+#define HAVE_INTTYPES_H 1
+#endif
 
 /* Define to 1 if you have the <io.h> header file. */
 #define HAVE_IO_H 1
@@ -526,13 +528,15 @@
 #define HAVE_SQLGETPRIVATEPROFILESTRING 1
 
 /* Define to 1 if stdbool.h conforms to C99. */
-/* #undef HAVE_STDBOOL_H */
+#if !defined(_MSC_VER) || _MSC_VER >= 1800
+#define HAVE_STDBOOL_H 1
+#endif
 
 /* Define to 1 if you have the <stddef.h> header file. */
 #define HAVE_STDDEF_H 1
 
 /* Define to 1 if you have the <stdint.h> header file. */
-#if !defined(_MSC_VER) || _MSC_VER > 1600
+#if !defined(_MSC_VER) || _MSC_VER >= 1600
 #define HAVE_STDINT_H 1
 #endif
 
diff --git a/clients/Tests/MAL-signatures.stable.out 
b/clients/Tests/MAL-signatures.stable.out
--- a/clients/Tests/MAL-signatures.stable.out
+++ b/clients/Tests/MAL-signatures.stable.out
@@ -23926,34 +23926,18 @@ command bat.mirror(b:bat[:any_2]):bat[:o
 address BKCmirror;
 comment Returns the head-mirror image of a BAT (two head columns).
 
-pattern bat.new_persistent(ht:oid,tt:any_1,size:lng):bat[:any_1] 
-address CMDBATnew_persistent;
-comment Creates a new BAT in the persistent farm and allocate space.
-
-pattern bat.new_persistent(ht:oid,tt:any_1,size:int):bat[:any_1] 
-address CMDBATnew_persistent;
-pattern bat.new_persistent(ht:oid,tt:any_1):bat[:any_1] 
-address CMDBATnew_persistent;
-comment Creates a new empty transient BAT in the persistent farm, with head- 
and tail-types as indicated.
-
-pattern bat.new(ht:oid,tt:any_1,size:lng):bat[:any_1] 
+pattern bat.new(tt:any_1,size:lng):bat[:any_1] 
 address CMDBATnew;
-comment Creates a new BAT with sufficient space.
-
-pattern bat.new(ht:oid,tt:any_1,size:int):bat[:any_1] 
+comment Creates a new empty transient BAT, with tail-types as indicated.
+
+pattern bat.new(tt:any_1,size:int,persist:bit):bat[:any_1] 
 address CMDBATnew;
-pattern bat.new(ht:oid,tt:any_1):bat[:any_1] 
+pattern bat.new(tt:any_1,size:lng,persist:bit):bat[:any_1] 
 address CMDBATnew;
-comment Creates a new empty transient BAT, with head- and tail-types as 
indicated.
-
-pattern bat.new(tt:any_1,size:lng):bat[:any_1] 
-address CMDBATnewColumn;
-comment Creates a new empty transient BAT, with tail-types as indicated.
-
 pattern bat.new(tt:any_1,size:int):bat[:any_1] 
-address CMDBATnewColumn;
+address CMDBATnew;
 pattern bat.new(tt:any_1):bat[:any_1] 
-address CMDBATnewColumn;
+address CMDBATnew;
 pattern bat.orderidx(bv:bat[:any_1],l:bat[:any_1]...):void 
 address OIDXmerge;
 comment Consolidates the OID index arrangement
diff --git a/clients/Tests/MAL-signatures.stable.out.int128 
b/clients/Tests/MAL-signatures.stable.out.int128
--- a/clients/Tests/MAL-signatures.stable.out.int128
+++ b/clients/Tests/MAL-signatures.stable.out.int128
@@ -31785,34 +31785,18 @@ command bat.mirror(b:bat[:any_2]):bat[:o
 address BKCmirror;
 comment Returns the head-mirror image of a BAT (two head columns).
 
-pattern bat.new_persistent(ht:oid,tt:any_1,size:lng):bat[:any_1] 
-address CMDBATnew_persistent;
-comment Creates a new BAT in the persistent farm and allocate space.
-
-pattern bat.new_persistent(ht:oid,tt:any_1,size:int):bat[:any_1] 
-address CMDBATnew_persistent;
-pattern bat.new_persistent(ht:oid,tt:any_1):bat[:any_1] 
-address CMDBATnew_persistent;
-comment Creates a new empty transient BAT in the persistent farm, with head- 
and tail-types as indicated.
-
-pattern bat.new(ht:oid,tt:any_1,size:lng):bat[:any_1] 
+pattern bat.new(tt:any_1,size:lng):bat[:any_1] 
 address CMDBATnew;
-comment Creates a new BAT with sufficient space.
-
-pattern bat.new(ht:oid,tt:any_1,size:int):bat[:any_1] 
+comment Creates a new empty transient BAT, with tail-types as indicated.
+
+pattern bat.new(tt:any_1,size:int,persist:bit):bat[:any_1] 
 address CMDBATnew;
-pattern bat.new(ht:oid,tt:any_1):bat[:any_1] 
+pattern bat.new(tt:any_1,size:lng,persist:bit):bat[:any_1] 
 address CMDBATnew;
-comment Creates a new empty transient BAT, with head- and tail-types as 
indicated.
-
-pattern bat.new(tt:any_1,size:lng):bat[:any_1] 
-address CMDBATnewColumn;
-comment Creates a new empty transient BAT, with tail-types as indicated.
-
 pattern bat.new(tt:any_1,size:int):bat[:any_1] 
-address CMDBATnewColumn;
+address CMDBATnew;
 pattern bat.new(tt:any_1):bat[:any_1] 
-address CMDBATnewColumn;
+address CMDBATnew;
 pattern bat.orderidx(bv:bat[:any_1],l:bat[:any_1]...):void 
 address OIDXmerge;
 comment Consolidates the OID index arrangement
diff --git a/clients/Tests/exports.stable.out b/clients/Tests/exports.stable.out
--- a/clients/Tests/exports.stable.out
+++ b/clients/Tests/exports.stable.out
@@ -2096,6 +2096,7 @@ str generatorRef;
 MALfcn getAddress(stream *out, str filename, str modnme, str fcnname, int 
silent);
 str getArgDefault(MalBlkPtr mb, InstrPtr p, int idx);
 ptr getArgReference(MalStkPtr stk, InstrPtr pci, int k);
+int getAtomIndex(str nme, int len, int deftpe);
 lng getBatSpace(BAT *b);
 int getBitConstant(MalBlkPtr mb, bit val);
 int getBlockBegin(MalBlkPtr mb, int pc);
@@ -2134,7 +2135,6 @@ BAT *getTrace(const char *ev);
 str getTraceRef;
 malType getType(MalBlkPtr mb, str nme);
 str getTypeIdentifier(malType tpe);
-int getTypeIndex(str nme, int len, int deftpe);
 str getTypeName(malType tpe);
 lng getUserTime(void);
 str getVarName(MalBlkPtr mb, int i);
@@ -2227,7 +2227,6 @@ str logger_create_wrap(logger *L, int *d
 str logger_destroy_wrap(void *ret, logger *L);
 str lookupRef;
 str mal2str(MalBlkPtr mb, int first, int last);
-malType malAnyBatType(malType t1, malType t2);
 int malAtomSize(int size, int align, char *name);
 int malBootstrap(void);
 str malCommandCall(MalStkPtr stk, InstrPtr pci);
@@ -2437,7 +2436,6 @@ void resizeMalBlk(MalBlkPtr mb, int maxs
 int resolveType(int dsttype, int srctype);
 str resultSetRef;
 str reuseRef;
-malType reverseBatType(malType v);
 str row_numberRef;
 str rpcRef;
 str rsColumnRef;
diff --git a/debian/changelog b/debian/changelog
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,47 @@
+monetdb (11.23.7) unstable; urgency=low
+
+  * Rebuilt.
+  * BZ#4014: KILL signal
+  * BZ#4021: Analyze query does not escape input [security]
+  * BZ#4026: JDBC driver incorrectly converts TINYINT fields to String
+    instead of an integer type.
+  * BZ#4028: inputs not the same size
+  * BZ#4032: no decimal places after update. ODBC driver
+  * BZ#4035: SQL Function call bug
+  * BZ#4036: Possible sql_catalog corruption due to unclean backuped tail
+
+ -- Sjoerd Mullender <sjo...@acm.org>  Wed, 13 Jul 2016 14:33:03 +0200
+
+monetdb (11.23.7) unstable; urgency=low
+
+  * java: Corrected PROCEDURE_TYPE output value of method 
DatabaseMetaData.getProcedures().
+    It used to return procedureReturnsResult. Now it returns procedureNoResult.
+    Corrected ORDINAL_POSITION output value of method 
DatabaseMetaData.getProcedureColumns().
+    It used to start with 0, but as procedures do not return a result value it 
now
+    starts with 1 for all the procedure arguments, as defined by the JDBC API.
+  * java: Improved output of method DatabaseMetaData.getProcedures(). The 
REMARKS
+    column now contains the procedure definition as stored in 
sys.functions.func.
+    The SPECIFIC_NAME column now contains the procedure unique identifier as
+    stored in sys.functions.id. This allows the caller to retrieve the specific
+    overloaded procedure which has the same name, but different arguments.
+    Also improved output of method DatabaseMetaData.getProcedureColumns().
+    The SPECIFIC_NAME column now contains the procedure unique identifier as
+    stored in sys.functions.id. This allows the caller to retrieve the proper
+    arguments of the specific overloaded procedure by matching the 
SPECIFIC_NAME
+    value.
+  * java: Improved output of method DatabaseMetaData.getFunctions(). The 
REMARKS
+    column now contains the function definition as stored in 
sys.functions.func.
+    The SPECIFIC_NAME column now contains the function unique identifier as
+    stored in sys.functions.id. This allows the caller to retrieve the specific
+    overloaded function which has the same name, but different arguments.
+    Also improved output of method DatabaseMetaData.getFunctionColumns().
+    The SPECIFIC_NAME column now contains the function unique identifier as
+    stored in sys.functions.id. This allows the caller to retrieve the proper
+    arguments of the specific overloaded function by matching the SPECIFIC_NAME
+    value.
+
+ -- Martin van Dinther <martin.van.dint...@monetdbsolutions.com>  Thu, 7 Jul 
2016 14:33:03 +0200
+
 monetdb (11.23.5) unstable; urgency=low
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to