Changeset: 7fc3629f6b20 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/7fc3629f6b20
Modified Files:
monetdb5/optimizer/opt_dict.c
sql/backends/monet5/dict.c
Branch: dict
Log Message:
deref varsized atoms
and nil matches on dict offset positions
diffs (24 lines):
diff --git a/monetdb5/optimizer/opt_dict.c b/monetdb5/optimizer/opt_dict.c
--- a/monetdb5/optimizer/opt_dict.c
+++ b/monetdb5/optimizer/opt_dict.c
@@ -143,7 +143,7 @@ OPTdictImplementation(Client cntxt, MalB
addArgument(mb, t, getArg(s,
0));
addArgument(mb, t, cand);
t = pushNil(mb, t, TYPE_bat);
- t = pushBit(mb, t, FALSE);
/* nil matches */
+ t = pushBit(mb, t, TRUE); /*
nil matches */
t = pushBit(mb, t, TRUE);
/* max_one */
t = pushNil(mb, t, TYPE_lng);
/* estimate */
pushInstruction(mb,t);
diff --git a/sql/backends/monet5/dict.c b/sql/backends/monet5/dict.c
--- a/sql/backends/monet5/dict.c
+++ b/sql/backends/monet5/dict.c
@@ -621,6 +621,8 @@ DICTselect(Client cntxt, MalBlkPtr mb, M
bn = BATdense(0, 0, 0);
}
} else { /* select + intersect */
+ if (ATOMvarsized(lv->ttype))
+ v = *(ptr*)v;
bn = BATthetaselect(lv, NULL, v, op);
/* call dict convert */
if (bn) {
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list