-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add TableScan Replayer #11205
Add TableScan Replayer #11205
Conversation
✅ Deploy Preview for meta-velox canceled.
|
cb32bbb
to
8bc94c4
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@duanmeng thanks for the change % comments!
cdba012
to
1e45029
Compare
73387d0
to
dfdedd0
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@duanmeng thanks!
@xiaoxmeng has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator. |
cbe9dee
to
507c1e6
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@duanmeng LGTM % minors. Thanks!
} | ||
|
||
void OperatorTraceSplitWriter::write(const exec::Split& split) const { | ||
VELOX_CHECK(!split.hasGroup(), "Do not support grouped execution"); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I guess we could support group later once we have driver id mapping in trace node? Leave a TODO here? thanks!
velox/exec/TableScan.cpp
Outdated
@@ -117,6 +118,9 @@ RowVectorPtr TableScan::getOutput() { | |||
if (!split.hasConnectorSplit()) { | |||
noMoreSplits_ = true; | |||
dynamicFilters_.clear(); | |||
if (splitTracer_ != nullptr) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's just call this in Operator::finishTrace()? Let the framework handle the tracing calls? Thanks!
2cc5150
to
6dc8fe8
Compare
@xiaoxmeng has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator. |
6dc8fe8
to
ebb7e09
Compare
ebb7e09
to
35a67df
Compare
@xiaoxmeng has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator. |
@xiaoxmeng merged this pull request in 12b52e7. |
Conbench analyzed the 1 benchmark run on commit There were no benchmark performance regressions. 🎉 The full Conbench report has more details. |
Add a split tracer to record and load the input splits from a tracing 'TableScan'
operator, and for getting the traced splits when replaying 'TableScan'.
Currently, it only works with 'HiveConnectorSplit'. In the future, it will
be extended to handle more types of splits, such as 'IcebergHiveConnectorSplit'.
part of #9668