summaryrefslogtreecommitdiff
path: root/ndb/src/common/debugger/SignalLoggerManager.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'ndb/src/common/debugger/SignalLoggerManager.cpp')
-rw-r--r--ndb/src/common/debugger/SignalLoggerManager.cpp26
1 files changed, 22 insertions, 4 deletions
diff --git a/ndb/src/common/debugger/SignalLoggerManager.cpp b/ndb/src/common/debugger/SignalLoggerManager.cpp
index e51edbba169..ae6edd5ed71 100644
--- a/ndb/src/common/debugger/SignalLoggerManager.cpp
+++ b/ndb/src/common/debugger/SignalLoggerManager.cpp
@@ -31,6 +31,8 @@ SignalLoggerManager::SignalLoggerManager()
logModes[i] = 0;
}
outputStream = 0;
+ m_ownNodeId = 0;
+ m_logDistributed = false;
}
SignalLoggerManager::~SignalLoggerManager()
@@ -78,7 +80,17 @@ SignalLoggerManager::getTrace() const
{
return traceId;
}
+
+void
+SignalLoggerManager::setOwnNodeId(int nodeId){
+ m_ownNodeId = nodeId;
+}
+void
+SignalLoggerManager::setLogDistributed(bool val){
+ m_logDistributed = val;
+}
+
int
getParameter(char *blocks[NO_OF_BLOCKS], const char * par, const char * line)
{
@@ -236,10 +248,12 @@ SignalLoggerManager::executeSignal(const SignalHeader& sh, Uint8 prio,
Uint32 trace = sh.theTrace;
//Uint32 senderBlockNo = refToBlock(sh.theSendersBlockRef);
Uint32 receiverBlockNo = sh.theReceiversBlockNumber;
+ Uint32 senderNode = refToNode(sh.theSendersBlockRef);
if(outputStream != 0 &&
(traceId == 0 || traceId == trace) &&
- logMatch(receiverBlockNo, LogIn)){
+ (logMatch(receiverBlockNo, LogOut) ||
+ (m_logDistributed && m_ownNodeId != senderNode))){
#ifdef VM_TRACE_TIME
fprintf(outputStream, "---- Received - Signal - %d ----\n", time(0));
#else
@@ -261,10 +275,12 @@ SignalLoggerManager::executeSignal(const SignalHeader& sh, Uint8 prio,
Uint32 trace = sh.theTrace;
//Uint32 senderBlockNo = refToBlock(sh.theSendersBlockRef);
Uint32 receiverBlockNo = sh.theReceiversBlockNumber;
+ Uint32 senderNode = refToNode(sh.theSendersBlockRef);
if(outputStream != 0 &&
(traceId == 0 || traceId == trace) &&
- logMatch(receiverBlockNo, LogIn)){
+ (logMatch(receiverBlockNo, LogOut) ||
+ (m_logDistributed && m_ownNodeId != senderNode))){
#ifdef VM_TRACE_TIME
fprintf(outputStream, "---- Received - Signal - %d ----\n", time(0));
#else
@@ -293,7 +309,8 @@ SignalLoggerManager::sendSignal(const SignalHeader& sh,
if(outputStream != 0 &&
(traceId == 0 || traceId == trace) &&
- logMatch(senderBlockNo, LogOut)){
+ (logMatch(senderBlockNo, LogOut) ||
+ (m_logDistributed && m_ownNodeId != node))){
#ifdef VM_TRACE_TIME
fprintf(outputStream, "---- Send ----- Signal - %d ----\n", time(0));
#else
@@ -321,7 +338,8 @@ SignalLoggerManager::sendSignal(const SignalHeader& sh, Uint8 prio,
if(outputStream != 0 &&
(traceId == 0 || traceId == trace) &&
- logMatch(senderBlockNo, LogOut)){
+ (logMatch(senderBlockNo, LogOut) ||
+ (m_logDistributed && m_ownNodeId != node))){
#ifdef VM_TRACE_TIME
fprintf(outputStream, "---- Send ----- Signal - %d ----\n", time(0));
#else