Changeset: 48aa8b189212 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=48aa8b189212
Modified Files:
sql/storage/bat/bat_storage.c
Branch: Jul2015
Log Message:
properly zap the transactions delta structures. In the new transaction
a copy of the global transaction's delta structures is needed.
diffs (39 lines):
diff --git a/sql/storage/bat/bat_storage.c b/sql/storage/bat/bat_storage.c
--- a/sql/storage/bat/bat_storage.c
+++ b/sql/storage/bat/bat_storage.c
@@ -2119,9 +2119,11 @@ update_table(sql_trans *tr, sql_table *f
tr_update_dbat(tr, tt->data, ft->data, ft->cleared);
} else if (store_nr_active == 1 && !ft->base.allocated) {
tr_merge_dbat(tr, tt->data);
+ ft->data = NULL;
} else if (ft->data) {
tt->data = ft->data;
tt->base.allocated = 1;
+ ft->data = NULL;
}
}
for (n = ft->columns.set->h, m = tt->columns.set->h; ok == LOG_OK && n
&& m; n = n->next, m = m->next) {
@@ -2152,9 +2154,11 @@ update_table(sql_trans *tr, sql_table *f
tr_update_delta(tr, oc->data, cc->data,
cc->unique == 1);
} else if (store_nr_active == 1 && !cc->base.allocated)
{
tr_merge_delta(tr, oc->data, oc->unique == 1);
+ cc->data = NULL;
} else if (cc->data) {
oc->data = cc->data;
oc->base.allocated = 1;
+ cc->data = NULL;
}
}
@@ -2210,9 +2214,11 @@ update_table(sql_trans *tr, sql_table *f
tr_update_delta(tr, oi->data, ci->data,
0);
} else if (store_nr_active == 1 &&
!ci->base.allocated) {
tr_merge_delta(tr, oi->data, 0);
+ ci->data = NULL;
} else if (ci->data) {
oi->data = ci->data;
oi->base.allocated = 1;
+ ci->data = NULL;
}
}
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list