Changeset: 032b2107f7e2 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/032b2107f7e2
Modified Files:
sql/storage/objectset.c
sql/storage/store.c
Branch: Jul2021
Log Message:
small optimimization, ie no need to check for in transaction for new objects
diffs (32 lines):
diff --git a/sql/storage/objectset.c b/sql/storage/objectset.c
--- a/sql/storage/objectset.c
+++ b/sql/storage/objectset.c
@@ -606,6 +606,8 @@ tc_commit_objectversion(sql_trans *tr, s
ov->ts = commit_ts;
change->committed = commit_ts < TRANSACTION_ID_BASE ? true:
false;
(void)oldest;
+ if (!tr->parent)
+ change->obj->new = 0;
}
else {
os_rollback(ov, tr->store);
@@ -1101,7 +1103,6 @@ os_obj_intransaction(objectset *os, stru
versionhead *n = find_id(os, b->id);
if (n) {
- //objectversion *ov = get_valid_object_id(tr, n->ov);
objectversion *ov = n->ov;
if (ov && os_atmc_get_state(ov) == active && ov->ts == tr->tid)
diff --git a/sql/storage/store.c b/sql/storage/store.c
--- a/sql/storage/store.c
+++ b/sql/storage/store.c
@@ -2909,7 +2909,7 @@ new_table(sql_trans *tr, sql_table *t, s
{
int res = 0;
t = find_sql_table(tr, t->s, t->base.name); /* could have changed by
depending changes */
- if (!isLocalTemp(t) && !os_obj_intransaction(t->s->tables, tr,
&t->base))
+ if (!isLocalTemp(t) && !isNew(t) && !os_obj_intransaction(t->s->tables,
tr, &t->base))
res = table_dup(tr, t, t->s, NULL, tres);
else
*tres = t;
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list