apache / apache/arrow

[C++] Refactor debug-logging facilities in `AsofJoinNode`

Open
#35,507 4 comments 0 reactions 0 assignees View on GitHub
Component: C++ Type: enhancement
Dominant language
C++
Stars
17.1k
Forks
4.3k
Avg merge
3d 13h
Merged PRs (30d)
88

Description

### Describe the enhancement requested

Following #34392, `AsofJoinNode` includes debug-logging facilities that should be refactored. The specific asks are:

1. [Move](https://github.com/apache/arrow/pull/34392#discussion_r1185225329) to a util file.
2. [Make](https://github.com/apache/arrow/pull/34392#issuecomment-1535793004) the debug-logging APIs generic to `ExecNode`.
3. [Extract](https://github.com/apache/arrow/pull/34392#discussion_r1187949299) debug-logging-enablement to query-context.
4. [Add](https://github.com/apache/arrow/pull/34392#discussion_r1187952001) an debug-logging API that automatically adds a new-line at the end.
5. [Investigate](https://github.com/apache/arrow/pull/34392#issuecomment-1539814758) GLOG.
6. Ensure `DEBUG_MANIP` does not generate a new class when invoked again for the same manipulator.

### Component(s)

C++

Contributor guide

Open the contributing guide

Research direction

Start by reviewing the AsofJoinNode debug-logging implementation and the discussions linked from #34392. Trace how ExecNode and query-context currently expose logging, then investigate GLOG and DEBUG_MANIP behavior. Done means addressing all six listed refactoring asks without introducing duplicate manipulator classes.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
data-engineering
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.