~pbeaman/akiban-persistit/find-deadlock4

« back to all changes in this revision

Viewing changes to src/main/java/com/persistit/Exchange.java

  • Committer: Peter Beaman
  • Date: 2012-11-27 11:54:47 UTC
  • Revision ID: pbeaman@akiban.com-20121127115447-xj5wt0fao546h1y7
Release Tree before wwDependency with timeout

Show diffs side-by-side

added added

removed removed

Lines of Context:
1642
1642
                        buffer.releaseTouched();
1643
1643
                        buffer = null;
1644
1644
                    }
 
1645
                    if (treeClaimAcquired) {
 
1646
                        _treeHolder.release();
 
1647
                        treeClaimAcquired = false;
 
1648
                    }
1645
1649
                    try {
1646
1650
                        sequence(WRITE_WRITE_STORE_A);
 
1651
                        final long depends = _persistit.getTransactionIndex().wwDependency(re.getVersionHandle(),
1647
1652
                        // TODO - timeout?
1648
 
                        final long depends = _persistit.getTransactionIndex().wwDependency(re.getVersionHandle(),
1649
1653
                                _transaction.getTransactionStatus(), SharedResource.DEFAULT_MAX_WAIT_TIME);
1650
1654
                        if (depends != 0 && depends != TransactionStatus.ABORTED) {
1651
1655
                            // version is from concurrent txn that already