You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by vk...@apache.org on 2015/03/04 01:49:14 UTC
[1/6] incubator-ignite git commit: IGNITE-141 - Marshallers
refactoring
Repository: incubator-ignite
Updated Branches:
refs/heads/ignite-141 fe2185d04 -> 2d5586e25
IGNITE-141 - Marshallers refactoring
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/a06dc4ab
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/a06dc4ab
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/a06dc4ab
Branch: refs/heads/ignite-141
Commit: a06dc4ab44d84a02b767467f6a2892cd423aca80
Parents: 39c7f54
Author: Valentin Kulichenko <vk...@gridgain.com>
Authored: Tue Mar 3 13:47:37 2015 -0800
Committer: Valentin Kulichenko <vk...@gridgain.com>
Committed: Tue Mar 3 13:47:37 2015 -0800
----------------------------------------------------------------------
.../ignite/internal/MarshallerContextImpl.java | 24 +++++++++++---------
1 file changed, 13 insertions(+), 11 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/a06dc4ab/modules/core/src/main/java/org/apache/ignite/internal/MarshallerContextImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/MarshallerContextImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/MarshallerContextImpl.java
index f06896d..0491aea 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/MarshallerContextImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/MarshallerContextImpl.java
@@ -74,7 +74,7 @@ public class MarshallerContextImpl implements MarshallerContext {
/** {@inheritDoc} */
@Override public void registerClass(int id, Class cls) {
- if (clsNameById.putIfAbsent(id, cls.getName()) == null) {
+ if (!clsNameById.containsKey(id)) {
try {
if (cache == null)
U.awaitQuiet(latch);
@@ -85,6 +85,8 @@ public class MarshallerContextImpl implements MarshallerContext {
throw new IgniteException("Type ID collision occurred in OptimizedMarshaller. Use " +
"OptimizedMarshallerIdMapper to resolve it [id=" + id + ", clsName1=" + cls.getName() +
"clsName2=" + old + ']');
+
+ clsNameById.putIfAbsent(id, cls.getName());
}
catch (IgniteCheckedException e) {
throw U.convertException(e);
@@ -97,22 +99,22 @@ public class MarshallerContextImpl implements MarshallerContext {
String clsName = clsNameById.get(id);
if (clsName == null) {
- if (cache == null)
- U.awaitQuiet(latch);
-
try {
+ if (cache == null)
+ U.awaitQuiet(latch);
+
clsName = cache.get(id);
+
+ assert clsName != null : id;
+
+ String old = clsNameById.putIfAbsent(id, clsName);
+
+ if (old != null)
+ clsName = old;
}
catch (IgniteCheckedException e) {
throw U.convertException(e);
}
-
- assert clsName != null : id;
-
- String old = clsNameById.putIfAbsent(id, clsName);
-
- if (old != null)
- clsName = old;
}
return U.forName(clsName, ldr);
[5/6] incubator-ignite git commit: IGNITE-141 - Marshallers
refactoring
Posted by vk...@apache.org.
IGNITE-141 - Marshallers refactoring
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/8e65817d
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/8e65817d
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/8e65817d
Branch: refs/heads/ignite-141
Commit: 8e65817dbc89f7e30423d70a6c4c225787dfc80c
Parents: c08158d
Author: Valentin Kulichenko <vk...@gridgain.com>
Authored: Tue Mar 3 16:49:40 2015 -0800
Committer: Valentin Kulichenko <vk...@gridgain.com>
Committed: Tue Mar 3 16:49:40 2015 -0800
----------------------------------------------------------------------
.../distributed/dht/GridDhtTxFinishRequest.java | 38 +++++++--------
.../dht/GridDhtTxPrepareRequest.java | 50 ++++++++++----------
.../near/GridNearTxFinishRequest.java | 26 +++++-----
.../near/GridNearTxPrepareRequest.java | 42 ++++++++--------
.../cache/GridCacheAbstractFullApiSelfTest.java | 30 ++++++------
.../GridCacheExAbstractFullApiSelfTest.java | 2 +-
...idCacheNearOnlyMultiNodeFullApiSelfTest.java | 2 +-
7 files changed, 96 insertions(+), 94 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/8e65817d/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxFinishRequest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxFinishRequest.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxFinishRequest.java
index 4e84426..bf1e8b1 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxFinishRequest.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxFinishRequest.java
@@ -240,55 +240,55 @@ public class GridDhtTxFinishRequest<K, V> extends GridDistributedTxFinishRequest
}
switch (writer.state()) {
- case 19:
+ case 20:
if (!writer.writeByte("isolation", isolation != null ? (byte)isolation.ordinal() : -1))
return false;
writer.incrementState();
- case 20:
+ case 21:
if (!writer.writeIgniteUuid("miniId", miniId))
return false;
writer.incrementState();
- case 21:
+ case 22:
if (!writer.writeUuid("nearNodeId", nearNodeId))
return false;
writer.incrementState();
- case 22:
+ case 23:
if (!writer.writeCollection("pendingVers", pendingVers, MessageCollectionItemType.MSG))
return false;
writer.incrementState();
- case 23:
+ case 24:
if (!writer.writeUuid("subjId", subjId))
return false;
writer.incrementState();
- case 24:
+ case 25:
if (!writer.writeBoolean("sysInvalidate", sysInvalidate))
return false;
writer.incrementState();
- case 25:
+ case 26:
if (!writer.writeInt("taskNameHash", taskNameHash))
return false;
writer.incrementState();
- case 26:
+ case 27:
if (!writer.writeLong("topVer", topVer))
return false;
writer.incrementState();
- case 27:
+ case 28:
if (!writer.writeMessage("writeVer", writeVer))
return false;
@@ -310,7 +310,7 @@ public class GridDhtTxFinishRequest<K, V> extends GridDistributedTxFinishRequest
return false;
switch (reader.state()) {
- case 19:
+ case 20:
byte isolationOrd;
isolationOrd = reader.readByte("isolation");
@@ -322,7 +322,7 @@ public class GridDhtTxFinishRequest<K, V> extends GridDistributedTxFinishRequest
reader.incrementState();
- case 20:
+ case 21:
miniId = reader.readIgniteUuid("miniId");
if (!reader.isLastRead())
@@ -330,7 +330,7 @@ public class GridDhtTxFinishRequest<K, V> extends GridDistributedTxFinishRequest
reader.incrementState();
- case 21:
+ case 22:
nearNodeId = reader.readUuid("nearNodeId");
if (!reader.isLastRead())
@@ -338,7 +338,7 @@ public class GridDhtTxFinishRequest<K, V> extends GridDistributedTxFinishRequest
reader.incrementState();
- case 22:
+ case 23:
pendingVers = reader.readCollection("pendingVers", MessageCollectionItemType.MSG);
if (!reader.isLastRead())
@@ -346,7 +346,7 @@ public class GridDhtTxFinishRequest<K, V> extends GridDistributedTxFinishRequest
reader.incrementState();
- case 23:
+ case 24:
subjId = reader.readUuid("subjId");
if (!reader.isLastRead())
@@ -354,7 +354,7 @@ public class GridDhtTxFinishRequest<K, V> extends GridDistributedTxFinishRequest
reader.incrementState();
- case 24:
+ case 25:
sysInvalidate = reader.readBoolean("sysInvalidate");
if (!reader.isLastRead())
@@ -362,7 +362,7 @@ public class GridDhtTxFinishRequest<K, V> extends GridDistributedTxFinishRequest
reader.incrementState();
- case 25:
+ case 26:
taskNameHash = reader.readInt("taskNameHash");
if (!reader.isLastRead())
@@ -370,7 +370,7 @@ public class GridDhtTxFinishRequest<K, V> extends GridDistributedTxFinishRequest
reader.incrementState();
- case 26:
+ case 27:
topVer = reader.readLong("topVer");
if (!reader.isLastRead())
@@ -378,7 +378,7 @@ public class GridDhtTxFinishRequest<K, V> extends GridDistributedTxFinishRequest
reader.incrementState();
- case 27:
+ case 28:
writeVer = reader.readMessage("writeVer");
if (!reader.isLastRead())
@@ -398,6 +398,6 @@ public class GridDhtTxFinishRequest<K, V> extends GridDistributedTxFinishRequest
/** {@inheritDoc} */
@Override public byte fieldsCount() {
- return 28;
+ return 29;
}
}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/8e65817d/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxPrepareRequest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxPrepareRequest.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxPrepareRequest.java
index 0216774..0f3cc90 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxPrepareRequest.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxPrepareRequest.java
@@ -328,73 +328,73 @@ public class GridDhtTxPrepareRequest<K, V> extends GridDistributedTxPrepareReque
}
switch (writer.state()) {
- case 23:
+ case 24:
if (!writer.writeIgniteUuid("futId", futId))
return false;
writer.incrementState();
- case 24:
+ case 25:
if (!writer.writeBitSet("invalidateNearEntries", invalidateNearEntries))
return false;
writer.incrementState();
- case 25:
+ case 26:
if (!writer.writeBoolean("last", last))
return false;
writer.incrementState();
- case 26:
+ case 27:
if (!writer.writeIgniteUuid("miniId", miniId))
return false;
writer.incrementState();
- case 27:
+ case 28:
if (!writer.writeUuid("nearNodeId", nearNodeId))
return false;
writer.incrementState();
- case 28:
+ case 29:
if (!writer.writeCollection("nearWritesBytes", nearWritesBytes, MessageCollectionItemType.BYTE_ARR))
return false;
writer.incrementState();
- case 29:
+ case 30:
if (!writer.writeMessage("nearXidVer", nearXidVer))
return false;
writer.incrementState();
- case 30:
+ case 31:
if (!writer.writeByteArray("ownedBytes", ownedBytes))
return false;
writer.incrementState();
- case 31:
+ case 32:
if (!writer.writeBitSet("preloadKeys", preloadKeys))
return false;
writer.incrementState();
- case 32:
+ case 33:
if (!writer.writeUuid("subjId", subjId))
return false;
writer.incrementState();
- case 33:
+ case 34:
if (!writer.writeInt("taskNameHash", taskNameHash))
return false;
writer.incrementState();
- case 34:
+ case 35:
if (!writer.writeLong("topVer", topVer))
return false;
@@ -416,7 +416,7 @@ public class GridDhtTxPrepareRequest<K, V> extends GridDistributedTxPrepareReque
return false;
switch (reader.state()) {
- case 23:
+ case 24:
futId = reader.readIgniteUuid("futId");
if (!reader.isLastRead())
@@ -424,7 +424,7 @@ public class GridDhtTxPrepareRequest<K, V> extends GridDistributedTxPrepareReque
reader.incrementState();
- case 24:
+ case 25:
invalidateNearEntries = reader.readBitSet("invalidateNearEntries");
if (!reader.isLastRead())
@@ -432,7 +432,7 @@ public class GridDhtTxPrepareRequest<K, V> extends GridDistributedTxPrepareReque
reader.incrementState();
- case 25:
+ case 26:
last = reader.readBoolean("last");
if (!reader.isLastRead())
@@ -440,7 +440,7 @@ public class GridDhtTxPrepareRequest<K, V> extends GridDistributedTxPrepareReque
reader.incrementState();
- case 26:
+ case 27:
miniId = reader.readIgniteUuid("miniId");
if (!reader.isLastRead())
@@ -448,7 +448,7 @@ public class GridDhtTxPrepareRequest<K, V> extends GridDistributedTxPrepareReque
reader.incrementState();
- case 27:
+ case 28:
nearNodeId = reader.readUuid("nearNodeId");
if (!reader.isLastRead())
@@ -456,7 +456,7 @@ public class GridDhtTxPrepareRequest<K, V> extends GridDistributedTxPrepareReque
reader.incrementState();
- case 28:
+ case 29:
nearWritesBytes = reader.readCollection("nearWritesBytes", MessageCollectionItemType.BYTE_ARR);
if (!reader.isLastRead())
@@ -464,7 +464,7 @@ public class GridDhtTxPrepareRequest<K, V> extends GridDistributedTxPrepareReque
reader.incrementState();
- case 29:
+ case 30:
nearXidVer = reader.readMessage("nearXidVer");
if (!reader.isLastRead())
@@ -472,7 +472,7 @@ public class GridDhtTxPrepareRequest<K, V> extends GridDistributedTxPrepareReque
reader.incrementState();
- case 30:
+ case 31:
ownedBytes = reader.readByteArray("ownedBytes");
if (!reader.isLastRead())
@@ -480,7 +480,7 @@ public class GridDhtTxPrepareRequest<K, V> extends GridDistributedTxPrepareReque
reader.incrementState();
- case 31:
+ case 32:
preloadKeys = reader.readBitSet("preloadKeys");
if (!reader.isLastRead())
@@ -488,7 +488,7 @@ public class GridDhtTxPrepareRequest<K, V> extends GridDistributedTxPrepareReque
reader.incrementState();
- case 32:
+ case 33:
subjId = reader.readUuid("subjId");
if (!reader.isLastRead())
@@ -496,7 +496,7 @@ public class GridDhtTxPrepareRequest<K, V> extends GridDistributedTxPrepareReque
reader.incrementState();
- case 33:
+ case 34:
taskNameHash = reader.readInt("taskNameHash");
if (!reader.isLastRead())
@@ -504,7 +504,7 @@ public class GridDhtTxPrepareRequest<K, V> extends GridDistributedTxPrepareReque
reader.incrementState();
- case 34:
+ case 35:
topVer = reader.readLong("topVer");
if (!reader.isLastRead())
@@ -524,6 +524,6 @@ public class GridDhtTxPrepareRequest<K, V> extends GridDistributedTxPrepareReque
/** {@inheritDoc} */
@Override public byte fieldsCount() {
- return 35;
+ return 36;
}
}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/8e65817d/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxFinishRequest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxFinishRequest.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxFinishRequest.java
index 1ac8aed..9f73e3f 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxFinishRequest.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxFinishRequest.java
@@ -169,37 +169,37 @@ public class GridNearTxFinishRequest<K, V> extends GridDistributedTxFinishReques
}
switch (writer.state()) {
- case 19:
+ case 20:
if (!writer.writeBoolean("explicitLock", explicitLock))
return false;
writer.incrementState();
- case 20:
+ case 21:
if (!writer.writeIgniteUuid("miniId", miniId))
return false;
writer.incrementState();
- case 21:
+ case 22:
if (!writer.writeBoolean("storeEnabled", storeEnabled))
return false;
writer.incrementState();
- case 22:
+ case 23:
if (!writer.writeUuid("subjId", subjId))
return false;
writer.incrementState();
- case 23:
+ case 24:
if (!writer.writeInt("taskNameHash", taskNameHash))
return false;
writer.incrementState();
- case 24:
+ case 25:
if (!writer.writeLong("topVer", topVer))
return false;
@@ -221,7 +221,7 @@ public class GridNearTxFinishRequest<K, V> extends GridDistributedTxFinishReques
return false;
switch (reader.state()) {
- case 19:
+ case 20:
explicitLock = reader.readBoolean("explicitLock");
if (!reader.isLastRead())
@@ -229,7 +229,7 @@ public class GridNearTxFinishRequest<K, V> extends GridDistributedTxFinishReques
reader.incrementState();
- case 20:
+ case 21:
miniId = reader.readIgniteUuid("miniId");
if (!reader.isLastRead())
@@ -237,7 +237,7 @@ public class GridNearTxFinishRequest<K, V> extends GridDistributedTxFinishReques
reader.incrementState();
- case 21:
+ case 22:
storeEnabled = reader.readBoolean("storeEnabled");
if (!reader.isLastRead())
@@ -245,7 +245,7 @@ public class GridNearTxFinishRequest<K, V> extends GridDistributedTxFinishReques
reader.incrementState();
- case 22:
+ case 23:
subjId = reader.readUuid("subjId");
if (!reader.isLastRead())
@@ -253,7 +253,7 @@ public class GridNearTxFinishRequest<K, V> extends GridDistributedTxFinishReques
reader.incrementState();
- case 23:
+ case 24:
taskNameHash = reader.readInt("taskNameHash");
if (!reader.isLastRead())
@@ -261,7 +261,7 @@ public class GridNearTxFinishRequest<K, V> extends GridDistributedTxFinishReques
reader.incrementState();
- case 24:
+ case 25:
topVer = reader.readLong("topVer");
if (!reader.isLastRead())
@@ -281,7 +281,7 @@ public class GridNearTxFinishRequest<K, V> extends GridDistributedTxFinishReques
/** {@inheritDoc} */
@Override public byte fieldsCount() {
- return 25;
+ return 26;
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/8e65817d/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxPrepareRequest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxPrepareRequest.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxPrepareRequest.java
index ca82996..ff473c0 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxPrepareRequest.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxPrepareRequest.java
@@ -257,61 +257,61 @@ public class GridNearTxPrepareRequest<K, V> extends GridDistributedTxPrepareRequ
}
switch (writer.state()) {
- case 23:
+ case 24:
if (!writer.writeIgniteUuid("futId", futId))
return false;
writer.incrementState();
- case 24:
+ case 25:
if (!writer.writeBoolean("implicitSingle", implicitSingle))
return false;
writer.incrementState();
- case 25:
+ case 26:
if (!writer.writeBoolean("last", last))
return false;
writer.incrementState();
- case 26:
+ case 27:
if (!writer.writeCollection("lastBackups", lastBackups, MessageCollectionItemType.UUID))
return false;
writer.incrementState();
- case 27:
+ case 28:
if (!writer.writeIgniteUuid("miniId", miniId))
return false;
writer.incrementState();
- case 28:
+ case 29:
if (!writer.writeBoolean("near", near))
return false;
writer.incrementState();
- case 29:
+ case 30:
if (!writer.writeBoolean("retVal", retVal))
return false;
writer.incrementState();
- case 30:
+ case 31:
if (!writer.writeUuid("subjId", subjId))
return false;
writer.incrementState();
- case 31:
+ case 32:
if (!writer.writeInt("taskNameHash", taskNameHash))
return false;
writer.incrementState();
- case 32:
+ case 33:
if (!writer.writeLong("topVer", topVer))
return false;
@@ -333,7 +333,7 @@ public class GridNearTxPrepareRequest<K, V> extends GridDistributedTxPrepareRequ
return false;
switch (reader.state()) {
- case 23:
+ case 24:
futId = reader.readIgniteUuid("futId");
if (!reader.isLastRead())
@@ -341,7 +341,7 @@ public class GridNearTxPrepareRequest<K, V> extends GridDistributedTxPrepareRequ
reader.incrementState();
- case 24:
+ case 25:
implicitSingle = reader.readBoolean("implicitSingle");
if (!reader.isLastRead())
@@ -349,7 +349,7 @@ public class GridNearTxPrepareRequest<K, V> extends GridDistributedTxPrepareRequ
reader.incrementState();
- case 25:
+ case 26:
last = reader.readBoolean("last");
if (!reader.isLastRead())
@@ -357,7 +357,7 @@ public class GridNearTxPrepareRequest<K, V> extends GridDistributedTxPrepareRequ
reader.incrementState();
- case 26:
+ case 27:
lastBackups = reader.readCollection("lastBackups", MessageCollectionItemType.UUID);
if (!reader.isLastRead())
@@ -365,7 +365,7 @@ public class GridNearTxPrepareRequest<K, V> extends GridDistributedTxPrepareRequ
reader.incrementState();
- case 27:
+ case 28:
miniId = reader.readIgniteUuid("miniId");
if (!reader.isLastRead())
@@ -373,7 +373,7 @@ public class GridNearTxPrepareRequest<K, V> extends GridDistributedTxPrepareRequ
reader.incrementState();
- case 28:
+ case 29:
near = reader.readBoolean("near");
if (!reader.isLastRead())
@@ -381,7 +381,7 @@ public class GridNearTxPrepareRequest<K, V> extends GridDistributedTxPrepareRequ
reader.incrementState();
- case 29:
+ case 30:
retVal = reader.readBoolean("retVal");
if (!reader.isLastRead())
@@ -389,7 +389,7 @@ public class GridNearTxPrepareRequest<K, V> extends GridDistributedTxPrepareRequ
reader.incrementState();
- case 30:
+ case 31:
subjId = reader.readUuid("subjId");
if (!reader.isLastRead())
@@ -397,7 +397,7 @@ public class GridNearTxPrepareRequest<K, V> extends GridDistributedTxPrepareRequ
reader.incrementState();
- case 31:
+ case 32:
taskNameHash = reader.readInt("taskNameHash");
if (!reader.isLastRead())
@@ -405,7 +405,7 @@ public class GridNearTxPrepareRequest<K, V> extends GridDistributedTxPrepareRequ
reader.incrementState();
- case 32:
+ case 33:
topVer = reader.readLong("topVer");
if (!reader.isLastRead())
@@ -425,7 +425,7 @@ public class GridNearTxPrepareRequest<K, V> extends GridDistributedTxPrepareRequ
/** {@inheritDoc} */
@Override public byte fieldsCount() {
- return 33;
+ return 34;
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/8e65817d/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAbstractFullApiSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAbstractFullApiSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAbstractFullApiSelfTest.java
index 43dc0ce..4515cbf 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAbstractFullApiSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAbstractFullApiSelfTest.java
@@ -2918,7 +2918,9 @@ public abstract class GridCacheAbstractFullApiSelfTest extends GridCacheAbstract
public void testPeekMode() throws Exception {
String key = "testPeekMode";
- GridCache<String, Integer> cache = ((IgniteKernal)primaryIgnite(key)).cache(null);
+ Ignite ignite = primaryIgnite(key);
+
+ GridCache<String, Integer> cache = ((IgniteKernal)ignite).cache(null);
cache.put(key, 1);
@@ -2942,23 +2944,23 @@ public abstract class GridCacheAbstractFullApiSelfTest extends GridCacheAbstract
}
if (txEnabled()) {
- Transaction tx = cache.txStart();
-
- cache.replace(key, 2);
+ try (Transaction tx = ignite.transactions().txStart()) {
+ cache.replace(key, 2);
- assert cache.peek(key, F.asList(GLOBAL)) == 1;
+ assert cache.peek(key, F.asList(GLOBAL)) == 1;
- if (cacheMode() == LOCAL) {
- assert cache.peek(key, F.asList(NEAR_ONLY)) == 1;
- assert cache.peek(key, F.asList(PARTITIONED_ONLY)) == 1;
- }
+ if (cacheMode() == LOCAL) {
+ assert cache.peek(key, F.asList(NEAR_ONLY)) == 1;
+ assert cache.peek(key, F.asList(PARTITIONED_ONLY)) == 1;
+ }
- assert cache.peek(key, F.asList(TX)) == 2;
- assert cache.peek(key, F.asList(SMART)) == 2;
- assert cache.peek(key, F.asList(SWAP)) == null;
- assert cache.peek(key, F.asList(DB)) == 1;
+ assert cache.peek(key, F.asList(TX)) == 2;
+ assert cache.peek(key, F.asList(SMART)) == 2;
+ assert cache.peek(key, F.asList(SWAP)) == null;
+ assert cache.peek(key, F.asList(DB)) == 1;
- tx.commit();
+ tx.commit();
+ }
}
else
cache.replace(key, 2);
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/8e65817d/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheExAbstractFullApiSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheExAbstractFullApiSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheExAbstractFullApiSelfTest.java
index 51182fd..6d96eb1 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheExAbstractFullApiSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheExAbstractFullApiSelfTest.java
@@ -64,7 +64,7 @@ public abstract class GridCacheExAbstractFullApiSelfTest extends GridCacheAbstra
GridCache<String, Integer> cache = cache();
- try (Transaction tx = cache.txStart(PESSIMISTIC, REPEATABLE_READ)) {
+ try (Transaction tx = transactions().txStart(PESSIMISTIC, REPEATABLE_READ)) {
int key = 0;
for (int i = 0; i < 1000; i++) {
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/8e65817d/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/near/GridCacheNearOnlyMultiNodeFullApiSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/near/GridCacheNearOnlyMultiNodeFullApiSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/near/GridCacheNearOnlyMultiNodeFullApiSelfTest.java
index f297427..6e8ff1e 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/near/GridCacheNearOnlyMultiNodeFullApiSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/near/GridCacheNearOnlyMultiNodeFullApiSelfTest.java
@@ -414,7 +414,7 @@ public class GridCacheNearOnlyMultiNodeFullApiSelfTest extends GridCachePartitio
}
// Ensure that next update will not pick old expire time.
- tx = inTx ? c.txStart() : null;
+ tx = inTx ? transactions().txStart() : null;
try {
c.put(key, 10);
[4/6] incubator-ignite git commit: IGNITE-141 - Marshallers
refactoring
Posted by vk...@apache.org.
IGNITE-141 - Marshallers refactoring
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/c08158da
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/c08158da
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/c08158da
Branch: refs/heads/ignite-141
Commit: c08158daaf59fdfa0a7781a69154b053a3a4b3b5
Parents: 0fd5967
Author: Valentin Kulichenko <vk...@gridgain.com>
Authored: Tue Mar 3 16:17:29 2015 -0800
Committer: Valentin Kulichenko <vk...@gridgain.com>
Committed: Tue Mar 3 16:17:29 2015 -0800
----------------------------------------------------------------------
.../GridDistributedTxFinishRequest.java | 40 ++++++++++------
.../GridDistributedTxPrepareRequest.java | 48 ++++++++++++++------
2 files changed, 60 insertions(+), 28 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/c08158da/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxFinishRequest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxFinishRequest.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxFinishRequest.java
index cb5968d..7acec91 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxFinishRequest.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxFinishRequest.java
@@ -311,30 +311,36 @@ public class GridDistributedTxFinishRequest<K, V> extends GridDistributedBaseMes
writer.incrementState();
case 14:
- if (!writer.writeBoolean("syncCommit", syncCommit))
+ if (!writer.writeByte("plc", plc != null ? (byte)plc.ordinal() : -1))
return false;
writer.incrementState();
case 15:
- if (!writer.writeBoolean("syncRollback", syncRollback))
+ if (!writer.writeBoolean("syncCommit", syncCommit))
return false;
writer.incrementState();
case 16:
- if (!writer.writeByte("sys", plc != null ? (byte)plc.ordinal() : -1))
+ if (!writer.writeBoolean("syncRollback", syncRollback))
return false;
writer.incrementState();
case 17:
- if (!writer.writeLong("threadId", threadId))
+ if (!writer.writeBoolean("sys", sys))
return false;
writer.incrementState();
case 18:
+ if (!writer.writeLong("threadId", threadId))
+ return false;
+
+ writer.incrementState();
+
+ case 19:
if (!writer.writeInt("txSize", txSize))
return false;
@@ -405,15 +411,19 @@ public class GridDistributedTxFinishRequest<K, V> extends GridDistributedBaseMes
reader.incrementState();
case 14:
- syncCommit = reader.readBoolean("syncCommit");
+ byte plcOrd;
+
+ plcOrd = reader.readByte("plc");
if (!reader.isLastRead())
return false;
+ plc = GridIoPolicy.fromOrdinal(plcOrd);
+
reader.incrementState();
case 15:
- syncRollback = reader.readBoolean("syncRollback");
+ syncCommit = reader.readBoolean("syncCommit");
if (!reader.isLastRead())
return false;
@@ -421,19 +431,15 @@ public class GridDistributedTxFinishRequest<K, V> extends GridDistributedBaseMes
reader.incrementState();
case 16:
- byte plcOrd;
-
- plcOrd = reader.readByte("plc");
+ syncRollback = reader.readBoolean("syncRollback");
if (!reader.isLastRead())
return false;
- plc = GridIoPolicy.fromOrdinal(plcOrd);
-
reader.incrementState();
case 17:
- threadId = reader.readLong("threadId");
+ sys = reader.readBoolean("sys");
if (!reader.isLastRead())
return false;
@@ -441,6 +447,14 @@ public class GridDistributedTxFinishRequest<K, V> extends GridDistributedBaseMes
reader.incrementState();
case 18:
+ threadId = reader.readLong("threadId");
+
+ if (!reader.isLastRead())
+ return false;
+
+ reader.incrementState();
+
+ case 19:
txSize = reader.readInt("txSize");
if (!reader.isLastRead())
@@ -460,7 +474,7 @@ public class GridDistributedTxFinishRequest<K, V> extends GridDistributedBaseMes
/** {@inheritDoc} */
@Override public byte fieldsCount() {
- return 19;
+ return 20;
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/c08158da/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxPrepareRequest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxPrepareRequest.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxPrepareRequest.java
index 6dced98..13f930a 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxPrepareRequest.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxPrepareRequest.java
@@ -484,48 +484,54 @@ public class GridDistributedTxPrepareRequest<K, V> extends GridDistributedBaseMe
writer.incrementState();
case 15:
- if (!writer.writeCollection("readsBytes", readsBytes, MessageCollectionItemType.BYTE_ARR))
+ if (!writer.writeByte("plc", plc != null ? (byte)plc.ordinal() : -1))
return false;
writer.incrementState();
case 16:
- if (!writer.writeBoolean("sys", sys))
+ if (!writer.writeCollection("readsBytes", readsBytes, MessageCollectionItemType.BYTE_ARR))
return false;
writer.incrementState();
case 17:
- if (!writer.writeLong("threadId", threadId))
+ if (!writer.writeBoolean("sys", sys))
return false;
writer.incrementState();
case 18:
- if (!writer.writeLong("timeout", timeout))
+ if (!writer.writeLong("threadId", threadId))
return false;
writer.incrementState();
case 19:
- if (!writer.writeByteArray("txNodesBytes", txNodesBytes))
+ if (!writer.writeLong("timeout", timeout))
return false;
writer.incrementState();
case 20:
- if (!writer.writeInt("txSize", txSize))
+ if (!writer.writeByteArray("txNodesBytes", txNodesBytes))
return false;
writer.incrementState();
case 21:
- if (!writer.writeMessage("writeVer", writeVer))
+ if (!writer.writeInt("txSize", txSize))
return false;
writer.incrementState();
case 22:
+ if (!writer.writeMessage("writeVer", writeVer))
+ return false;
+
+ writer.incrementState();
+
+ case 23:
if (!writer.writeCollection("writesBytes", writesBytes, MessageCollectionItemType.BYTE_ARR))
return false;
@@ -612,15 +618,19 @@ public class GridDistributedTxPrepareRequest<K, V> extends GridDistributedBaseMe
reader.incrementState();
case 15:
- readsBytes = reader.readCollection("readsBytes", MessageCollectionItemType.BYTE_ARR);
+ byte plcOrd;
+
+ plcOrd = reader.readByte("plc");
if (!reader.isLastRead())
return false;
+ plc = GridIoPolicy.fromOrdinal(plcOrd);
+
reader.incrementState();
case 16:
- sys = reader.readBoolean("sys");
+ readsBytes = reader.readCollection("readsBytes", MessageCollectionItemType.BYTE_ARR);
if (!reader.isLastRead())
return false;
@@ -628,7 +638,7 @@ public class GridDistributedTxPrepareRequest<K, V> extends GridDistributedBaseMe
reader.incrementState();
case 17:
- threadId = reader.readLong("threadId");
+ sys = reader.readBoolean("sys");
if (!reader.isLastRead())
return false;
@@ -636,7 +646,7 @@ public class GridDistributedTxPrepareRequest<K, V> extends GridDistributedBaseMe
reader.incrementState();
case 18:
- timeout = reader.readLong("timeout");
+ threadId = reader.readLong("threadId");
if (!reader.isLastRead())
return false;
@@ -644,7 +654,7 @@ public class GridDistributedTxPrepareRequest<K, V> extends GridDistributedBaseMe
reader.incrementState();
case 19:
- txNodesBytes = reader.readByteArray("txNodesBytes");
+ timeout = reader.readLong("timeout");
if (!reader.isLastRead())
return false;
@@ -652,7 +662,7 @@ public class GridDistributedTxPrepareRequest<K, V> extends GridDistributedBaseMe
reader.incrementState();
case 20:
- txSize = reader.readInt("txSize");
+ txNodesBytes = reader.readByteArray("txNodesBytes");
if (!reader.isLastRead())
return false;
@@ -660,7 +670,7 @@ public class GridDistributedTxPrepareRequest<K, V> extends GridDistributedBaseMe
reader.incrementState();
case 21:
- writeVer = reader.readMessage("writeVer");
+ txSize = reader.readInt("txSize");
if (!reader.isLastRead())
return false;
@@ -668,6 +678,14 @@ public class GridDistributedTxPrepareRequest<K, V> extends GridDistributedBaseMe
reader.incrementState();
case 22:
+ writeVer = reader.readMessage("writeVer");
+
+ if (!reader.isLastRead())
+ return false;
+
+ reader.incrementState();
+
+ case 23:
writesBytes = reader.readCollection("writesBytes", MessageCollectionItemType.BYTE_ARR);
if (!reader.isLastRead())
@@ -687,7 +705,7 @@ public class GridDistributedTxPrepareRequest<K, V> extends GridDistributedBaseMe
/** {@inheritDoc} */
@Override public byte fieldsCount() {
- return 23;
+ return 24;
}
/** {@inheritDoc} */
[2/6] incubator-ignite git commit: IGNITE-141 - Marshallers
refactoring
Posted by vk...@apache.org.
IGNITE-141 - Marshallers refactoring
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/74078f6a
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/74078f6a
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/74078f6a
Branch: refs/heads/ignite-141
Commit: 74078f6ad397a823bb5d5a687213d72fb31899d1
Parents: a06dc4a
Author: Valentin Kulichenko <vk...@gridgain.com>
Authored: Tue Mar 3 15:25:23 2015 -0800
Committer: Valentin Kulichenko <vk...@gridgain.com>
Committed: Tue Mar 3 15:25:23 2015 -0800
----------------------------------------------------------------------
.../ignite/internal/GridEventConsumeHandler.java | 11 ++++++++++-
.../ignite/internal/GridMessageListenHandler.java | 11 ++++++++++-
.../cache/query/GridCacheQueryManager.java | 3 ++-
.../continuous/CacheContinuousQueryHandler.java | 11 ++++++++++-
.../continuous/GridContinuousHandler.java | 9 ++++++++-
.../continuous/GridContinuousProcessor.java | 8 +++-----
.../continuous/GridEventConsumeSelfTest.java | 3 ++-
.../internal/processors/igfs/IgfsSizeSelfTest.java | 17 -----------------
8 files changed, 45 insertions(+), 28 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/74078f6a/modules/core/src/main/java/org/apache/ignite/internal/GridEventConsumeHandler.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/GridEventConsumeHandler.java b/modules/core/src/main/java/org/apache/ignite/internal/GridEventConsumeHandler.java
index 68d8c0b..fda5ebd 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/GridEventConsumeHandler.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/GridEventConsumeHandler.java
@@ -24,7 +24,6 @@ import org.apache.ignite.internal.managers.deployment.*;
import org.apache.ignite.internal.managers.eventstorage.*;
import org.apache.ignite.internal.processors.cache.*;
import org.apache.ignite.internal.processors.continuous.*;
-import org.apache.ignite.internal.util.*;
import org.apache.ignite.internal.util.typedef.*;
import org.apache.ignite.internal.util.typedef.internal.*;
import org.apache.ignite.lang.*;
@@ -283,6 +282,16 @@ class GridEventConsumeHandler implements GridContinuousHandler {
}
/** {@inheritDoc} */
+ @Override public GridContinuousHandler clone() {
+ try {
+ return (GridContinuousHandler)super.clone();
+ }
+ catch (CloneNotSupportedException e) {
+ throw new IllegalStateException(e);
+ }
+ }
+
+ /** {@inheritDoc} */
@Override public void writeExternal(ObjectOutput out) throws IOException {
boolean b = filterBytes != null;
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/74078f6a/modules/core/src/main/java/org/apache/ignite/internal/GridMessageListenHandler.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/GridMessageListenHandler.java b/modules/core/src/main/java/org/apache/ignite/internal/GridMessageListenHandler.java
index 199d0ac..6412b63 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/GridMessageListenHandler.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/GridMessageListenHandler.java
@@ -20,7 +20,6 @@ package org.apache.ignite.internal;
import org.apache.ignite.*;
import org.apache.ignite.internal.managers.deployment.*;
import org.apache.ignite.internal.processors.continuous.*;
-import org.apache.ignite.internal.util.*;
import org.apache.ignite.internal.util.lang.*;
import org.apache.ignite.internal.util.typedef.internal.*;
import org.apache.ignite.lang.*;
@@ -163,6 +162,16 @@ public class GridMessageListenHandler implements GridContinuousHandler {
}
/** {@inheritDoc} */
+ @Override public GridContinuousHandler clone() {
+ try {
+ return (GridContinuousHandler)super.clone();
+ }
+ catch (CloneNotSupportedException e) {
+ throw new IllegalStateException(e);
+ }
+ }
+
+ /** {@inheritDoc} */
@Override public void writeExternal(ObjectOutput out) throws IOException {
out.writeBoolean(depEnabled);
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/74078f6a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/GridCacheQueryManager.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/GridCacheQueryManager.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/GridCacheQueryManager.java
index 8fa48aa..0d03e36 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/GridCacheQueryManager.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/GridCacheQueryManager.java
@@ -1958,7 +1958,8 @@ public abstract class GridCacheQueryManager<K, V> extends GridCacheManagerAdapte
},
new P1<GridCache<?, ?>>() {
@Override public boolean apply(GridCache<?, ?> c) {
- return !CU.UTILITY_CACHE_NAME.equals(c.name()) && !CU.ATOMICS_CACHE_NAME.equals(c.name());
+ return !CU.MARSH_CACHE_NAME.equals(c.name()) && !CU.UTILITY_CACHE_NAME.equals(c.name()) &&
+ !CU.ATOMICS_CACHE_NAME.equals(c.name());
}
}
);
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/74078f6a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryHandler.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryHandler.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryHandler.java
index 9502b3f..69e12b5 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryHandler.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryHandler.java
@@ -25,7 +25,6 @@ import org.apache.ignite.internal.managers.deployment.*;
import org.apache.ignite.internal.processors.cache.*;
import org.apache.ignite.internal.processors.cache.query.*;
import org.apache.ignite.internal.processors.continuous.*;
-import org.apache.ignite.internal.util.*;
import org.apache.ignite.internal.util.typedef.*;
import org.apache.ignite.internal.util.typedef.internal.*;
import org.jetbrains.annotations.*;
@@ -370,6 +369,16 @@ class CacheContinuousQueryHandler<K, V> implements GridContinuousHandler {
}
/** {@inheritDoc} */
+ @Override public GridContinuousHandler clone() {
+ try {
+ return (GridContinuousHandler)super.clone();
+ }
+ catch (CloneNotSupportedException e) {
+ throw new IllegalStateException(e);
+ }
+ }
+
+ /** {@inheritDoc} */
@Override public void writeExternal(ObjectOutput out) throws IOException {
U.writeString(out, cacheName);
out.writeObject(topic);
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/74078f6a/modules/core/src/main/java/org/apache/ignite/internal/processors/continuous/GridContinuousHandler.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/continuous/GridContinuousHandler.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/continuous/GridContinuousHandler.java
index 17c7a0a..69639c0 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/continuous/GridContinuousHandler.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/continuous/GridContinuousHandler.java
@@ -27,7 +27,7 @@ import java.util.*;
/**
* Continuous routine handler.
*/
-public interface GridContinuousHandler extends Externalizable {
+public interface GridContinuousHandler extends Externalizable, Cloneable {
/**
* Registers listener.
*
@@ -89,6 +89,13 @@ public interface GridContinuousHandler extends Externalizable {
@Nullable public Object orderedTopic();
/**
+ * Clones this handler.
+ *
+ * @return Clone of this handler.
+ */
+ public GridContinuousHandler clone();
+
+ /**
* @return {@code True} if for events.
*/
public boolean isForEvents();
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/74078f6a/modules/core/src/main/java/org/apache/ignite/internal/processors/continuous/GridContinuousProcessor.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/continuous/GridContinuousProcessor.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/continuous/GridContinuousProcessor.java
index eed273d..0948211 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/continuous/GridContinuousProcessor.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/continuous/GridContinuousProcessor.java
@@ -355,9 +355,6 @@ public class GridContinuousProcessor extends GridProcessorAdapter {
// Register handler only if local node passes projection predicate.
if (item.prjPred == null || item.prjPred.apply(ctx.discovery().localNode())) {
try {
- if (ctx.config().isPeerClassLoadingEnabled())
- item.hnd.p2pUnmarshal(data.nodeId, ctx);
-
if (registerHandler(data.nodeId, item.routineId, item.hnd, item.bufSize, item.interval,
item.autoUnsubscribe, false))
item.hnd.onListenerRegistered(item.routineId, ctx);
@@ -394,7 +391,7 @@ public class GridContinuousProcessor extends GridProcessorAdapter {
// Generate ID.
final UUID routineId = UUID.randomUUID();
- StartRequestData reqData = new StartRequestData(prjPred, hnd, bufSize, interval, autoUnsubscribe);
+ StartRequestData reqData = new StartRequestData(prjPred, hnd.clone(), bufSize, interval, autoUnsubscribe);
try {
if (ctx.config().isPeerClassLoadingEnabled()) {
@@ -416,7 +413,7 @@ public class GridContinuousProcessor extends GridProcessorAdapter {
}
// Handle peer deployment for other handler-specific objects.
- hnd.p2pMarshal(ctx);
+ reqData.hnd.p2pMarshal(ctx);
}
}
catch (IgniteCheckedException e) {
@@ -520,6 +517,7 @@ public class GridContinuousProcessor extends GridProcessorAdapter {
if (!nodes.isEmpty()) {
// Do not send projection predicate (nodes already filtered).
reqData.prjPred = null;
+ reqData.prjPredBytes = null;
// Send start requests.
try {
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/74078f6a/modules/core/src/test/java/org/apache/ignite/internal/processors/continuous/GridEventConsumeSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/continuous/GridEventConsumeSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/continuous/GridEventConsumeSelfTest.java
index 459786c..a51d1a8 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/continuous/GridEventConsumeSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/continuous/GridEventConsumeSelfTest.java
@@ -30,6 +30,7 @@ import org.apache.ignite.marshaller.optimized.*;
import org.apache.ignite.resources.*;
import org.apache.ignite.testframework.junits.common.*;
+import java.io.*;
import java.util.*;
import java.util.concurrent.*;
import java.util.concurrent.atomic.*;
@@ -41,7 +42,7 @@ import static org.apache.ignite.internal.processors.continuous.GridContinuousPro
/**
* Event consume test.
*/
-public class GridEventConsumeSelfTest extends GridCommonAbstractTest {
+public class GridEventConsumeSelfTest extends GridCommonAbstractTest implements Serializable {
/** */
private static final String PRJ_PRED_CLS_NAME = "org.apache.ignite.tests.p2p.GridEventConsumeProjectionPredicate";
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/74078f6a/modules/core/src/test/java/org/apache/ignite/internal/processors/igfs/IgfsSizeSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/igfs/IgfsSizeSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/igfs/IgfsSizeSelfTest.java
index b212f02..40bb2ac 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/igfs/IgfsSizeSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/igfs/IgfsSizeSelfTest.java
@@ -21,7 +21,6 @@ import org.apache.ignite.*;
import org.apache.ignite.cache.*;
import org.apache.ignite.cluster.*;
import org.apache.ignite.configuration.*;
-import org.apache.ignite.events.*;
import org.apache.ignite.igfs.*;
import org.apache.ignite.internal.*;
import org.apache.ignite.internal.processors.cache.*;
@@ -44,7 +43,6 @@ import static org.apache.ignite.cache.CacheAtomicityMode.*;
import static org.apache.ignite.cache.CacheDistributionMode.*;
import static org.apache.ignite.cache.CacheMode.*;
import static org.apache.ignite.cache.CachePreloadMode.*;
-import static org.apache.ignite.events.EventType.*;
import static org.apache.ignite.internal.processors.igfs.IgfsFileInfo.*;
import static org.apache.ignite.transactions.TransactionConcurrency.*;
import static org.apache.ignite.transactions.TransactionIsolation.*;
@@ -600,25 +598,10 @@ public class IgfsSizeSelfTest extends IgfsCommonAbstractTest {
assertEquals(expSize, cache.igfsDataSpaceUsed());
}
- // Start a node.
- final CountDownLatch latch = new CountDownLatch(GRID_CNT - 1);
-
- for (int i = 0; i < GRID_CNT - 1; i++) {
- grid(0).events().localListen(new IgnitePredicate<Event>() {
- @Override public boolean apply(Event evt) {
- latch.countDown();
-
- return true;
- }
- }, EVT_CACHE_PRELOAD_STOPPED);
- }
-
Ignite g = startGrid(GRID_CNT);
info("Started grid: " + g.cluster().localNode().id());
- U.awaitQuiet(latch);
-
// Wait partitions are evicted.
awaitPartitionMapExchange();
[6/6] incubator-ignite git commit: Merge branch 'ignite-141' of
https://git-wip-us.apache.org/repos/asf/incubator-ignite into ignite-141
Posted by vk...@apache.org.
Merge branch 'ignite-141' of https://git-wip-us.apache.org/repos/asf/incubator-ignite into ignite-141
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/2d5586e2
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/2d5586e2
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/2d5586e2
Branch: refs/heads/ignite-141
Commit: 2d5586e258253d3bb115a91ed0bea38352bdeee0
Parents: 8e65817 fe2185d
Author: Valentin Kulichenko <vk...@gridgain.com>
Authored: Tue Mar 3 16:49:50 2015 -0800
Committer: Valentin Kulichenko <vk...@gridgain.com>
Committed: Tue Mar 3 16:49:50 2015 -0800
----------------------------------------------------------------------
.../processors/cache/transactions/IgniteTransactionsImpl.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------
[3/6] incubator-ignite git commit: IGNITE-141 - Marshallers
refactoring
Posted by vk...@apache.org.
IGNITE-141 - Marshallers refactoring
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/0fd5967f
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/0fd5967f
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/0fd5967f
Branch: refs/heads/ignite-141
Commit: 0fd5967f471228edf89a87e7370e7e2512108f12
Parents: 74078f6
Author: Valentin Kulichenko <vk...@gridgain.com>
Authored: Tue Mar 3 16:15:22 2015 -0800
Committer: Valentin Kulichenko <vk...@gridgain.com>
Committed: Tue Mar 3 16:15:22 2015 -0800
----------------------------------------------------------------------
.../ignite/internal/GridKernalContext.java | 9 +-
.../ignite/internal/GridKernalContextImpl.java | 10 +
.../apache/ignite/internal/IgniteKernal.java | 2 +
.../org/apache/ignite/internal/IgnitionEx.java | 18 +-
.../managers/communication/GridIoManager.java | 13 +-
.../managers/communication/GridIoPolicy.java | 5 +-
.../processors/cache/GridCacheContext.java | 2 +-
.../GridDistributedTxFinishRequest.java | 28 +-
.../GridDistributedTxPrepareRequest.java | 12 +
.../GridDistributedTxRemoteAdapter.java | 4 +
.../dht/GridDhtTransactionalCacheAdapter.java | 2 +
.../distributed/dht/GridDhtTxFinishFuture.java | 2 +
.../distributed/dht/GridDhtTxFinishRequest.java | 4 +-
.../cache/distributed/dht/GridDhtTxLocal.java | 3 +
.../distributed/dht/GridDhtTxLocalAdapter.java | 6 +-
.../cache/distributed/dht/GridDhtTxRemote.java | 11 +-
.../near/GridNearTransactionalCache.java | 1 +
.../near/GridNearTxFinishFuture.java | 1 +
.../near/GridNearTxFinishRequest.java | 6 +-
.../cache/distributed/near/GridNearTxLocal.java | 3 +
.../distributed/near/GridNearTxRemote.java | 11 +-
.../processors/cache/local/GridLocalTx.java | 206 -----------
.../cache/local/GridLocalTxFuture.java | 351 -------------------
.../cache/transactions/IgniteTxAdapter.java | 12 +-
.../cache/transactions/IgniteTxHandler.java | 6 +-
.../transactions/IgniteTxLocalAdapter.java | 7 +-
.../cache/transactions/IgniteTxManager.java | 2 +
.../junits/GridTestKernalContext.java | 1 +
28 files changed, 152 insertions(+), 586 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/0fd5967f/modules/core/src/main/java/org/apache/ignite/internal/GridKernalContext.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/GridKernalContext.java b/modules/core/src/main/java/org/apache/ignite/internal/GridKernalContext.java
index f1a135f..bd6d3be 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/GridKernalContext.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/GridKernalContext.java
@@ -287,11 +287,18 @@ public interface GridKernalContext extends Iterable<GridComponent> {
/**
* Gets utility cache pool.
*
- * @return DR pool.
+ * @return Utility cache pool.
*/
public ExecutorService utilityCachePool();
/**
+ * Gets marshaller cache pool.
+ *
+ * @return Marshaller cache pool.
+ */
+ public ExecutorService marshallerCachePool();
+
+ /**
* Gets portable processor.
*
* @return Portable processor.
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/0fd5967f/modules/core/src/main/java/org/apache/ignite/internal/GridKernalContextImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/GridKernalContextImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/GridKernalContextImpl.java
index 8544c60..b63d65b 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/GridKernalContextImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/GridKernalContextImpl.java
@@ -288,6 +288,9 @@ public class GridKernalContextImpl implements GridKernalContext, Externalizable
private ExecutorService utilityCachePool;
/** */
+ private ExecutorService marshCachePool;
+
+ /** */
private IgniteConfiguration cfg;
/** */
@@ -338,6 +341,7 @@ public class GridKernalContextImpl implements GridKernalContext, Externalizable
GridKernalGateway gw,
IgniteExceptionRegistry registry,
ExecutorService utilityCachePool,
+ ExecutorService marshCachePool,
ExecutorService execSvc,
ExecutorService sysExecSvc,
ExecutorService p2pExecSvc,
@@ -353,6 +357,7 @@ public class GridKernalContextImpl implements GridKernalContext, Externalizable
this.gw = gw;
this.registry = registry;
this.utilityCachePool = utilityCachePool;
+ this.marshCachePool = marshCachePool;
this.execSvc = execSvc;
this.sysExecSvc = sysExecSvc;
this.p2pExecSvc = p2pExecSvc;
@@ -695,6 +700,11 @@ public class GridKernalContextImpl implements GridKernalContext, Externalizable
}
/** {@inheritDoc} */
+ @Override public ExecutorService marshallerCachePool() {
+ return marshCachePool;
+ }
+
+ /** {@inheritDoc} */
@Override public GridPortableProcessor portable() {
return portableProc;
}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/0fd5967f/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java b/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java
index a6a5bde..c682a80 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java
@@ -547,6 +547,7 @@ public class IgniteKernal implements IgniteEx, IgniteMXBean, Externalizable {
@SuppressWarnings({"CatchGenericClass", "unchecked"})
public void start(final IgniteConfiguration cfg,
ExecutorService utilityCachePool,
+ ExecutorService marshCachePool,
final ExecutorService execSvc,
final ExecutorService sysExecSvc,
ExecutorService p2pExecSvc,
@@ -668,6 +669,7 @@ public class IgniteKernal implements IgniteEx, IgniteMXBean, Externalizable {
gw,
new IgniteExceptionRegistry(log),
utilityCachePool,
+ marshCachePool,
execSvc,
sysExecSvc,
p2pExecSvc,
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/0fd5967f/modules/core/src/main/java/org/apache/ignite/internal/IgnitionEx.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/IgnitionEx.java b/modules/core/src/main/java/org/apache/ignite/internal/IgnitionEx.java
index 7844522..d818381 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/IgnitionEx.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/IgnitionEx.java
@@ -1165,6 +1165,9 @@ public class IgnitionEx {
/** Utility cache executor service. */
private ExecutorService utilityCacheExecSvc;
+ /** Marshaller cache executor service. */
+ private ExecutorService marshCacheExecSvc;
+
/** Grid state. */
private volatile IgniteState state = STOPPED;
@@ -1385,6 +1388,13 @@ public class IgnitionEx {
DFLT_SYSTEM_KEEP_ALIVE_TIME,
new LinkedBlockingQueue<Runnable>(DFLT_SYSTEM_THREADPOOL_QUEUE_CAP));
+ marshCacheExecSvc = new IgniteThreadPoolExecutor(
+ "marshaller-cache-" + cfg.getGridName(),
+ DFLT_SYSTEM_CORE_THREAD_CNT,
+ DFLT_SYSTEM_MAX_THREAD_CNT,
+ DFLT_SYSTEM_KEEP_ALIVE_TIME,
+ new LinkedBlockingQueue<Runnable>(DFLT_SYSTEM_THREADPOOL_QUEUE_CAP));
+
// Register Ignite MBean for current grid instance.
registerFactoryMbean(myCfg.getMBeanServer());
@@ -1396,8 +1406,8 @@ public class IgnitionEx {
// Init here to make grid available to lifecycle listeners.
grid = grid0;
- grid0.start(myCfg, utilityCacheExecSvc, execSvc, sysExecSvc, p2pExecSvc, mgmtExecSvc, igfsExecSvc,
- restExecSvc,
+ grid0.start(myCfg, utilityCacheExecSvc, marshCacheExecSvc, execSvc, sysExecSvc, p2pExecSvc, mgmtExecSvc,
+ igfsExecSvc, restExecSvc,
new CA() {
@Override public void apply() {
startLatch.countDown();
@@ -2046,6 +2056,10 @@ public class IgnitionEx {
U.shutdownNow(getClass(), utilityCacheExecSvc, log);
utilityCacheExecSvc = null;
+
+ U.shutdownNow(getClass(), marshCacheExecSvc, log);
+
+ marshCacheExecSvc = null;
}
/**
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/0fd5967f/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoManager.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoManager.java b/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoManager.java
index 968e93a..ca84cb1 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoManager.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoManager.java
@@ -83,6 +83,9 @@ public class GridIoManager extends GridManagerAdapter<CommunicationSpi<Serializa
/** Utility cache pool. */
private ExecutorService utilityCachePool;
+ /** Marshaller cache pool. */
+ private ExecutorService marshCachePool;
+
/** Discovery listener. */
private GridLocalEventListener discoLsnr;
@@ -188,6 +191,7 @@ public class GridIoManager extends GridManagerAdapter<CommunicationSpi<Serializa
sysPool = ctx.getSystemExecutorService();
mgmtPool = ctx.getManagementExecutorService();
utilityCachePool = ctx.utilityCachePool();
+ marshCachePool = ctx.marshallerCachePool();
affPool = Executors.newFixedThreadPool(1);
getSpi().setListener(commLsnr = new CommunicationListener<Serializable>() {
@@ -498,7 +502,8 @@ public class GridIoManager extends GridManagerAdapter<CommunicationSpi<Serializa
case SYSTEM_POOL:
case MANAGEMENT_POOL:
case AFFINITY_POOL:
- case UTILITY_CACHE_POOL: {
+ case UTILITY_CACHE_POOL:
+ case MARSH_CACHE_POOL: {
if (msg.isOrdered())
processOrderedMessage(nodeId, msg, plc, msgC);
else
@@ -534,11 +539,17 @@ public class GridIoManager extends GridManagerAdapter<CommunicationSpi<Serializa
return mgmtPool;
case AFFINITY_POOL:
return affPool;
+
case UTILITY_CACHE_POOL:
assert utilityCachePool != null : "Utility cache pool is not configured.";
return utilityCachePool;
+ case MARSH_CACHE_POOL:
+ assert marshCachePool != null : "Marshaller cache pool is not configured.";
+
+ return marshCachePool;
+
default: {
assert false : "Invalid communication policy: " + plc;
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/0fd5967f/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoPolicy.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoPolicy.java b/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoPolicy.java
index 78ceab4..6e45043 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoPolicy.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoPolicy.java
@@ -40,7 +40,10 @@ public enum GridIoPolicy {
AFFINITY_POOL,
/** Utility cache execution pool. */
- UTILITY_CACHE_POOL;
+ UTILITY_CACHE_POOL,
+
+ /** Marshaller cache execution pool. */
+ MARSH_CACHE_POOL;
/** Enum values. */
private static final GridIoPolicy[] VALS = values();
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/0fd5967f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java
index f2e71ab..38b58d2 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java
@@ -314,7 +314,7 @@ public class GridCacheContext<K, V> implements Externalizable {
sys = ctx.cache().systemCache(cacheName);
- plc = sys ? UTILITY_CACHE_POOL : SYSTEM_POOL;
+ plc = CU.isMarshallerCache(cacheName) ? MARSH_CACHE_POOL : sys ? UTILITY_CACHE_POOL : SYSTEM_POOL;
Factory<ExpiryPolicy> factory = cacheCfg.getExpiryPolicyFactory();
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/0fd5967f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxFinishRequest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxFinishRequest.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxFinishRequest.java
index 8f954e8..cb5968d 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxFinishRequest.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxFinishRequest.java
@@ -19,6 +19,7 @@ package org.apache.ignite.internal.processors.cache.distributed;
import org.apache.ignite.*;
import org.apache.ignite.internal.*;
+import org.apache.ignite.internal.managers.communication.*;
import org.apache.ignite.internal.processors.cache.*;
import org.apache.ignite.internal.processors.cache.transactions.*;
import org.apache.ignite.internal.processors.cache.version.*;
@@ -73,9 +74,12 @@ public class GridDistributedTxFinishRequest<K, V> extends GridDistributedBaseMes
/** Group lock key bytes. */
private byte[] grpLockKeyBytes;
- /** System flag. */
+ /** System transaction flag. */
private boolean sys;
+ /** IO policy. */
+ private GridIoPolicy plc;
+
/**
* Empty constructor required by {@link Externalizable}.
*/
@@ -90,7 +94,8 @@ public class GridDistributedTxFinishRequest<K, V> extends GridDistributedBaseMes
* @param commitVer Commit version.
* @param commit Commit flag.
* @param invalidate Invalidate flag.
- * @param sys System flag.
+ * @param sys System transaction flag.
+ * @param plc IO policy.
* @param baseVer Base version.
* @param committedVers Committed versions.
* @param rolledbackVers Rolled back versions.
@@ -105,6 +110,7 @@ public class GridDistributedTxFinishRequest<K, V> extends GridDistributedBaseMes
boolean commit,
boolean invalidate,
boolean sys,
+ GridIoPolicy plc,
boolean syncCommit,
boolean syncRollback,
GridCacheVersion baseVer,
@@ -122,6 +128,7 @@ public class GridDistributedTxFinishRequest<K, V> extends GridDistributedBaseMes
this.commit = commit;
this.invalidate = invalidate;
this.sys = sys;
+ this.plc = plc;
this.syncCommit = syncCommit;
this.syncRollback = syncRollback;
this.baseVer = baseVer;
@@ -132,13 +139,20 @@ public class GridDistributedTxFinishRequest<K, V> extends GridDistributedBaseMes
}
/**
- * @return System flag.
+ * @return System transaction flag.
*/
public boolean system() {
return sys;
}
/**
+ * @return IO policy.
+ */
+ public GridIoPolicy policy() {
+ return plc;
+ }
+
+ /**
* @return Future ID.
*/
public IgniteUuid futureId() {
@@ -309,7 +323,7 @@ public class GridDistributedTxFinishRequest<K, V> extends GridDistributedBaseMes
writer.incrementState();
case 16:
- if (!writer.writeBoolean("sys", sys))
+ if (!writer.writeByte("sys", plc != null ? (byte)plc.ordinal() : -1))
return false;
writer.incrementState();
@@ -407,11 +421,15 @@ public class GridDistributedTxFinishRequest<K, V> extends GridDistributedBaseMes
reader.incrementState();
case 16:
- sys = reader.readBoolean("sys");
+ byte plcOrd;
+
+ plcOrd = reader.readByte("plc");
if (!reader.isLastRead())
return false;
+ plc = GridIoPolicy.fromOrdinal(plcOrd);
+
reader.incrementState();
case 17:
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/0fd5967f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxPrepareRequest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxPrepareRequest.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxPrepareRequest.java
index 8f3742b..6dced98 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxPrepareRequest.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxPrepareRequest.java
@@ -19,6 +19,7 @@ package org.apache.ignite.internal.processors.cache.distributed;
import org.apache.ignite.*;
import org.apache.ignite.internal.*;
+import org.apache.ignite.internal.managers.communication.*;
import org.apache.ignite.internal.processors.cache.*;
import org.apache.ignite.internal.processors.cache.transactions.*;
import org.apache.ignite.internal.processors.cache.version.*;
@@ -119,6 +120,9 @@ public class GridDistributedTxPrepareRequest<K, V> extends GridDistributedBaseMe
/** System flag. */
private boolean sys;
+ /** IO policy. */
+ private GridIoPolicy plc;
+
/**
* Required by {@link Externalizable}.
*/
@@ -154,6 +158,7 @@ public class GridDistributedTxPrepareRequest<K, V> extends GridDistributedBaseMe
invalidate = tx.isInvalidate();
txSize = tx.size();
sys = tx.system();
+ plc = tx.ioPolicy();
this.reads = reads;
this.writes = writes;
@@ -178,6 +183,13 @@ public class GridDistributedTxPrepareRequest<K, V> extends GridDistributedBaseMe
}
/**
+ * @return IO policy.
+ */
+ public GridIoPolicy policy() {
+ return plc;
+ }
+
+ /**
* Adds version to be verified on remote node.
*
* @param key Key for which version is verified.
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/0fd5967f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxRemoteAdapter.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxRemoteAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxRemoteAdapter.java
index dbf82dd..02c4b97 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxRemoteAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxRemoteAdapter.java
@@ -19,6 +19,7 @@ package org.apache.ignite.internal.processors.cache.distributed;
import org.apache.ignite.*;
import org.apache.ignite.internal.*;
+import org.apache.ignite.internal.managers.communication.*;
import org.apache.ignite.internal.processors.cache.*;
import org.apache.ignite.internal.processors.cache.distributed.near.*;
import org.apache.ignite.internal.processors.cache.transactions.*;
@@ -88,6 +89,7 @@ public class GridDistributedTxRemoteAdapter<K, V> extends IgniteTxAdapter<K, V>
* @param xidVer XID version.
* @param commitVer Commit version.
* @param sys System flag.
+ * @param plc IO policy.
* @param concurrency Concurrency level (should be pessimistic).
* @param isolation Transaction isolation.
* @param invalidate Invalidate flag.
@@ -104,6 +106,7 @@ public class GridDistributedTxRemoteAdapter<K, V> extends IgniteTxAdapter<K, V>
GridCacheVersion xidVer,
GridCacheVersion commitVer,
boolean sys,
+ GridIoPolicy plc,
TransactionConcurrency concurrency,
TransactionIsolation isolation,
boolean invalidate,
@@ -120,6 +123,7 @@ public class GridDistributedTxRemoteAdapter<K, V> extends IgniteTxAdapter<K, V>
ctx.versions().last(),
Thread.currentThread().getId(),
sys,
+ plc,
concurrency,
isolation,
timeout,
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/0fd5967f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTransactionalCacheAdapter.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTransactionalCacheAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTransactionalCacheAdapter.java
index 3fa0b89..ca99241 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTransactionalCacheAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTransactionalCacheAdapter.java
@@ -197,6 +197,7 @@ public abstract class GridDhtTransactionalCacheAdapter<K, V> extends GridDhtCach
req.version(),
/*commitVer*/null,
ctx.system(),
+ ctx.ioPolicy(),
PESSIMISTIC,
req.isolation(),
req.isInvalidate(),
@@ -790,6 +791,7 @@ public abstract class GridDhtTransactionalCacheAdapter<K, V> extends GridDhtCach
req.implicitTx(),
req.implicitSingleTx(),
ctx.system(),
+ ctx.ioPolicy(),
PESSIMISTIC,
req.isolation(),
req.timeout(),
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/0fd5967f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxFinishFuture.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxFinishFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxFinishFuture.java
index 7dac17b..38705df 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxFinishFuture.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxFinishFuture.java
@@ -318,6 +318,7 @@ public final class GridDhtTxFinishFuture<K, V> extends GridCompoundIdentityFutur
commit,
tx.isInvalidate(),
tx.system(),
+ tx.ioPolicy(),
tx.isSystemInvalidate(),
tx.syncCommit(),
tx.syncRollback(),
@@ -369,6 +370,7 @@ public final class GridDhtTxFinishFuture<K, V> extends GridCompoundIdentityFutur
commit,
tx.isInvalidate(),
tx.system(),
+ tx.ioPolicy(),
tx.isSystemInvalidate(),
tx.syncCommit(),
tx.syncRollback(),
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/0fd5967f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxFinishRequest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxFinishRequest.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxFinishRequest.java
index 2835844..4e84426 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxFinishRequest.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxFinishRequest.java
@@ -18,6 +18,7 @@
package org.apache.ignite.internal.processors.cache.distributed.dht;
import org.apache.ignite.internal.*;
+import org.apache.ignite.internal.managers.communication.*;
import org.apache.ignite.internal.processors.cache.distributed.*;
import org.apache.ignite.internal.processors.cache.transactions.*;
import org.apache.ignite.internal.processors.cache.version.*;
@@ -111,6 +112,7 @@ public class GridDhtTxFinishRequest<K, V> extends GridDistributedTxFinishRequest
boolean commit,
boolean invalidate,
boolean sys,
+ GridIoPolicy plc,
boolean sysInvalidate,
boolean syncCommit,
boolean syncRollback,
@@ -123,7 +125,7 @@ public class GridDhtTxFinishRequest<K, V> extends GridDistributedTxFinishRequest
@Nullable UUID subjId,
int taskNameHash
) {
- super(xidVer, futId, commitVer, threadId, commit, invalidate, sys, syncCommit, syncRollback, baseVer,
+ super(xidVer, futId, commitVer, threadId, commit, invalidate, sys, plc, syncCommit, syncRollback, baseVer,
committedVers, rolledbackVers, txSize, grpLockKey);
assert miniId != null;
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/0fd5967f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxLocal.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxLocal.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxLocal.java
index 6aa159c..a77b560 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxLocal.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxLocal.java
@@ -20,6 +20,7 @@ package org.apache.ignite.internal.processors.cache.distributed.dht;
import org.apache.ignite.*;
import org.apache.ignite.internal.*;
import org.apache.ignite.internal.cluster.*;
+import org.apache.ignite.internal.managers.communication.*;
import org.apache.ignite.internal.processors.cache.*;
import org.apache.ignite.internal.processors.cache.distributed.*;
import org.apache.ignite.internal.processors.cache.distributed.near.*;
@@ -105,6 +106,7 @@ public class GridDhtTxLocal<K, V> extends GridDhtTxLocalAdapter<K, V> implements
boolean implicit,
boolean implicitSingle,
boolean sys,
+ GridIoPolicy plc,
TransactionConcurrency concurrency,
TransactionIsolation isolation,
long timeout,
@@ -123,6 +125,7 @@ public class GridDhtTxLocal<K, V> extends GridDhtTxLocalAdapter<K, V> implements
implicit,
implicitSingle,
sys,
+ plc,
concurrency,
isolation,
timeout,
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/0fd5967f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxLocalAdapter.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxLocalAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxLocalAdapter.java
index 1c71f12..eb5c356 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxLocalAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxLocalAdapter.java
@@ -20,6 +20,7 @@ package org.apache.ignite.internal.processors.cache.distributed.dht;
import org.apache.ignite.*;
import org.apache.ignite.cluster.*;
import org.apache.ignite.internal.*;
+import org.apache.ignite.internal.managers.communication.*;
import org.apache.ignite.internal.processors.cache.*;
import org.apache.ignite.internal.processors.cache.distributed.*;
import org.apache.ignite.internal.processors.cache.transactions.*;
@@ -95,6 +96,7 @@ public abstract class GridDhtTxLocalAdapter<K, V> extends IgniteTxLocalAdapter<K
boolean implicit,
boolean implicitSingle,
boolean sys,
+ GridIoPolicy plc,
TransactionConcurrency concurrency,
TransactionIsolation isolation,
long timeout,
@@ -106,8 +108,8 @@ public abstract class GridDhtTxLocalAdapter<K, V> extends IgniteTxLocalAdapter<K
@Nullable UUID subjId,
int taskNameHash
) {
- super(cctx, xidVer, implicit, implicitSingle, sys, concurrency, isolation, timeout, invalidate, storeEnabled,
- txSize, grpLockKey, partLock, subjId, taskNameHash);
+ super(cctx, xidVer, implicit, implicitSingle, sys, plc, concurrency, isolation, timeout, invalidate,
+ storeEnabled, txSize, grpLockKey, partLock, subjId, taskNameHash);
assert cctx != null;
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/0fd5967f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxRemote.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxRemote.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxRemote.java
index 506888b..d818c1e 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxRemote.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxRemote.java
@@ -18,6 +18,7 @@
package org.apache.ignite.internal.processors.cache.distributed.dht;
import org.apache.ignite.*;
+import org.apache.ignite.internal.managers.communication.*;
import org.apache.ignite.internal.processors.cache.*;
import org.apache.ignite.internal.processors.cache.distributed.*;
import org.apache.ignite.internal.processors.cache.transactions.*;
@@ -89,6 +90,7 @@ public class GridDhtTxRemote<K, V> extends GridDistributedTxRemoteAdapter<K, V>
GridCacheVersion xidVer,
GridCacheVersion commitVer,
boolean sys,
+ GridIoPolicy plc,
TransactionConcurrency concurrency,
TransactionIsolation isolation,
boolean invalidate,
@@ -100,8 +102,8 @@ public class GridDhtTxRemote<K, V> extends GridDistributedTxRemoteAdapter<K, V>
@Nullable UUID subjId,
int taskNameHash
) {
- super(ctx, nodeId, rmtThreadId, xidVer, commitVer, sys, concurrency, isolation, invalidate, timeout, txSize,
- grpLockKey, subjId, taskNameHash);
+ super(ctx, nodeId, rmtThreadId, xidVer, commitVer, sys, plc, concurrency, isolation, invalidate, timeout,
+ txSize, grpLockKey, subjId, taskNameHash);
assert nearNodeId != null;
assert rmtFutId != null;
@@ -149,6 +151,7 @@ public class GridDhtTxRemote<K, V> extends GridDistributedTxRemoteAdapter<K, V>
GridCacheVersion xidVer,
GridCacheVersion commitVer,
boolean sys,
+ GridIoPolicy plc,
TransactionConcurrency concurrency,
TransactionIsolation isolation,
boolean invalidate,
@@ -158,8 +161,8 @@ public class GridDhtTxRemote<K, V> extends GridDistributedTxRemoteAdapter<K, V>
@Nullable UUID subjId,
int taskNameHash
) {
- super(ctx, nodeId, rmtThreadId, xidVer, commitVer, sys, concurrency, isolation, invalidate, timeout, txSize,
- grpLockKey, subjId, taskNameHash);
+ super(ctx, nodeId, rmtThreadId, xidVer, commitVer, sys, plc, concurrency, isolation, invalidate, timeout,
+ txSize, grpLockKey, subjId, taskNameHash);
assert nearNodeId != null;
assert rmtFutId != null;
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/0fd5967f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTransactionalCache.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTransactionalCache.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTransactionalCache.java
index 6255588..c25a7a5 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTransactionalCache.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTransactionalCache.java
@@ -292,6 +292,7 @@ public class GridNearTransactionalCache<K, V> extends GridNearCacheAdapter<K, V>
req.version(),
null,
ctx.system(),
+ ctx.ioPolicy(),
PESSIMISTIC,
req.isolation(),
req.isInvalidate(),
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/0fd5967f/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 f3811c6..dddeb23 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
@@ -350,6 +350,7 @@ public final class GridNearTxFinishFuture<K, V> extends GridCompoundIdentityFutu
commit,
tx.isInvalidate(),
tx.system(),
+ tx.ioPolicy(),
tx.syncCommit(),
tx.syncRollback(),
m.explicitLock(),
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/0fd5967f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxFinishRequest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxFinishRequest.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxFinishRequest.java
index f29cfea..1ac8aed 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxFinishRequest.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxFinishRequest.java
@@ -17,6 +17,7 @@
package org.apache.ignite.internal.processors.cache.distributed.near;
+import org.apache.ignite.internal.managers.communication.*;
import org.apache.ignite.internal.processors.cache.distributed.*;
import org.apache.ignite.internal.processors.cache.version.*;
import org.apache.ignite.internal.util.tostring.*;
@@ -82,6 +83,7 @@ public class GridNearTxFinishRequest<K, V> extends GridDistributedTxFinishReques
boolean commit,
boolean invalidate,
boolean sys,
+ GridIoPolicy plc,
boolean syncCommit,
boolean syncRollback,
boolean explicitLock,
@@ -93,8 +95,8 @@ public class GridNearTxFinishRequest<K, V> extends GridDistributedTxFinishReques
int txSize,
@Nullable UUID subjId,
int taskNameHash) {
- super(xidVer, futId, null, threadId, commit, invalidate, sys, syncCommit, syncRollback, baseVer, committedVers,
- rolledbackVers, txSize, null);
+ super(xidVer, futId, null, threadId, commit, invalidate, sys, plc, syncCommit, syncRollback, baseVer,
+ committedVers, rolledbackVers, txSize, null);
this.explicitLock = explicitLock;
this.storeEnabled = storeEnabled;
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/0fd5967f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxLocal.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxLocal.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxLocal.java
index 06e4767..7a5f9d9 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxLocal.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxLocal.java
@@ -20,6 +20,7 @@ package org.apache.ignite.internal.processors.cache.distributed.near;
import org.apache.ignite.*;
import org.apache.ignite.cluster.*;
import org.apache.ignite.internal.*;
+import org.apache.ignite.internal.managers.communication.*;
import org.apache.ignite.internal.managers.discovery.*;
import org.apache.ignite.internal.processors.cache.*;
import org.apache.ignite.internal.processors.cache.distributed.*;
@@ -113,6 +114,7 @@ public class GridNearTxLocal<K, V> extends GridDhtTxLocalAdapter<K, V> {
boolean implicit,
boolean implicitSingle,
boolean sys,
+ GridIoPolicy plc,
TransactionConcurrency concurrency,
TransactionIsolation isolation,
long timeout,
@@ -130,6 +132,7 @@ public class GridNearTxLocal<K, V> extends GridDhtTxLocalAdapter<K, V> {
implicit,
implicitSingle,
sys,
+ plc,
concurrency,
isolation,
timeout,
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/0fd5967f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxRemote.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxRemote.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxRemote.java
index 5f9a0b7..1c69548 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxRemote.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxRemote.java
@@ -18,6 +18,7 @@
package org.apache.ignite.internal.processors.cache.distributed.near;
import org.apache.ignite.*;
+import org.apache.ignite.internal.managers.communication.*;
import org.apache.ignite.internal.processors.cache.*;
import org.apache.ignite.internal.processors.cache.distributed.*;
import org.apache.ignite.internal.processors.cache.transactions.*;
@@ -92,6 +93,7 @@ public class GridNearTxRemote<K, V> extends GridDistributedTxRemoteAdapter<K, V>
GridCacheVersion xidVer,
GridCacheVersion commitVer,
boolean sys,
+ GridIoPolicy plc,
TransactionConcurrency concurrency,
TransactionIsolation isolation,
boolean invalidate,
@@ -102,8 +104,8 @@ public class GridNearTxRemote<K, V> extends GridDistributedTxRemoteAdapter<K, V>
@Nullable UUID subjId,
int taskNameHash
) throws IgniteCheckedException {
- super(ctx, nodeId, rmtThreadId, xidVer, commitVer, sys, concurrency, isolation, invalidate, timeout, txSize,
- grpLockKey, subjId, taskNameHash);
+ super(ctx, nodeId, rmtThreadId, xidVer, commitVer, sys, plc, concurrency, isolation, invalidate, timeout,
+ txSize, grpLockKey, subjId, taskNameHash);
assert nearNodeId != null;
@@ -149,6 +151,7 @@ public class GridNearTxRemote<K, V> extends GridDistributedTxRemoteAdapter<K, V>
GridCacheVersion xidVer,
GridCacheVersion commitVer,
boolean sys,
+ GridIoPolicy plc,
TransactionConcurrency concurrency,
TransactionIsolation isolation,
boolean invalidate,
@@ -158,8 +161,8 @@ public class GridNearTxRemote<K, V> extends GridDistributedTxRemoteAdapter<K, V>
@Nullable UUID subjId,
int taskNameHash
) {
- super(ctx, nodeId, rmtThreadId, xidVer, commitVer, sys, concurrency, isolation, invalidate, timeout, txSize,
- grpLockKey, subjId, taskNameHash);
+ super(ctx, nodeId, rmtThreadId, xidVer, commitVer, sys, plc, concurrency, isolation, invalidate, timeout,
+ txSize, grpLockKey, subjId, taskNameHash);
assert nearNodeId != null;
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/0fd5967f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/local/GridLocalTx.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/local/GridLocalTx.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/local/GridLocalTx.java
deleted file mode 100644
index 6727f7e..0000000
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/local/GridLocalTx.java
+++ /dev/null
@@ -1,206 +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.local;
-
-import org.apache.ignite.*;
-import org.apache.ignite.internal.*;
-import org.apache.ignite.internal.processors.cache.*;
-import org.apache.ignite.internal.processors.cache.transactions.*;
-import org.apache.ignite.internal.util.future.*;
-import org.apache.ignite.internal.util.tostring.*;
-import org.apache.ignite.transactions.*;
-import org.jetbrains.annotations.*;
-
-import java.io.*;
-import java.util.*;
-import java.util.concurrent.atomic.*;
-
-import static org.apache.ignite.transactions.TransactionState.*;
-
-/**
- * Local cache transaction.
- */
-class GridLocalTx<K, V> extends IgniteTxLocalAdapter<K, V> {
- /** */
- private static final long serialVersionUID = 0L;
-
- /** Transaction future. */
- private final AtomicReference<GridLocalTxFuture<K, V>> fut = new AtomicReference<>();
-
- /**
- * Empty constructor required for {@link Externalizable}.
- */
- public GridLocalTx() {
- // No-op.
- }
-
- /**
- * @param ctx Cache registry.
- * @param implicit {@code True} if transaction is implicitly created by the system,
- * {@code false} if user explicitly created the transaction.
- * @param implicitSingle Implicit with single kye flag.
- * @param concurrency Concurrency.
- * @param isolation Isolation.
- * @param timeout Timeout.
- */
- GridLocalTx(
- GridCacheSharedContext<K, V> ctx,
- boolean implicit,
- boolean implicitSingle,
- TransactionConcurrency concurrency,
- TransactionIsolation isolation,
- long timeout,
- int txSize,
- @Nullable UUID subjId,
- int taskNameHash
- ) {
- super(ctx, ctx.versions().next(), implicit, implicitSingle, false, concurrency, isolation, timeout, false, true,
- txSize, null, false, subjId, taskNameHash);
- }
-
- /** {@inheritDoc} */
- @Override public boolean onOwnerChanged(GridCacheEntryEx<K, V> entry, GridCacheMvccCandidate<K> owner) {
- GridLocalTxFuture<K, V> fut = this.fut.get();
-
- return fut != null && fut.onOwnerChanged(entry, owner);
- }
-
- /** {@inheritDoc} */
- @Override public void prepare() throws IgniteCheckedException {
- if (!state(PREPARING)) {
- TransactionState state = state();
-
- // If other thread is doing "prepare", then no-op.
- if (state == PREPARING || state == PREPARED || state == COMMITTING || state == COMMITTED)
- return;
-
- setRollbackOnly();
-
- throw new IgniteCheckedException("Invalid transaction state for prepare [state=" + state + ", tx=" + this + ']');
- }
-
- try {
- userPrepare();
-
- state(PREPARED);
- }
- catch (IgniteCheckedException e) {
- setRollbackOnly();
-
- throw e;
- }
- }
-
- /** {@inheritDoc} */
- @Override public IgniteInternalFuture<IgniteInternalTx<K, V>> prepareAsync() {
- try {
- prepare();
-
- return new GridFinishedFuture<IgniteInternalTx<K, V>>(cctx.kernalContext(), this);
- }
- catch (IgniteCheckedException e) {
- return new GridFinishedFuture<>(cctx.kernalContext(), e);
- }
- }
-
- /**
- * Commits without prepare.
- *
- * @throws IgniteCheckedException If commit failed.
- */
- void commit0() throws IgniteCheckedException {
- if (state(COMMITTING)) {
- try {
- userCommit();
- }
- finally {
- if (!done()) {
- if (isRollbackOnly()) {
- state(ROLLING_BACK);
-
- userRollback();
-
- state(ROLLED_BACK);
- }
- else
- state(COMMITTED);
- }
- }
- }
- }
-
- /** {@inheritDoc} */
- @SuppressWarnings( {"unchecked", "RedundantCast"})
- @Override public IgniteInternalFuture<IgniteInternalTx> commitAsync() {
- try {
- prepare();
- }
- catch (IgniteCheckedException e) {
- state(UNKNOWN);
-
- return new GridFinishedFuture<>(cctx.kernalContext(), e);
- }
-
- GridLocalTxFuture<K, V> fut = this.fut.get();
-
- if (fut == null) {
- if (this.fut.compareAndSet(null, fut = new GridLocalTxFuture<>(cctx, this))) {
- cctx.mvcc().addFuture(fut);
-
- fut.checkLocks();
-
- return (IgniteInternalFuture)fut;
- }
- }
-
- return (IgniteInternalFuture)this.fut.get();
- }
-
- /** {@inheritDoc} */
- @Override public void rollback() throws IgniteCheckedException {
- rollbackAsync().get();
- }
-
- /** {@inheritDoc} */
- @Override public IgniteInternalFuture<IgniteInternalTx> rollbackAsync() {
- try {
- state(ROLLING_BACK);
-
- userRollback();
-
- state(ROLLED_BACK);
-
- return new GridFinishedFuture<IgniteInternalTx>(cctx.kernalContext(), this);
- }
- catch (IgniteCheckedException e) {
- return new GridFinishedFuture<>(cctx.kernalContext(), e);
- }
- }
-
- /** {@inheritDoc} */
- @Override public boolean finish(boolean commit) throws IgniteCheckedException {
- assert false;
-
- return false;
- }
-
- /** {@inheritDoc} */
- @Override public String toString() {
- return GridToStringBuilder.toString(GridLocalTx.class, this, "super", super.toString());
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/0fd5967f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/local/GridLocalTxFuture.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/local/GridLocalTxFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/local/GridLocalTxFuture.java
deleted file mode 100644
index 66a5eb2..0000000
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/local/GridLocalTxFuture.java
+++ /dev/null
@@ -1,351 +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.local;
-
-import org.apache.ignite.*;
-import org.apache.ignite.cluster.*;
-import org.apache.ignite.internal.processors.cache.*;
-import org.apache.ignite.internal.processors.cache.transactions.*;
-import org.apache.ignite.internal.processors.cache.version.*;
-import org.apache.ignite.internal.transactions.*;
-import org.apache.ignite.internal.util.future.*;
-import org.apache.ignite.internal.util.tostring.*;
-import org.apache.ignite.internal.util.typedef.internal.*;
-import org.apache.ignite.lang.*;
-
-import java.io.*;
-import java.util.*;
-import java.util.concurrent.atomic.*;
-
-import static org.apache.ignite.transactions.TransactionState.*;
-
-/**
- * Replicated cache transaction future.
- */
-final class GridLocalTxFuture<K, V> extends GridFutureAdapter<IgniteInternalTx<K, V>>
- implements GridCacheMvccFuture<K, V, IgniteInternalTx<K, V>> {
- /** */
- private static final long serialVersionUID = 0L;
-
- /** Logger reference. */
- private static final AtomicReference<IgniteLogger> logRef = new AtomicReference<>();
-
- /** Future ID. */
- private IgniteUuid futId = IgniteUuid.randomUuid();
-
- /** Cache. */
- @GridToStringExclude
- private GridCacheSharedContext<K, V> cctx;
-
- /** Cache transaction. */
- @GridToStringExclude // Need to exclude due to circular dependencies.
- private GridLocalTx<K, V> tx;
-
- /** Error. */
- private AtomicReference<Throwable> err = new AtomicReference<>(null);
-
- /** Commit flag. */
- private AtomicBoolean commit = new AtomicBoolean(false);
-
- /** Logger. */
- @GridToStringExclude
- private IgniteLogger log;
-
- /** Trackable flag. */
- private boolean trackable = true;
-
- /**
- * Empty constructor required by {@link Externalizable}.
- */
- public GridLocalTxFuture() {
- // No-op.
- }
-
- /**
- * @param cctx Context.
- * @param tx Cache transaction.
- */
- GridLocalTxFuture(
- GridCacheSharedContext<K, V> cctx,
- GridLocalTx<K, V> tx) {
- super(cctx.kernalContext());
-
- assert cctx != null;
- assert tx != null;
-
- this.cctx = cctx;
- this.tx = tx;
-
- log = U.logger(ctx, logRef, GridLocalTxFuture.class);
- }
-
- /** {@inheritDoc} */
- @Override public IgniteUuid futureId() {
- return futId;
- }
-
- /** {@inheritDoc} */
- @Override public GridCacheVersion version() {
- return tx.xidVersion();
- }
-
- /** {@inheritDoc} */
- @Override public Collection<? extends ClusterNode> nodes() {
- return Collections.emptyList();
- }
-
- /** {@inheritDoc} */
- @Override public boolean onNodeLeft(UUID nodeId) {
- // No-op.
- return false;
- }
-
- /** {@inheritDoc} */
- @Override public boolean trackable() {
- return trackable;
- }
-
- /** {@inheritDoc} */
- @Override public void markNotTrackable() {
- trackable = false;
- }
-
- /**
- * @return Lock version.
- */
- GridLocalTx<K, V> tx() {
- return tx;
- }
-
- /**
- *
- */
- void complete() {
- onComplete();
- }
-
- /**
- * @param e Error.
- */
- void onError(Throwable e) {
- if (err.compareAndSet(null, e)) {
- tx.setRollbackOnly();
-
- onComplete();
- }
- }
-
- /**
- * @param e Error.
- */
- @SuppressWarnings({"TypeMayBeWeakened"})
- void onError(IgniteTxOptimisticCheckedException e) {
- if (err.compareAndSet(null, e)) {
- tx.setRollbackOnly();
-
- onComplete();
- }
- }
-
- /**
- * @param e Error.
- */
- @SuppressWarnings({"TypeMayBeWeakened"})
- void onError(IgniteTxRollbackCheckedException e) {
- if (err.compareAndSet(null, e)) {
- // Attempt rollback.
- if (tx.setRollbackOnly()) {
- try {
- tx.rollback();
- }
- catch (IgniteCheckedException ex) {
- U.error(log, "Failed to rollback the transaction: " + tx, ex);
- }
- }
-
- onComplete();
- }
- }
-
- /**
- * Callback for whenever all replies are received.
- */
- @SuppressWarnings({"ThrowableInstanceNeverThrown"})
- void checkLocks() {
- for (IgniteTxEntry<K, V> txEntry : tx.writeMap().values()) {
- while (true) {
- try {
- GridCacheEntryEx<K, V> entry = txEntry.cached();
-
- if (entry == null) {
- onError(new IgniteTxRollbackCheckedException("Failed to find cache entry for " +
- "transaction key (will rollback) [key=" + txEntry.key() + ", tx=" + tx + ']'));
-
- break;
- }
-
- // Another thread or transaction owns some lock.
- if (!entry.lockedByThread(tx.threadId())) {
- if (tx.pessimistic())
- onError(new IgniteCheckedException("Pessimistic transaction does not own lock for commit: " + tx));
-
- if (log.isDebugEnabled())
- log.debug("Transaction entry is not locked by transaction (will wait) [entry=" + entry +
- ", tx=" + tx + ']');
-
- return;
- }
-
- break; // While.
- }
- // If entry cached within transaction got removed before lock.
- catch (GridCacheEntryRemovedException ignore) {
- if (log.isDebugEnabled())
- log.debug("Got removed entry in checkLocks method (will retry): " + txEntry);
-
- txEntry.cached(txEntry.context().cache().entryEx(txEntry.key()), txEntry.keyBytes());
- }
- }
- }
-
- commit();
- }
-
- /**
- *
- * @param entry Entry.
- * @param owner Owner.
- */
- @SuppressWarnings({"ThrowableInstanceNeverThrown"})
- @Override public boolean onOwnerChanged(GridCacheEntryEx<K, V> entry, GridCacheMvccCandidate<K> owner) {
- if (log.isDebugEnabled())
- log.debug("Transaction future received owner changed callback [owner=" + owner + ", entry=" + entry + ']');
-
- for (IgniteTxEntry<K, V> txEntry : tx.writeMap().values()) {
- while (true) {
- try {
- GridCacheEntryEx<K,V> cached = txEntry.cached();
-
- if (entry == null) {
- onError(new IgniteTxRollbackCheckedException("Failed to find cache entry for " +
- "transaction key (will rollback) [key=" + txEntry.key() + ", tx=" + tx + ']'));
-
- return true;
- }
-
- // Don't compare entry against itself.
- if (cached != entry && !cached.lockedLocally(tx.xidVersion())) {
- if (log.isDebugEnabled())
- log.debug("Transaction entry is not locked by transaction (will wait) [entry=" + entry +
- ", tx=" + tx + ']');
-
- return true;
- }
-
- break;
- }
- // If entry cached within transaction got removed before lock.
- catch (GridCacheEntryRemovedException ignore) {
- if (log.isDebugEnabled())
- log.debug("Got removed entry in onOwnerChanged method (will retry): " + txEntry);
-
- txEntry.cached(txEntry.context().cache().entryEx(txEntry.key()), txEntry.keyBytes());
- }
- }
- }
-
- commit();
-
- return false;
- }
-
- /**
- * Callback invoked when all locks succeeded.
- */
- @SuppressWarnings({"ThrowableInstanceNeverThrown"})
- private void commit() {
- if (commit.compareAndSet(false, true)) {
- try {
- tx.commit0();
-
- onComplete();
- }
- catch (IgniteTxTimeoutCheckedException e) {
- onError(e);
- }
- catch (IgniteCheckedException e) {
- if (tx.state() == UNKNOWN) {
- onError(new IgniteTxHeuristicCheckedException("Commit only partially succeeded " +
- "(entries will be invalidated on remote nodes once transaction timeout passes): " +
- tx, e));
- }
- else {
- onError(new IgniteTxRollbackCheckedException(
- "Failed to commit transaction (will attempt rollback): " + tx, e));
- }
- }
- }
- }
-
- /** {@inheritDoc} */
- @SuppressWarnings({"ThrowableInstanceNeverThrown"})
- @Override public boolean cancel() {
- if (log.isDebugEnabled())
- log.debug("Attempting to cancel transaction: " + tx);
-
- // Attempt rollback.
- if (onCancelled()) {
- try {
- tx.rollback();
- }
- catch (IgniteCheckedException ex) {
- U.error(log, "Failed to rollback the transaction: " + tx, ex);
- }
-
- if (log.isDebugEnabled())
- log.debug("Transaction was cancelled and rolled back: " + tx);
-
- return true;
- }
-
- return isCancelled();
- }
-
- /**
- * Completeness callback.
- */
- private void onComplete() {
- if (onDone(tx, err.get()))
- cctx.mvcc().removeFuture(this);
- }
-
- /**
- * Checks for errors.
- *
- * @throws IgniteCheckedException If execution failed.
- */
- private void checkError() throws IgniteCheckedException {
- if (err.get() != null)
- throw U.cast(err.get());
- }
-
- /** {@inheritDoc} */
- @Override public String toString() {
- return GridToStringBuilder.toString(GridLocalTxFuture.class, this);
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/0fd5967f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxAdapter.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxAdapter.java
index abdb99c..6200593 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxAdapter.java
@@ -43,7 +43,6 @@ import java.util.concurrent.atomic.*;
import java.util.concurrent.locks.*;
import static org.apache.ignite.events.EventType.*;
-import static org.apache.ignite.internal.managers.communication.GridIoPolicy.*;
import static org.apache.ignite.internal.processors.cache.GridCacheOperation.*;
import static org.apache.ignite.internal.processors.cache.GridCacheUtils.*;
import static org.apache.ignite.transactions.TransactionConcurrency.*;
@@ -135,6 +134,9 @@ public abstract class IgniteTxAdapter<K, V> extends GridMetadataAwareAdapter
/** System transaction flag. */
private boolean sys;
+ /** IO policy. */
+ private GridIoPolicy plc;
+
/** */
protected boolean onePhaseCommit;
@@ -225,6 +227,7 @@ public abstract class IgniteTxAdapter<K, V> extends GridMetadataAwareAdapter
* @param implicitSingle Implicit with one key flag.
* @param loc Local flag.
* @param sys System transaction flag.
+ * @param plc IO policy.
* @param concurrency Concurrency.
* @param isolation Isolation.
* @param timeout Timeout.
@@ -238,6 +241,7 @@ public abstract class IgniteTxAdapter<K, V> extends GridMetadataAwareAdapter
boolean implicitSingle,
boolean loc,
boolean sys,
+ GridIoPolicy plc,
TransactionConcurrency concurrency,
TransactionIsolation isolation,
long timeout,
@@ -257,6 +261,7 @@ public abstract class IgniteTxAdapter<K, V> extends GridMetadataAwareAdapter
this.implicitSingle = implicitSingle;
this.loc = loc;
this.sys = sys;
+ this.plc = plc;
this.concurrency = concurrency;
this.isolation = isolation;
this.timeout = timeout;
@@ -283,6 +288,7 @@ public abstract class IgniteTxAdapter<K, V> extends GridMetadataAwareAdapter
* @param startVer Start version mark.
* @param threadId Thread ID.
* @param sys System transaction flag.
+ * @param plc IO policy.
* @param concurrency Concurrency.
* @param isolation Isolation.
* @param timeout Timeout.
@@ -296,6 +302,7 @@ public abstract class IgniteTxAdapter<K, V> extends GridMetadataAwareAdapter
GridCacheVersion startVer,
long threadId,
boolean sys,
+ GridIoPolicy plc,
TransactionConcurrency concurrency,
TransactionIsolation isolation,
long timeout,
@@ -310,6 +317,7 @@ public abstract class IgniteTxAdapter<K, V> extends GridMetadataAwareAdapter
this.xidVer = xidVer;
this.startVer = startVer;
this.sys = sys;
+ this.plc = plc;
this.concurrency = concurrency;
this.isolation = isolation;
this.timeout = timeout;
@@ -412,7 +420,7 @@ public abstract class IgniteTxAdapter<K, V> extends GridMetadataAwareAdapter
/** {@inheritDoc} */
@Override public GridIoPolicy ioPolicy() {
- return sys ? UTILITY_CACHE_POOL : SYSTEM_POOL;
+ return plc;
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/0fd5967f/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 a14902d..430f073 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
@@ -269,6 +269,7 @@ public class IgniteTxHandler<K, V> {
req.implicitSingle(),
req.implicitSingle(),
req.system(),
+ req.policy(),
req.concurrency(),
req.isolation(),
req.timeout(),
@@ -506,7 +507,7 @@ public class IgniteTxHandler<K, V> {
req.miniId(), new IgniteCheckedException("Transaction has been already completed."));
try {
- ctx.io().send(nodeId, res, req.system() ? UTILITY_CACHE_POOL : SYSTEM_POOL);
+ ctx.io().send(nodeId, res, req.policy());
}
catch (Throwable e) {
// Double-check.
@@ -538,6 +539,7 @@ public class IgniteTxHandler<K, V> {
true,
false, /* we don't know, so assume false. */
req.system(),
+ req.policy(),
PESSIMISTIC,
READ_COMMITTED,
/*timeout */0,
@@ -919,6 +921,7 @@ public class IgniteTxHandler<K, V> {
req.version(),
null,
req.system(),
+ req.policy(),
req.concurrency(),
req.isolation(),
req.isInvalidate(),
@@ -1038,6 +1041,7 @@ public class IgniteTxHandler<K, V> {
req.version(),
null,
req.system(),
+ req.policy(),
req.concurrency(),
req.isolation(),
req.isInvalidate(),
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/0fd5967f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalAdapter.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalAdapter.java
index 8bc5230..ab6721c 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalAdapter.java
@@ -20,6 +20,7 @@ package org.apache.ignite.internal.processors.cache.transactions;
import org.apache.ignite.*;
import org.apache.ignite.internal.*;
import org.apache.ignite.cluster.*;
+import org.apache.ignite.internal.managers.communication.*;
import org.apache.ignite.internal.processors.cache.*;
import org.apache.ignite.internal.processors.cache.distributed.near.*;
import org.apache.ignite.internal.processors.cache.dr.*;
@@ -116,6 +117,7 @@ public abstract class IgniteTxLocalAdapter<K, V> extends IgniteTxAdapter<K, V>
* {@code false} if it was started explicitly by user.
* @param implicitSingle {@code True} if transaction is implicit with only one key.
* @param sys System flag.
+ * @param plc IO policy.
* @param concurrency Concurrency.
* @param isolation Isolation.
* @param timeout Timeout.
@@ -129,6 +131,7 @@ public abstract class IgniteTxLocalAdapter<K, V> extends IgniteTxAdapter<K, V>
boolean implicit,
boolean implicitSingle,
boolean sys,
+ GridIoPolicy plc,
TransactionConcurrency concurrency,
TransactionIsolation isolation,
long timeout,
@@ -140,8 +143,8 @@ public abstract class IgniteTxLocalAdapter<K, V> extends IgniteTxAdapter<K, V>
@Nullable UUID subjId,
int taskNameHash
) {
- super(cctx, xidVer, implicit, implicitSingle, /*local*/true, sys, concurrency, isolation, timeout, invalidate,
- storeEnabled, txSize, grpLockKey, subjId, taskNameHash);
+ super(cctx, xidVer, implicit, implicitSingle, /*local*/true, sys, plc, concurrency, isolation, timeout,
+ invalidate, storeEnabled, txSize, grpLockKey, subjId, taskNameHash);
assert !partLock || grpLockKey != null;
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/0fd5967f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxManager.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxManager.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxManager.java
index bcfe1c2..b92a542 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxManager.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxManager.java
@@ -20,6 +20,7 @@ package org.apache.ignite.internal.processors.cache.transactions;
import org.apache.ignite.*;
import org.apache.ignite.events.*;
import org.apache.ignite.internal.*;
+import org.apache.ignite.internal.managers.communication.*;
import org.apache.ignite.internal.managers.eventstorage.*;
import org.apache.ignite.internal.processors.cache.*;
import org.apache.ignite.internal.processors.cache.distributed.*;
@@ -376,6 +377,7 @@ public class IgniteTxManager<K, V> extends GridCacheSharedManagerAdapter<K, V> {
implicit,
implicitSingle,
sysCacheCtx != null,
+ sysCacheCtx != null ? sysCacheCtx.ioPolicy() : GridIoPolicy.SYSTEM_POOL,
concurrency,
isolation,
timeout,
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/0fd5967f/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridTestKernalContext.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridTestKernalContext.java b/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridTestKernalContext.java
index afce47b..4911f1b 100644
--- a/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridTestKernalContext.java
+++ b/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridTestKernalContext.java
@@ -46,6 +46,7 @@ public class GridTestKernalContext extends GridKernalContextImpl {
null,
null,
null,
+ null,
null);
GridTestUtils.setFieldValue(grid(), "cfg", config());