You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by sb...@apache.org on 2019/02/07 19:54:07 UTC
[ignite] 01/01: ignite-1090
This is an automated email from the ASF dual-hosted git repository.
sboikov pushed a commit to branch ignite-1090
in repository https://gitbox.apache.org/repos/asf/ignite.git
commit 7150b73e5757d03c3e41deae077bb4995b19fb47
Author: sboikov <sb...@apache.org>
AuthorDate: Thu Feb 7 20:27:15 2019 +0300
ignite-1090
---
.../org/apache/ignite/internal/processors/cache/GridCacheMvcc.java | 5 +++--
.../processors/cache/distributed/GridDistributedCacheEntry.java | 2 +-
.../internal/processors/cache/transactions/IgniteTxHandler.java | 6 ++++--
.../ignite/internal/processors/cache/GridCacheTestEntryEx.java | 2 +-
.../near/GridCachePartitionedOptimisticTxNodeRestartTest.java | 6 ------
.../cache/distributed/near/NearCacheMultithreadedUpdateTest.java | 2 +-
.../org/apache/ignite/testsuites/IgniteCacheRestartTestSuite.java | 2 ++
7 files changed, 12 insertions(+), 13 deletions(-)
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMvcc.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMvcc.java
index 28cc8fb..dc68d48 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMvcc.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMvcc.java
@@ -975,8 +975,9 @@ public final class GridCacheMvcc {
* as system invalidate and marks these candidates as owned and used.
*
* @param ver Version to salvage.
+ * @param near {@code True} if remove near cache candidate.
*/
- public void salvageRemote(GridCacheVersion ver) {
+ public void salvageRemote(GridCacheVersion ver, boolean near) {
assert ver != null;
GridCacheMvccCandidate cand = candidate(rmts, ver);
@@ -995,7 +996,7 @@ public final class GridCacheMvcc {
// Only Near and DHT remote candidates should be released.
assert !rmt.nearLocal();
- IgniteInternalTx tx = cctx.tm().tx(rmt.version());
+ IgniteInternalTx tx = near ? cctx.tm().nearTx(rmt.version()) : cctx.tm().tx(rmt.version());
if (tx != null) {
tx.systemInvalidate(true);
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedCacheEntry.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedCacheEntry.java
index 6dc021b..9b1d0ca 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedCacheEntry.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedCacheEntry.java
@@ -614,7 +614,7 @@ public class GridDistributedCacheEntry extends GridCacheMapEntry {
}
if (sysInvalidate && baseVer != null)
- mvcc.salvageRemote(baseVer);
+ mvcc.salvageRemote(baseVer, isNear());
owner = mvcc.doneRemote(lockVer,
maskNull(pendingVers),
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxHandler.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxHandler.java
index 2d31360..719bf04 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxHandler.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxHandler.java
@@ -1413,8 +1413,10 @@ public class IgniteTxHandler {
try {
if (req.commit() || req.isSystemInvalidate()) {
tx.commitVersion(req.commitVersion());
- tx.invalidate(req.isInvalidate());
- tx.systemInvalidate(req.isSystemInvalidate());
+ if (req.isInvalidate())
+ tx.invalidate(true);
+ if (req.isSystemInvalidate())
+ tx.systemInvalidate(true);
tx.mvccSnapshot(req.mvccSnapshot());
// Complete remote candidates.
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheTestEntryEx.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheTestEntryEx.java
index 9624bd8..1153a3d 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheTestEntryEx.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheTestEntryEx.java
@@ -198,7 +198,7 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr
* @param baseVer Base version.
*/
void salvageRemote(GridCacheVersion baseVer) {
- mvcc.salvageRemote(baseVer);
+ mvcc.salvageRemote(baseVer, false);
}
/**
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/near/GridCachePartitionedOptimisticTxNodeRestartTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/near/GridCachePartitionedOptimisticTxNodeRestartTest.java
index c1bc9c5..da5b627 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/near/GridCachePartitionedOptimisticTxNodeRestartTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/near/GridCachePartitionedOptimisticTxNodeRestartTest.java
@@ -23,7 +23,6 @@ import org.apache.ignite.configuration.IgniteConfiguration;
import org.apache.ignite.configuration.NearCacheConfiguration;
import org.apache.ignite.internal.processors.cache.distributed.GridCacheAbstractNodeRestartSelfTest;
import org.apache.ignite.transactions.TransactionConcurrency;
-import org.junit.Assume;
import org.junit.Test;
import static org.apache.ignite.cache.CacheMode.PARTITIONED;
@@ -35,11 +34,6 @@ import static org.apache.ignite.transactions.TransactionConcurrency.OPTIMISTIC;
*/
public class GridCachePartitionedOptimisticTxNodeRestartTest extends GridCacheAbstractNodeRestartSelfTest {
/** {@inheritDoc} */
- @Override protected void beforeTest() throws Exception {
- Assume.assumeFalse("https://issues.apache.org/jira/browse/IGNITE-1090", nearEnabled());
- }
-
- /** {@inheritDoc} */
@Override protected IgniteConfiguration getConfiguration(String igniteInstanceName) throws Exception {
IgniteConfiguration c = super.getConfiguration(igniteInstanceName);
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/near/NearCacheMultithreadedUpdateTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/near/NearCacheMultithreadedUpdateTest.java
index a9bf89c..ccb9206 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/near/NearCacheMultithreadedUpdateTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/near/NearCacheMultithreadedUpdateTest.java
@@ -43,7 +43,7 @@ public class NearCacheMultithreadedUpdateTest extends GridCommonAbstractTest {
private boolean client;
/** */
- private final int SRV_CNT = 3;
+ private static final int SRV_CNT = 3;
/** {@inheritDoc} */
@Override protected IgniteConfiguration getConfiguration(String igniteInstanceName) throws Exception {
diff --git a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheRestartTestSuite.java b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheRestartTestSuite.java
index 4e96305..adafe96 100644
--- a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheRestartTestSuite.java
+++ b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheRestartTestSuite.java
@@ -22,6 +22,7 @@ import org.apache.ignite.internal.processors.cache.distributed.IgniteCacheNearRe
import org.apache.ignite.internal.processors.cache.distributed.dht.GridCachePartitionedNearDisabledOptimisticTxNodeRestartTest;
import org.apache.ignite.internal.processors.cache.distributed.near.GridCachePartitionedNodeRestartTest;
import org.apache.ignite.internal.processors.cache.distributed.near.GridCachePartitionedOptimisticTxNodeRestartTest;
+import org.apache.ignite.internal.processors.cache.distributed.near.NearCacheMultithreadedUpdateTest;
import org.apache.ignite.internal.processors.cache.distributed.replicated.GridCacheReplicatedNodeRestartSelfTest;
import org.junit.runner.RunWith;
import org.junit.runners.Suite;
@@ -36,6 +37,7 @@ import org.junit.runners.Suite;
GridCacheReplicatedNodeRestartSelfTest.class,
GridCachePartitionedNearDisabledOptimisticTxNodeRestartTest.class,
IgniteCacheNearRestartRollbackSelfTest.class,
+ NearCacheMultithreadedUpdateTest.class,
IgniteCacheCreateRestartSelfTest.class
})