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

Reply via email to