Changeset: b5b432b54ad8 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=b5b432b54ad8
Modified Files:
sql/storage/bat/bat_table.c
Branch: Dec2016
Log Message:
make sure we cache dbat's during catalog loading
diffs (70 lines):
diff --git a/sql/storage/bat/bat_table.c b/sql/storage/bat/bat_table.c
--- a/sql/storage/bat/bat_table.c
+++ b/sql/storage/bat/bat_table.c
@@ -137,38 +137,6 @@ full_destroy(sql_column *c, BAT *b)
}
static oid
-column_lookup_row(sql_trans *tr, sql_column *c, const void *value)
-{
- BAT *b = NULL, *s = NULL;
- oid rid = oid_nil;
-
- b = full_column(tr, c);
- if (!b)
- return oid_nil;
-
- if (store_funcs.count_del(tr, c->t))
- s = store_funcs.bind_del(tr, c->t, RD_INS);
-
- if (BAThash(b, 0) == GDK_SUCCEED) {
- BATiter cni = bat_iterator(b);
- BUN p;
-
- HASHloop(cni, cni.b->thash, p, value) {
- oid pos = p;
-
- if (!s || BUNfnd(s, &pos) == BUN_NONE) {
- rid = p;
- break;
- }
- }
- }
- if (s)
- bat_destroy(s);
- full_destroy(c, b);
- return rid;
-}
-
-static oid
column_find_row(sql_trans *tr, sql_column *c, const void *value, ...)
{
va_list va;
@@ -177,9 +145,6 @@ column_find_row(sql_trans *tr, sql_colum
sql_column *n = NULL;
va_start(va, value);
- if ((n = va_arg(va, sql_column *)) == NULL)
- return column_lookup_row(tr, c, value);
-
s = delta_cands(tr, c->t);
if (!s)
return oid_nil;
@@ -192,7 +157,7 @@ column_find_row(sql_trans *tr, sql_colum
bat_destroy(s);
s = r;
full_destroy(c, b);
- do {
+ while ((n = va_arg(va, sql_column *)) != NULL) {
value = va_arg(va, void *);
c = n;
@@ -205,7 +170,7 @@ column_find_row(sql_trans *tr, sql_colum
bat_destroy(s);
s = r;
full_destroy(c, b);
- } while ((n = va_arg(va, sql_column *)) != NULL);
+ }
va_end(va);
if (BATcount(s) == 1) {
BATiter ri = bat_iterator(s);
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list