Changeset: 7e88219e9443 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=7e88219e9443 Added Files: monetdb5/optimizer/opt_candidates.c monetdb5/optimizer/opt_candidates.h Modified Files: clients/R/Tests/deps-test.stable.out clients/Tests/MAL-signatures.stable.out clients/Tests/MAL-signatures.stable.out.int128 clients/Tests/exports.stable.out clients/mapiclient/eventparser.c clients/mapiclient/eventparser.h clients/odbc/driver/ODBCConvert.c configure.ag gdk/ChangeLog gdk/gdk.h gdk/gdk_align.c gdk/gdk_atoms.c gdk/gdk_bat.c gdk/gdk_bbp.c gdk/gdk_group.c gdk/gdk_heap.c gdk/gdk_imprints.c gdk/gdk_join.c gdk/gdk_logger.c gdk/gdk_posix.c gdk/gdk_private.h gdk/gdk_sample.c gdk/gdk_search.c gdk/gdk_select.c gdk/gdk_ssort.c gdk/gdk_storage.c gdk/gdk_tm.c gdk/gdk_unique.c gdk/gdk_utils.c monetdb5/ChangeLog monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.err monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out.single monetdb5/mal/Tests/tst201.mal monetdb5/mal/Tests/tst201.stable.out monetdb5/mal/mal.h monetdb5/mal/mal_atom.c monetdb5/mal/mal_function.c monetdb5/mal/mal_instruction.c monetdb5/mal/mal_instruction.h monetdb5/mal/mal_linker.c monetdb5/mal/mal_parser.c monetdb5/mal/mal_profiler.c monetdb5/mal/mal_type.h monetdb5/modules/kernel/algebra.c monetdb5/modules/kernel/algebra.h monetdb5/modules/kernel/algebra.mal monetdb5/modules/kernel/bat5.c monetdb5/modules/mal/batExtensions.c monetdb5/modules/mal/bbp.c monetdb5/modules/mal/manifold.h monetdb5/modules/mal/mat.c monetdb5/modules/mal/mat.h monetdb5/modules/mal/mat.mal monetdb5/modules/mal/tablet.c monetdb5/modules/mal/tokenizer.c monetdb5/modules/mal/transaction.c monetdb5/optimizer/Makefile.ag monetdb5/optimizer/opt_garbageCollector.c monetdb5/optimizer/opt_multiplex.c monetdb5/optimizer/opt_pipes.c monetdb5/optimizer/opt_prelude.c monetdb5/optimizer/opt_prelude.h monetdb5/optimizer/opt_pushselect.c monetdb5/optimizer/opt_remoteQueries.c monetdb5/optimizer/opt_support.h monetdb5/optimizer/opt_wrapper.c monetdb5/optimizer/optimizer.mal sql/backends/monet5/UDF/Tests/udf-fuse.stable.out sql/backends/monet5/UDF/Tests/udf-reverse.stable.out sql/backends/monet5/embeddedclient.c.in sql/backends/monet5/embeddedclient.h sql/backends/monet5/prog.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/vaults/fits.c sql/benchmarks/ssbm/Tests/01-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/02-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/03-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/04-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/05-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/06-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/07-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/08-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/09-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/10-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/11-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/12-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/13-explain.stable.out.int128 sql/benchmarks/tpch/Tests/01-explain.stable.out.int128 sql/benchmarks/tpch/Tests/02-explain.stable.out sql/benchmarks/tpch/Tests/03-explain.stable.out.int128 sql/benchmarks/tpch/Tests/04-explain.stable.out sql/benchmarks/tpch/Tests/05-explain.stable.out.int128 sql/benchmarks/tpch/Tests/06-explain.stable.out.int128 sql/benchmarks/tpch/Tests/07-explain.stable.out.int128 sql/benchmarks/tpch/Tests/08-explain.stable.out.int128 sql/benchmarks/tpch/Tests/09-explain.stable.out.int128 sql/benchmarks/tpch/Tests/10-explain.stable.out.int128 sql/benchmarks/tpch/Tests/11-explain.stable.out.int128 sql/benchmarks/tpch/Tests/12-explain.stable.out sql/benchmarks/tpch/Tests/12-explain.stable.out.int128 sql/benchmarks/tpch/Tests/13-explain.stable.out sql/benchmarks/tpch/Tests/13-explain.stable.out.32bit sql/benchmarks/tpch/Tests/14-explain.stable.out.int128 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.int128 sql/benchmarks/tpch/Tests/18-explain.stable.out.int128 sql/benchmarks/tpch/Tests/19-explain.stable.out.int128 sql/benchmarks/tpch/Tests/20-explain.stable.out.int128 sql/benchmarks/tpch/Tests/21-explain.stable.out sql/benchmarks/tpch/Tests/21-explain.stable.out.32bit sql/benchmarks/tpch/Tests/22-explain.stable.out.int128 sql/test/BugTracker-2009/Tests/POWER_vs_prod.SF-2596114.stable.out sql/test/BugTracker-2010/Tests/LIMIT_OFFSET_big-endian.Bug-2622.stable.out sql/test/BugTracker-2010/Tests/group-by_ordered_column.Bug-2564.stable.out sql/test/BugTracker-2010/Tests/group-by_ordered_column.Bug-2564.stable.out.32bit sql/test/BugTracker-2011/Tests/crash_on_alias.Bug-2798.stable.out.int128 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/between.Bug-3259.stable.out.int128 sql/test/BugTracker-2014/Tests/manifold.Bug-3556.stable.out sql/test/BugTracker-2014/Tests/nil_2dec_lng.Bug-3592.stable.out sql/test/BugTracker-2015/Tests/insert_into_merge_table_crash.Bug-3703.stable.err sql/test/BugTracker-2015/Tests/insert_into_merge_table_crash.Bug-3703.stable.out sql/test/BugTracker-2015/Tests/local-remotetable-crash.Bug-3754.stable.err sql/test/BugTracker-2015/Tests/local-remotetable-crash.Bug-3754.stable.out sql/test/BugTracker/Tests/explain.SF-1739353.stable.out sql/test/BugTracker/Tests/jdbc_no_debug.SF-1739356.stable.out sql/test/Tests/setoptimizer.stable.err sql/test/Tests/setoptimizer.stable.out sql/test/Tests/setoptimizer.stable.out.Windows sql/test/mergetables/Tests/mergequery.stable.out sql/test/remote/Tests/partition_elim.stable.out testing/Mtest.py.in Branch: embedded-java Log Message:
Add merge with default branch diffs (truncated from 12071 to 300 lines): 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 @@ -2350,10 +2350,6 @@ command algebra.like(s:str,pat:str):bit address PCRElike2; command algebra.like(s:str,pat:str,esc:str):bit address PCRElike3; -command algebra.like(b:bat[:oid,:str],substr:str):bat[:oid,:oid] -address ALGlike; -comment Selects all elements that have 'substr' as in the tail. - command algebra.leftfetchjoin(left:bat[:oid,:oid],right:bat[:oid,:any_3]):bat[:oid,:any_3] address ALGleftfetchjoin; comment Hook directly into the left fetch join implementation. @@ -38908,8 +38904,6 @@ pattern mat.new(b:bat[:oid,:any_2]...):b address MATpack; comment Define a Merge Association Table (MAT). Faal back to the pack operationwhen this is called -pattern mat.print(b:bat[:oid,:any_2]...):void -address MATprint; pattern mat.project(map:bat[:oid,:bte],b:bat[:oid,:any_2]...):bat[:oid,:any_2] address MATproject; comment project using the map bat (contains which bat to use in scan order) @@ -39756,6 +39750,12 @@ comment Duplicate constant removal optim pattern optimizer.constants():str address OPTwrapper; +pattern optimizer.candidates(mod:str,fcn:str):str +address OPTwrapper; +comment Mark candidate list variables + +pattern optimizer.candidates():str +address OPTwrapper; pattern optimizer.commonTerms(mod:any_1,fcn:any_2):str address OPTwrapper; comment Common sub-expression optimizer @@ -40823,11 +40823,11 @@ pattern sql.start():void address SQLsession; comment Switch to processing SQL statements -pattern sql.tid(mvc:int,sname:str,tname:str,part_nr:int,nr_parts:int):bat[:oid,:any_3] +pattern sql.tid(mvc:int,sname:str,tname:str,part_nr:int,nr_parts:int):bat[:oid,:oid] address SQLtid; comment Return the tables tid column. -pattern sql.tid(mvc:int,sname:str,tname:str):bat[:oid,:any_3] +pattern sql.tid(mvc:int,sname:str,tname:str):bat[:oid,:oid] address SQLtid; comment Return the tables tid column. 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 @@ -2861,10 +2861,6 @@ command algebra.like(s:str,pat:str):bit address PCRElike2; command algebra.like(s:str,pat:str,esc:str):bit address PCRElike3; -command algebra.like(b:bat[:oid,:str],substr:str):bat[:oid,:oid] -address ALGlike; -comment Selects all elements that have 'substr' as in the tail. - command algebra.leftfetchjoin(left:bat[:oid,:oid],right:bat[:oid,:any_3]):bat[:oid,:any_3] address ALGleftfetchjoin; comment Hook directly into the left fetch join implementation. @@ -49835,8 +49831,6 @@ pattern mat.new(b:bat[:oid,:any_2]...):b address MATpack; comment Define a Merge Association Table (MAT). Faal back to the pack operationwhen this is called -pattern mat.print(b:bat[:oid,:any_2]...):void -address MATprint; pattern mat.project(map:bat[:oid,:bte],b:bat[:oid,:any_2]...):bat[:oid,:any_2] address MATproject; comment project using the map bat (contains which bat to use in scan order) @@ -50687,6 +50681,12 @@ comment Duplicate constant removal optim pattern optimizer.constants():str address OPTwrapper; +pattern optimizer.candidates(mod:str,fcn:str):str +address OPTwrapper; +comment Mark candidate list variables + +pattern optimizer.candidates():str +address OPTwrapper; pattern optimizer.commonTerms(mod:any_1,fcn:any_2):str address OPTwrapper; comment Common sub-expression optimizer @@ -51762,11 +51762,11 @@ pattern sql.start():void address SQLsession; comment Switch to processing SQL statements -pattern sql.tid(mvc:int,sname:str,tname:str,part_nr:int,nr_parts:int):bat[:oid,:any_3] +pattern sql.tid(mvc:int,sname:str,tname:str,part_nr:int,nr_parts:int):bat[:oid,:oid] address SQLtid; comment Return the tables tid column. -pattern sql.tid(mvc:int,sname:str,tname:str):bat[:oid,:any_3] +pattern sql.tid(mvc:int,sname:str,tname:str):bat[:oid,:oid] address SQLtid; comment Return the tables tid column. 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 @@ -298,7 +298,7 @@ int THRhighwater(void); Thread THRnew(const char *name); int THRprintf(stream *s, _In_z_ _Printf_format_string_ const char *format, ...) __attribute__((__format__(__printf__, 2, 3))); void THRsetdata(int, ptr); -gdk_return TMabort(void); +void TMabort(void); gdk_return TMcommit(void); gdk_return TMsubcommit(BAT *bl); gdk_return TMsubcommit_list(bat *subcommit, int cnt); @@ -710,7 +710,6 @@ str ALGgroupby(bat *res, const bat *gids str ALGjoin2(bat *l, bat *r, const bat *lid, const bat *rid); str ALGjoinPath(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); str ALGleftfetchjoin(bat *result, const bat *lid, const bat *rid); -str ALGlike(bat *ret, const bat *bid, const str *k); str ALGmaxany(ptr result, const bat *bid); str ALGminany(ptr result, const bat *bid); str ALGprojecttail(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); @@ -1363,7 +1362,6 @@ str MATpack2(Client cntxt, MalBlkPtr mb, str MATpackIncrement(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr p); str MATpackSlice(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr p); str MATpackValues(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr p); -str MATprint(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr p); str MATproject(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); str MATsort(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); str MATsortReverse(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); @@ -1561,6 +1559,7 @@ str MTIMEtzone_tostr(str *s, const tzone str MTIMEunix_epoch(timestamp *ret); void OPTaliasRemap(InstrPtr p, int *alias); int OPTaliasesImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr p); +int OPTcandidatesImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr p); int OPTcoercionImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); int OPTcommonTermsImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); int OPTconstantsImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr p); @@ -2004,8 +2003,6 @@ str bstream_read_wrapwrap(int *res, Bstr str calcRef; str callMAL(Client cntxt, MalBlkPtr mb, MalStkPtr *glb, ValPtr argv[], char debug); int callString(Client c, str s, int listing); -int canBeCrackedProp; -int canBeJoinselectProp; str catalogRef; str catchKernelException(Client cntxt, str ret); void chkDeclarations(stream *out, MalBlkPtr mb); @@ -2067,7 +2064,6 @@ void delName(const char *nme, size_t len void delVariable(MalBlkPtr mb, int varid); str deleteRef; void deleteSymbol(Module scope, Symbol prg); -int deletesProp; str deltaRef; str depositRef; void deriveModule(Module scope, str nme); @@ -2178,16 +2174,14 @@ int hasSameSignature(MalBlkPtr mb, Instr int hasSideEffects(InstrPtr p, int strict); str hashRef; int have_hge; -int headProp; str hgeRef; -int hlbProp; int horiginProp; -int hubProp; str identityRef; str ifthenelseRef; str ilikeRef; str ilikeselectRef; str ilikesubselectRef; +str ilikethetasubselectRef; str ilikeuselectRef; void initHeartbeat(void); void initLibraries(void); @@ -2201,7 +2195,6 @@ str inplaceRef; void insertInstruction(MalBlkPtr mb, InstrPtr p, int pc); str insertRef; void insertSymbol(Module scope, Symbol prg); -int insertionsProp; str instruction2str(MalBlkPtr mb, MalStkPtr stl, InstrPtr p, int hidden); str instructionCall(MalBlkPtr mb, InstrPtr p, str s, str base, size_t len); str intRef; @@ -2249,7 +2242,6 @@ str joinPathRef; str joinRef; str jsonRef; str kdifferenceRef; -int keepProp; str languageRef; str leftfetchjoinPathRef; str leftfetchjoinRef; @@ -2259,6 +2251,7 @@ str levenshteinbasic_impl(int *result, s str likeRef; str likeselectRef; str likesubselectRef; +str likethetasubselectRef; str likeuselectRef; str listRef; str loadLibrary(str modulename, int flag); @@ -2388,7 +2381,6 @@ str notRef; str not_ilikeRef; str not_likeRef; str not_uniqueRef; -int notnilProp; str oidRef; void oldmoveInstruction(InstrPtr dst, InstrPtr src); str openProfilerStream(stream *fd); @@ -2412,8 +2404,6 @@ str pcreRef; str pcre_init(void *ret); var_t pcre_put(Heap *h, var_t *bun, pcre *val); str pinRef; -int pivotDisjunctiveProp; -int pivotProp; str plusRef; str postludeRef; str preludeRef; @@ -2477,7 +2467,6 @@ str remoteRef; void removeDataflow(MalBlkPtr mb); void removeInstruction(MalBlkPtr mb, InstrPtr p); void removeInstructionBlock(MalBlkPtr mb, int pc, int cnt); -int removeProp; void removeVariable(MalBlkPtr mb, int varid); void renameVariable(MalBlkPtr mb, int i, str pattern, int newid); str replaceRef; @@ -2543,7 +2532,6 @@ void showScenarioByName(stream *f, str s void showScriptException(stream *out, MalBlkPtr, int, enum malexception, _In_z_ _Printf_format_string_ const char *, ...) __attribute__((__format__(__printf__, 5, 6))); str shutdownFactory(Client cntxt, MalBlkPtr mb); str shutdownFactoryByName(Client cntxt, Module m, str nme); -int sidewaysSelectProp; str singleRef; str sinkRef; void slash_2_dir_sep(str fname); @@ -2556,7 +2544,6 @@ int sqlblob_fromstr(char *instr, int *l, int sqlblob_tostr(str *tostr, int *l, const blob *p); int sqlfunctionProp; str srvpoolRef; -int stableProp; str startProfiler(oid user, int mode, int beat); str startRef; str stopProfiler(void); @@ -2589,8 +2576,8 @@ str subsliceRef; str subsortRef; str subsumRef; str subthetajoinRef; +str subuniqueRef; str sumRef; -int tableProp; str takeOid(oid id, str *val); str takeRef; str thetajoinRef; @@ -2602,12 +2589,10 @@ timestamp *timestamp_nil; int timestamp_tostr(str *buf, int *len, const timestamp *val); int timestamp_tz_fromstr(const char *buf, int *len, timestamp **ret); int timestamp_tz_tostr(str *buf, int *len, const timestamp *val, const tzone *timezone); -int tlbProp; int toriginProp; void trimMalBlk(MalBlkPtr mb); void trimMalVariables(MalBlkPtr mb, MalStkPtr stk); void trimMalVariables_(MalBlkPtr mb, bit *used, MalStkPtr glb); -int tubProp; void typeChecker(stream *out, Module scope, MalBlkPtr mb, InstrPtr p, int silent); int tzone_fromstr(const char *buf, int *len, tzone **d); tzone tzone_local; @@ -2621,7 +2606,6 @@ int unsafeProp; void updateFootPrint(MalBlkPtr mb, MalStkPtr stk, int varid); str updateRef; void updateScenario(str scen, str nme, MALfcn fcn); -int updatesProp; str userRef; VarPtr varGetProp(MalBlkPtr mb, int var, int prop); str varGetPropStr(MalBlkPtr mb, int var); diff --git a/clients/mapiclient/eventparser.c b/clients/mapiclient/eventparser.c --- a/clients/mapiclient/eventparser.c +++ b/clients/mapiclient/eventparser.c @@ -8,6 +8,7 @@ /* (c) M Kersten */ +#include "monetdb_config.h" #include "eventparser.h" char *statenames[]= {"","start","done","action","ping","wait","system"}; diff --git a/clients/mapiclient/eventparser.h b/clients/mapiclient/eventparser.h --- a/clients/mapiclient/eventparser.h +++ b/clients/mapiclient/eventparser.h @@ -19,8 +19,6 @@ #ifndef _EVENT_PARSER_ #define _EVENT_PARSER_ -#include "monetdb_config.h" -#include "monet_options.h" #include <mapi.h> #include <stream.h> #include <stdio.h> diff --git a/clients/odbc/driver/ODBCConvert.c b/clients/odbc/driver/ODBCConvert.c --- a/clients/odbc/driver/ODBCConvert.c +++ b/clients/odbc/driver/ODBCConvert.c @@ -511,7 +511,7 @@ parseoptionalbracketednumber(char **sval return SQL_ERROR; slen -= (int) (eptr - sval); sval = eptr; - *val2p = val; + *val2p = (int) val; } _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list