Changeset: 363c26c3c159 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=363c26c3c159 Modified Files: monetdb5/modules/mosaic/mosaic.c monetdb5/modules/mosaic/mosaic.h monetdb5/modules/mosaic/mosaic_runlength_templates.h Branch: mosaic-scratch Log Message:
Ungoing work. diffs (69 lines): diff --git a/monetdb5/modules/mosaic/mosaic.c b/monetdb5/modules/mosaic/mosaic.c --- a/monetdb5/modules/mosaic/mosaic.c +++ b/monetdb5/modules/mosaic/mosaic.c @@ -356,21 +356,6 @@ MOSlayout_hdr(MOStask* task, MosaicLayou &properties)) != MAL_SUCCEED) return msg; - /* - for(i=0; i < MOSAIC_METHODS; i++){ - lng nil = 0; - snprintf(buf,BUFSIZ,"%s blocks", MOSmethods[i].name); - if( BUNappend(bbsn, &zero, false) != GDK_SUCCEED || - BUNappend(btech, buf, false) != GDK_SUCCEED || - BUNappend(bcount, &(task->hdr)->blks[i], false) != GDK_SUCCEED || - BUNappend(binput, &(task->hdr)->elms[i], false) != GDK_SUCCEED || - BUNappend(boutput, &nil , false) != GDK_SUCCEED || - BUNappend(bproperties, "", false) != GDK_SUCCEED) - throw(MAL,"mosaic.layout", MAL_MALLOC_FAIL); - } - */ - - if( (task->hdr)->blks[MOSAIC_DICT256] && (msg = MOSlayoutDictionary_ID(dict256)(task,layout)) != MAL_SUCCEED) return msg; diff --git a/monetdb5/modules/mosaic/mosaic.h b/monetdb5/modules/mosaic/mosaic.h --- a/monetdb5/modules/mosaic/mosaic.h +++ b/monetdb5/modules/mosaic/mosaic.h @@ -236,6 +236,22 @@ typedef struct _MosaicLayout { (void) alignment;\ } +#define LAYOUT_INSERT(SET_VALUES) \ +{\ + lng bsn = *(lng*) Tloc(layout->bsn, BATcount(layout->bsn)-1);\ + bsn++;\ +\ + str tech = str_nil;\ + lng count = lng_nil;\ + lng input = lng_nil;\ + lng output = lng_nil;\ + str properties = str_nil;\ +\ + SET_VALUES;\ +\ + layout_insert_record(layout, &bsn, &tech, &count, &input, &output, &properties);\ +} + mal_export const Method MOSmethods[]; mal_export bit MOSisTypeAllowed(char compression, BAT* b); mal_export str MOScompress(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); diff --git a/monetdb5/modules/mosaic/mosaic_runlength_templates.h b/monetdb5/modules/mosaic/mosaic_runlength_templates.h --- a/monetdb5/modules/mosaic/mosaic_runlength_templates.h +++ b/monetdb5/modules/mosaic/mosaic_runlength_templates.h @@ -119,6 +119,14 @@ MOSlayout_SIGNATURE(METHOD, TPE) (void) layout; // TODO check what advance does. + task->start += MOSgetCnt(task->blk); + + char* blk = (char*)task->blk; + blk += sizeof(MOSBlockHeaderTpe(runlength, TPE)); + blk += GET_PADDING(task->blk, runlength, TPE); + + + LAYOUT_INSERT(SET_VALUES) return MAL_SUCCEED; } _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list