Merge branch 'ignite-3478' into ignite-3479 # Conflicts: # modules/core/src/main/java/org/apache/ignite/internal/processors/cache/mvcc/CacheCoordinatorsSharedManager.java
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/2d2f2b4f Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/2d2f2b4f Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/2d2f2b4f Branch: refs/heads/ignite-3479 Commit: 2d2f2b4f9b75449f21e06b49760cc5f6b61ef8b4 Parents: 4a386a3 af0c3bc Author: sboikov <sboi...@gridgain.com> Authored: Fri Sep 22 16:57:58 2017 +0300 Committer: sboikov <sboi...@gridgain.com> Committed: Fri Sep 22 16:57:58 2017 +0300 ---------------------------------------------------------------------- .../near/GridNearTxFinishAndAckFuture.java | 2 +- .../near/GridNearTxFinishFuture.java | 2 +- .../mvcc/CacheCoordinatorsSharedManager.java | 48 ++++++++------------ .../cache/mvcc/CoordinatorTxAckRequest.java | 18 ++++---- 4 files changed, 31 insertions(+), 39 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/2d2f2b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/mvcc/CacheCoordinatorsSharedManager.java ---------------------------------------------------------------------- diff --cc modules/core/src/main/java/org/apache/ignite/internal/processors/cache/mvcc/CacheCoordinatorsSharedManager.java index af42f44,641e6d4..9d5a7fb --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/mvcc/CacheCoordinatorsSharedManager.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/mvcc/CacheCoordinatorsSharedManager.java @@@ -22,8 -22,8 +22,9 @@@ import java.util.Map import java.util.UUID; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentMap; + import java.util.concurrent.ConcurrentSkipListMap; import java.util.concurrent.CountDownLatch; +import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicLong; import org.apache.ignite.IgniteCheckedException; import org.apache.ignite.IgniteLogger; @@@ -84,10 -83,10 +85,10 @@@ public class CacheCoordinatorsSharedMan private final GridAtomicLong committedCntr = new GridAtomicLong(1L); /** */ - private final ConcurrentHashMap<GridCacheVersion, Long> activeTxs = new ConcurrentHashMap<>(); + private final ConcurrentSkipListMap<Long, GridCacheVersion> activeTxs = new ConcurrentSkipListMap<>(); /** */ - private final Map<Long, Integer> activeQueries = new HashMap<>(); + private final ConcurrentHashMap8<Long, AtomicInteger> activeQueries = new ConcurrentHashMap8<>(); /** */ private final ConcurrentMap<Long, MvccVersionFuture> verFuts = new ConcurrentHashMap<>(); @@@ -512,15 -509,13 +513,15 @@@ GridFutureAdapter fut; // TODO IGNITE-3478. synchronized (this) { - Long cntr = activeTxs.remove(txId); + GridCacheVersion ver = activeTxs.remove(txCntr); - assert cntr != null; + assert ver != null; - committedCntr.setIfGreater(cntr); + committedCntr.setIfGreater(txCntr); - fut = waitTxFuts.remove(cntr); + fut = waitTxFuts.remove(txCntr); + + TestDebugLog.addMessage3("tx done", cntr, null, null); } if (fut != null)