You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by ag...@apache.org on 2017/07/21 13:24:57 UTC
[5/5] ignite git commit: IGNITE-5797 - Events trace WIP (PoC)
IGNITE-5797 - Events trace WIP (PoC)
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/496d6fbe
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/496d6fbe
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/496d6fbe
Branch: refs/heads/ignite-5797
Commit: 496d6fbe3fa8ba7b0a5d51862c5aa9ab76a517cc
Parents: 7503719
Author: Alexey Goncharuk <al...@gmail.com>
Authored: Fri Jul 21 16:02:55 2017 +0300
Committer: Alexey Goncharuk <al...@gmail.com>
Committed: Fri Jul 21 16:02:55 2017 +0300
----------------------------------------------------------------------
.../ignite/codegen/MessageCodeGenerator.java | 40 ++-
.../managers/communication/GridIoMessage.java | 4 +
.../communication/GridIoMessageFactory.java | 4 +-
.../processors/cache/GridCacheIoManager.java | 3 +-
.../GridDistributedTxFinishRequest.java | 60 ++--
.../GridDistributedTxFinishResponse.java | 35 ++-
.../GridDistributedTxPrepareRequest.java | 60 ++--
.../GridDistributedTxPrepareResponse.java | 40 ++-
.../distributed/dht/GridDhtTxFinishFuture.java | 16 +-
.../distributed/dht/GridDhtTxFinishRequest.java | 36 +--
.../dht/GridDhtTxFinishResponse.java | 20 +-
.../cache/distributed/dht/GridDhtTxLocal.java | 12 +-
.../distributed/dht/GridDhtTxLocalAdapter.java | 35 ++-
.../distributed/dht/GridDhtTxPrepareFuture.java | 8 +-
.../dht/GridDhtTxPrepareRequest.java | 58 ++--
.../dht/GridDhtTxPrepareResponse.java | 36 ++-
...arOptimisticSerializableTxPrepareFuture.java | 4 +-
.../near/GridNearOptimisticTxPrepareFuture.java | 4 +-
.../GridNearPessimisticTxPrepareFuture.java | 4 +-
.../near/GridNearTxFinishFuture.java | 21 +-
.../near/GridNearTxFinishRequest.java | 12 +-
.../near/GridNearTxFinishResponse.java | 20 +-
.../cache/distributed/near/GridNearTxLocal.java | 16 +-
.../near/GridNearTxPrepareRequest.java | 32 +-
.../near/GridNearTxPrepareResponse.java | 48 +--
.../cache/transactions/IgniteTxHandler.java | 3 +-
.../internal/processors/trace/EventsTrace.java | 307 +++++++++++++++++++
.../processors/trace/IgniteTraceAware.java | 20 +-
.../internal/processors/trace/NodeTrace.java | 133 --------
.../ignite/internal/util/nio/GridNioServer.java | 3 -
.../trace/GridCacheTxTracingSelfTest.java | 29 +-
.../cache/IgnitePutTxLoadBenchmark.java | 13 +-
32 files changed, 721 insertions(+), 415 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/496d6fbe/modules/codegen/src/main/java/org/apache/ignite/codegen/MessageCodeGenerator.java
----------------------------------------------------------------------
diff --git a/modules/codegen/src/main/java/org/apache/ignite/codegen/MessageCodeGenerator.java b/modules/codegen/src/main/java/org/apache/ignite/codegen/MessageCodeGenerator.java
index 99ec08a..784428c 100644
--- a/modules/codegen/src/main/java/org/apache/ignite/codegen/MessageCodeGenerator.java
+++ b/modules/codegen/src/main/java/org/apache/ignite/codegen/MessageCodeGenerator.java
@@ -44,8 +44,19 @@ import org.apache.ignite.internal.GridDirectCollection;
import org.apache.ignite.internal.GridDirectMap;
import org.apache.ignite.internal.GridDirectTransient;
import org.apache.ignite.internal.IgniteCodeGeneratingFail;
-import org.apache.ignite.internal.processors.cache.version.GridCacheVersion;
-import org.apache.ignite.internal.processors.cache.version.GridCacheVersionEx;
+import org.apache.ignite.internal.processors.cache.distributed.GridDistributedTxFinishRequest;
+import org.apache.ignite.internal.processors.cache.distributed.GridDistributedTxFinishResponse;
+import org.apache.ignite.internal.processors.cache.distributed.GridDistributedTxPrepareRequest;
+import org.apache.ignite.internal.processors.cache.distributed.GridDistributedTxPrepareResponse;
+import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxFinishRequest;
+import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxFinishResponse;
+import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxPrepareRequest;
+import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxPrepareResponse;
+import org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxFinishRequest;
+import org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxFinishResponse;
+import org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxPrepareRequest;
+import org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxPrepareResponse;
+import org.apache.ignite.internal.processors.trace.EventsTrace;
import org.apache.ignite.internal.util.typedef.internal.SB;
import org.apache.ignite.internal.util.typedef.internal.U;
import org.apache.ignite.lang.IgniteUuid;
@@ -184,19 +195,20 @@ public class MessageCodeGenerator {
// gen.generateAndWrite(GridDhtLockRequest.class);
// gen.generateAndWrite(GridDhtLockResponse.class);
//
-// gen.generateAndWrite(GridDistributedTxPrepareRequest.class);
-// gen.generateAndWrite(GridDistributedTxPrepareResponse.class);
-// gen.generateAndWrite(GridNearTxPrepareRequest.class);
-// gen.generateAndWrite(GridNearTxPrepareResponse.class);
-// gen.generateAndWrite(GridDhtTxPrepareRequest.class);
-// gen.generateAndWrite(GridDhtTxPrepareResponse.class);
+ gen.generateAndWrite(GridDistributedTxPrepareRequest.class);
+ gen.generateAndWrite(GridDistributedTxPrepareResponse.class);
+ gen.generateAndWrite(GridNearTxPrepareRequest.class);
+ gen.generateAndWrite(GridNearTxPrepareResponse.class);
+ gen.generateAndWrite(GridDhtTxPrepareRequest.class);
+ gen.generateAndWrite(GridDhtTxPrepareResponse.class);
+ gen.generateAndWrite(EventsTrace.class);
//
-// gen.generateAndWrite(GridDistributedTxFinishRequest.class);
-// gen.generateAndWrite(GridDistributedTxFinishResponse.class);
-// gen.generateAndWrite(GridNearTxFinishRequest.class);
-// gen.generateAndWrite(GridNearTxFinishResponse.class);
-// gen.generateAndWrite(GridDhtTxFinishRequest.class);
-// gen.generateAndWrite(GridDhtTxFinishResponse.class);
+ gen.generateAndWrite(GridDistributedTxFinishRequest.class);
+ gen.generateAndWrite(GridDistributedTxFinishResponse.class);
+ gen.generateAndWrite(GridNearTxFinishRequest.class);
+ gen.generateAndWrite(GridNearTxFinishResponse.class);
+ gen.generateAndWrite(GridDhtTxFinishRequest.class);
+ gen.generateAndWrite(GridDhtTxFinishResponse.class);
//
// gen.generateAndWrite(GridCacheTxRecoveryRequest.class);
// gen.generateAndWrite(GridCacheTxRecoveryResponse.class);
http://git-wip-us.apache.org/repos/asf/ignite/blob/496d6fbe/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessage.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessage.java b/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessage.java
index dccd336..70c5eca 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessage.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessage.java
@@ -23,6 +23,7 @@ import java.nio.ByteBuffer;
import org.apache.ignite.internal.ExecutorAwareMessage;
import org.apache.ignite.internal.GridDirectTransient;
import org.apache.ignite.internal.processors.cache.GridCacheMessage;
+import org.apache.ignite.internal.processors.trace.IgniteTraceAware;
import org.apache.ignite.internal.util.tostring.GridToStringInclude;
import org.apache.ignite.internal.util.typedef.internal.S;
import org.apache.ignite.plugin.extensions.communication.Message;
@@ -192,6 +193,9 @@ public class GridIoMessage implements Message {
/** {@inheritDoc} */
@Override public boolean writeTo(ByteBuffer buf, MessageWriter writer) {
+ if (msg instanceof IgniteTraceAware)
+ ((IgniteTraceAware)msg).recordTracePoint(IgniteTraceAware.TracePoint.MSG_NIO_SEND);
+
writer.setBuffer(buf);
if (!writer.isHeaderWritten()) {
http://git-wip-us.apache.org/repos/asf/ignite/blob/496d6fbe/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessageFactory.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessageFactory.java b/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessageFactory.java
index b49f79e..2433705 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessageFactory.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessageFactory.java
@@ -143,7 +143,7 @@ import org.apache.ignite.internal.processors.query.h2.twostep.messages.GridQuery
import org.apache.ignite.internal.processors.query.h2.twostep.messages.GridQueryNextPageResponse;
import org.apache.ignite.internal.processors.rest.handlers.task.GridTaskResultRequest;
import org.apache.ignite.internal.processors.rest.handlers.task.GridTaskResultResponse;
-import org.apache.ignite.internal.processors.trace.NodeTrace;
+import org.apache.ignite.internal.processors.trace.EventsTrace;
import org.apache.ignite.internal.util.GridByteArrayList;
import org.apache.ignite.internal.util.GridIntList;
import org.apache.ignite.internal.util.GridLongList;
@@ -181,7 +181,7 @@ public class GridIoMessageFactory implements MessageFactory {
// -54 is reserved for SQL.
// -46 ... -51 - snapshot messages.
case -62:
- msg = new NodeTrace();
+ msg = new EventsTrace();
break;
http://git-wip-us.apache.org/repos/asf/ignite/blob/496d6fbe/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheIoManager.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheIoManager.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheIoManager.java
index 07a5bd9..e634e1e 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheIoManager.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheIoManager.java
@@ -725,7 +725,8 @@ public class GridCacheIoManager extends GridCacheSharedManagerAdapter {
req.version(),
req.futureId(),
req.miniId(),
- req.deployInfo() != null);
+ req.deployInfo() != null,
+ req.nodeTrace());
res.error(req.classError());
http://git-wip-us.apache.org/repos/asf/ignite/blob/496d6fbe/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 7c7b047..d552b95 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
@@ -30,7 +30,7 @@ import org.apache.ignite.internal.processors.cache.transactions.IgniteTxState;
import org.apache.ignite.internal.processors.cache.transactions.IgniteTxStateAware;
import org.apache.ignite.internal.processors.cache.version.GridCacheVersion;
import org.apache.ignite.internal.processors.trace.IgniteTraceAware;
-import org.apache.ignite.internal.processors.trace.NodeTrace;
+import org.apache.ignite.internal.processors.trace.EventsTrace;
import org.apache.ignite.internal.util.tostring.GridToStringBuilder;
import org.apache.ignite.lang.IgniteUuid;
import org.apache.ignite.plugin.extensions.communication.MessageReader;
@@ -113,7 +113,7 @@ public class GridDistributedTxFinishRequest extends GridDistributedBaseMessage
private IgniteTxState txState;
/** */
- protected NodeTrace nodeTrace;
+ protected EventsTrace eventsTrace;
/**
* Empty constructor required by {@link Externalizable}.
@@ -156,7 +156,7 @@ public class GridDistributedTxFinishRequest extends GridDistributedBaseMessage
int taskNameHash,
int txSize,
boolean addDepInfo,
- NodeTrace nodeTrace
+ EventsTrace eventsTrace
) {
super(xidVer, 0, addDepInfo);
@@ -176,7 +176,7 @@ public class GridDistributedTxFinishRequest extends GridDistributedBaseMessage
this.subjId = subjId;
this.taskNameHash = taskNameHash;
this.txSize = txSize;
- this.nodeTrace = nodeTrace;
+ this.eventsTrace = eventsTrace;
completedVersions(committedVers, rolledbackVers);
}
@@ -315,15 +315,15 @@ public class GridDistributedTxFinishRequest extends GridDistributedBaseMessage
/** {@inheritDoc} */
@Override public void recordTracePoint(TracePoint point) {
- if (nodeTrace != null)
- nodeTrace.recordTracePoint(point);
+ if (eventsTrace != null)
+ eventsTrace.recordTracePoint(point);
}
/**
* @return Message trace, if any.
*/
- public NodeTrace nodeTrace() {
- return nodeTrace;
+ public EventsTrace nodeTrace() {
+ return eventsTrace;
}
/** {@inheritDoc} */
@@ -383,48 +383,54 @@ public class GridDistributedTxFinishRequest extends GridDistributedBaseMessage
writer.incrementState();
case 13:
- if (!writer.writeByte("plc", plc))
+ if (!writer.writeMessage("eventsTrace", eventsTrace))
return false;
writer.incrementState();
case 14:
- if (!writer.writeUuid("subjId", subjId))
+ if (!writer.writeByte("plc", plc))
return false;
writer.incrementState();
case 15:
- if (!writer.writeByte("syncMode", syncMode != null ? (byte)syncMode.ordinal() : -1))
+ if (!writer.writeUuid("subjId", subjId))
return false;
writer.incrementState();
case 16:
- if (!writer.writeBoolean("sys", sys))
+ if (!writer.writeByte("syncMode", syncMode != null ? (byte)syncMode.ordinal() : -1))
return false;
writer.incrementState();
case 17:
- if (!writer.writeInt("taskNameHash", taskNameHash))
+ if (!writer.writeBoolean("sys", sys))
return false;
writer.incrementState();
case 18:
- if (!writer.writeLong("threadId", threadId))
+ if (!writer.writeInt("taskNameHash", taskNameHash))
return false;
writer.incrementState();
case 19:
- if (!writer.writeMessage("topVer", topVer))
+ if (!writer.writeLong("threadId", threadId))
return false;
writer.incrementState();
case 20:
+ if (!writer.writeMessage("topVer", topVer))
+ return false;
+
+ writer.incrementState();
+
+ case 21:
if (!writer.writeInt("txSize", txSize))
return false;
@@ -495,7 +501,7 @@ public class GridDistributedTxFinishRequest extends GridDistributedBaseMessage
reader.incrementState();
case 13:
- plc = reader.readByte("plc");
+ eventsTrace = reader.readMessage("eventsTrace");
if (!reader.isLastRead())
return false;
@@ -503,7 +509,7 @@ public class GridDistributedTxFinishRequest extends GridDistributedBaseMessage
reader.incrementState();
case 14:
- subjId = reader.readUuid("subjId");
+ plc = reader.readByte("plc");
if (!reader.isLastRead())
return false;
@@ -511,6 +517,14 @@ public class GridDistributedTxFinishRequest extends GridDistributedBaseMessage
reader.incrementState();
case 15:
+ subjId = reader.readUuid("subjId");
+
+ if (!reader.isLastRead())
+ return false;
+
+ reader.incrementState();
+
+ case 16:
byte syncModeOrd;
syncModeOrd = reader.readByte("syncMode");
@@ -522,7 +536,7 @@ public class GridDistributedTxFinishRequest extends GridDistributedBaseMessage
reader.incrementState();
- case 16:
+ case 17:
sys = reader.readBoolean("sys");
if (!reader.isLastRead())
@@ -530,7 +544,7 @@ public class GridDistributedTxFinishRequest extends GridDistributedBaseMessage
reader.incrementState();
- case 17:
+ case 18:
taskNameHash = reader.readInt("taskNameHash");
if (!reader.isLastRead())
@@ -538,7 +552,7 @@ public class GridDistributedTxFinishRequest extends GridDistributedBaseMessage
reader.incrementState();
- case 18:
+ case 19:
threadId = reader.readLong("threadId");
if (!reader.isLastRead())
@@ -546,7 +560,7 @@ public class GridDistributedTxFinishRequest extends GridDistributedBaseMessage
reader.incrementState();
- case 19:
+ case 20:
topVer = reader.readMessage("topVer");
if (!reader.isLastRead())
@@ -554,7 +568,7 @@ public class GridDistributedTxFinishRequest extends GridDistributedBaseMessage
reader.incrementState();
- case 20:
+ case 21:
txSize = reader.readInt("txSize");
if (!reader.isLastRead())
@@ -574,7 +588,7 @@ public class GridDistributedTxFinishRequest extends GridDistributedBaseMessage
/** {@inheritDoc} */
@Override public byte fieldsCount() {
- return 21;
+ return 22;
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/ignite/blob/496d6fbe/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxFinishResponse.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxFinishResponse.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxFinishResponse.java
index fbe87fc..7e09d4b 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxFinishResponse.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxFinishResponse.java
@@ -23,8 +23,8 @@ import org.apache.ignite.internal.managers.communication.GridIoMessageFactory;
import org.apache.ignite.internal.processors.cache.GridCacheMessage;
import org.apache.ignite.internal.processors.cache.GridCacheSharedContext;
import org.apache.ignite.internal.processors.cache.version.GridCacheVersion;
+import org.apache.ignite.internal.processors.trace.EventsTrace;
import org.apache.ignite.internal.processors.trace.IgniteTraceAware;
-import org.apache.ignite.internal.processors.trace.NodeTrace;
import org.apache.ignite.internal.util.tostring.GridToStringBuilder;
import org.apache.ignite.internal.util.tostring.GridToStringExclude;
import org.apache.ignite.lang.IgniteUuid;
@@ -52,7 +52,7 @@ public class GridDistributedTxFinishResponse extends GridCacheMessage implements
private int part;
/** */
- protected NodeTrace nodeTrace;
+ protected EventsTrace eventsTrace;
/**
* Empty constructor required by {@link GridIoMessageFactory}.
@@ -66,13 +66,14 @@ public class GridDistributedTxFinishResponse extends GridCacheMessage implements
* @param txId Transaction id.
* @param futId Future ID.
*/
- public GridDistributedTxFinishResponse(int part, GridCacheVersion txId, IgniteUuid futId, NodeTrace nodeTrace) {
+ public GridDistributedTxFinishResponse(int part, GridCacheVersion txId, IgniteUuid futId, EventsTrace eventsTrace) {
assert txId != null;
assert futId != null;
this.part = part;
this.txId = txId;
this.futId = futId;
+ this.eventsTrace = eventsTrace;
}
/** {@inheritDoc} */
@@ -87,15 +88,15 @@ public class GridDistributedTxFinishResponse extends GridCacheMessage implements
/** {@inheritDoc} */
@Override public void recordTracePoint(TracePoint point) {
- if (nodeTrace != null)
- nodeTrace.recordTracePoint(point);
+ if (eventsTrace != null)
+ eventsTrace.recordTracePoint(point);
}
/**
* @return Message trace, if any.
*/
- public NodeTrace nodeTrace() {
- return nodeTrace;
+ public EventsTrace nodeTrace() {
+ return eventsTrace;
}
/** {@inheritDoc} */
@@ -176,12 +177,18 @@ public class GridDistributedTxFinishResponse extends GridCacheMessage implements
writer.incrementState();
case 4:
- if (!writer.writeInt("part", part))
+ if (!writer.writeMessage("eventsTrace", eventsTrace))
return false;
writer.incrementState();
case 5:
+ if (!writer.writeInt("part", part))
+ return false;
+
+ writer.incrementState();
+
+ case 6:
if (!writer.writeMessage("txId", txId))
return false;
@@ -220,7 +227,7 @@ public class GridDistributedTxFinishResponse extends GridCacheMessage implements
reader.incrementState();
case 4:
- part = reader.readInt("part");
+ eventsTrace = reader.readMessage("eventsTrace");
if (!reader.isLastRead())
return false;
@@ -228,6 +235,14 @@ public class GridDistributedTxFinishResponse extends GridCacheMessage implements
reader.incrementState();
case 5:
+ part = reader.readInt("part");
+
+ if (!reader.isLastRead())
+ return false;
+
+ reader.incrementState();
+
+ case 6:
txId = reader.readMessage("txId");
if (!reader.isLastRead())
@@ -247,7 +262,7 @@ public class GridDistributedTxFinishResponse extends GridCacheMessage implements
/** {@inheritDoc} */
@Override public byte fieldsCount() {
- return 6;
+ return 7;
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/ignite/blob/496d6fbe/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 5a5176e..8287c40 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
@@ -39,7 +39,7 @@ import org.apache.ignite.internal.processors.cache.transactions.IgniteTxState;
import org.apache.ignite.internal.processors.cache.transactions.IgniteTxStateAware;
import org.apache.ignite.internal.processors.cache.version.GridCacheVersion;
import org.apache.ignite.internal.processors.trace.IgniteTraceAware;
-import org.apache.ignite.internal.processors.trace.NodeTrace;
+import org.apache.ignite.internal.processors.trace.EventsTrace;
import org.apache.ignite.internal.util.UUIDCollectionMessage;
import org.apache.ignite.internal.util.tostring.GridToStringBuilder;
import org.apache.ignite.internal.util.tostring.GridToStringExclude;
@@ -161,7 +161,7 @@ public class GridDistributedTxPrepareRequest extends GridDistributedBaseMessage
private byte flags;
/** */
- protected NodeTrace nodeTrace;
+ protected EventsTrace eventsTrace;
/**
* Required by {@link Externalizable}.
@@ -191,7 +191,7 @@ public class GridDistributedTxPrepareRequest extends GridDistributedBaseMessage
boolean last,
boolean onePhaseCommit,
boolean addDepInfo,
- NodeTrace nodeTrace
+ EventsTrace eventsTrace
) {
super(tx.xidVersion(), 0, addDepInfo);
@@ -206,7 +206,7 @@ public class GridDistributedTxPrepareRequest extends GridDistributedBaseMessage
this.reads = reads;
this.writes = writes;
this.txNodes = txNodes;
- this.nodeTrace = nodeTrace;
+ this.eventsTrace = eventsTrace;
setFlag(tx.system(), SYSTEM_TX_FLAG_MASK);
setFlag(retVal, NEED_RETURN_VALUE_FLAG_MASK);
@@ -390,15 +390,15 @@ public class GridDistributedTxPrepareRequest extends GridDistributedBaseMessage
/** {@inheritDoc} */
@Override public void recordTracePoint(TracePoint point) {
- if (nodeTrace != null)
- nodeTrace.recordTracePoint(point);
+ if (eventsTrace != null)
+ eventsTrace.recordTracePoint(point);
}
/**
* @return Request trace, if any.
*/
- public NodeTrace nodeTrace() {
- return nodeTrace;
+ public EventsTrace nodeTrace() {
+ return eventsTrace;
}
/** {@inheritDoc}
@@ -535,48 +535,54 @@ public class GridDistributedTxPrepareRequest extends GridDistributedBaseMessage
writer.incrementState();
case 12:
- if (!writer.writeByte("plc", plc))
+ if (!writer.writeMessage("eventsTrace", eventsTrace))
return false;
writer.incrementState();
case 13:
- if (!writer.writeCollection("reads", reads, MessageCollectionItemType.MSG))
+ if (!writer.writeByte("plc", plc))
return false;
writer.incrementState();
case 14:
- if (!writer.writeLong("threadId", threadId))
+ if (!writer.writeCollection("reads", reads, MessageCollectionItemType.MSG))
return false;
writer.incrementState();
case 15:
- if (!writer.writeLong("timeout", timeout))
+ if (!writer.writeLong("threadId", threadId))
return false;
writer.incrementState();
case 16:
- if (!writer.writeMap("txNodesMsg", txNodesMsg, MessageCollectionItemType.UUID, MessageCollectionItemType.MSG))
+ if (!writer.writeLong("timeout", timeout))
return false;
writer.incrementState();
case 17:
- if (!writer.writeInt("txSize", txSize))
+ if (!writer.writeMap("txNodesMsg", txNodesMsg, MessageCollectionItemType.UUID, MessageCollectionItemType.MSG))
return false;
writer.incrementState();
case 18:
- if (!writer.writeMessage("writeVer", writeVer))
+ if (!writer.writeInt("txSize", txSize))
return false;
writer.incrementState();
case 19:
+ if (!writer.writeMessage("writeVer", writeVer))
+ return false;
+
+ writer.incrementState();
+
+ case 20:
if (!writer.writeCollection("writes", writes, MessageCollectionItemType.MSG))
return false;
@@ -647,7 +653,7 @@ public class GridDistributedTxPrepareRequest extends GridDistributedBaseMessage
reader.incrementState();
case 12:
- plc = reader.readByte("plc");
+ eventsTrace = reader.readMessage("eventsTrace");
if (!reader.isLastRead())
return false;
@@ -655,7 +661,7 @@ public class GridDistributedTxPrepareRequest extends GridDistributedBaseMessage
reader.incrementState();
case 13:
- reads = reader.readCollection("reads", MessageCollectionItemType.MSG);
+ plc = reader.readByte("plc");
if (!reader.isLastRead())
return false;
@@ -663,7 +669,7 @@ public class GridDistributedTxPrepareRequest extends GridDistributedBaseMessage
reader.incrementState();
case 14:
- threadId = reader.readLong("threadId");
+ reads = reader.readCollection("reads", MessageCollectionItemType.MSG);
if (!reader.isLastRead())
return false;
@@ -671,7 +677,7 @@ public class GridDistributedTxPrepareRequest extends GridDistributedBaseMessage
reader.incrementState();
case 15:
- timeout = reader.readLong("timeout");
+ threadId = reader.readLong("threadId");
if (!reader.isLastRead())
return false;
@@ -679,7 +685,7 @@ public class GridDistributedTxPrepareRequest extends GridDistributedBaseMessage
reader.incrementState();
case 16:
- txNodesMsg = reader.readMap("txNodesMsg", MessageCollectionItemType.UUID, MessageCollectionItemType.MSG, false);
+ timeout = reader.readLong("timeout");
if (!reader.isLastRead())
return false;
@@ -687,7 +693,7 @@ public class GridDistributedTxPrepareRequest extends GridDistributedBaseMessage
reader.incrementState();
case 17:
- txSize = reader.readInt("txSize");
+ txNodesMsg = reader.readMap("txNodesMsg", MessageCollectionItemType.UUID, MessageCollectionItemType.MSG, false);
if (!reader.isLastRead())
return false;
@@ -695,7 +701,7 @@ public class GridDistributedTxPrepareRequest extends GridDistributedBaseMessage
reader.incrementState();
case 18:
- writeVer = reader.readMessage("writeVer");
+ txSize = reader.readInt("txSize");
if (!reader.isLastRead())
return false;
@@ -703,6 +709,14 @@ public class GridDistributedTxPrepareRequest extends GridDistributedBaseMessage
reader.incrementState();
case 19:
+ writeVer = reader.readMessage("writeVer");
+
+ if (!reader.isLastRead())
+ return false;
+
+ reader.incrementState();
+
+ case 20:
writes = reader.readCollection("writes", MessageCollectionItemType.MSG);
if (!reader.isLastRead())
@@ -722,7 +736,7 @@ public class GridDistributedTxPrepareRequest extends GridDistributedBaseMessage
/** {@inheritDoc} */
@Override public byte fieldsCount() {
- return 20;
+ return 21;
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/ignite/blob/496d6fbe/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxPrepareResponse.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxPrepareResponse.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxPrepareResponse.java
index 4d69222..da87c03 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxPrepareResponse.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedTxPrepareResponse.java
@@ -26,8 +26,8 @@ import org.apache.ignite.internal.processors.cache.GridCacheSharedContext;
import org.apache.ignite.internal.processors.cache.transactions.IgniteTxState;
import org.apache.ignite.internal.processors.cache.transactions.IgniteTxStateAware;
import org.apache.ignite.internal.processors.cache.version.GridCacheVersion;
+import org.apache.ignite.internal.processors.trace.EventsTrace;
import org.apache.ignite.internal.processors.trace.IgniteTraceAware;
-import org.apache.ignite.internal.processors.trace.NodeTrace;
import org.apache.ignite.internal.util.tostring.GridToStringBuilder;
import org.apache.ignite.internal.util.tostring.GridToStringExclude;
import org.apache.ignite.internal.util.typedef.internal.U;
@@ -61,7 +61,7 @@ public class GridDistributedTxPrepareResponse extends GridDistributedBaseMessage
protected byte flags;
/** */
- protected NodeTrace nodeTrace;
+ protected EventsTrace eventsTrace;
/**
* Empty constructor (required by {@link Externalizable}).
@@ -75,10 +75,16 @@ public class GridDistributedTxPrepareResponse extends GridDistributedBaseMessage
* @param xid Lock or transaction ID.
* @param addDepInfo Deployment info flag.
*/
- public GridDistributedTxPrepareResponse(int part, GridCacheVersion xid, boolean addDepInfo) {
+ public GridDistributedTxPrepareResponse(
+ int part,
+ GridCacheVersion xid,
+ boolean addDepInfo,
+ EventsTrace eventsTrace
+ ) {
super(xid, 0, addDepInfo);
this.part = part;
+ this.eventsTrace = eventsTrace;
}
/**
@@ -92,13 +98,13 @@ public class GridDistributedTxPrepareResponse extends GridDistributedBaseMessage
GridCacheVersion xid,
Throwable err,
boolean addDepInfo,
- NodeTrace nodeTrace
+ EventsTrace eventsTrace
) {
super(xid, 0, addDepInfo);
this.part = part;
this.err = err;
- this.nodeTrace = nodeTrace;
+ this.eventsTrace = eventsTrace;
}
/**
@@ -157,15 +163,15 @@ public class GridDistributedTxPrepareResponse extends GridDistributedBaseMessage
/** {@inheritDoc} */
@Override public void recordTracePoint(TracePoint point) {
- if (nodeTrace != null)
- nodeTrace.recordTracePoint(point);
+ if (eventsTrace != null)
+ eventsTrace.recordTracePoint(point);
}
/**
* @return Message trace, if any.
*/
- public NodeTrace nodeTrace() {
- return nodeTrace;
+ public EventsTrace nodeTrace() {
+ return eventsTrace;
}
/** {@inheritDoc} */
@@ -217,6 +223,12 @@ public class GridDistributedTxPrepareResponse extends GridDistributedBaseMessage
writer.incrementState();
case 9:
+ if (!writer.writeMessage("eventsTrace", eventsTrace))
+ return false;
+
+ writer.incrementState();
+
+ case 10:
if (!writer.writeInt("part", part))
return false;
@@ -255,6 +267,14 @@ public class GridDistributedTxPrepareResponse extends GridDistributedBaseMessage
reader.incrementState();
case 9:
+ eventsTrace = reader.readMessage("eventsTrace");
+
+ if (!reader.isLastRead())
+ return false;
+
+ reader.incrementState();
+
+ case 10:
part = reader.readInt("part");
if (!reader.isLastRead())
@@ -274,7 +294,7 @@ public class GridDistributedTxPrepareResponse extends GridDistributedBaseMessage
/** {@inheritDoc} */
@Override public byte fieldsCount() {
- return 10;
+ return 11;
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/ignite/blob/496d6fbe/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 f985759..c8d5546 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
@@ -37,7 +37,7 @@ import org.apache.ignite.internal.processors.cache.distributed.GridDistributedTx
import org.apache.ignite.internal.processors.cache.transactions.IgniteInternalTx;
import org.apache.ignite.internal.processors.cache.transactions.IgniteTxEntry;
import org.apache.ignite.internal.processors.cache.version.GridCacheVersion;
-import org.apache.ignite.internal.processors.trace.NodeTrace;
+import org.apache.ignite.internal.processors.trace.EventsTrace;
import org.apache.ignite.internal.util.future.GridFutureAdapter;
import org.apache.ignite.internal.util.tostring.GridToStringExclude;
import org.apache.ignite.internal.util.tostring.GridToStringInclude;
@@ -97,9 +97,6 @@ public final class GridDhtTxFinishFuture<K, V> extends GridCacheCompoundIdentity
/** Near mappings. */
private Map<UUID, GridDistributedTxMapping> nearMap;
- /** */
- private NodeTrace nodeTrace;
-
/**
* @param cctx Context.
* @param tx Transaction.
@@ -108,8 +105,7 @@ public final class GridDhtTxFinishFuture<K, V> extends GridCacheCompoundIdentity
public GridDhtTxFinishFuture(
GridCacheSharedContext<K, V> cctx,
GridDhtTxLocalAdapter tx,
- boolean commit,
- NodeTrace nodeTrace
+ boolean commit
) {
super(F.<IgniteInternalTx>identityReducer(tx));
@@ -126,8 +122,6 @@ public final class GridDhtTxFinishFuture<K, V> extends GridCacheCompoundIdentity
msgLog = cctx.txFinishMessageLogger();
log = U.logger(cctx.kernalContext(), logRef, GridDhtTxFinishFuture.class);
}
-
- this.nodeTrace = nodeTrace;
}
/**
@@ -360,7 +354,7 @@ public final class GridDhtTxFinishFuture<K, V> extends GridCacheCompoundIdentity
tx.activeCachesDeploymentEnabled(),
false,
false,
- nodeTrace != null ? new NodeTrace() : null);
+ tx.nodeTrace() != null ? new EventsTrace() : null);
try {
cctx.io().send(n, req, tx.ioPolicy());
@@ -464,7 +458,7 @@ public final class GridDhtTxFinishFuture<K, V> extends GridCacheCompoundIdentity
updCntrs,
false,
false,
- nodeTrace != null ? new NodeTrace() : null);
+ tx.nodeTrace() != null ? new EventsTrace() : null);
req.writeVersion(tx.writeVersion() != null ? tx.writeVersion() : tx.xidVersion());
@@ -534,7 +528,7 @@ public final class GridDhtTxFinishFuture<K, V> extends GridCacheCompoundIdentity
tx.activeCachesDeploymentEnabled(),
false,
false,
- nodeTrace != null ? new NodeTrace() : null);
+ tx.nodeTrace() != null ? new EventsTrace() : null);
req.writeVersion(tx.writeVersion());
http://git-wip-us.apache.org/repos/asf/ignite/blob/496d6fbe/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 2c94021..9bee5dd 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
@@ -26,7 +26,7 @@ import org.apache.ignite.internal.GridDirectCollection;
import org.apache.ignite.internal.processors.affinity.AffinityTopologyVersion;
import org.apache.ignite.internal.processors.cache.distributed.GridDistributedTxFinishRequest;
import org.apache.ignite.internal.processors.cache.version.GridCacheVersion;
-import org.apache.ignite.internal.processors.trace.NodeTrace;
+import org.apache.ignite.internal.processors.trace.EventsTrace;
import org.apache.ignite.internal.util.GridLongList;
import org.apache.ignite.internal.util.tostring.GridToStringInclude;
import org.apache.ignite.internal.util.typedef.internal.S;
@@ -123,7 +123,7 @@ public class GridDhtTxFinishRequest extends GridDistributedTxFinishRequest {
boolean addDepInfo,
boolean retVal,
boolean waitRemoteTxs,
- NodeTrace nodeTrace
+ EventsTrace eventsTrace
) {
super(
xidVer,
@@ -143,7 +143,7 @@ public class GridDhtTxFinishRequest extends GridDistributedTxFinishRequest {
taskNameHash,
txSize,
addDepInfo,
- nodeTrace);
+ eventsTrace);
assert miniId != 0;
assert nearNodeId != null;
@@ -212,7 +212,7 @@ public class GridDhtTxFinishRequest extends GridDistributedTxFinishRequest {
Collection<Long> updateIdxs,
boolean retVal,
boolean waitRemoteTxs,
- NodeTrace nodeTrace
+ EventsTrace eventsTrace
) {
this(nearNodeId,
futId,
@@ -238,7 +238,7 @@ public class GridDhtTxFinishRequest extends GridDistributedTxFinishRequest {
addDepInfo,
retVal,
waitRemoteTxs,
- nodeTrace);
+ eventsTrace);
if (updateIdxs != null && !updateIdxs.isEmpty()) {
partUpdateCnt = new GridLongList(updateIdxs.size());
@@ -361,37 +361,37 @@ public class GridDhtTxFinishRequest extends GridDistributedTxFinishRequest {
}
switch (writer.state()) {
- case 21:
+ case 22:
if (!writer.writeByte("isolation", isolation != null ? (byte)isolation.ordinal() : -1))
return false;
writer.incrementState();
- case 22:
+ case 23:
if (!writer.writeInt("miniId", miniId))
return false;
writer.incrementState();
- case 23:
+ case 24:
if (!writer.writeUuid("nearNodeId", nearNodeId))
return false;
writer.incrementState();
- case 24:
+ case 25:
if (!writer.writeMessage("partUpdateCnt", partUpdateCnt))
return false;
writer.incrementState();
- case 25:
+ case 26:
if (!writer.writeCollection("pendingVers", pendingVers, MessageCollectionItemType.MSG))
return false;
writer.incrementState();
- case 26:
+ case 27:
if (!writer.writeMessage("writeVer", writeVer))
return false;
@@ -413,7 +413,7 @@ public class GridDhtTxFinishRequest extends GridDistributedTxFinishRequest {
return false;
switch (reader.state()) {
- case 21:
+ case 22:
byte isolationOrd;
isolationOrd = reader.readByte("isolation");
@@ -425,7 +425,7 @@ public class GridDhtTxFinishRequest extends GridDistributedTxFinishRequest {
reader.incrementState();
- case 22:
+ case 23:
miniId = reader.readInt("miniId");
if (!reader.isLastRead())
@@ -433,7 +433,7 @@ public class GridDhtTxFinishRequest extends GridDistributedTxFinishRequest {
reader.incrementState();
- case 23:
+ case 24:
nearNodeId = reader.readUuid("nearNodeId");
if (!reader.isLastRead())
@@ -441,7 +441,7 @@ public class GridDhtTxFinishRequest extends GridDistributedTxFinishRequest {
reader.incrementState();
- case 24:
+ case 25:
partUpdateCnt = reader.readMessage("partUpdateCnt");
if (!reader.isLastRead())
@@ -449,7 +449,7 @@ public class GridDhtTxFinishRequest extends GridDistributedTxFinishRequest {
reader.incrementState();
- case 25:
+ case 26:
pendingVers = reader.readCollection("pendingVers", MessageCollectionItemType.MSG);
if (!reader.isLastRead())
@@ -457,7 +457,7 @@ public class GridDhtTxFinishRequest extends GridDistributedTxFinishRequest {
reader.incrementState();
- case 26:
+ case 27:
writeVer = reader.readMessage("writeVer");
if (!reader.isLastRead())
@@ -477,7 +477,7 @@ public class GridDhtTxFinishRequest extends GridDistributedTxFinishRequest {
/** {@inheritDoc} */
@Override public byte fieldsCount() {
- return 27;
+ return 28;
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/ignite/blob/496d6fbe/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxFinishResponse.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxFinishResponse.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxFinishResponse.java
index 9b81065..b1f5581 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxFinishResponse.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxFinishResponse.java
@@ -26,7 +26,7 @@ import org.apache.ignite.internal.processors.cache.GridCacheReturn;
import org.apache.ignite.internal.processors.cache.GridCacheSharedContext;
import org.apache.ignite.internal.processors.cache.distributed.GridDistributedTxFinishResponse;
import org.apache.ignite.internal.processors.cache.version.GridCacheVersion;
-import org.apache.ignite.internal.processors.trace.NodeTrace;
+import org.apache.ignite.internal.processors.trace.EventsTrace;
import org.apache.ignite.internal.util.typedef.internal.S;
import org.apache.ignite.internal.util.typedef.internal.U;
import org.apache.ignite.lang.IgniteUuid;
@@ -74,9 +74,9 @@ public class GridDhtTxFinishResponse extends GridDistributedTxFinishResponse {
GridCacheVersion xid,
IgniteUuid futId,
int miniId,
- NodeTrace nodeTrace
+ EventsTrace eventsTrace
) {
- super(part, xid, futId, nodeTrace);
+ super(part, xid, futId, eventsTrace);
assert miniId != 0;
@@ -182,19 +182,19 @@ public class GridDhtTxFinishResponse extends GridDistributedTxFinishResponse {
}
switch (writer.state()) {
- case 6:
+ case 7:
if (!writer.writeByteArray("checkCommittedErrBytes", checkCommittedErrBytes))
return false;
writer.incrementState();
- case 7:
+ case 8:
if (!writer.writeInt("miniId", miniId))
return false;
writer.incrementState();
- case 8:
+ case 9:
if (!writer.writeMessage("retVal", retVal))
return false;
@@ -216,7 +216,7 @@ public class GridDhtTxFinishResponse extends GridDistributedTxFinishResponse {
return false;
switch (reader.state()) {
- case 6:
+ case 7:
checkCommittedErrBytes = reader.readByteArray("checkCommittedErrBytes");
if (!reader.isLastRead())
@@ -224,7 +224,7 @@ public class GridDhtTxFinishResponse extends GridDistributedTxFinishResponse {
reader.incrementState();
- case 7:
+ case 8:
miniId = reader.readInt("miniId");
if (!reader.isLastRead())
@@ -232,7 +232,7 @@ public class GridDhtTxFinishResponse extends GridDistributedTxFinishResponse {
reader.incrementState();
- case 8:
+ case 9:
retVal = reader.readMessage("retVal");
if (!reader.isLastRead())
@@ -252,7 +252,7 @@ public class GridDhtTxFinishResponse extends GridDistributedTxFinishResponse {
/** {@inheritDoc} */
@Override public byte fieldsCount() {
- return 9;
+ return 10;
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/ignite/blob/496d6fbe/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 47321a3..b7f264f 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
@@ -39,7 +39,7 @@ import org.apache.ignite.internal.processors.cache.transactions.IgniteInternalTx
import org.apache.ignite.internal.processors.cache.transactions.IgniteTxEntry;
import org.apache.ignite.internal.processors.cache.transactions.IgniteTxKey;
import org.apache.ignite.internal.processors.cache.version.GridCacheVersion;
-import org.apache.ignite.internal.processors.trace.NodeTrace;
+import org.apache.ignite.internal.processors.trace.EventsTrace;
import org.apache.ignite.internal.transactions.IgniteTxOptimisticCheckedException;
import org.apache.ignite.internal.transactions.IgniteTxRollbackCheckedException;
import org.apache.ignite.internal.transactions.IgniteTxTimeoutCheckedException;
@@ -332,7 +332,7 @@ public class GridDhtTxLocal extends GridDhtTxLocalAdapter implements GridCacheMa
int nearMiniId,
Map<UUID, Collection<UUID>> txNodes,
boolean last,
- NodeTrace nodeTrace
+ EventsTrace eventsTrace
) {
// In optimistic mode prepare still can be called explicitly from salvageTx.
GridDhtTxPrepareFuture fut = prepFut;
@@ -370,7 +370,7 @@ public class GridDhtTxLocal extends GridDhtTxLocalAdapter implements GridCacheMa
return chainOnePhasePrepare(fut);
}
- this.nodeTrace = nodeTrace;
+ this.eventsTrace = eventsTrace;
if (state() != PREPARING) {
if (!state(PREPARING)) {
@@ -483,7 +483,7 @@ public class GridDhtTxLocal extends GridDhtTxLocalAdapter implements GridCacheMa
if (log.isDebugEnabled())
log.debug("Committing dht local tx: " + this);
- final GridDhtTxFinishFuture fut = new GridDhtTxFinishFuture<>(cctx, this, true, nodeTrace);
+ final GridDhtTxFinishFuture fut = new GridDhtTxFinishFuture<>(cctx, this, true);
cctx.mvcc().addFuture(fut, fut.futureId());
@@ -533,7 +533,7 @@ public class GridDhtTxLocal extends GridDhtTxLocalAdapter implements GridCacheMa
* @return Rollback future.
*/
public IgniteInternalFuture<IgniteInternalTx> rollbackDhtLocalAsync() {
- final GridDhtTxFinishFuture fut = new GridDhtTxFinishFuture<>(cctx, this, false, nodeTrace);
+ final GridDhtTxFinishFuture fut = new GridDhtTxFinishFuture<>(cctx, this, false);
cctx.mvcc().addFuture(fut, fut.futureId());
@@ -589,7 +589,7 @@ public class GridDhtTxLocal extends GridDhtTxLocalAdapter implements GridCacheMa
nearFinFutId,
nearFinMiniId,
err,
- nodeTrace);
+ eventsTrace);
try {
cctx.io().send(nearNodeId, res, ioPolicy());
http://git-wip-us.apache.org/repos/asf/ignite/blob/496d6fbe/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 0215f53..0d80adf 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
@@ -41,7 +41,8 @@ import org.apache.ignite.internal.processors.cache.transactions.IgniteInternalTx
import org.apache.ignite.internal.processors.cache.transactions.IgniteTxEntry;
import org.apache.ignite.internal.processors.cache.transactions.IgniteTxLocalAdapter;
import org.apache.ignite.internal.processors.cache.version.GridCacheVersion;
-import org.apache.ignite.internal.processors.trace.NodeTrace;
+import org.apache.ignite.internal.processors.trace.EventsTrace;
+import org.apache.ignite.internal.processors.trace.IgniteTraceAware;
import org.apache.ignite.internal.util.F0;
import org.apache.ignite.internal.util.GridLeanMap;
import org.apache.ignite.internal.util.GridLeanSet;
@@ -72,7 +73,7 @@ import static org.apache.ignite.transactions.TransactionState.UNKNOWN;
/**
* Replicated user transaction.
*/
-public abstract class GridDhtTxLocalAdapter extends IgniteTxLocalAdapter {
+public abstract class GridDhtTxLocalAdapter extends IgniteTxLocalAdapter implements IgniteTraceAware {
/** */
private static final long serialVersionUID = 0L;
@@ -98,7 +99,7 @@ public abstract class GridDhtTxLocalAdapter extends IgniteTxLocalAdapter {
private Set<ClusterNode> lockTxNodes;
/** */
- protected NodeTrace nodeTrace;
+ protected EventsTrace eventsTrace;
/**
* Empty constructor required for {@link Externalizable}.
@@ -135,7 +136,7 @@ public abstract class GridDhtTxLocalAdapter extends IgniteTxLocalAdapter {
int txSize,
@Nullable UUID subjId,
int taskNameHash,
- NodeTrace nodeTrace
+ EventsTrace eventsTrace
) {
super(
cctx,
@@ -161,7 +162,7 @@ public abstract class GridDhtTxLocalAdapter extends IgniteTxLocalAdapter {
threadId = Thread.currentThread().getId();
- this.nodeTrace = nodeTrace;
+ this.eventsTrace = eventsTrace;
}
/**
@@ -246,6 +247,12 @@ public abstract class GridDhtTxLocalAdapter extends IgniteTxLocalAdapter {
protected abstract void sendFinishReply(@Nullable Throwable err);
/** {@inheritDoc} */
+ @Override public void recordTracePoint(TracePoint point) {
+ if (eventsTrace != null)
+ eventsTrace.recordTracePoint(point);
+ }
+
+ /** {@inheritDoc} */
@Override public boolean needsCompletedVersions() {
return nearOnOriginatingNode;
}
@@ -841,24 +848,24 @@ public abstract class GridDhtTxLocalAdapter extends IgniteTxLocalAdapter {
/**
* @return Node trace.
*/
- public NodeTrace nodeTrace() {
- return nodeTrace;
+ public EventsTrace nodeTrace() {
+ return eventsTrace;
}
/**
- * @param nodeTrace Node trace.
+ * @param eventsTrace Node trace.
*/
- public void nodeTrace(NodeTrace nodeTrace) {
- this.nodeTrace = nodeTrace;
+ public void nodeTrace(EventsTrace eventsTrace) {
+ this.eventsTrace = eventsTrace;
}
/**
* @param rmtNodeId Remote node ID.
- * @param nodeTrace Node trace to collect.
+ * @param eventsTrace Node trace to collect.
*/
- public void collectNodeTrace(UUID rmtNodeId, NodeTrace nodeTrace) {
- if (this.nodeTrace != null && nodeTrace != null)
- this.nodeTrace.addRemoteTrace(rmtNodeId, nodeTrace);
+ public void collectNodeTrace(UUID rmtNodeId, EventsTrace eventsTrace) {
+ if (this.eventsTrace != null && eventsTrace != null)
+ this.eventsTrace.addRemoteTrace(rmtNodeId, eventsTrace);
}
/**
http://git-wip-us.apache.org/repos/asf/ignite/blob/496d6fbe/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxPrepareFuture.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxPrepareFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxPrepareFuture.java
index cb71d65..4be7c0d 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxPrepareFuture.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxPrepareFuture.java
@@ -66,7 +66,7 @@ import org.apache.ignite.internal.processors.cache.transactions.IgniteTxKey;
import org.apache.ignite.internal.processors.cache.version.GridCacheVersion;
import org.apache.ignite.internal.processors.dr.GridDrType;
import org.apache.ignite.internal.processors.timeout.GridTimeoutObjectAdapter;
-import org.apache.ignite.internal.processors.trace.NodeTrace;
+import org.apache.ignite.internal.processors.trace.EventsTrace;
import org.apache.ignite.internal.transactions.IgniteTxHeuristicCheckedException;
import org.apache.ignite.internal.transactions.IgniteTxOptimisticCheckedException;
import org.apache.ignite.internal.transactions.IgniteTxTimeoutCheckedException;
@@ -542,6 +542,8 @@ public final class GridDhtTxPrepareFuture extends GridCacheCompoundFuture<Ignite
MiniFuture mini = miniFuture(res.miniId());
if (mini != null) {
+ tx.collectNodeTrace(nodeId, res.nodeTrace());
+
assert mini.node().id().equals(nodeId);
mini.onResult(res);
@@ -1293,7 +1295,7 @@ public final class GridDhtTxPrepareFuture extends GridCacheCompoundFuture<Ignite
tx.activeCachesDeploymentEnabled(),
tx.storeWriteThrough(),
retVal,
- tx.nodeTrace() != null ? new NodeTrace() : null);
+ tx.nodeTrace() != null ? new EventsTrace() : null);
int idx = 0;
@@ -1407,7 +1409,7 @@ public final class GridDhtTxPrepareFuture extends GridCacheCompoundFuture<Ignite
tx.activeCachesDeploymentEnabled(),
tx.storeWriteThrough(),
retVal,
- tx.nodeTrace() != null ? new NodeTrace() : null);
+ tx.nodeTrace() != null ? new EventsTrace() : null);
for (IgniteTxEntry entry : nearMapping.entries()) {
if (CU.writes().apply(entry)) {
http://git-wip-us.apache.org/repos/asf/ignite/blob/496d6fbe/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 f76b1c4..1de6cb1 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
@@ -37,7 +37,7 @@ import org.apache.ignite.internal.processors.cache.distributed.GridDistributedTx
import org.apache.ignite.internal.processors.cache.transactions.IgniteTxEntry;
import org.apache.ignite.internal.processors.cache.transactions.IgniteTxKey;
import org.apache.ignite.internal.processors.cache.version.GridCacheVersion;
-import org.apache.ignite.internal.processors.trace.NodeTrace;
+import org.apache.ignite.internal.processors.trace.EventsTrace;
import org.apache.ignite.internal.util.GridLeanMap;
import org.apache.ignite.internal.util.tostring.GridToStringInclude;
import org.apache.ignite.internal.util.typedef.internal.S;
@@ -143,7 +143,7 @@ public class GridDhtTxPrepareRequest extends GridDistributedTxPrepareRequest {
boolean addDepInfo,
boolean storeWriteThrough,
boolean retVal,
- NodeTrace nodeTrace
+ EventsTrace eventsTrace
) {
super(tx,
timeout,
@@ -154,7 +154,7 @@ public class GridDhtTxPrepareRequest extends GridDistributedTxPrepareRequest {
last,
onePhaseCommit,
addDepInfo,
- nodeTrace);
+ eventsTrace);
assert futId != null;
assert miniId != 0;
@@ -174,7 +174,7 @@ public class GridDhtTxPrepareRequest extends GridDistributedTxPrepareRequest {
nearNodeId = tx.nearNodeId();
- this.nodeTrace = nodeTrace;
+ this.eventsTrace = eventsTrace;
recordTracePoint(TracePoint.DHT_PREPARE_REQUEST_CREATED);
}
@@ -396,73 +396,73 @@ public class GridDhtTxPrepareRequest extends GridDistributedTxPrepareRequest {
}
switch (writer.state()) {
- case 20:
+ case 21:
if (!writer.writeIgniteUuid("futId", futId))
return false;
writer.incrementState();
- case 21:
+ case 22:
if (!writer.writeBitSet("invalidateNearEntries", invalidateNearEntries))
return false;
writer.incrementState();
- case 22:
+ case 23:
if (!writer.writeInt("miniId", miniId))
return false;
writer.incrementState();
- case 23:
+ case 24:
if (!writer.writeUuid("nearNodeId", nearNodeId))
return false;
writer.incrementState();
- case 24:
+ case 25:
if (!writer.writeCollection("nearWrites", nearWrites, MessageCollectionItemType.MSG))
return false;
writer.incrementState();
- case 25:
+ case 26:
if (!writer.writeMessage("nearXidVer", nearXidVer))
return false;
writer.incrementState();
- case 26:
+ case 27:
if (!writer.writeCollection("ownedKeys", ownedKeys, MessageCollectionItemType.MSG))
return false;
writer.incrementState();
- case 27:
+ case 28:
if (!writer.writeCollection("ownedVals", ownedVals, MessageCollectionItemType.MSG))
return false;
writer.incrementState();
- case 28:
+ case 29:
if (!writer.writeBitSet("preloadKeys", preloadKeys))
return false;
writer.incrementState();
- case 29:
+ case 30:
if (!writer.writeUuid("subjId", subjId))
return false;
writer.incrementState();
- case 30:
+ case 31:
if (!writer.writeInt("taskNameHash", taskNameHash))
return false;
writer.incrementState();
- case 31:
+ case 32:
if (!writer.writeMessage("topVer", topVer))
return false;
@@ -484,7 +484,7 @@ public class GridDhtTxPrepareRequest extends GridDistributedTxPrepareRequest {
return false;
switch (reader.state()) {
- case 20:
+ case 21:
futId = reader.readIgniteUuid("futId");
if (!reader.isLastRead())
@@ -492,7 +492,7 @@ public class GridDhtTxPrepareRequest extends GridDistributedTxPrepareRequest {
reader.incrementState();
- case 21:
+ case 22:
invalidateNearEntries = reader.readBitSet("invalidateNearEntries");
if (!reader.isLastRead())
@@ -500,7 +500,7 @@ public class GridDhtTxPrepareRequest extends GridDistributedTxPrepareRequest {
reader.incrementState();
- case 22:
+ case 23:
miniId = reader.readInt("miniId");
if (!reader.isLastRead())
@@ -508,7 +508,7 @@ public class GridDhtTxPrepareRequest extends GridDistributedTxPrepareRequest {
reader.incrementState();
- case 23:
+ case 24:
nearNodeId = reader.readUuid("nearNodeId");
if (!reader.isLastRead())
@@ -516,7 +516,7 @@ public class GridDhtTxPrepareRequest extends GridDistributedTxPrepareRequest {
reader.incrementState();
- case 24:
+ case 25:
nearWrites = reader.readCollection("nearWrites", MessageCollectionItemType.MSG);
if (!reader.isLastRead())
@@ -524,7 +524,7 @@ public class GridDhtTxPrepareRequest extends GridDistributedTxPrepareRequest {
reader.incrementState();
- case 25:
+ case 26:
nearXidVer = reader.readMessage("nearXidVer");
if (!reader.isLastRead())
@@ -532,7 +532,7 @@ public class GridDhtTxPrepareRequest extends GridDistributedTxPrepareRequest {
reader.incrementState();
- case 26:
+ case 27:
ownedKeys = reader.readCollection("ownedKeys", MessageCollectionItemType.MSG);
if (!reader.isLastRead())
@@ -540,7 +540,7 @@ public class GridDhtTxPrepareRequest extends GridDistributedTxPrepareRequest {
reader.incrementState();
- case 27:
+ case 28:
ownedVals = reader.readCollection("ownedVals", MessageCollectionItemType.MSG);
if (!reader.isLastRead())
@@ -548,7 +548,7 @@ public class GridDhtTxPrepareRequest extends GridDistributedTxPrepareRequest {
reader.incrementState();
- case 28:
+ case 29:
preloadKeys = reader.readBitSet("preloadKeys");
if (!reader.isLastRead())
@@ -556,7 +556,7 @@ public class GridDhtTxPrepareRequest extends GridDistributedTxPrepareRequest {
reader.incrementState();
- case 29:
+ case 30:
subjId = reader.readUuid("subjId");
if (!reader.isLastRead())
@@ -564,7 +564,7 @@ public class GridDhtTxPrepareRequest extends GridDistributedTxPrepareRequest {
reader.incrementState();
- case 30:
+ case 31:
taskNameHash = reader.readInt("taskNameHash");
if (!reader.isLastRead())
@@ -572,7 +572,7 @@ public class GridDhtTxPrepareRequest extends GridDistributedTxPrepareRequest {
reader.incrementState();
- case 31:
+ case 32:
topVer = reader.readMessage("topVer");
if (!reader.isLastRead())
@@ -592,6 +592,6 @@ public class GridDhtTxPrepareRequest extends GridDistributedTxPrepareRequest {
/** {@inheritDoc} */
@Override public byte fieldsCount() {
- return 32;
+ return 33;
}
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/496d6fbe/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxPrepareResponse.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxPrepareResponse.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxPrepareResponse.java
index d4db8c8..434d189 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxPrepareResponse.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxPrepareResponse.java
@@ -34,7 +34,7 @@ import org.apache.ignite.internal.processors.cache.GridCacheSharedContext;
import org.apache.ignite.internal.processors.cache.distributed.GridDistributedTxPrepareResponse;
import org.apache.ignite.internal.processors.cache.transactions.IgniteTxKey;
import org.apache.ignite.internal.processors.cache.version.GridCacheVersion;
-import org.apache.ignite.internal.processors.trace.NodeTrace;
+import org.apache.ignite.internal.processors.trace.EventsTrace;
import org.apache.ignite.internal.util.tostring.GridToStringInclude;
import org.apache.ignite.internal.util.typedef.internal.CU;
import org.apache.ignite.internal.util.typedef.internal.S;
@@ -88,14 +88,18 @@ public class GridDhtTxPrepareResponse extends GridDistributedTxPrepareResponse {
GridCacheVersion xid,
IgniteUuid futId,
int miniId,
- boolean addDepInfo) {
- super(part, xid, addDepInfo);
+ boolean addDepInfo,
+ EventsTrace eventsTrace
+ ) {
+ super(part, xid, addDepInfo, eventsTrace);
assert futId != null;
assert miniId != 0;
this.futId = futId;
this.miniId = miniId;
+
+ recordTracePoint(TracePoint.DHT_PREPARE_RESPONSE_CREATED);
}
/**
@@ -113,9 +117,9 @@ public class GridDhtTxPrepareResponse extends GridDistributedTxPrepareResponse {
int miniId,
Throwable err,
boolean addDepInfo,
- NodeTrace nodeTrace
+ EventsTrace eventsTrace
) {
- super(part, xid, err, addDepInfo, nodeTrace);
+ super(part, xid, err, addDepInfo, eventsTrace);
assert futId != null;
assert miniId != 0;
@@ -250,31 +254,31 @@ public class GridDhtTxPrepareResponse extends GridDistributedTxPrepareResponse {
}
switch (writer.state()) {
- case 10:
+ case 11:
if (!writer.writeIgniteUuid("futId", futId))
return false;
writer.incrementState();
- case 11:
+ case 12:
if (!writer.writeMap("invalidParts", invalidParts, MessageCollectionItemType.INT, MessageCollectionItemType.INT_ARR))
return false;
writer.incrementState();
- case 12:
+ case 13:
if (!writer.writeInt("miniId", miniId))
return false;
writer.incrementState();
- case 13:
+ case 14:
if (!writer.writeCollection("nearEvicted", nearEvicted, MessageCollectionItemType.MSG))
return false;
writer.incrementState();
- case 14:
+ case 15:
if (!writer.writeCollection("preloadEntries", preloadEntries, MessageCollectionItemType.MSG))
return false;
@@ -296,7 +300,7 @@ public class GridDhtTxPrepareResponse extends GridDistributedTxPrepareResponse {
return false;
switch (reader.state()) {
- case 10:
+ case 11:
futId = reader.readIgniteUuid("futId");
if (!reader.isLastRead())
@@ -304,7 +308,7 @@ public class GridDhtTxPrepareResponse extends GridDistributedTxPrepareResponse {
reader.incrementState();
- case 11:
+ case 12:
invalidParts = reader.readMap("invalidParts", MessageCollectionItemType.INT, MessageCollectionItemType.INT_ARR, false);
if (!reader.isLastRead())
@@ -312,7 +316,7 @@ public class GridDhtTxPrepareResponse extends GridDistributedTxPrepareResponse {
reader.incrementState();
- case 12:
+ case 13:
miniId = reader.readInt("miniId");
if (!reader.isLastRead())
@@ -320,7 +324,7 @@ public class GridDhtTxPrepareResponse extends GridDistributedTxPrepareResponse {
reader.incrementState();
- case 13:
+ case 14:
nearEvicted = reader.readCollection("nearEvicted", MessageCollectionItemType.MSG);
if (!reader.isLastRead())
@@ -328,7 +332,7 @@ public class GridDhtTxPrepareResponse extends GridDistributedTxPrepareResponse {
reader.incrementState();
- case 14:
+ case 15:
preloadEntries = reader.readCollection("preloadEntries", MessageCollectionItemType.MSG);
if (!reader.isLastRead())
@@ -348,7 +352,7 @@ public class GridDhtTxPrepareResponse extends GridDistributedTxPrepareResponse {
/** {@inheritDoc} */
@Override public byte fieldsCount() {
- return 15;
+ return 16;
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/ignite/blob/496d6fbe/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearOptimisticSerializableTxPrepareFuture.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearOptimisticSerializableTxPrepareFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearOptimisticSerializableTxPrepareFuture.java
index 414d8dd..87499a8 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearOptimisticSerializableTxPrepareFuture.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearOptimisticSerializableTxPrepareFuture.java
@@ -40,7 +40,7 @@ import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxMapp
import org.apache.ignite.internal.processors.cache.transactions.IgniteInternalTx;
import org.apache.ignite.internal.processors.cache.transactions.IgniteTxEntry;
import org.apache.ignite.internal.processors.cache.version.GridCacheVersion;
-import org.apache.ignite.internal.processors.trace.NodeTrace;
+import org.apache.ignite.internal.processors.trace.EventsTrace;
import org.apache.ignite.internal.transactions.IgniteTxOptimisticCheckedException;
import org.apache.ignite.internal.transactions.IgniteTxRollbackCheckedException;
import org.apache.ignite.internal.transactions.IgniteTxTimeoutCheckedException;
@@ -557,7 +557,7 @@ public class GridNearOptimisticSerializableTxPrepareFuture extends GridNearOptim
tx.taskNameHash(),
m.clientFirst(),
tx.activeCachesDeploymentEnabled(),
- cctx.kernalContext().trace().tracingEnabled() ? new NodeTrace() : null);
+ cctx.kernalContext().trace().tracingEnabled() ? new EventsTrace() : null);
for (IgniteTxEntry txEntry : writes) {
if (txEntry.op() == TRANSFORM)
http://git-wip-us.apache.org/repos/asf/ignite/blob/496d6fbe/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearOptimisticTxPrepareFuture.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearOptimisticTxPrepareFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearOptimisticTxPrepareFuture.java
index 30d9197..bd7f2a2 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearOptimisticTxPrepareFuture.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearOptimisticTxPrepareFuture.java
@@ -44,7 +44,7 @@ import org.apache.ignite.internal.processors.cache.transactions.IgniteInternalTx
import org.apache.ignite.internal.processors.cache.transactions.IgniteTxEntry;
import org.apache.ignite.internal.processors.cache.transactions.IgniteTxKey;
import org.apache.ignite.internal.processors.cache.transactions.TxDeadlock;
-import org.apache.ignite.internal.processors.trace.NodeTrace;
+import org.apache.ignite.internal.processors.trace.EventsTrace;
import org.apache.ignite.internal.transactions.IgniteTxRollbackCheckedException;
import org.apache.ignite.internal.transactions.IgniteTxTimeoutCheckedException;
import org.apache.ignite.internal.util.future.GridEmbeddedFuture;
@@ -539,7 +539,7 @@ public class GridNearOptimisticTxPrepareFuture extends GridNearOptimisticTxPrepa
tx.taskNameHash(),
m.clientFirst(),
tx.activeCachesDeploymentEnabled(),
- cctx.kernalContext().trace().tracingEnabled() ? new NodeTrace() : null);
+ cctx.kernalContext().trace().tracingEnabled() ? new EventsTrace() : null);
for (IgniteTxEntry txEntry : m.entries()) {
if (txEntry.op() == TRANSFORM)
http://git-wip-us.apache.org/repos/asf/ignite/blob/496d6fbe/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearPessimisticTxPrepareFuture.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearPessimisticTxPrepareFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearPessimisticTxPrepareFuture.java
index 23bd8d6..45ff1df 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearPessimisticTxPrepareFuture.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearPessimisticTxPrepareFuture.java
@@ -37,7 +37,7 @@ import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtPartit
import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxMapping;
import org.apache.ignite.internal.processors.cache.transactions.IgniteInternalTx;
import org.apache.ignite.internal.processors.cache.transactions.IgniteTxEntry;
-import org.apache.ignite.internal.processors.trace.NodeTrace;
+import org.apache.ignite.internal.processors.trace.EventsTrace;
import org.apache.ignite.internal.transactions.IgniteTxRollbackCheckedException;
import org.apache.ignite.internal.transactions.IgniteTxTimeoutCheckedException;
import org.apache.ignite.internal.util.future.GridFutureAdapter;
@@ -214,7 +214,7 @@ public class GridNearPessimisticTxPrepareFuture extends GridNearTxPrepareFutureA
tx.taskNameHash(),
false,
tx.activeCachesDeploymentEnabled(),
- cctx.kernalContext().trace().tracingEnabled() ? new NodeTrace() : null);
+ cctx.kernalContext().trace().tracingEnabled() ? new EventsTrace() : null);
for (IgniteTxEntry txEntry : writes) {
if (txEntry.op() == TRANSFORM)
http://git-wip-us.apache.org/repos/asf/ignite/blob/496d6fbe/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 e44ba67..aeecf87 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
@@ -35,7 +35,6 @@ import org.apache.ignite.internal.processors.affinity.AffinityTopologyVersion;
import org.apache.ignite.internal.processors.cache.GridCacheCompoundIdentityFuture;
import org.apache.ignite.internal.processors.cache.GridCacheContext;
import org.apache.ignite.internal.processors.cache.GridCacheEntryEx;
-import org.apache.ignite.internal.processors.cache.GridCacheFuture;
import org.apache.ignite.internal.processors.cache.GridCacheReturn;
import org.apache.ignite.internal.processors.cache.GridCacheReturnCompletableWrapper;
import org.apache.ignite.internal.processors.cache.GridCacheSharedContext;
@@ -45,7 +44,8 @@ import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxFini
import org.apache.ignite.internal.processors.cache.transactions.IgniteInternalTx;
import org.apache.ignite.internal.processors.cache.transactions.IgniteTxEntry;
import org.apache.ignite.internal.processors.cache.version.GridCacheVersion;
-import org.apache.ignite.internal.processors.trace.NodeTrace;
+import org.apache.ignite.internal.processors.trace.EventsTrace;
+import org.apache.ignite.internal.processors.trace.IgniteTraceAware;
import org.apache.ignite.internal.transactions.IgniteTxHeuristicCheckedException;
import org.apache.ignite.internal.transactions.IgniteTxRollbackCheckedException;
import org.apache.ignite.internal.util.future.GridFutureAdapter;
@@ -67,8 +67,7 @@ import static org.apache.ignite.transactions.TransactionState.UNKNOWN;
/**
*
*/
-public final class GridNearTxFinishFuture<K, V> extends GridCacheCompoundIdentityFuture<IgniteInternalTx>
- implements GridCacheFuture<IgniteInternalTx> {
+public final class GridNearTxFinishFuture<K, V> extends GridCacheCompoundIdentityFuture<IgniteInternalTx> {
/** */
private static final long serialVersionUID = 0L;
@@ -194,6 +193,8 @@ public final class GridNearTxFinishFuture<K, V> extends GridCacheCompoundIdentit
if (!isDone()) {
FinishMiniFuture finishFut = null;
+ tx.collectNodeTrace(nodeId, res.nodeTrace());
+
synchronized (this) {
int size = futuresCountNoLock();
@@ -214,8 +215,6 @@ public final class GridNearTxFinishFuture<K, V> extends GridCacheCompoundIdentit
}
}
- tx.collectNodeTrace(nodeId, res.nodeTrace());
-
if (finishFut != null)
finishFut.onNearFinishResponse(res);
else {
@@ -243,6 +242,8 @@ public final class GridNearTxFinishFuture<K, V> extends GridCacheCompoundIdentit
*/
public void onResult(UUID nodeId, GridDhtTxFinishResponse res) {
if (!isDone()) {
+ tx.collectNodeTrace(nodeId, res.nodeTrace());
+
boolean found = false;
for (IgniteInternalFuture<IgniteInternalTx> fut : futures()) {
@@ -345,6 +346,8 @@ public final class GridNearTxFinishFuture<K, V> extends GridCacheCompoundIdentit
}
if (super.onDone(tx0, err)) {
+ tx.recordTracePoint(IgniteTraceAware.TracePoint.TX_END);
+
if (error() instanceof IgniteTxHeuristicCheckedException && !nodeStop) {
AffinityTopologyVersion topVer = tx.topologyVersion();
@@ -396,6 +399,8 @@ public final class GridNearTxFinishFuture<K, V> extends GridCacheCompoundIdentit
*/
@SuppressWarnings("ForLoopReplaceableByForEach")
void finish(boolean commit) {
+ tx.recordTracePoint(IgniteTraceAware.TracePoint.TX_COMMIT);
+
if (tx.onNeedCheckBackup()) {
assert tx.onePhaseCommit();
@@ -720,7 +725,7 @@ public final class GridNearTxFinishFuture<K, V> extends GridCacheCompoundIdentit
tx.subjectId(),
tx.taskNameHash(),
tx.activeCachesDeploymentEnabled(),
- cctx.kernalContext().trace().tracingEnabled() ? new NodeTrace() : null
+ cctx.kernalContext().trace().tracingEnabled() ? new EventsTrace() : null
);
// If this is the primary node for the keys.
@@ -855,7 +860,7 @@ public final class GridNearTxFinishFuture<K, V> extends GridCacheCompoundIdentit
tx.activeCachesDeploymentEnabled(),
!waitRemoteTxs && (tx.needReturnValue() && tx.implicit()),
waitRemoteTxs,
- cctx.kernalContext().trace().tracingEnabled() ? new NodeTrace() : null);
+ cctx.kernalContext().trace().tracingEnabled() ? new EventsTrace() : null);
finishReq.checkCommitted(true);
http://git-wip-us.apache.org/repos/asf/ignite/blob/496d6fbe/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 f8736ea..5fb9991 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
@@ -25,7 +25,7 @@ import org.apache.ignite.cache.CacheWriteSynchronizationMode;
import org.apache.ignite.internal.processors.affinity.AffinityTopologyVersion;
import org.apache.ignite.internal.processors.cache.distributed.GridDistributedTxFinishRequest;
import org.apache.ignite.internal.processors.cache.version.GridCacheVersion;
-import org.apache.ignite.internal.processors.trace.NodeTrace;
+import org.apache.ignite.internal.processors.trace.EventsTrace;
import org.apache.ignite.internal.util.tostring.GridToStringBuilder;
import org.apache.ignite.lang.IgniteUuid;
import org.apache.ignite.plugin.extensions.communication.MessageReader;
@@ -89,7 +89,7 @@ public class GridNearTxFinishRequest extends GridDistributedTxFinishRequest {
@Nullable UUID subjId,
int taskNameHash,
boolean addDepInfo,
- NodeTrace nodeTrace
+ EventsTrace eventsTrace
) {
super(
xidVer,
@@ -109,7 +109,7 @@ public class GridNearTxFinishRequest extends GridDistributedTxFinishRequest {
taskNameHash,
txSize,
addDepInfo,
- nodeTrace
+ eventsTrace
);
explicitLock(explicitLock);
@@ -177,7 +177,7 @@ public class GridNearTxFinishRequest extends GridDistributedTxFinishRequest {
}
switch (writer.state()) {
- case 21:
+ case 22:
if (!writer.writeInt("miniId", miniId))
return false;
@@ -199,7 +199,7 @@ public class GridNearTxFinishRequest extends GridDistributedTxFinishRequest {
return false;
switch (reader.state()) {
- case 21:
+ case 22:
miniId = reader.readInt("miniId");
if (!reader.isLastRead())
@@ -219,7 +219,7 @@ public class GridNearTxFinishRequest extends GridDistributedTxFinishRequest {
/** {@inheritDoc} */
@Override public byte fieldsCount() {
- return 22;
+ return 23;
}
/** {@inheritDoc} */