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

Reply via email to