Skip to content

Commit 704fafd

Browse files
committed
[df] Align RDataSource cleanup routine with other sources
The call to cleanup routines was introduced in commit 0a719b4 The commit description informs it was done to avoid having setup and teardown routines called multiple times for the same column. In single-thread processing, the concept of one task is the processing of the entire computation graph for that run. As such, CleanupTask is called in RunTreeReader and RunEmptySource at the end of the function. In the case of RunDataSource, this routine is called in-between every event range processing. This commit aligns the RunDataSource logic with the logic of the other two single-thread processing methods, i.e. CleanupTask is now called at the end of the run.
1 parent 3b71c7b commit 704fafd

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

tree/dataframe/src/RLoopManager.cxx

+1-1
Original file line numberDiff line numberDiff line change
@@ -726,11 +726,11 @@ void RLoopManager::RunDataSource()
726726
{
727727
assert(fDataSource != nullptr);
728728
DSRunRAII _{*fDataSource};
729+
RCallCleanUpTask cleanup(*this);
729730
auto ranges = fDataSource->GetEntryRanges();
730731
while (!ranges.empty() && fNStopsReceived < fNChildren) {
731732
InitNodeSlots(nullptr, 0u);
732733
fDataSource->InitSlot(0u, 0ull);
733-
RCallCleanUpTask cleanup(*this);
734734
try {
735735
for (const auto &range : ranges) {
736736
const auto start = range.first;

0 commit comments

Comments
 (0)