ignite-3479

Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/b7a64fe2
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/b7a64fe2
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/b7a64fe2

Branch: refs/heads/ignite-3479
Commit: b7a64fe272c2ffeb7a213da468626406f6a89606
Parents: 1d9f2de
Author: sboikov <[email protected]>
Authored: Fri Sep 22 14:50:13 2017 +0300
Committer: sboikov <[email protected]>
Committed: Fri Sep 22 15:48:09 2017 +0300

----------------------------------------------------------------------
 .../mvcc/CacheCoordinatorsSharedManager.java    | 24 +++++++++-----------
 .../cache/mvcc/CacheMvccTransactionsTest.java   |  8 ++++---
 2 files changed, 16 insertions(+), 16 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ignite/blob/b7a64fe2/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/mvcc/CacheCoordinatorsSharedManager.java
----------------------------------------------------------------------
diff --git 
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
index 07531a6..ef5d1b8 100644
--- 
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
@@ -491,16 +491,13 @@ public class CacheCoordinatorsSharedManager<K, V> extends 
GridCacheSharedManager
 
         assert old == null : txId;
 
-        long cleanupVer = Long.MAX_VALUE;
+        long cleanupVer = committedCntr.get() - 1;
 
         for (Long qryVer : activeQueries.keySet()) {
-            if (qryVer < cleanupVer)
+            if (qryVer <= cleanupVer)
                 cleanupVer = qryVer - 1;
         }
 
-        if (committedCntr.get() - 1 < cleanupVer)
-            cleanupVer = committedCntr.get() - 1;
-
         TestDebugLog.addMessage3("assign tx cntr", nextCtr, 
res.activeTransactions(), cleanupVer);
 
         res.init(futId, crdVer, nextCtr, cleanupVer);
@@ -546,14 +543,12 @@ public class CacheCoordinatorsSharedManager<K, V> extends 
GridCacheSharedManager
      * @param qryNodeId Node initiated query.
      * @return Counter for query.
      */
-    private MvccCoordinatorVersionResponse assignQueryCounter(UUID qryNodeId, 
long futId) {
+    private synchronized MvccCoordinatorVersionResponse 
assignQueryCounter(UUID qryNodeId, long futId) {
         assert crdVer != 0;
 
-        MvccCoordinatorVersionResponse res = new 
MvccCoordinatorVersionResponse();
-
-        Long mvccCntr;
+        Long mvccCntr = committedCntr.get();
 
-        mvccCntr = committedCntr.get();
+        MvccCoordinatorVersionResponse res = new 
MvccCoordinatorVersionResponse();
 
         Long trackCntr = mvccCntr;
 
@@ -600,7 +595,7 @@ public class CacheCoordinatorsSharedManager<K, V> extends 
GridCacheSharedManager
     /**
      * @param mvccCntr Query counter.
      */
-    private void onQueryDone(long mvccCntr) {
+    private synchronized void onQueryDone(long mvccCntr) {
         TestDebugLog.addEntryMessage(mvccCntr, null, "qry done");
 
         AtomicInteger cntr = activeQueries.get(mvccCntr);
@@ -611,8 +606,11 @@ public class CacheCoordinatorsSharedManager<K, V> extends 
GridCacheSharedManager
 
         assert left >= 0 : left;
 
-        if (left == 0)
-            activeQueries.remove(mvccCntr, cntr);
+        if (left == 0) {
+            boolean rmv = activeQueries.remove(mvccCntr, cntr);
+
+            assert rmv;
+        }
     }
 
     /** */

http://git-wip-us.apache.org/repos/asf/ignite/blob/b7a64fe2/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/mvcc/CacheMvccTransactionsTest.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/mvcc/CacheMvccTransactionsTest.java
 
b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/mvcc/CacheMvccTransactionsTest.java
index 13be10d..482ffc2 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/mvcc/CacheMvccTransactionsTest.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/mvcc/CacheMvccTransactionsTest.java
@@ -1163,11 +1163,11 @@ public class CacheMvccTransactionsTest extends 
GridCommonAbstractTest {
     )
         throws Exception
     {
-        final int ACCOUNTS = 20;
+        final int ACCOUNTS = 8;
 
         final int ACCOUNT_START_VAL = 1000;
 
-        final int writers = 4;
+        final int writers = 2;
 
         final int readers = 4;
 
@@ -1286,7 +1286,9 @@ public class CacheMvccTransactionsTest extends 
GridCommonAbstractTest {
                         if (ACCOUNTS != accounts.size()) {
                             TestDebugLog.addMessage("wrong accounts number: " 
+ accounts.keySet());
 
-                            TestDebugLog.printMessages(true, null);
+                            List<Object> msgs = 
TestDebugLog.printMessages(true, null);
+
+                            TestDebugLog.printMessagesForThread(msgs, 
Thread.currentThread().getName(), "test_debug_thread.txt");
 
                             System.exit(1);
                         }

Reply via email to