Changeset: 25de9ecaf0b4 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=25de9ecaf0b4 Added Files: monetdb5/optimizer/opt_datavaults.c monetdb5/optimizer/opt_datavaults.h Removed Files: monetdb5/optimizer/opt_gadget.c monetdb5/optimizer/opt_gadget.h Modified Files: monetdb5/optimizer/Makefile.ag monetdb5/optimizer/opt_pipes.c monetdb5/optimizer/opt_prelude.c monetdb5/optimizer/opt_prelude.h monetdb5/optimizer/opt_support.c monetdb5/optimizer/opt_support.h monetdb5/optimizer/opt_wrapper.c monetdb5/optimizer/optimizer.mal Branch: data-vaults Log Message:
Rename the gadget optimizer to datavaults optimizer. It will now be used to re-write plans to inject checkTables and analyzeTables operators for each datavault. First step for a generic optimizer which depending on the datavault type calls the correct reader. diffs (253 lines): diff --git a/monetdb5/optimizer/Makefile.ag b/monetdb5/optimizer/Makefile.ag --- a/monetdb5/optimizer/Makefile.ag +++ b/monetdb5/optimizer/Makefile.ag @@ -28,7 +28,7 @@ lib_optimizer = { opt_deadcode.c opt_deadcode.h \ opt_evaluate.c opt_evaluate.h \ opt_factorize.c opt_factorize.h \ - opt_gadget.c opt_gadget.h \ + opt_datavaults.c opt_datavaults.h \ opt_garbageCollector.c opt_garbageCollector.h \ opt_generator.c opt_generator.h \ opt_querylog.c opt_querylog.h \ diff --git a/monetdb5/optimizer/opt_gadget.c b/monetdb5/optimizer/opt_datavaults.c rename from monetdb5/optimizer/opt_gadget.c rename to monetdb5/optimizer/opt_datavaults.c --- a/monetdb5/optimizer/opt_gadget.c +++ b/monetdb5/optimizer/opt_datavaults.c @@ -7,7 +7,7 @@ */ #include "monetdb_config.h" -#include "opt_gadget.h" +#include "opt_datavaults.h" #include "mal_interpreter.h" /* for showErrors() */ #include "mal_builder.h" /* @@ -39,13 +39,13 @@ checkTable(int *res, int *action, MalBlk if ( num_tabs && ((num_tabs % DEFAULT_NUM_TABLES) == 0)) { *tabs = (TABLE*) GDKrealloc(tabs, sizeof(TABLE) * (num_tabs*2)); if (!tabs) { - throw(MAL, "optimizer.gadget", "Realloc failed"); + throw(MAL, "optimizer.datavaults", "Realloc failed"); } } for(i = 0; i < num_tabs; i++) { if ( tabs[i]->sname && (strcmp(tabs[i]->sname, sname) == 0) && (strcmp(tabs[i]->tname, tname) == 0)) { r = newInstruction(mb,ASSIGNsymbol); - setModuleId(r, gadgetRef); + setModuleId(r, datavaultsRef); setFunctionId(r, getFunctionId(p)); getArg(r,0) = getArg(p,0); for (j = 1; j < p->retc; j++) { @@ -64,7 +64,7 @@ checkTable(int *res, int *action, MalBlk } c = newInstruction(mb,ASSIGNsymbol); - setModuleId(c, gadgetRef); + setModuleId(c, datavaultsRef); setFunctionId(c, checktableRef); getArg(c,0) = newTmpVariable(mb, TYPE_int); c = pushArgument(mb, c, getArg(p,1+upd)); @@ -73,7 +73,7 @@ checkTable(int *res, int *action, MalBlk pushInstruction(mb,c); a = newInstruction(mb,ASSIGNsymbol); - setModuleId(a, gadgetRef); + setModuleId(a, datavaultsRef); setFunctionId(a, analyzetableRef); getArg(a,0) = newTmpVariable(mb, TYPE_int); a = pushArgument(mb, a, getArg(p,1+upd)); @@ -83,7 +83,7 @@ checkTable(int *res, int *action, MalBlk pushInstruction(mb,a); r = newInstruction(mb,ASSIGNsymbol); - setModuleId(r, gadgetRef); + setModuleId(r, datavaultsRef); setFunctionId(r, getFunctionId(p)); getArg(r,0) = getArg(p,0); for (j = 1; j < p->retc; j++) { @@ -111,14 +111,14 @@ checkTable(int *res, int *action, MalBlk } int -OPTgadgetImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci) +OPTdatavaultsImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci) { InstrPtr p, *old; int i, limit, slimit, action=0; TABLE **tabs = NULL; int num_tabs = 0; - mnstr_printf(cntxt->fdout, "Gadget optimizer started\n"); + mnstr_printf(cntxt->fdout, "Datavaults optimizer started\n"); (void) cntxt; (void) stk; (void) pci; @@ -159,9 +159,9 @@ OPTgadgetImplementation(Client cntxt, Ma GDKfree(tabs); } -#ifdef DEBUG_OPT_GADGET +#ifdef DEBUG_OPT_DATAVAULTS if (0 && action) { - mnstr_printf(cntxt->fdout, "gadget %d\n", action); + mnstr_printf(cntxt->fdout, "datavaults %d\n", action); printFunction(cntxt->fdout, mb, 0, LIST_MAL_ALL); } #endif diff --git a/monetdb5/optimizer/opt_gadget.h b/monetdb5/optimizer/opt_datavaults.h rename from monetdb5/optimizer/opt_gadget.h rename to monetdb5/optimizer/opt_datavaults.h --- a/monetdb5/optimizer/opt_gadget.h +++ b/monetdb5/optimizer/opt_datavaults.h @@ -6,14 +6,14 @@ * Copyright 1997 - July 2008 CWI, August 2008 - 2016 MonetDB B.V. */ -#ifndef _OPT_GADGET_ -#define _OPT_GADGET_ +#ifndef _OPT_DATAVAULTS_ +#define _OPT_DATAVAULTS_ #include "opt_prelude.h" #include "opt_support.h" opt_export int -OPTgadgetImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); +OPTdatavaultsImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); -#define OPTDEBUGgadget if ( optDebug & ((lng)1 <<DEBUG_OPT_GADGET) ) +#define OPTDEBUGdatavaults if ( optDebug & ((lng)1 <<DEBUG_OPT_DATAVAULTS) ) #endif diff --git a/monetdb5/optimizer/opt_pipes.c b/monetdb5/optimizer/opt_pipes.c --- a/monetdb5/optimizer/opt_pipes.c +++ b/monetdb5/optimizer/opt_pipes.c @@ -225,15 +225,15 @@ static struct PIPELINES { "optimizer.garbageCollector();", "stable", NULL, NULL, 1}, */ -/*The gadget pipe line is (and should be kept!) identical to the - * default pipeline, except that optimizer gadget is added. +/*The datavaults pipe line is (and should be kept!) identical to the + * default pipeline, except that optimizer datavaults is added. * * NOTE: - * If you change the gadget pipe, please also update the man page + * If you change the datavaults pipe, please also update the man page * (see tools/mserver/mserver5.1) accordingly! */ - {"gadget_pipe", + {"datavaults_pipe", "optimizer.inline();" "optimizer.candidates();" "optimizer.remap();" @@ -242,7 +242,7 @@ static struct PIPELINES { "optimizer.evaluate();" "optimizer.aliases();" "optimizer.pushselect();" - "optimizer.gadget();" + "optimizer.datavaults();" "optimizer.mitosis();" "optimizer.mergetable();" "optimizer.deadcode();" diff --git a/monetdb5/optimizer/opt_prelude.c b/monetdb5/optimizer/opt_prelude.c --- a/monetdb5/optimizer/opt_prelude.c +++ b/monetdb5/optimizer/opt_prelude.c @@ -239,7 +239,7 @@ str ilikesubselectRef; str userRef; str vectorRef; str zero_or_oneRef; -str gadgetRef; +str datavaultsRef; str checktableRef; str analyzetableRef; @@ -471,7 +471,7 @@ void optimizerInit(void) vectorRef = putName("vector"); zero_or_oneRef = putName("zero_or_one"); userRef = putName("user"); - gadgetRef = putName("gadget"); + datavaultsRef = putName("datavaults"); checktableRef = putName("checktable"); analyzetableRef = putName("analyzetable"); diff --git a/monetdb5/optimizer/opt_prelude.h b/monetdb5/optimizer/opt_prelude.h --- a/monetdb5/optimizer/opt_prelude.h +++ b/monetdb5/optimizer/opt_prelude.h @@ -239,7 +239,7 @@ opt_export str not_ilikeRef; opt_export str userRef; opt_export str vectorRef; opt_export str zero_or_oneRef; -opt_export str gadgetRef; +opt_export str datavaultsRef; opt_export str checktableRef; opt_export str analyzetableRef; #endif diff --git a/monetdb5/optimizer/opt_support.c b/monetdb5/optimizer/opt_support.c --- a/monetdb5/optimizer/opt_support.c +++ b/monetdb5/optimizer/opt_support.c @@ -140,7 +140,7 @@ struct OPTcatalog { {"deadcode", 0, 0, 0, DEBUG_OPT_DEADCODE}, {"evaluate", 0, 0, 0, DEBUG_OPT_EVALUATE}, {"factorize", 0, 0, 0, DEBUG_OPT_FACTORIZE}, -{"gadget", 0, 0, 0, DEBUG_OPT_GADGET}, +{"datavaults", 0, 0, 0, DEBUG_OPT_DATAVAULTS}, {"garbage", 0, 0, 0, DEBUG_OPT_GARBAGE}, {"generator", 0, 0, 0, DEBUG_OPT_GENERATOR}, {"history", 0, 0, 0, DEBUG_OPT_HISTORY}, diff --git a/monetdb5/optimizer/opt_support.h b/monetdb5/optimizer/opt_support.h --- a/monetdb5/optimizer/opt_support.h +++ b/monetdb5/optimizer/opt_support.h @@ -74,7 +74,7 @@ #define DEBUG_OPT_JSON 54 #define DEBUG_OPT_GEOSPATIAL 55 #define DEBUG_OPT_VOLCANO 10 -#define DEBUG_OPT_GADGET 56 +#define DEBUG_OPT_DATAVAULTS 56 #define DEBUG_OPT(X) ((lng) 1 << (X)) opt_export lng optDebug; diff --git a/monetdb5/optimizer/opt_wrapper.c b/monetdb5/optimizer/opt_wrapper.c --- a/monetdb5/optimizer/opt_wrapper.c +++ b/monetdb5/optimizer/opt_wrapper.c @@ -36,7 +36,7 @@ #include "opt_deadcode.h" #include "opt_evaluate.h" #include "opt_factorize.h" -#include "opt_gadget.h" +#include "opt_datavaults.h" #include "opt_garbageCollector.h" #include "opt_generator.h" #include "opt_inline.h" @@ -73,7 +73,7 @@ struct{ {"dumpQEP", &OPTdumpQEPImplementation}, {"evaluate", &OPTevaluateImplementation}, {"factorize", &OPTfactorizeImplementation}, - {"gadget", &OPTgadgetImplementation}, + {"datavaults", &OPTdatavaultsImplementation}, {"garbageCollector", &OPTgarbageCollectorImplementation}, {"generator", &OPTgeneratorImplementation}, {"inline", &OPTinlineImplementation}, diff --git a/monetdb5/optimizer/optimizer.mal b/monetdb5/optimizer/optimizer.mal --- a/monetdb5/optimizer/optimizer.mal +++ b/monetdb5/optimizer/optimizer.mal @@ -114,13 +114,13 @@ pattern optimizer.factorize(mod:str, fcn address OPTwrapper comment "Turn function into a factory"; -#opt_gadget.mal +#opt_datavaults.mal -pattern optimizer.gadget():str +pattern optimizer.datavaults():str address OPTwrapper; -pattern optimizer.gadget(mod:str, fcn:str):str +pattern optimizer.datavaults(mod:str, fcn:str):str address OPTwrapper -comment "Lazy load of gadget files" +comment "Lazy load of datavaults files" #opt_garbagecollector.mal _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list