Changeset: 86fee1ef9ed7 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=86fee1ef9ed7
Modified Files:
        monetdb5/modules/mal/mosaic_linear.c
        monetdb5/modules/mal/mosaic_prefix.c
Branch: mosaic
Log Message:

Compilation issues on Windows


diffs (49 lines):

diff --git a/monetdb5/modules/mal/mosaic_linear.c 
b/monetdb5/modules/mal/mosaic_linear.c
--- a/monetdb5/modules/mal/mosaic_linear.c
+++ b/monetdb5/modules/mal/mosaic_linear.c
@@ -334,7 +334,7 @@ MOSdecompress_linear(Client cntxt, MOSta
                        int step = *(int*) linear_step(task,blk);
                        BUN lim= MOSgetCnt(blk);
                        for(i = 0; i < lim; i++){
-                               ((int*)task->src)[i] = val + i * step;
+                               ((int*)task->src)[i] = val + (int) (i * step);
                                hdr->checksum2.sumint += ((int*)task->src)[i];
                        }
                        task->src += i * sizeof(int);
diff --git a/monetdb5/modules/mal/mosaic_prefix.c 
b/monetdb5/modules/mal/mosaic_prefix.c
--- a/monetdb5/modules/mal/mosaic_prefix.c
+++ b/monetdb5/modules/mal/mosaic_prefix.c
@@ -963,7 +963,32 @@ MOSsubjoin_prefix(Client cntxt,  MOStask
                case TYPE_sht: join_prefix(sht,unsigned short); break;
                case TYPE_int: join_prefix(int,unsigned short); break;
                case TYPE_lng: join_prefix(lng,ulng); break;
-               case TYPE_oid: join_prefix(oid,ulng); break;
+               case TYPE_oid: //join_prefix(oid,ulng); break;
+{   oid *w;
+       oid *dst =  (oid*)  (((char*) blk) + MosaicBlkSize);
+       oid mask = *dst++;
+       oid  val  =  (oid) *dst++,v;
+       oid m;
+       BitVector base;
+       int residu;
+       TPE value;
+       m = ~mask;
+       residu = val & m;
+       val = val & mask;
+       base = (BitVector) dst;
+       w = (TPE*) task->src;
+       for(n = task->elm, o = 0; n -- > 0; w++,o++){
+               for(i=0, oo= (oid) first; oo < (oid) last; v++, oo++,i++){
+                       v = decompress(base,i,residu);
+                       value =  (TPE) ((oid)val |(oid) v);
+                       if ( *w == value){
+                               BUNappend(task->lbat, &oo, FALSE);
+                               BUNappend(task->rbat, &o, FALSE);
+                       }
+               }
+       }
+}
+               break;
                case TYPE_flt: join_prefix(flt,unsigned int); break;
                case TYPE_dbl: join_prefix(dbl,unsigned int); break;
 #ifdef HAVE_HGE
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to