Changeset: 8d2b7daa4de9 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/8d2b7daa4de9
Branch: pp_hashjoin
Log Message:

merged


diffs (42 lines):

diff --git a/monetdb5/modules/mal/pp_hash.c b/monetdb5/modules/mal/pp_hash.c
--- a/monetdb5/modules/mal/pp_hash.c
+++ b/monetdb5/modules/mal/pp_hash.c
@@ -2092,7 +2092,10 @@ OAHASHomprobe(Client ctx, bat *PRB_oid, 
                oid *oid_mtd = Tloc(o, 0);
                oid *slt = Tloc(s, 0);
                bit *mark = Tloc(m, 0);
-               bit has_nil = false, empty = ht->empty?false:bit_nil;
+               /* if the hash table contains a NULL, has_nil will actually 
carry the bit_nil */
+               bit has_nil = false;
+               /* probing an empty hash table always yields FALSE; otherwise, 
bit_nil for unknown */
+               bit empty = ht->empty?false:bit_nil;
 
                BUN off = k->hseqbase;
                switch(tt) {
diff --git a/sql/backends/monet5/rel_pphash.c b/sql/backends/monet5/rel_pphash.c
--- a/sql/backends/monet5/rel_pphash.c
+++ b/sql/backends/monet5/rel_pphash.c
@@ -767,10 +767,11 @@ rel2bin_oahash_groupjoin(backend *be, sq
 
        if (list_length(rel->attr) == 1) {
         sql_exp *e = rel->attr->h->data;
-        if (exp_is_atom(e))
+        if (exp_is_atom(e)) {
             mark = true;
-        if (exp_is_atom(e) && exp_is_false(e))
-            exist = false;
+               if (exp_is_false(e))
+               exist = false;
+               }
     }
 
        int neededpp = (rel->spb || rel->partition) && get_need_pipeline(be);
@@ -833,7 +834,7 @@ rel2bin_oahash_groupjoin(backend *be, sq
                        stmt *s = stmt_alias(be, prb_mrk, e->alias.label, rnme, 
nme);
                        append(sub->op4.lval, s);
                } else {
-                       assert(0);
+                       assert(0 && "general groupjoin not implemented yet");
                }
        }
        return sub;
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to