Eleni, you might also want to checkin your new files that are required to compile your code ;-)
Thanks, Stefan On Tue, Apr 24, 2012 at 10:06:06AM +0200, Eleni Petraki wrote: > Changeset: 71b71ebda4e6 for MonetDB > URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=71b71ebda4e6 > Modified Files: > monetdb5/extras/crackers/60_crackers.mal > monetdb5/extras/crackers/Makefile.ag > monetdb5/extras/crackers/crackers.mx > monetdb5/optimizer/opt_pipes.c > monetdb5/optimizer/opt_support.c > monetdb5/optimizer/opt_support.h > Branch: holindex > Log Message: > > Initial step for holistic indexing. > I implemented an operator that initializes with zero the weights in a list. > > > diffs (175 lines): > > diff --git a/monetdb5/extras/crackers/60_crackers.mal > b/monetdb5/extras/crackers/60_crackers.mal > --- a/monetdb5/extras/crackers/60_crackers.mal > +++ b/monetdb5/extras/crackers/60_crackers.mal > @@ -19,5 +19,6 @@ > library crackers; > include opt_selcrack; > include opt_selcrackst; > +include opt_selcrackhol; > include crackers; > > diff --git a/monetdb5/extras/crackers/Makefile.ag > b/monetdb5/extras/crackers/Makefile.ag > --- a/monetdb5/extras/crackers/Makefile.ag > +++ b/monetdb5/extras/crackers/Makefile.ag > @@ -35,9 +35,13 @@ lib_crackers = { > crackers_index.mx \ > crackers_core_unordered.mx \ > crackers_select_ops.mx \ > + crackers_holistic.c \ > + crackers_holistic.h \ > crackers_selectst_ops.mx \ > + crackers_selecthol_ops.mx \ > opt_selcrack.mx \ > - opt_selcrackst.mx > + opt_selcrackst.mx \ > + opt_selcrackhol.mx > LIBS = ../../tools/libmonetdb5 \ > ../../../gdk/libbat \ > ../../../common/stream/libstream \ > @@ -49,7 +53,8 @@ headers_mal = { > DIR = libdir/monetdb5 > SOURCES = crackers.mx \ > opt_selcrack.mx \ > - opt_selcrackst.mx > + opt_selcrackst.mx \ > + opt_selcrackhol.mx > } > > headers_crackersautoload = { > diff --git a/monetdb5/extras/crackers/crackers.mx > b/monetdb5/extras/crackers/crackers.mx > --- a/monetdb5/extras/crackers/crackers.mx > +++ b/monetdb5/extras/crackers/crackers.mx > @@ -239,6 +239,55 @@ address CRKthetaselectst_@2 > comment "Retrieve the subset using a cracker > index producing preferably a BATview."; > > + > +command selecthol(b:bat[:oid,:@2],l:@2,h:@2):bat[:oid,:@2] > +address CRKselecthol_@2 > +comment "Retrieve the subset using a cracker > + index producing preferably a BATview."; > + > +command selecthol(b:bat[:oid,:@2],l:@2):bat[:oid,:@2] > +address CRKselectholValue_@2 > +comment "Retrieve the subset using a cracker > + index producing preferably a BATview."; > + > +command selecthol(b:bat[:oid,:@2],l:@2,h:@2,li:bit,hi:bit):bat[:oid,:@2] > +address CRKselectholBounds_@2 > +comment "Retrieve the subset using a cracker > + index producing preferably a BATview."; > + > +command uselecthol(b:bat[:any_1,:@2],l:@2,h:@2):bat[:any_1,:void] > +address CRKuselecthol_@2 > +comment "Retrieve the subset using a cracker > + index producing preferably a BATview."; > + > +command uselecthol(b:bat[:any_1,:@2],l:@2):bat[:any_1,:void] > +address CRKuselectholValue_@2 > +comment "Retrieve the subset using a cracker > + index producing preferably a BATview."; > + > +command > uselecthol(b:bat[:any_1,:@2],l:@2,h:@2,li:bit,hi:bit):bat[:any_1,:void] > +address CRKuselectholBounds_@2 > +comment "Retrieve the subset using a cracker > + index producing preferably a BATview."; > + > +command thetauselecthol(b:bat[:any_1,:@2],v:@2,op:str):bat[:any_1,:void] > +address CRKthetauselecthol_@2 > +comment "Retrieve the subset using a cracker > + index producing preferably a BATview."; > + > +command thetaselecthol(b:bat[:any_1,:@2],v:@2,op:str):bat[:any_1,:@2] > +address CRKthetaselecthol_@2 > +comment "Retrieve the subset using a cracker > + index producing preferably a BATview."; > + > +command initFrequencyStruct(b:bat[:any_1,:@2]):void > +address CRKinitFrequencyStruct_@2 > +comment "Initialize the struct(lifo) with zero values."; > + > +command selectNode(l:int,h:int):void > +address CRKselectNode > +comment "Select node/BAT to crack (randomly)."; > + > @ > @= Index > command printCrackerIndexBATpart(b:bat[:any_1,:@2]):void > @@ -296,12 +345,15 @@ comment "Break a BAT into three pieces w > #include "crackers_index.h" > #include "crackers_select_ops.h" > #include "crackers_selectst_ops.h" > +#include "crackers_selecthol_ops.h" > +#include "crackers_holistic.h" > #include "crackers_core_unordered.h" > #include "crackers_AVL_tree.h" > > #ifdef LIBCRACKERS > extern int maxCrackMap; > extern CrackerIndexNode *CrackerIndex; > +extern FrequencyNode *FrequencyStruct; > extern int IndexEntries; > extern int IndexSize; > extern int IndexStop; > @@ -323,6 +375,7 @@ extern struct storageManagement *Storage > int maxCrackMap = 0; > > CrackerIndexNode *CrackerIndex; > +FrequencyNode *FrequencyStruct; > > struct storageManagement *StorageInfo = NULL; > > 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 > @@ -296,6 +296,28 @@ struct PIPELINES { > "optimizer.multiplex();" > "optimizer.garbageCollector();", > "experimental", "OPTselcrackst", 0}, > +/*The HOLISTIC indexing pipeline*/ > + {"crackerhol_pipe", > + "optimizer.inline();" > + "optimizer.remap();" > + "optimizer.evaluate();" > + "optimizer.costModel();" > + "optimizer.coercions();" > + "optimizer.emptySet();" > + "optimizer.aliases();" > + "optimizer.selcrackhol();" > + "optimizer.deadcode();" > + "optimizer.commonTerms();" > + "optimizer.groups();" > + "optimizer.joinPath();" > + "optimizer.reorder();" > + "optimizer.deadcode();" > + "optimizer.reduce();" > + "optimizer.dataflow();" > + "optimizer.history();" > + "optimizer.multiplex();" > + "optimizer.garbageCollector();", > + "experimental", "OPTselcrackhol", 0}, > > > {"sidcrack_pipe", > 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 > @@ -603,6 +603,7 @@ struct OPTcatalog { > {"replication", 0, 0, 0, DEBUG_OPT_REPLICATION}, > {"selcrack", 0, 0, 0, DEBUG_OPT_SELCRACK}, > {"selcrackst", 0, 0, 0, DEBUG_OPT_SELCRACKST}, > +{"selcrackhol", 0, 0, 0, DEBUG_OPT_SELCRACKHOL}, > {"sidcrack", 0, 0, 0, DEBUG_OPT_SIDCRACK}, > {"singleton", 0, 0, 0, DEBUG_OPT_SINGLETON}, > {"strengthreduction", 0, 0, 0, > DEBUG_OPT_STRENGTHREDUCTION}, > 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 > @@ -93,6 +93,7 @@ > #define DEBUG_OPT_HEURISTIC 49 > #define DEBUG_OPT_CENTIPEDE 50 > #define DEBUG_OPT_SELCRACKST 51 > +#define DEBUG_OPT_SELCRACKHOL 52 > > #define DEBUG_OPT(X) ((lng) 1 << (X)) > opt_export lng optDebug; > _______________________________________________ > Checkin-list mailing list > [email protected] > http://mail.monetdb.org/mailman/listinfo/checkin-list -- | Stefan.Manegold @ CWI.nl | DB Architectures (INS1) | | http://CWI.nl/~manegold/ | Science Park 123 (L321) | | Tel.: +31 (0)20 592-4212 | 1098 XG Amsterdam (NL) | _______________________________________________ Checkin-list mailing list [email protected] http://mail.monetdb.org/mailman/listinfo/checkin-list
