Changeset: 9762d85a2b53 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/9762d85a2b53
Modified Files:
        sql/storage/store.c
Branch: Jul2021
Log Message:

do a lock_try, for optional expensive part


diffs (26 lines):

diff --git a/sql/storage/store.c b/sql/storage/store.c
--- a/sql/storage/store.c
+++ b/sql/storage/store.c
@@ -3528,14 +3528,14 @@ sql_trans_rollback(sql_trans *tr, bool c
                tr->changes = NULL;
                tr->logchanges = 0;
        } else {
-               if (!commit_lock)
-                       MT_lock_set(&store->commit);
-               store_lock(store);
-               ulng oldest = store_oldest(store);
-               store_pending_changes(store, oldest);
-               store_unlock(store);
-               if (!commit_lock)
-                       MT_lock_unset(&store->commit);
+               if (commit_lock || MT_lock_try(&store->commit)) {
+                       store_lock(store);
+                       ulng oldest = store_oldest(store);
+                       store_pending_changes(store, oldest);
+                       store_unlock(store);
+                       if (!commit_lock)
+                               MT_lock_unset(&store->commit);
+               }
        }
        if (tr->localtmps.dset) {
                list_destroy2(tr->localtmps.dset, tr->store);
_______________________________________________
checkin-list mailing list -- checkin-list@monetdb.org
To unsubscribe send an email to checkin-list-le...@monetdb.org

Reply via email to