You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by st...@apache.org on 2016/01/21 22:30:35 UTC

svn commit: r1726105 - /subversion/branches/parallel-put/subversion/libsvn_fs_fs/transaction.c

Author: stefan2
Date: Thu Jan 21 21:30:35 2016
New Revision: 1726105

URL: http://svn.apache.org/viewvc?rev=1726105&view=rev
Log:
On the parallel-put branch:
Fix lock conflict detection behavior in non-concurrent mode. 

* subversion/libsvn_fs_fs/transaction.c
  (get_shared_txn_body): Non-concurrent mode must not use a mutex to
                         serialize access to a txn.  Instead, it uses
                         the BEING_WRITTEN flag for detecting thread
                         concurrency and the file lock for inter-proc
                         checks.  This is identical with the old code.

Modified:
    subversion/branches/parallel-put/subversion/libsvn_fs_fs/transaction.c

Modified: subversion/branches/parallel-put/subversion/libsvn_fs_fs/transaction.c
URL: http://svn.apache.org/viewvc/subversion/branches/parallel-put/subversion/libsvn_fs_fs/transaction.c?rev=1726105&r1=1726104&r2=1726105&view=diff
==============================================================================
--- subversion/branches/parallel-put/subversion/libsvn_fs_fs/transaction.c (original)
+++ subversion/branches/parallel-put/subversion/libsvn_fs_fs/transaction.c Thu Jan 21 21:30:35 2016
@@ -234,7 +234,7 @@ get_shared_txn_body(svn_fs_t *fs,
       txn = apr_palloc(subpool, sizeof(*txn));
       txn->pool = subpool;
       txn->is_concurrent = ffd->concurrent_txns;
-      SVN_ERR(svn_mutex__init(&txn->lock, TRUE, txn->pool));
+      SVN_ERR(svn_mutex__init(&txn->lock, txn->is_concurrent, txn->pool));
     }
 
   txn->txn_id = *b->txn_id;