commit | db52210a5fd53c11d59a72d975c2f58c5eb2b6b4 | [log] [tgz] |
---|---|---|
author | Slava Koptilin <slava.koptilin@gmail.com> | Sat Nov 17 15:18:08 2018 +0300 |
committer | devozerov <ppozerov@gmail.com> | Sat Nov 17 15:19:16 2018 +0300 |
tree | 0f793af963af2339ae18029fd46491aba918eaf7 | |
parent | a7846d1efddc7d8b82cc3fd225e7e52e61a59ac2 [diff] |
IGNITE-10278: MVCC: Checkpoint read lock must be acquired before calling MvccProcessor.updateState. This closes #5401.
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/GridCacheDatabaseSharedManager.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/GridCacheDatabaseSharedManager.java index 3e47ede..da965f8 100755 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/GridCacheDatabaseSharedManager.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/GridCacheDatabaseSharedManager.java
@@ -2250,6 +2250,8 @@ break; case MVCC_TX_RECORD: + checkpointReadLock(); + try { MvccTxRecord txRecord = (MvccTxRecord)rec; @@ -2260,6 +2262,9 @@ catch (IgniteCheckedException e) { throw new IgniteException(e); } + finally { + checkpointReadUnlock(); + } break;