Changeset: c19ec2dbab60 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=c19ec2dbab60 Added Files: sql/test/BugTracker-2018/Tests/create-temp-table-ordered-index-error.Bug-6574.sql sql/test/BugTracker-2018/Tests/create-temp-table-ordered-index-error.Bug-6574.stable.err sql/test/BugTracker-2018/Tests/create-temp-table-ordered-index-error.Bug-6574.stable.out sql/test/BugTracker-2018/Tests/multiple-insertinto-table-Bug-6578.sql sql/test/BugTracker-2018/Tests/ordered-index-error.Bug-6572.sql sql/test/BugTracker-2018/Tests/ordered-index-error.Bug-6572.stable.err sql/test/BugTracker-2018/Tests/ordered-index-error.Bug-6572.stable.out sql/test/BugTracker-2018/Tests/sqlitelogictest-aritmetic-expressions-handling.Bug-6576.sql sql/test/BugTracker-2018/Tests/sqlitelogictest-aritmetic-expressions-handling.Bug-6576.stable.err sql/test/BugTracker-2018/Tests/sqlitelogictest-aritmetic-expressions-handling.Bug-6576.stable.out sql/test/BugTracker-2018/Tests/sqlitelogictest-complex-case.Bug-6568.stable.err sql/test/BugTracker-2018/Tests/sqlitelogictest-complex-case.Bug-6568.stable.out sql/test/BugTracker-2018/Tests/sqlitelogictest-complex-case.Bug-6573.sql sql/test/BugTracker-2018/Tests/sqlitelogictest-complex-case.Bug-6573.stable.err sql/test/BugTracker-2018/Tests/sqlitelogictest-complex-case.Bug-6573.stable.out sql/test/BugTracker-2018/Tests/sqlitelogictest-missing-bulk-implementation.Bug-6575.sql sql/test/BugTracker-2018/Tests/sqlitelogictest-missing-bulk-implementation.Bug-6575.stable.err sql/test/BugTracker-2018/Tests/sqlitelogictest-missing-bulk-implementation.Bug-6575.stable.out sql/test/BugTracker-2018/Tests/sqlitelogictest-select-nullif-case.Bug-6579.sql sql/test/BugTracker-2018/Tests/sqlitelogictest-undefined-calc.Bug-6570.stable.err sql/test/BugTracker-2018/Tests/sqlitelogictest-undefined-calc.Bug-6570.stable.out Modified Files: NT/rules.msc clients/Tests/MAL-signatures.stable.out clients/Tests/MAL-signatures.stable.out.int128 clients/mapiclient/dump.c monetdb5/optimizer/opt_mergetable.c sql/backends/monet5/generator/Tests/generator00.stable.out sql/backends/monet5/generator/Tests/generator03.stable.out sql/backends/monet5/generator/Tests/joins01.stable.out sql/backends/monet5/generator/generator.c sql/backends/monet5/generator/generator.mal sql/backends/monet5/generator/generator_hge.mal sql/backends/monet5/rel_bin.c sql/server/rel_exp.c sql/server/rel_exp.h sql/server/rel_optimizer.c sql/server/rel_select.c sql/server/sql_mvc.c sql/server/sql_mvc.h sql/test/BugTracker-2017/Tests/type-resolution-error.Bugs-6313.stable.err sql/test/BugTracker-2018/Tests/All sql/test/BugTracker-2018/Tests/sqlitelogictest-complex-case-nullif-coalesce.Bug-6565.sql sql/test/BugTracker-2018/Tests/sqlitelogictest-mal-calc-undefined.Bug-6566.sql sql/test/Tests/comment-on.sql sql/test/Tests/comment-on.stable.err sql/test/Tests/comment-on.stable.out sql/test/mergetables/Tests/mergequery.stable.out sql/test/mergetables/Tests/part-elim.stable.out Branch: data-vaults Log Message:
Merge with default diffs (truncated from 2399 to 300 lines): diff --git a/NT/rules.msc b/NT/rules.msc --- a/NT/rules.msc +++ b/NT/rules.msc @@ -39,12 +39,6 @@ BITSMCHN=X64 !ENDIF !IFDEF DEBUG -DEBUGLIB=d -!ELSE -DEBUGLIB= -!ENDIF - -!IFDEF DEBUG # force W_CFLAGS off in debug builds: using icc, you get way more # warnings about casts which results in the code being uncompilable W_CFLAGS = @@ -98,7 +92,7 @@ PYTHON_LIBDIR=$(PYTHON3_LIBDIR) !IFNDEF LIBPCRE LIBPCRE = C:\Program Files\PCRE !ENDIF -pcre_LIBS = "$(LIBPCRE)\lib\pcre$(DEBUGLIB).lib" +pcre_LIBS = "$(LIBPCRE)\lib\pcre.lib" pcre_CFLAGS = -DHAVE_LIBPCRE "-I$(LIBPCRE)\include" !ENDIF @@ -116,7 +110,7 @@ openssl_CFLAGS = -DHAVE_OPENSSL "-I$(LIB !IFNDEF LIBICONV LIBICONV = C:\iconv-1.9.2.win$(bits) !ENDIF -LTLIBICONV = "$(LIBICONV)\lib\iconv$(DEBUGLIB).lib" +LTLIBICONV = "$(LIBICONV)\lib\iconv.lib" ICONV_CFLAGS = -DHAVE_ICONV "-I$(LIBICONV)\include" !ENDIF @@ -135,7 +129,7 @@ LIBZLIB = C:\zlib-1.2.3.win$(bits) !IFNDEF LIBZLIBFILE LIBZLIBFILE=zlib1 !ENDIF -zlib_LIBS = "$(LIBZLIB)\lib\$(LIBZLIBFILE)$(DEBUGLIB).lib" +zlib_LIBS = "$(LIBZLIB)\lib\$(LIBZLIBFILE).lib" zlib_CFLAGS = -DHAVE_LIBZ "-I$(LIBZLIB)\include" !ENDIF @@ -144,7 +138,7 @@ zlib_CFLAGS = -DHAVE_LIBZ "-I$(LIBZLIB)\ !IFNDEF LIBBZIP2 LIBBZIP2 = C:\bzip2-1.0.5.win$(bits) !ENDIF -BZ_LIBS = "$(LIBBZIP2)\lib\libbz2$(DEBUGLIB).lib" +BZ_LIBS = "$(LIBBZIP2)\lib\libbz2.lib" BZ_CFLAGS = -DHAVE_LIBBZ2 "-I$(LIBBZIP2)\include" !ENDIF @@ -154,17 +148,13 @@ BZ_CFLAGS = -DHAVE_LIBBZ2 "-I$(LIBBZIP2) LIBXML2 = C:\libxml2-2.6.30.win$(bits) !ENDIF libxml2_CFLAGS = -DHAVE_LIBXML "-I$(LIBXML2)\include" $(zlib_CFLAGS) $(ICONV_CFLAGS) -libxml2_LIBS = "$(LIBXML2)\lib\libxml2$(DEBUGLIB).lib" $(zlib_LIBS) $(ICONV_LIBS) +libxml2_LIBS = "$(LIBXML2)\lib\libxml2.lib" $(zlib_LIBS) $(ICONV_LIBS) !ENDIF !IFNDEF LIBGEOS LIBGEOS = C:\geos-3.0.win$(bits) !ENDIF -!IFDEF DEBUG -GEOS_LIBS = $(LIBGEOS)\lib\geos_c_i$(GEOSDEBUGLIB).lib -!ELSE GEOS_LIBS = $(LIBGEOS)\lib\geos_c_i.lib -!ENDIF GEOS_INCS = -I$(LIBGEOS)\include !IFDEF HAVE_LIBR 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 @@ -10016,6 +10016,20 @@ Ready. [ "generator", "projection", "pattern generator.projection(b:bat[:oid], cand:bat[:lng]):bat[:lng] ", "VLTgenerator_projection;", "" ] [ "generator", "projection", "pattern generator.projection(b:bat[:oid], cand:bat[:sht]):bat[:sht] ", "VLTgenerator_projection;", "" ] [ "generator", "projection", "pattern generator.projection(b:bat[:oid], cand:bat[:timestamp]):bat[:timestamp] ", "VLTgenerator_projection;", "Overloaded projection operation" ] +[ "generator", "select", "pattern generator.select(b:bat[:bte], cand:bat[:oid], low:bte, high:bte, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] +[ "generator", "select", "pattern generator.select(b:bat[:bte], low:bte, high:bte, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] +[ "generator", "select", "pattern generator.select(b:bat[:dbl], cand:bat[:oid], low:dbl, high:dbl, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] +[ "generator", "select", "pattern generator.select(b:bat[:dbl], low:dbl, high:dbl, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] +[ "generator", "select", "pattern generator.select(b:bat[:flt], cand:bat[:oid], low:flt, high:flt, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] +[ "generator", "select", "pattern generator.select(b:bat[:flt], low:flt, high:flt, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] +[ "generator", "select", "pattern generator.select(b:bat[:int], cand:bat[:oid], low:int, high:int, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] +[ "generator", "select", "pattern generator.select(b:bat[:int], low:int, high:int, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] +[ "generator", "select", "pattern generator.select(b:bat[:lng], cand:bat[:oid], low:lng, high:lng, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] +[ "generator", "select", "pattern generator.select(b:bat[:lng], low:lng, high:lng, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] +[ "generator", "select", "pattern generator.select(b:bat[:sht], cand:bat[:oid], low:sht, high:sht, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] +[ "generator", "select", "pattern generator.select(b:bat[:sht], low:sht, high:sht, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] +[ "generator", "select", "pattern generator.select(b:bat[:timestamp], cand:bat[:oid], low:timestamp, high:timestamp, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "Overloaded selection routine" ] +[ "generator", "select", "pattern generator.select(b:bat[:timestamp], low:timestamp, high:timestamp, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "Overloaded selection routine" ] [ "generator", "series", "pattern generator.series(first:bte, last:bte):bat[:bte] ", "VLTgenerator_table;", "" ] [ "generator", "series", "pattern generator.series(first:bte, last:bte, step:bte):bat[:bte] ", "VLTgenerator_table;", "" ] [ "generator", "series", "pattern generator.series(first:dbl, last:dbl):bat[:dbl] ", "VLTgenerator_table;", "" ] @@ -10029,34 +10043,20 @@ Ready. [ "generator", "series", "pattern generator.series(first:sht, last:sht):bat[:sht] ", "VLTgenerator_table;", "" ] [ "generator", "series", "pattern generator.series(first:sht, last:sht, step:sht):bat[:sht] ", "VLTgenerator_table;", "" ] [ "generator", "series", "pattern generator.series(first:timestamp, last:timestamp, step:lng):bat[:timestamp] ", "VLTgenerator_table;", "" ] -[ "generator", "subselect", "pattern generator.subselect(b:bat[:bte], cand:bat[:oid], low:bte, high:bte, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] -[ "generator", "subselect", "pattern generator.subselect(b:bat[:bte], low:bte, high:bte, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] -[ "generator", "subselect", "pattern generator.subselect(b:bat[:dbl], cand:bat[:oid], low:dbl, high:dbl, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] -[ "generator", "subselect", "pattern generator.subselect(b:bat[:dbl], low:dbl, high:dbl, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] -[ "generator", "subselect", "pattern generator.subselect(b:bat[:flt], cand:bat[:oid], low:flt, high:flt, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] -[ "generator", "subselect", "pattern generator.subselect(b:bat[:flt], low:flt, high:flt, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] -[ "generator", "subselect", "pattern generator.subselect(b:bat[:int], cand:bat[:oid], low:int, high:int, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] -[ "generator", "subselect", "pattern generator.subselect(b:bat[:int], low:int, high:int, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] -[ "generator", "subselect", "pattern generator.subselect(b:bat[:lng], cand:bat[:oid], low:lng, high:lng, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] -[ "generator", "subselect", "pattern generator.subselect(b:bat[:lng], low:lng, high:lng, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] -[ "generator", "subselect", "pattern generator.subselect(b:bat[:sht], cand:bat[:oid], low:sht, high:sht, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] -[ "generator", "subselect", "pattern generator.subselect(b:bat[:sht], low:sht, high:sht, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] -[ "generator", "subselect", "pattern generator.subselect(b:bat[:timestamp], cand:bat[:oid], low:timestamp, high:timestamp, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "Overloaded selection routine" ] -[ "generator", "subselect", "pattern generator.subselect(b:bat[:timestamp], low:timestamp, high:timestamp, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "Overloaded selection routine" ] -[ "generator", "thetasubselect", "pattern generator.thetasubselect(b:bat[:bte], cnd:bat[:oid], low:bte, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] -[ "generator", "thetasubselect", "pattern generator.thetasubselect(b:bat[:bte], low:bte, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] -[ "generator", "thetasubselect", "pattern generator.thetasubselect(b:bat[:dbl], cnd:bat[:oid], low:dbl, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] -[ "generator", "thetasubselect", "pattern generator.thetasubselect(b:bat[:dbl], low:dbl, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] -[ "generator", "thetasubselect", "pattern generator.thetasubselect(b:bat[:flt], cnd:bat[:oid], low:flt, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] -[ "generator", "thetasubselect", "pattern generator.thetasubselect(b:bat[:flt], low:flt, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] -[ "generator", "thetasubselect", "pattern generator.thetasubselect(b:bat[:int], cnd:bat[:oid], low:int, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] -[ "generator", "thetasubselect", "pattern generator.thetasubselect(b:bat[:int], low:int, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] -[ "generator", "thetasubselect", "pattern generator.thetasubselect(b:bat[:lng], cnd:bat[:oid], low:lng, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] -[ "generator", "thetasubselect", "pattern generator.thetasubselect(b:bat[:lng], low:lng, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] -[ "generator", "thetasubselect", "pattern generator.thetasubselect(b:bat[:sht], cnd:bat[:oid], low:sht, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] -[ "generator", "thetasubselect", "pattern generator.thetasubselect(b:bat[:sht], low:sht, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] -[ "generator", "thetasubselect", "pattern generator.thetasubselect(b:bat[:timestamp], cnd:bat[:oid], low:timestamp, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "Overloaded selection routine" ] -[ "generator", "thetasubselect", "pattern generator.thetasubselect(b:bat[:timestamp], low:timestamp, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "Overloaded selection routine" ] +[ "generator", "thetaselect", "pattern generator.thetaselect(b:bat[:bte], cnd:bat[:oid], low:bte, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] +[ "generator", "thetaselect", "pattern generator.thetaselect(b:bat[:bte], low:bte, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] +[ "generator", "thetaselect", "pattern generator.thetaselect(b:bat[:dbl], cnd:bat[:oid], low:dbl, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] +[ "generator", "thetaselect", "pattern generator.thetaselect(b:bat[:dbl], low:dbl, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] +[ "generator", "thetaselect", "pattern generator.thetaselect(b:bat[:flt], cnd:bat[:oid], low:flt, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] +[ "generator", "thetaselect", "pattern generator.thetaselect(b:bat[:flt], low:flt, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] +[ "generator", "thetaselect", "pattern generator.thetaselect(b:bat[:int], cnd:bat[:oid], low:int, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] +[ "generator", "thetaselect", "pattern generator.thetaselect(b:bat[:int], low:int, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] +[ "generator", "thetaselect", "pattern generator.thetaselect(b:bat[:lng], cnd:bat[:oid], low:lng, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] +[ "generator", "thetaselect", "pattern generator.thetaselect(b:bat[:lng], low:lng, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] +[ "generator", "thetaselect", "pattern generator.thetaselect(b:bat[:sht], cnd:bat[:oid], low:sht, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] +[ "generator", "thetaselect", "pattern generator.thetaselect(b:bat[:sht], low:sht, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] +[ "generator", "thetaselect", "pattern generator.thetaselect(b:bat[:timestamp], cnd:bat[:oid], low:timestamp, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "Overloaded selection routine" ] +[ "generator", "thetaselect", "pattern generator.thetaselect(b:bat[:timestamp], low:timestamp, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "Overloaded selection routine" ] [ "geom", "Area", "command geom.Area(w:wkb):dbl ", "wkbArea;", "Returns the area of the surface if it is a polygon or multi-polygon" ] [ "geom", "AsBinary", "command geom.AsBinary(w:wkb):str ", "wkbAsBinary;", "Returns the wkb representation into HEX format" ] [ "geom", "AsEWKT", "function geom.AsEWKT(w:wkb):str;", "", "" ] 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 @@ -14215,6 +14215,22 @@ Ready. [ "generator", "projection", "pattern generator.projection(b:bat[:oid], cand:bat[:lng]):bat[:lng] ", "VLTgenerator_projection;", "" ] [ "generator", "projection", "pattern generator.projection(b:bat[:oid], cand:bat[:sht]):bat[:sht] ", "VLTgenerator_projection;", "" ] [ "generator", "projection", "pattern generator.projection(b:bat[:oid], cand:bat[:timestamp]):bat[:timestamp] ", "VLTgenerator_projection;", "Overloaded projection operation" ] +[ "generator", "select", "pattern generator.select(b:bat[:bte], cand:bat[:oid], low:bte, high:bte, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] +[ "generator", "select", "pattern generator.select(b:bat[:bte], low:bte, high:bte, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] +[ "generator", "select", "pattern generator.select(b:bat[:dbl], cand:bat[:oid], low:dbl, high:dbl, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] +[ "generator", "select", "pattern generator.select(b:bat[:dbl], low:dbl, high:dbl, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] +[ "generator", "select", "pattern generator.select(b:bat[:flt], cand:bat[:oid], low:flt, high:flt, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] +[ "generator", "select", "pattern generator.select(b:bat[:flt], low:flt, high:flt, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] +[ "generator", "select", "pattern generator.select(b:bat[:hge], cand:bat[:oid], low:hge, high:hge, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "Overloaded selection routine" ] +[ "generator", "select", "pattern generator.select(b:bat[:hge], low:hge, high:hge, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "Overloaded selection routine" ] +[ "generator", "select", "pattern generator.select(b:bat[:int], cand:bat[:oid], low:int, high:int, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] +[ "generator", "select", "pattern generator.select(b:bat[:int], low:int, high:int, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] +[ "generator", "select", "pattern generator.select(b:bat[:lng], cand:bat[:oid], low:lng, high:lng, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] +[ "generator", "select", "pattern generator.select(b:bat[:lng], low:lng, high:lng, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] +[ "generator", "select", "pattern generator.select(b:bat[:sht], cand:bat[:oid], low:sht, high:sht, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] +[ "generator", "select", "pattern generator.select(b:bat[:sht], low:sht, high:sht, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] +[ "generator", "select", "pattern generator.select(b:bat[:timestamp], cand:bat[:oid], low:timestamp, high:timestamp, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "Overloaded selection routine" ] +[ "generator", "select", "pattern generator.select(b:bat[:timestamp], low:timestamp, high:timestamp, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "Overloaded selection routine" ] [ "generator", "series", "pattern generator.series(first:bte, last:bte):bat[:bte] ", "VLTgenerator_table;", "" ] [ "generator", "series", "pattern generator.series(first:bte, last:bte, step:bte):bat[:bte] ", "VLTgenerator_table;", "" ] [ "generator", "series", "pattern generator.series(first:dbl, last:dbl):bat[:dbl] ", "VLTgenerator_table;", "" ] @@ -14230,38 +14246,22 @@ Ready. [ "generator", "series", "pattern generator.series(first:sht, last:sht):bat[:sht] ", "VLTgenerator_table;", "" ] [ "generator", "series", "pattern generator.series(first:sht, last:sht, step:sht):bat[:sht] ", "VLTgenerator_table;", "" ] [ "generator", "series", "pattern generator.series(first:timestamp, last:timestamp, step:lng):bat[:timestamp] ", "VLTgenerator_table;", "" ] -[ "generator", "subselect", "pattern generator.subselect(b:bat[:bte], cand:bat[:oid], low:bte, high:bte, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] -[ "generator", "subselect", "pattern generator.subselect(b:bat[:bte], low:bte, high:bte, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] -[ "generator", "subselect", "pattern generator.subselect(b:bat[:dbl], cand:bat[:oid], low:dbl, high:dbl, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] -[ "generator", "subselect", "pattern generator.subselect(b:bat[:dbl], low:dbl, high:dbl, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] -[ "generator", "subselect", "pattern generator.subselect(b:bat[:flt], cand:bat[:oid], low:flt, high:flt, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] -[ "generator", "subselect", "pattern generator.subselect(b:bat[:flt], low:flt, high:flt, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] -[ "generator", "subselect", "pattern generator.subselect(b:bat[:hge], cand:bat[:oid], low:hge, high:hge, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "Overloaded selection routine" ] -[ "generator", "subselect", "pattern generator.subselect(b:bat[:hge], low:hge, high:hge, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "Overloaded selection routine" ] -[ "generator", "subselect", "pattern generator.subselect(b:bat[:int], cand:bat[:oid], low:int, high:int, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] -[ "generator", "subselect", "pattern generator.subselect(b:bat[:int], low:int, high:int, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] -[ "generator", "subselect", "pattern generator.subselect(b:bat[:lng], cand:bat[:oid], low:lng, high:lng, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] -[ "generator", "subselect", "pattern generator.subselect(b:bat[:lng], low:lng, high:lng, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] -[ "generator", "subselect", "pattern generator.subselect(b:bat[:sht], cand:bat[:oid], low:sht, high:sht, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] -[ "generator", "subselect", "pattern generator.subselect(b:bat[:sht], low:sht, high:sht, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "" ] -[ "generator", "subselect", "pattern generator.subselect(b:bat[:timestamp], cand:bat[:oid], low:timestamp, high:timestamp, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "Overloaded selection routine" ] -[ "generator", "subselect", "pattern generator.subselect(b:bat[:timestamp], low:timestamp, high:timestamp, li:bit, hi:bit, anti:bit):bat[:oid] ", "VLTgenerator_subselect;", "Overloaded selection routine" ] -[ "generator", "thetasubselect", "pattern generator.thetasubselect(b:bat[:bte], cnd:bat[:oid], low:bte, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] -[ "generator", "thetasubselect", "pattern generator.thetasubselect(b:bat[:bte], low:bte, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] -[ "generator", "thetasubselect", "pattern generator.thetasubselect(b:bat[:dbl], cnd:bat[:oid], low:dbl, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] -[ "generator", "thetasubselect", "pattern generator.thetasubselect(b:bat[:dbl], low:dbl, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] -[ "generator", "thetasubselect", "pattern generator.thetasubselect(b:bat[:flt], cnd:bat[:oid], low:flt, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] -[ "generator", "thetasubselect", "pattern generator.thetasubselect(b:bat[:flt], low:flt, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] -[ "generator", "thetasubselect", "pattern generator.thetasubselect(b:bat[:hge], cnd:bat[:oid], low:hge, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "Overloaded selection routine" ] -[ "generator", "thetasubselect", "pattern generator.thetasubselect(b:bat[:hge], low:hge, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "Overloaded selection routine" ] -[ "generator", "thetasubselect", "pattern generator.thetasubselect(b:bat[:int], cnd:bat[:oid], low:int, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] -[ "generator", "thetasubselect", "pattern generator.thetasubselect(b:bat[:int], low:int, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] -[ "generator", "thetasubselect", "pattern generator.thetasubselect(b:bat[:lng], cnd:bat[:oid], low:lng, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] -[ "generator", "thetasubselect", "pattern generator.thetasubselect(b:bat[:lng], low:lng, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] -[ "generator", "thetasubselect", "pattern generator.thetasubselect(b:bat[:sht], cnd:bat[:oid], low:sht, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] -[ "generator", "thetasubselect", "pattern generator.thetasubselect(b:bat[:sht], low:sht, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] -[ "generator", "thetasubselect", "pattern generator.thetasubselect(b:bat[:timestamp], cnd:bat[:oid], low:timestamp, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "Overloaded selection routine" ] -[ "generator", "thetasubselect", "pattern generator.thetasubselect(b:bat[:timestamp], low:timestamp, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "Overloaded selection routine" ] +[ "generator", "thetaselect", "pattern generator.thetaselect(b:bat[:bte], cnd:bat[:oid], low:bte, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] +[ "generator", "thetaselect", "pattern generator.thetaselect(b:bat[:bte], low:bte, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] +[ "generator", "thetaselect", "pattern generator.thetaselect(b:bat[:dbl], cnd:bat[:oid], low:dbl, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] +[ "generator", "thetaselect", "pattern generator.thetaselect(b:bat[:dbl], low:dbl, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] +[ "generator", "thetaselect", "pattern generator.thetaselect(b:bat[:flt], cnd:bat[:oid], low:flt, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] +[ "generator", "thetaselect", "pattern generator.thetaselect(b:bat[:flt], low:flt, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] +[ "generator", "thetaselect", "pattern generator.thetaselect(b:bat[:hge], cnd:bat[:oid], low:hge, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "Overloaded selection routine" ] +[ "generator", "thetaselect", "pattern generator.thetaselect(b:bat[:hge], low:hge, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "Overloaded selection routine" ] +[ "generator", "thetaselect", "pattern generator.thetaselect(b:bat[:int], cnd:bat[:oid], low:int, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] +[ "generator", "thetaselect", "pattern generator.thetaselect(b:bat[:int], low:int, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] +[ "generator", "thetaselect", "pattern generator.thetaselect(b:bat[:lng], cnd:bat[:oid], low:lng, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] +[ "generator", "thetaselect", "pattern generator.thetaselect(b:bat[:lng], low:lng, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] +[ "generator", "thetaselect", "pattern generator.thetaselect(b:bat[:sht], cnd:bat[:oid], low:sht, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] +[ "generator", "thetaselect", "pattern generator.thetaselect(b:bat[:sht], low:sht, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "" ] +[ "generator", "thetaselect", "pattern generator.thetaselect(b:bat[:timestamp], cnd:bat[:oid], low:timestamp, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "Overloaded selection routine" ] +[ "generator", "thetaselect", "pattern generator.thetaselect(b:bat[:timestamp], low:timestamp, oper:str):bat[:oid] ", "VLTgenerator_thetasubselect;", "Overloaded selection routine" ] [ "geom", "Area", "command geom.Area(w:wkb):dbl ", "wkbArea;", "Returns the area of the surface if it is a polygon or multi-polygon" ] [ "geom", "AsBinary", "command geom.AsBinary(w:wkb):str ", "wkbAsBinary;", "Returns the wkb representation into HEX format" ] [ "geom", "AsEWKT", "function geom.AsEWKT(w:wkb):str;", "", "" ] diff --git a/clients/mapiclient/dump.c b/clients/mapiclient/dump.c --- a/clients/mapiclient/dump.c +++ b/clients/mapiclient/dump.c @@ -947,21 +947,22 @@ describe_table(Mapi mid, const char *sch } mapi_close_handle(hdl); hdl = NULL; - snprintf(query, maxquerylen, - "SELECT col.name, com.remark FROM sys._columns col, sys.comments com WHERE col.id = com.id AND col.table_id = (SELECT id FROM sys._tables WHERE schema_id = (SELECT id FROM sys.schemas WHERE name = '%s') AND name = '%s') ORDER BY number", schema, tname); - if ((hdl = mapi_query(mid, query)) == NULL || mapi_error(mid)) - goto bailout; - while (mapi_fetch_row(hdl) != 0) { - comment_on(toConsole, "COLUMN", schema, tname, - mapi_fetch_field(hdl, 0), - mapi_fetch_field(hdl, 1)); - } - mapi_close_handle(hdl); - hdl = NULL; - if (mapi_error(mid)) - goto bailout; } + snprintf(query, maxquerylen, + "SELECT col.name, com.remark FROM sys._columns col, sys.comments com WHERE col.id = com.id AND col.table_id = (SELECT id FROM sys._tables WHERE schema_id = (SELECT id FROM sys.schemas WHERE name = '%s') AND name = '%s') ORDER BY number", schema, tname); + if ((hdl = mapi_query(mid, query)) == NULL || mapi_error(mid)) + goto bailout; + while (mapi_fetch_row(hdl) != 0) { + comment_on(toConsole, "COLUMN", schema, tname, + mapi_fetch_field(hdl, 0), + mapi_fetch_field(hdl, 1)); + } + mapi_close_handle(hdl); + hdl = NULL; + if (mapi_error(mid)) + goto bailout; + if (view) free(view); if (remark) diff --git a/monetdb5/optimizer/opt_mergetable.c b/monetdb5/optimizer/opt_mergetable.c --- a/monetdb5/optimizer/opt_mergetable.c +++ b/monetdb5/optimizer/opt_mergetable.c @@ -584,14 +584,12 @@ static int mat_setop(MalBlkPtr mb, InstrPtr p, matlist_t *ml, int m, int n) { int tpe = getArgType(mb,p, 0), k, j; - InstrPtr r = newInstruction(mb, NULL, NULL); + InstrPtr r = newInstruction(mb, matRef, packRef); mat_t *mat = ml->v; if(!r) return -1; - setModuleId(r,matRef); - setFunctionId(r,packRef); getArg(r,0) = getArg(p,0); //printf("# %s.%s(%d,%d)", getModuleId(p), getFunctionId(p), m, n); @@ -611,7 +609,7 @@ mat_setop(MalBlkPtr mb, InstrPtr p, matl return -1; } - getArg(s,0) = newTmpVariable(mb, getArgType(mb, mat[m].mi, k)); + getArg(s,0) = newTmpVariable(mb, getArgType(mb, mat[n].mi, k)); for (j=1; j<mat[n].mi->argc; j++) { if (overlap(ml, getArg(mat[m].mi, k), getArg(mat[n].mi, j), -1, -2, 1)){ diff --git a/sql/backends/monet5/generator/Tests/generator00.stable.out b/sql/backends/monet5/generator/Tests/generator00.stable.out --- a/sql/backends/monet5/generator/Tests/generator00.stable.out +++ b/sql/backends/monet5/generator/Tests/generator00.stable.out @@ -177,7 +177,8 @@ Ready. % .L4 # table_name % value # name % tinyint # type -% 1 # length _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list