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 2017/03/10 13:55:28 UTC
[4/8] ignite git commit: ignite-4768
ignite-4768
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/5596e69f
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/5596e69f
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/5596e69f
Branch: refs/heads/ignite-4768-1
Commit: 5596e69f021a8e3da21479a11ee6079314e33144
Parents: 4b44091
Author: sboikov <sb...@gridgain.com>
Authored: Fri Mar 10 12:58:34 2017 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Fri Mar 10 12:58:34 2017 +0300
----------------------------------------------------------------------
.../communication/GridIoMessageFactory.java | 5 -
.../processors/cache/GridCacheIoManager.java | 2 +
.../processors/cache/GridCacheMvccFuture.java | 3 +
.../GridDistributedTxPrepareResponse.java | 44 +++-
.../dht/GridDhtTxNearPrepareResponse.java | 232 -------------------
.../distributed/dht/GridDhtTxPrepareFuture.java | 1 +
.../dht/GridDhtTxPrepareResponse.java | 43 +++-
...arOptimisticSerializableTxPrepareFuture.java | 4 +-
.../near/GridNearOptimisticTxPrepareFuture.java | 4 +-
.../GridNearPessimisticTxPrepareFuture.java | 9 +-
.../near/GridNearTxFinishFuture.java | 40 ++--
.../near/GridNearTxPrepareFutureAdapter.java | 9 +-
.../near/GridNearTxPrepareResponse.java | 4 +-
.../cache/transactions/IgniteTxHandler.java | 62 ++---
modules/yardstick/config/ignite-base-config.xml | 171 +-------------
.../yardstick/cache/IgnitePutTxBenchmark.java | 5 +-
16 files changed, 150 insertions(+), 488 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/5596e69f/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessageFactory.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessageFactory.java b/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessageFactory.java
index df3d7e8..ce2c72c 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessageFactory.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessageFactory.java
@@ -174,11 +174,6 @@ public class GridIoMessageFactory implements MessageFactory {
Message msg = null;
switch (type) {
- case -50:
- msg = new GridDhtTxNearPrepareResponse();
-
- break;
-
case -44:
msg = new TcpCommunicationSpi.HandshakeMessage2();
http://git-wip-us.apache.org/repos/asf/ignite/blob/5596e69f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheIoManager.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheIoManager.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheIoManager.java
index 7cac367..71f4e1c 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheIoManager.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheIoManager.java
@@ -547,6 +547,7 @@ public class GridCacheIoManager extends GridCacheSharedManagerAdapter {
GridDhtTxPrepareRequest req = (GridDhtTxPrepareRequest)msg;
GridDhtTxPrepareResponse res = new GridDhtTxPrepareResponse(
+ req.partition(),
req.version(),
req.futureId(),
req.miniId(),
@@ -672,6 +673,7 @@ public class GridCacheIoManager extends GridCacheSharedManagerAdapter {
GridNearTxPrepareRequest req = (GridNearTxPrepareRequest)msg;
GridNearTxPrepareResponse res = new GridNearTxPrepareResponse(
+ req.partition(),
req.version(),
req.futureId(),
req.miniId(),
http://git-wip-us.apache.org/repos/asf/ignite/blob/5596e69f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMvccFuture.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMvccFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMvccFuture.java
index 080a6f1..a0acf18 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMvccFuture.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMvccFuture.java
@@ -17,6 +17,7 @@
package org.apache.ignite.internal.processors.cache;
+import org.apache.ignite.internal.processors.cache.transactions.IgniteInternalTx;
import org.apache.ignite.internal.processors.cache.version.GridCacheVersion;
/**
@@ -34,4 +35,6 @@ public interface GridCacheMvccFuture<T> extends GridCacheFuture<T> {
* @return {@code True} if future cares about this entry.
*/
public boolean onOwnerChanged(GridCacheEntryEx entry, GridCacheMvccCandidate owner);
+
+ public IgniteInternalTx tx();
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/5596e69f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxPrepareResponse.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxPrepareResponse.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxPrepareResponse.java
index 99f36c2..c19b8c1 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxPrepareResponse.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxPrepareResponse.java
@@ -51,6 +51,12 @@ public class GridDistributedTxPrepareResponse extends GridDistributedBaseMessage
@GridDirectTransient
private IgniteTxState txState;
+ /** */
+ private int part;
+
+ /** */
+ private byte flags;
+
/**
* Empty constructor (required by {@link Externalizable}).
*/
@@ -59,24 +65,54 @@ public class GridDistributedTxPrepareResponse extends GridDistributedBaseMessage
}
/**
- * @param xid Transaction ID.
+ * @param part Partition.
+ * @param xid Lock or transaction ID.
* @param addDepInfo Deployment info flag.
*/
- public GridDistributedTxPrepareResponse(GridCacheVersion xid, boolean addDepInfo) {
+ public GridDistributedTxPrepareResponse(int part, GridCacheVersion xid, boolean addDepInfo) {
super(xid, 0, addDepInfo);
+
+ this.part = part;
}
/**
- * @param xid Lock ID.
+ * @param part Partition.
+ * @param xid Lock or transaction ID.
* @param err Error.
* @param addDepInfo Deployment info flag.
*/
- public GridDistributedTxPrepareResponse(GridCacheVersion xid, Throwable err, boolean addDepInfo) {
+ public GridDistributedTxPrepareResponse(int part, GridCacheVersion xid, Throwable err, boolean addDepInfo) {
super(xid, 0, addDepInfo);
+ this.part = part;
this.err = err;
}
+ /**
+ * Sets flag mask.
+ *
+ * @param flag Set or clear.
+ * @param mask Mask.
+ */
+ protected final void setFlag(boolean flag, int mask) {
+ flags = flag ? (byte)(flags | mask) : (byte)(flags & ~mask);
+ }
+
+ /**
+ * Reags flag mask.
+ *
+ * @param mask Mask to read.
+ * @return Flag value.
+ */
+ protected final boolean isFlag(int mask) {
+ return (flags & mask) != 0;
+ }
+
+ /** {@inheritDoc} */
+ @Override public int partition() {
+ return part;
+ }
+
/** {@inheritDoc} */
@Override public Throwable error() {
return err;
http://git-wip-us.apache.org/repos/asf/ignite/blob/5596e69f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxNearPrepareResponse.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxNearPrepareResponse.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxNearPrepareResponse.java
deleted file mode 100644
index e582bd2..0000000
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxNearPrepareResponse.java
+++ /dev/null
@@ -1,232 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.ignite.internal.processors.cache.distributed.dht;
-
-import java.nio.ByteBuffer;
-import org.apache.ignite.IgniteLogger;
-import org.apache.ignite.internal.GridDirectTransient;
-import org.apache.ignite.internal.processors.cache.GridCacheMessage;
-import org.apache.ignite.internal.processors.cache.GridCacheSharedContext;
-import org.apache.ignite.internal.processors.cache.transactions.IgniteTxState;
-import org.apache.ignite.internal.processors.cache.transactions.IgniteTxStateAware;
-import org.apache.ignite.internal.processors.cache.version.GridCacheVersion;
-import org.apache.ignite.internal.util.typedef.internal.S;
-import org.apache.ignite.lang.IgniteUuid;
-import org.apache.ignite.plugin.extensions.communication.MessageReader;
-import org.apache.ignite.plugin.extensions.communication.MessageWriter;
-
-/**
- *
- */
-public class GridDhtTxNearPrepareResponse extends GridCacheMessage implements IgniteTxStateAware {
- /** */
- private static final long serialVersionUID = 0L;
-
- /** */
- private int partId;
-
- /** */
- private GridCacheVersion nearTxId;
-
- /** Future ID. */
- private IgniteUuid futId;
-
- /** Mini future ID. */
- private int miniId;
-
- /** Transient TX state. */
- @GridDirectTransient
- private IgniteTxState txState;
-
- /**
- *
- */
- public GridDhtTxNearPrepareResponse() {
- // No-op.
- }
-
- /**
- * @param partId Partition ID.
- * @param nearTxId Near transaction ID.
- * @param futId Future ID.
- * @param miniId Mini future ID.
- */
- public GridDhtTxNearPrepareResponse(int partId, GridCacheVersion nearTxId, IgniteUuid futId, int miniId) {
- assert nearTxId != null;
- assert futId != null;
- assert miniId > 0;
-
- this.partId = partId;
- this.nearTxId = nearTxId;
- this.futId = futId;
- this.miniId = miniId;
- }
-
- /**
- * @return Near transaction ID.
- */
- public GridCacheVersion nearTxId() {
- return nearTxId;
- }
-
- /**
- * @return Future ID.
- */
- public IgniteUuid futureId() {
- return futId;
- }
-
- /**
- * @return Mini future ID.
- */
- public int miniId() {
- return miniId;
- }
-
- /** {@inheritDoc} */
- @Override public int partition() {
- return partId;
- }
-
- /** {@inheritDoc} */
- @Override public IgniteTxState txState() {
- return txState;
- }
-
- /** {@inheritDoc} */
- @Override public void txState(IgniteTxState txState) {
- this.txState = txState;
- }
-
- /** {@inheritDoc} */
- @Override public IgniteLogger messageLogger(GridCacheSharedContext ctx) {
- return ctx.txPrepareMessageLogger();
- }
-
- /** {@inheritDoc} */
- @Override public byte directType() {
- return -50;
- }
-
- /** {@inheritDoc} */
- @Override public byte fieldsCount() {
- return 7;
- }
-
- /** {@inheritDoc} */
- @Override public boolean addDeploymentInfo() {
- return false;
- }
-
- /** {@inheritDoc} */
- @Override public boolean writeTo(ByteBuffer buf, MessageWriter writer) {
- writer.setBuffer(buf);
-
- if (!super.writeTo(buf, writer))
- return false;
-
- if (!writer.isHeaderWritten()) {
- if (!writer.writeHeader(directType(), fieldsCount()))
- return false;
-
- writer.onHeaderWritten();
- }
-
- switch (writer.state()) {
- case 3:
- if (!writer.writeIgniteUuid("futId", futId))
- return false;
-
- writer.incrementState();
-
- case 4:
- if (!writer.writeInt("miniId", miniId))
- return false;
-
- writer.incrementState();
-
- case 5:
- if (!writer.writeMessage("nearTxId", nearTxId))
- return false;
-
- writer.incrementState();
-
- case 6:
- if (!writer.writeInt("partId", partId))
- return false;
-
- writer.incrementState();
-
- }
-
- return true;
- }
-
- /** {@inheritDoc} */
- @Override public boolean readFrom(ByteBuffer buf, MessageReader reader) {
- reader.setBuffer(buf);
-
- if (!reader.beforeMessageRead())
- return false;
-
- if (!super.readFrom(buf, reader))
- return false;
-
- switch (reader.state()) {
- case 3:
- futId = reader.readIgniteUuid("futId");
-
- if (!reader.isLastRead())
- return false;
-
- reader.incrementState();
-
- case 4:
- miniId = reader.readInt("miniId");
-
- if (!reader.isLastRead())
- return false;
-
- reader.incrementState();
-
- case 5:
- nearTxId = reader.readMessage("nearTxId");
-
- if (!reader.isLastRead())
- return false;
-
- reader.incrementState();
-
- case 6:
- partId = reader.readInt("partId");
-
- if (!reader.isLastRead())
- return false;
-
- reader.incrementState();
-
- }
-
- return reader.afterMessageRead(GridDhtTxNearPrepareResponse.class);
- }
-
- /** {@inheritDoc} */
- @Override public String toString() {
- return S.toString(GridDhtTxNearPrepareResponse.class, this);
- }
-}
http://git-wip-us.apache.org/repos/asf/ignite/blob/5596e69f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxPrepareFuture.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxPrepareFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxPrepareFuture.java
index 7f0cddd..454c8fb 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxPrepareFuture.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxPrepareFuture.java
@@ -858,6 +858,7 @@ public final class GridDhtTxPrepareFuture extends GridCompoundFuture<IgniteInter
assert F.isEmpty(tx.invalidPartitions());
GridNearTxPrepareResponse res = new GridNearTxPrepareResponse(
+ -1,
tx.nearXidVersion(),
tx.colocated() ? tx.xid() : tx.nearFutureId(),
nearMiniId,
http://git-wip-us.apache.org/repos/asf/ignite/blob/5596e69f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxPrepareResponse.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxPrepareResponse.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxPrepareResponse.java
index fdead95..c37ac80 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxPrepareResponse.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxPrepareResponse.java
@@ -49,6 +49,9 @@ public class GridDhtTxPrepareResponse extends GridDistributedTxPrepareResponse {
/** */
private static final long serialVersionUID = 0L;
+ /** */
+ private static final int NEAR_RES_FLAG_MASK = 0x01;
+
/** Evicted readers. */
@GridToStringInclude
@GridDirectCollection(IgniteTxKey.class)
@@ -76,13 +79,19 @@ public class GridDhtTxPrepareResponse extends GridDistributedTxPrepareResponse {
}
/**
+ * @param part Partition.
* @param xid Xid version.
* @param futId Future ID.
* @param miniId Mini future ID.
* @param addDepInfo Deployment info flag.
*/
- public GridDhtTxPrepareResponse(GridCacheVersion xid, IgniteUuid futId, IgniteUuid miniId, boolean addDepInfo) {
- super(xid, addDepInfo);
+ public GridDhtTxPrepareResponse(
+ int part,
+ GridCacheVersion xid,
+ IgniteUuid futId,
+ IgniteUuid miniId,
+ boolean addDepInfo) {
+ super(part, xid, addDepInfo);
assert futId != null;
assert miniId != null;
@@ -92,15 +101,21 @@ public class GridDhtTxPrepareResponse extends GridDistributedTxPrepareResponse {
}
/**
+ * @param part Partition.
* @param xid Xid version.
* @param futId Future ID.
* @param miniId Mini future ID.
* @param err Error.
* @param addDepInfo Deployment enabled.
*/
- public GridDhtTxPrepareResponse(GridCacheVersion xid, IgniteUuid futId, IgniteUuid miniId, Throwable err,
+ public GridDhtTxPrepareResponse(
+ int part,
+ GridCacheVersion xid,
+ IgniteUuid futId,
+ IgniteUuid miniId,
+ Throwable err,
boolean addDepInfo) {
- super(xid, err, addDepInfo);
+ super(part, xid, err, addDepInfo);
assert futId != null;
assert miniId != null;
@@ -110,9 +125,23 @@ public class GridDhtTxPrepareResponse extends GridDistributedTxPrepareResponse {
}
/**
+ * @return {@code True} if this is reply for near node.
+ */
+ public boolean nearNodeResponse() {
+ return isFlag(NEAR_RES_FLAG_MASK);
+ }
+
+ /**
+ * @param val {@code True} if this is reply for near node.
+ */
+ void nearNodeResponse(boolean val) {
+ setFlag(val, NEAR_RES_FLAG_MASK);
+ }
+
+ /**
* @return Evicted readers.
*/
- public Collection<IgniteTxKey> nearEvicted() {
+ Collection<IgniteTxKey> nearEvicted() {
return nearEvicted;
}
@@ -140,7 +169,7 @@ public class GridDhtTxPrepareResponse extends GridDistributedTxPrepareResponse {
/**
* @return Map from cacheId to an array of invalid partitions.
*/
- public Map<Integer, int[]> invalidPartitionsByCacheId() {
+ Map<Integer, int[]> invalidPartitionsByCacheId() {
return invalidParts;
}
@@ -156,7 +185,7 @@ public class GridDhtTxPrepareResponse extends GridDistributedTxPrepareResponse {
*
* @return Collection of entry infos need to be preloaded.
*/
- public Collection<GridCacheEntryInfo> preloadEntries() {
+ Collection<GridCacheEntryInfo> preloadEntries() {
return preloadEntries == null ? Collections.<GridCacheEntryInfo>emptyList() : preloadEntries;
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/5596e69f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearOptimisticSerializableTxPrepareFuture.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearOptimisticSerializableTxPrepareFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearOptimisticSerializableTxPrepareFuture.java
index fcd714b..3d919f9 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearOptimisticSerializableTxPrepareFuture.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearOptimisticSerializableTxPrepareFuture.java
@@ -37,7 +37,7 @@ import org.apache.ignite.internal.processors.cache.GridCacheMvccCandidate;
import org.apache.ignite.internal.processors.cache.GridCacheSharedContext;
import org.apache.ignite.internal.processors.cache.distributed.GridDistributedTxMapping;
import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxMapping;
-import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxNearPrepareResponse;
+import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxPrepareResponse;
import org.apache.ignite.internal.processors.cache.transactions.IgniteInternalTx;
import org.apache.ignite.internal.processors.cache.transactions.IgniteTxEntry;
import org.apache.ignite.internal.processors.cache.version.GridCacheVersion;
@@ -202,7 +202,7 @@ public class GridNearOptimisticSerializableTxPrepareFuture extends GridNearOptim
}
/** {@inheritDoc} */
- @Override public void onDhtResponse(UUID nodeId, GridDhtTxNearPrepareResponse res) {
+ @Override public void onDhtResponse(UUID nodeId, GridDhtTxPrepareResponse res) {
assert false; // TODO IGNITE-4768.
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/5596e69f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearOptimisticTxPrepareFuture.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearOptimisticTxPrepareFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearOptimisticTxPrepareFuture.java
index 9a7f500..5cfb1a2 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearOptimisticTxPrepareFuture.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearOptimisticTxPrepareFuture.java
@@ -40,7 +40,7 @@ import org.apache.ignite.internal.processors.cache.GridCacheMvccCandidate;
import org.apache.ignite.internal.processors.cache.GridCacheSharedContext;
import org.apache.ignite.internal.processors.cache.distributed.GridDistributedTxMapping;
import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxMapping;
-import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxNearPrepareResponse;
+import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxPrepareResponse;
import org.apache.ignite.internal.processors.cache.transactions.IgniteInternalTx;
import org.apache.ignite.internal.processors.cache.transactions.IgniteTxEntry;
import org.apache.ignite.internal.processors.cache.transactions.IgniteTxKey;
@@ -203,7 +203,7 @@ public class GridNearOptimisticTxPrepareFuture extends GridNearOptimisticTxPrepa
}
/** {@inheritDoc} */
- @Override public void onDhtResponse(UUID nodeId, GridDhtTxNearPrepareResponse res) {
+ @Override public void onDhtResponse(UUID nodeId, GridDhtTxPrepareResponse res) {
assert false; // TODO IGNITE-4768.
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/5596e69f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearPessimisticTxPrepareFuture.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearPessimisticTxPrepareFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearPessimisticTxPrepareFuture.java
index ed3f2f1..b476336 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearPessimisticTxPrepareFuture.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearPessimisticTxPrepareFuture.java
@@ -37,7 +37,7 @@ import org.apache.ignite.internal.processors.cache.GridCacheSharedContext;
import org.apache.ignite.internal.processors.cache.distributed.GridDistributedTxMapping;
import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtPartitionTopology;
import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxMapping;
-import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxNearPrepareResponse;
+import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxPrepareResponse;
import org.apache.ignite.internal.processors.cache.transactions.IgniteInternalTx;
import org.apache.ignite.internal.processors.cache.transactions.IgniteTxEntry;
import org.apache.ignite.internal.transactions.IgniteTxRollbackCheckedException;
@@ -126,7 +126,9 @@ public class GridNearPessimisticTxPrepareFuture extends GridNearTxPrepareFutureA
}
/** {@inheritDoc} */
- @Override public void onDhtResponse(UUID nodeId, GridDhtTxNearPrepareResponse res) {
+ @Override public void onDhtResponse(UUID nodeId, GridDhtTxPrepareResponse res) {
+ assert res.nearNodeResponse() : res;
+
MiniFuture f = miniFuture(res.miniId());
if (f != null)
@@ -438,6 +440,7 @@ public class GridNearPessimisticTxPrepareFuture extends GridNearTxPrepareFutureA
this.m = m;
this.futId = futId;
+ // TODO: IGNITE-4768, check nodes alive.
if (req.dhtReplyNear()) {
dhtNodes = new HashSet<>(req.transactionNodes().get(m.primary().id()));
@@ -510,7 +513,7 @@ public class GridNearPessimisticTxPrepareFuture extends GridNearTxPrepareFutureA
* @param nodeId Node ID.
* @param res Response.
*/
- void onDhtResponse(UUID nodeId, GridDhtTxNearPrepareResponse res) {
+ void onDhtResponse(UUID nodeId, GridDhtTxPrepareResponse res) {
assert dhtNodes != null;
boolean done;
http://git-wip-us.apache.org/repos/asf/ignite/blob/5596e69f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxFinishFuture.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxFinishFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxFinishFuture.java
index c13650e..06cf878 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxFinishFuture.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxFinishFuture.java
@@ -256,7 +256,7 @@ public final class GridNearTxFinishFuture<K, V> extends GridCompoundIdentityFutu
CheckRemoteTxMiniFuture f = (CheckRemoteTxMiniFuture)fut;
if (f.futureId().equals(res.miniId()))
- f.onDhtFinishResponse(nodeId, false);
+ f.onDhtFinishResponse(nodeId);
}
}
@@ -690,6 +690,8 @@ public final class GridNearTxFinishFuture<K, V> extends GridCompoundIdentityFutu
tx.activeCachesDeploymentEnabled()
);
+ boolean dhtReplyNear = tx.dhtReplyNear() && syncMode == FULL_SYNC;
+
// If this is the primary node for the keys.
if (n.isLocal()) {
req.miniId(IgniteUuid.randomUuid());
@@ -701,7 +703,7 @@ public final class GridNearTxFinishFuture<K, V> extends GridCompoundIdentityFutu
add(fut);
}
else {
- FinishMiniFuture fut = new FinishMiniFuture(m);
+ FinishMiniFuture fut = new FinishMiniFuture(m, dhtReplyNear);
req.miniId(fut.futureId());
@@ -862,11 +864,22 @@ public final class GridNearTxFinishFuture<K, V> extends GridCompoundIdentityFutu
@GridToStringInclude
private GridDistributedTxMapping m;
+ /** */
+ private final Set<UUID> dhtNodes;
+
/**
* @param m Mapping.
*/
- FinishMiniFuture(GridDistributedTxMapping m) {
+ FinishMiniFuture(GridDistributedTxMapping m, boolean dhtReplyNear) {
this.m = m;
+
+ if (dhtReplyNear) {
+ dhtNodes = new HashSet<>(tx.transactionNodes().get(m.primary().id()));
+
+ assert !dhtNodes.isEmpty();
+ }
+ else
+ dhtNodes = null;
}
/**
@@ -876,13 +889,6 @@ public final class GridNearTxFinishFuture<K, V> extends GridCompoundIdentityFutu
return m.primary();
}
- /**
- * @return Keys.
- */
- public GridDistributedTxMapping mapping() {
- return m;
- }
-
/** {@inheritDoc} */
boolean onNodeLeft(UUID nodeId, boolean discoThread) {
if (nodeId.equals(m.primary().id())) {
@@ -913,7 +919,7 @@ public final class GridNearTxFinishFuture<K, V> extends GridCompoundIdentityFutu
fut.listen(new CI1<IgniteInternalFuture<?>>() {
@Override public void apply(IgniteInternalFuture<?> fut) {
- mini.onDhtFinishResponse(cctx.localNodeId(), true);
+ mini.onDhtFinishResponse(cctx.localNodeId());
}
});
}
@@ -930,7 +936,7 @@ public final class GridNearTxFinishFuture<K, V> extends GridCompoundIdentityFutu
}
}
else
- mini.onDhtFinishResponse(backupId, true);
+ mini.onDhtFinishResponse(backupId);
}
}
}
@@ -948,6 +954,8 @@ public final class GridNearTxFinishFuture<K, V> extends GridCompoundIdentityFutu
* @param res Result callback.
*/
void onNearFinishResponse(GridNearTxFinishResponse res) {
+ assert dhtNodes == null || res.error() != null;
+
if (res.error() != null)
onDone(res.error());
else
@@ -956,7 +964,10 @@ public final class GridNearTxFinishFuture<K, V> extends GridCompoundIdentityFutu
/** {@inheritDoc} */
@Override public String toString() {
- return S.toString(FinishMiniFuture.class, this, "done", isDone(), "cancelled", isCancelled(), "err", error());
+ return S.toString(FinishMiniFuture.class, this,
+ "done", isDone(),
+ "cancelled", isCancelled(),
+ "err", error());
}
}
@@ -1055,9 +1066,8 @@ public final class GridNearTxFinishFuture<K, V> extends GridCompoundIdentityFutu
/**
* @param nodeId Node ID.
- * @param discoThread {@code True} if executed from discovery thread.
*/
- void onDhtFinishResponse(UUID nodeId, boolean discoThread) {
+ void onDhtFinishResponse(UUID nodeId) {
onResponse(nodeId);
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/5596e69f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxPrepareFutureAdapter.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxPrepareFutureAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxPrepareFutureAdapter.java
index 7f94e9f..71d2353 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxPrepareFutureAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxPrepareFutureAdapter.java
@@ -30,7 +30,7 @@ import org.apache.ignite.internal.processors.cache.GridCacheMvccFuture;
import org.apache.ignite.internal.processors.cache.GridCacheSharedContext;
import org.apache.ignite.internal.processors.cache.distributed.GridDistributedTxMapping;
import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxMapping;
-import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxNearPrepareResponse;
+import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxPrepareResponse;
import org.apache.ignite.internal.processors.cache.distributed.dht.colocated.GridDhtDetachedCacheEntry;
import org.apache.ignite.internal.processors.cache.transactions.IgniteInternalTx;
import org.apache.ignite.internal.processors.cache.transactions.IgniteTxEntry;
@@ -39,7 +39,6 @@ import org.apache.ignite.internal.processors.cache.version.GridCacheVersion;
import org.apache.ignite.internal.util.future.GridCompoundFuture;
import org.apache.ignite.internal.util.tostring.GridToStringExclude;
import org.apache.ignite.internal.util.tostring.GridToStringInclude;
-import org.apache.ignite.internal.util.typedef.F;
import org.apache.ignite.internal.util.typedef.internal.CU;
import org.apache.ignite.internal.util.typedef.internal.U;
import org.apache.ignite.lang.IgniteReducer;
@@ -159,7 +158,7 @@ public abstract class GridNearTxPrepareFutureAdapter extends
* @param nodeId Sender.
* @param res Response.
*/
- public abstract void onDhtResponse(UUID nodeId, GridDhtTxNearPrepareResponse res);
+ public abstract void onDhtResponse(UUID nodeId, GridDhtTxPrepareResponse res);
/**
* Checks if mapped transaction can be committed on one phase.
@@ -189,8 +188,8 @@ public abstract class GridNearTxPrepareFutureAdapter extends
* @param m Mapping.
* @param res Response.
*/
- final void onDhtPrepareResponse(GridDistributedTxMapping m, GridDhtTxNearPrepareResponse res) {
-
+ final void processDhtPrepareResponse(GridDistributedTxMapping m, GridDhtTxPrepareResponse res) {
+ // TODO IGNITE-4768.
}
/**
http://git-wip-us.apache.org/repos/asf/ignite/blob/5596e69f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxPrepareResponse.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxPrepareResponse.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxPrepareResponse.java
index 08b071d..d9b648c 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxPrepareResponse.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxPrepareResponse.java
@@ -102,6 +102,7 @@ public class GridNearTxPrepareResponse extends GridDistributedTxPrepareResponse
}
/**
+ * @param part Partition.
* @param xid Xid version.
* @param futId Future ID.
* @param miniId Mini future ID.
@@ -113,6 +114,7 @@ public class GridNearTxPrepareResponse extends GridDistributedTxPrepareResponse
* @param addDepInfo Deployment info flag.
*/
public GridNearTxPrepareResponse(
+ int part,
GridCacheVersion xid,
IgniteUuid futId,
int miniId,
@@ -123,7 +125,7 @@ public class GridNearTxPrepareResponse extends GridDistributedTxPrepareResponse
AffinityTopologyVersion clientRemapVer,
boolean addDepInfo
) {
- super(xid, err, addDepInfo);
+ super(part, xid, err, addDepInfo);
assert futId != null;
assert dhtVer != null;
http://git-wip-us.apache.org/repos/asf/ignite/blob/5596e69f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxHandler.java
----------------------------------------------------------------------
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 07777e2..33c8a18 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
@@ -32,6 +32,7 @@ import org.apache.ignite.internal.processors.cache.GridCacheEntryEx;
import org.apache.ignite.internal.processors.cache.GridCacheEntryInfo;
import org.apache.ignite.internal.processors.cache.GridCacheEntryRemovedException;
import org.apache.ignite.internal.processors.cache.GridCacheMessage;
+import org.apache.ignite.internal.processors.cache.GridCacheMvccFuture;
import org.apache.ignite.internal.processors.cache.GridCacheReturnCompletableWrapper;
import org.apache.ignite.internal.processors.cache.GridCacheSharedContext;
import org.apache.ignite.internal.processors.cache.KeyCacheObject;
@@ -45,7 +46,6 @@ import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxFini
import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxFinishRequest;
import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxFinishResponse;
import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxLocal;
-import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxNearPrepareResponse;
import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxOnePhaseCommitAckRequest;
import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxPrepareFuture;
import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxPrepareRequest;
@@ -152,12 +152,6 @@ public class IgniteTxHandler {
}
});
- ctx.io().addHandler(0, GridDhtTxNearPrepareResponse.class, new CI2<UUID, GridCacheMessage>() {
- @Override public void apply(UUID nodeId, GridCacheMessage msg) {
- processDhtTxNearPrepareResponse(nodeId, (GridDhtTxNearPrepareResponse)msg);
- }
- });
-
ctx.io().addHandler(0, GridNearTxFinishRequest.class, new CI2<UUID, GridCacheMessage>() {
@Override public void apply(UUID nodeId, GridCacheMessage msg) {
processNearTxFinishRequest(nodeId, (GridNearTxFinishRequest)msg);
@@ -278,6 +272,7 @@ public class IgniteTxHandler {
U.error(log, "Failed to prepare DHT transaction: " + locTx, e);
return new GridNearTxPrepareResponse(
+ req.partition(),
req.version(),
req.futureId(),
req.miniId(),
@@ -389,6 +384,7 @@ public class IgniteTxHandler {
}
GridNearTxPrepareResponse res = new GridNearTxPrepareResponse(
+ req.partition(),
req.version(),
req.futureId(),
req.miniId(),
@@ -565,34 +561,6 @@ public class IgniteTxHandler {
* @param nodeId Node ID.
* @param res Response.
*/
- private void processDhtTxNearPrepareResponse(UUID nodeId, GridDhtTxNearPrepareResponse res) {
- if (txPrepareMsgLog.isDebugEnabled())
- txPrepareMsgLog.debug("Received dht near prepare response [txId=" + res.nearTxId() + ", node=" + nodeId + ']');
-
- GridNearTxPrepareFutureAdapter fut = (GridNearTxPrepareFutureAdapter)ctx.mvcc()
- .<IgniteInternalTx>mvccFuture(res.nearTxId(), res.futureId());
-
- if (fut == null) {
- U.warn(log, "Failed to find future for dht near prepare response [txId=" + res.nearTxId() +
- ", node=" + nodeId +
- ", res=" + res + ']');
-
- return;
- }
-
- IgniteInternalTx tx = fut.tx();
-
- assert tx != null;
-
- res.txState(tx.txState());
-
- fut.onDhtResponse(nodeId, res);
- }
-
- /**
- * @param nodeId Node ID.
- * @param res Response.
- */
private void processNearTxPrepareResponse(UUID nodeId, GridNearTxPrepareResponse res) {
if (txPrepareMsgLog.isDebugEnabled())
txPrepareMsgLog.debug("Received near prepare response [txId=" + res.version() + ", node=" + nodeId + ']');
@@ -647,7 +615,7 @@ public class IgniteTxHandler {
* @param res Response.
*/
private void processDhtTxPrepareResponse(UUID nodeId, GridDhtTxPrepareResponse res) {
- GridDhtTxPrepareFuture fut = (GridDhtTxPrepareFuture)ctx.mvcc().mvccFuture(res.version(), res.futureId());
+ GridCacheMvccFuture<?> fut = ctx.mvcc().mvccFuture(res.version(), res.futureId());
if (fut == null) {
if (txPrepareMsgLog.isDebugEnabled()) {
@@ -668,7 +636,10 @@ public class IgniteTxHandler {
res.txState(tx.txState());
- fut.onResult(nodeId, res);
+ if (res.nearNodeResponse())
+ ((GridNearTxPrepareFutureAdapter)fut).onDhtResponse(nodeId, res);
+ else
+ ((GridDhtTxPrepareFuture)fut).onResult(nodeId, res);
}
/**
@@ -990,18 +961,21 @@ public class IgniteTxHandler {
GridNearTxRemote nearTx = null;
GridDhtTxPrepareResponse res = null;
- GridDhtTxNearPrepareResponse nearRes = null;
+ GridDhtTxPrepareResponse nearRes = null;
try {
if (req.dhtReplyNear()) {
- nearRes = new GridDhtTxNearPrepareResponse(
+ nearRes = new GridDhtTxPrepareResponse(
req.partition(),
req.nearXidVersion(),
req.nearFutureId(),
- req.nearMiniId());
+ null, //req.nearMiniId(),
+ req.deployInfo() != null);
}
else {
- res = new GridDhtTxPrepareResponse(req.version(),
+ res = new GridDhtTxPrepareResponse(
+ req.partition(),
+ req.version(),
req.futureId(),
req.miniId(),
req.deployInfo() != null);
@@ -1061,7 +1035,11 @@ public class IgniteTxHandler {
if (nearTx != null)
nearTx.rollback();
- res = new GridDhtTxPrepareResponse(req.version(), req.futureId(), req.miniId(), e,
+ res = new GridDhtTxPrepareResponse(req.partition(),
+ req.version(),
+ req.futureId(),
+ req.miniId(),
+ e,
req.deployInfo() != null);
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/5596e69f/modules/yardstick/config/ignite-base-config.xml
----------------------------------------------------------------------
diff --git a/modules/yardstick/config/ignite-base-config.xml b/modules/yardstick/config/ignite-base-config.xml
index 615cb42..5ee42a7 100644
--- a/modules/yardstick/config/ignite-base-config.xml
+++ b/modules/yardstick/config/ignite-base-config.xml
@@ -32,41 +32,6 @@
<property name="cacheConfiguration">
<list>
<bean class="org.apache.ignite.configuration.CacheConfiguration">
- <property name="name" value="atomic"/>
-
- <property name="cacheMode" value="PARTITIONED"/>
-
- <property name="atomicityMode" value="ATOMIC"/>
-
- <property name="swapEnabled" value="false"/>
- </bean>
-
- <bean class="org.apache.ignite.configuration.CacheConfiguration">
- <property name="name" value="atomic-offheap"/>
-
- <property name="cacheMode" value="PARTITIONED"/>
-
- <property name="atomicityMode" value="ATOMIC"/>
-
- <property name="swapEnabled" value="false"/>
-
- <property name="memoryMode" value="OFFHEAP_TIERED"/>
- </bean>
-
- <bean class="org.apache.ignite.configuration.CacheConfiguration">
- <property name="name" value="atomic-offheap-values"/>
-
- <property name="cacheMode" value="PARTITIONED"/>
-
- <property name="atomicityMode" value="ATOMIC"/>
-
- <property name="swapEnabled" value="false"/>
-
- <property name="memoryMode" value="OFFHEAP_VALUES"/>
-
- </bean>
-
- <bean class="org.apache.ignite.configuration.CacheConfiguration">
<property name="name" value="tx"/>
<property name="cacheMode" value="PARTITIONED"/>
@@ -75,141 +40,9 @@
<property name="swapEnabled" value="false"/>
- </bean>
-
- <bean class="org.apache.ignite.configuration.CacheConfiguration">
- <property name="name" value="tx-offheap"/>
-
- <property name="cacheMode" value="PARTITIONED"/>
-
- <property name="atomicityMode" value="TRANSACTIONAL"/>
-
- <property name="swapEnabled" value="false"/>
-
- <property name="memoryMode" value="OFFHEAP_TIERED"/>
-
- </bean>
+ <property name="writeSynchronizationMode" value="FULL_SYNC"/>
- <bean class="org.apache.ignite.configuration.CacheConfiguration">
- <property name="name" value="tx-offheap-values"/>
-
- <property name="cacheMode" value="PARTITIONED"/>
-
- <property name="atomicityMode" value="TRANSACTIONAL"/>
-
- <property name="swapEnabled" value="false"/>
-
- <property name="memoryMode" value="OFFHEAP_VALUES"/>
-
- </bean>
-
- <bean class="org.apache.ignite.configuration.CacheConfiguration">
- <property name="name" value="atomic-index"/>
-
- <property name="cacheMode" value="PARTITIONED"/>
-
- <property name="atomicityMode" value="ATOMIC"/>
-
- <property name="swapEnabled" value="false"/>
-
- <property name="indexedTypes">
- <list>
- <value>java.lang.Integer</value>
- <value>org.apache.ignite.yardstick.cache.model.Person1</value>
-
- <value>java.lang.Integer</value>
- <value>org.apache.ignite.yardstick.cache.model.Person2</value>
-
- <value>java.lang.Integer</value>
- <value>org.apache.ignite.yardstick.cache.model.Person8</value>
- </list>
- </property>
- </bean>
-
- <bean class="org.apache.ignite.configuration.CacheConfiguration">
- <property name="name" value="atomic-index-with-eviction"/>
-
- <property name="evictionPolicy">
- <bean class="org.apache.ignite.cache.eviction.fifo.FifoEvictionPolicy">
- <!-- default range (1000000) x (1 + default backups number (1)) / default nodes number (4) -->
- <constructor-arg value="500000"/>
- </bean>
- </property>
-
- <property name="cacheMode" value="PARTITIONED"/>
-
- <property name="atomicityMode" value="ATOMIC"/>
-
- <property name="swapEnabled" value="false"/>
-
- <property name="indexedTypes">
- <list>
- <value>java.lang.Integer</value>
- <value>org.apache.ignite.yardstick.cache.model.Person1</value>
-
- <value>java.lang.Integer</value>
- <value>org.apache.ignite.yardstick.cache.model.Person2</value>
-
- <value>java.lang.Integer</value>
- <value>org.apache.ignite.yardstick.cache.model.Person8</value>
- </list>
- </property>
- </bean>
-
- <bean class="org.apache.ignite.configuration.CacheConfiguration">
- <property name="name" value="query"/>
-
- <property name="cacheMode" value="PARTITIONED"/>
-
- <property name="atomicityMode" value="ATOMIC"/>
-
- <property name="indexedTypes">
- <list>
- <value>java.lang.Integer</value>
- <value>org.apache.ignite.yardstick.cache.model.Organization</value>
-
- <value>java.lang.Integer</value>
- <value>org.apache.ignite.yardstick.cache.model.Person</value>
-
- <value>java.lang.Integer</value>
- <value>org.apache.ignite.yardstick.cache.model.SampleValue</value>
-
- <value>java.lang.Integer</value>
- <value>java.lang.Integer</value>
- </list>
- </property>
- </bean>
-
- <bean class="org.apache.ignite.configuration.CacheConfiguration">
- <property name="name" value="query-offheap"/>
-
- <property name="cacheMode" value="PARTITIONED"/>
-
- <property name="atomicityMode" value="ATOMIC"/>
-
- <property name="swapEnabled" value="false"/>
-
- <property name="memoryMode" value="OFFHEAP_TIERED"/>
-
- <property name="indexedTypes">
- <list>
- <value>java.lang.Integer</value>
- <value>org.apache.ignite.yardstick.cache.model.Organization</value>
-
- <value>java.lang.Integer</value>
- <value>org.apache.ignite.yardstick.cache.model.Person</value>
- </list>
- </property>
- </bean>
-
- <bean class="org.apache.ignite.configuration.CacheConfiguration">
- <property name="name" value="compute"/>
-
- <property name="cacheMode" value="PARTITIONED"/>
-
- <property name="atomicityMode" value="TRANSACTIONAL"/>
-
- <property name="swapEnabled" value="false"/>
+ <property name="backups" value="2"/>
</bean>
</list>
</property>
http://git-wip-us.apache.org/repos/asf/ignite/blob/5596e69f/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgnitePutTxBenchmark.java
----------------------------------------------------------------------
diff --git a/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgnitePutTxBenchmark.java b/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgnitePutTxBenchmark.java
index 15b7cd6..3ad5a9d 100644
--- a/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgnitePutTxBenchmark.java
+++ b/modules/yardstick/src/main/java/org/apache/ignite/yardstick/cache/IgnitePutTxBenchmark.java
@@ -22,9 +22,12 @@ import java.util.concurrent.Callable;
import org.apache.ignite.IgniteCache;
import org.apache.ignite.IgniteSystemProperties;
import org.apache.ignite.IgniteTransactions;
+import org.apache.ignite.transactions.TransactionConcurrency;
+import org.apache.ignite.transactions.TransactionIsolation;
import org.apache.ignite.yardstick.IgniteBenchmarkUtils;
import org.apache.ignite.yardstick.cache.model.SampleValue;
import org.yardstickframework.BenchmarkConfiguration;
+import org.yardstickframework.BenchmarkUtils;
/**
* Ignite benchmark that performs transactional put operations.
@@ -58,7 +61,7 @@ public class IgnitePutTxBenchmark extends IgniteCacheAbstractBenchmark<Integer,
/** {@inheritDoc} */
@Override public boolean test(Map<Object, Object> ctx) throws Exception {
- IgniteBenchmarkUtils.doInTransaction(txs, args.txConcurrency(), args.txIsolation(), clo);
+ IgniteBenchmarkUtils.doInTransaction(txs, TransactionConcurrency.PESSIMISTIC, TransactionIsolation.REPEATABLE_READ, clo);
return true;
}