-
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
feat: Make PartitionedOutput reclaimable #11856
base: main
Are you sure you want to change the base?
Conversation
✅ Deploy Preview for meta-velox canceled.
|
43ad645
to
fc9d92b
Compare
@@ -108,43 +108,8 @@ velox::memory::MemoryPool* DriverCtx::addOperatorPool( | |||
|
|||
std::optional<common::SpillConfig> DriverCtx::makeSpillConfig( | |||
int32_t operatorId) const { | |||
const auto& queryConfig = task->queryCtx()->queryConfig(); |
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.
Another option would be to keep it here and lazy initialize the spill component of outputbuffer in partitioned output operator.
1ab49e4
to
6ad2c82
Compare
6ad2c82
to
dd92701
Compare
@tanjialiang has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator. |
48fdbfc
to
a0672ae
Compare
@tanjialiang has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator. |
38d3924
to
65d5c88
Compare
@tanjialiang has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator. |
1 similar comment
@tanjialiang has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator. |
Partitioned output spill work as following:
As soon as partitioned output is triggered to reclaim from itself, this task's output buffer switches to spill mode, meaning:
Partitioned output spill currently only works for PARTITION mode. This PR has limitations of not efficiently save memory by spilling, due to unspilling using a considerably large amount of memory. But it lays a foundation for persistent shuffle. Future changes are coming, to make this spill more coordinated with other plan nodes' spill so that node memory usage is more efficient.