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
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to