Skip to content

Commit

Permalink
HPCC-32930 Capture and report start timings for activities derived fr…
Browse files Browse the repository at this point in the history
…om CInMemJoinBase

Capture start timing for input activities started asynchronously by CInMemJoinBase.

Signed-off-by: Shamser Ahmed <[email protected]>
  • Loading branch information
shamser committed Nov 11, 2024
1 parent 4c31ec4 commit 898099a
Showing 1 changed file with 10 additions and 3 deletions.
13 changes: 10 additions & 3 deletions thorlcr/activities/lookupjoin/thlookupjoinslave.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1445,11 +1445,17 @@ class CInMemJoinBase : public CSlaveActivity, public CAllOrLookupHelper<HELPER>,
}
HTHELPER *queryTable() { return table; }
IBitSet *queryRhsChannelStopSet() { dbgassertex(0 == queryJobChannelNumber()); return rhsChannelStop; }
void startLeftInput()
void startLeftInput(bool async=false)
{
try
{
startInput(0);
if (async)
{
LookAheadTimer t(slaveTimerStats, timeActivities);
startInput(0);
}
else
startInput(0);
if (ensureStartFTLookAhead(0))
setLookAhead(0, createRowStreamLookAhead(this, inputStream, queryRowInterfaces(input), LOOKUPJOINL_SMART_BUFFER_SIZE, ::canStall(input), grouped, RCUNBOUND, this), false);
left.set(inputStream); // can be replaced by loader stream
Expand Down Expand Up @@ -1530,6 +1536,7 @@ class CInMemJoinBase : public CSlaveActivity, public CAllOrLookupHelper<HELPER>,
}
virtual void start() override
{
ActivityTimer s(slaveTimerStats, timeActivities);
joined = 0;
joinCounter = 0;
candidateCounter = 0;
Expand Down Expand Up @@ -1562,7 +1569,7 @@ class CInMemJoinBase : public CSlaveActivity, public CAllOrLookupHelper<HELPER>,
}
else
{
CAsyncCallStart asyncLeftStart(std::bind(&CInMemJoinBase::startLeftInput, this));
CAsyncCallStart asyncLeftStart(std::bind(&CInMemJoinBase::startLeftInput, this, true));
try
{
startInput(1);
Expand Down

0 comments on commit 898099a

Please sign in to comment.