Skip to content
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

Return remaining bytes from exchange sources #8758

Closed
wants to merge 1 commit into from

Conversation

Yuhta
Copy link
Contributor

@Yuhta Yuhta commented Feb 15, 2024

Summary:
This is the first diff to upgrade the exchange protocol. This change
only exposes the remaining bytes to buffer manager; it does not change the
existing protocol yet, and is compatible with the current Prestissimo code.

Also added a few statistics to spot skewed exchange.

See prestodb/presto#21926 for details about the
design.

Differential Revision: D53793123

@facebook-github-bot facebook-github-bot added the CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. label Feb 15, 2024
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D53793123

Copy link

netlify bot commented Feb 15, 2024

Deploy Preview for meta-velox canceled.

Name Link
🔨 Latest commit 00f46e8
🔍 Latest deploy log https://app.netlify.com/sites/meta-velox/deploys/65ce88da64f6620008cf2c91

Yuhta added a commit to Yuhta/velox that referenced this pull request Feb 15, 2024
Summary:

This is the first diff to upgrade the exchange protocol.  This change
only exposes the remaining bytes to buffer manager; it does not change the
existing protocol yet, and is compatible with the current Prestissimo code.

Also added a few statistics to spot skewed exchange.

See prestodb/presto#21926 for details about the
design.

Differential Revision: D53793123
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D53793123

Yuhta added a commit to Yuhta/velox that referenced this pull request Feb 15, 2024
Summary:

This is the first diff to upgrade the exchange protocol.  This change
only exposes the remaining bytes to buffer manager; it does not change the
existing protocol yet, and is compatible with the current Prestissimo code.

Also added a few statistics to spot skewed exchange.

See prestodb/presto#21926 for details about the
design.

Differential Revision: D53793123
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D53793123

Yuhta added a commit to Yuhta/velox that referenced this pull request Feb 15, 2024
Summary:

This is the first diff to upgrade the exchange protocol.  This change
only exposes the remaining bytes to buffer manager; it does not change the
existing protocol yet, and is compatible with the current Prestissimo code.

Also added a few statistics to spot skewed exchange.

See prestodb/presto#21926 for details about the
design.

Differential Revision: D53793123
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D53793123

Copy link
Contributor

@mbasmanova mbasmanova left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks.

velox/exec/ExchangeSource.h Show resolved Hide resolved
@@ -78,6 +81,9 @@ class ArbitraryBuffer {
/// there are sufficient buffered pages.
std::vector<std::shared_ptr<SerializedPage>> getPages(uint64_t maxBytes);

/// Append the available page sizes to `out'.
void getAvailablePageSizes(std::vector<int64_t>& out) const;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Any particular reason not to return std::vector?

Copy link
Contributor Author

@Yuhta Yuhta Feb 15, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So we don't need to create a new vector every time and just appending the existing one already created for DestinationBuffer

velox/exec/OutputBuffer.h Show resolved Hide resolved
velox/exec/OutputBuffer.h Outdated Show resolved Hide resolved
velox/exec/OutputBuffer.h Outdated Show resolved Hide resolved
Summary:

This is the first diff to upgrade the exchange protocol.  This change
only exposes the remaining bytes to buffer manager; it does not change the
existing protocol yet, and is compatible with the current Prestissimo code.

See prestodb/presto#21926 for details about the
design.

Reviewed By: mbasmanova

Differential Revision: D53793123
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D53793123

@facebook-github-bot
Copy link
Contributor

This pull request has been merged in 9c79ef9.

Copy link

Conbench analyzed the 1 benchmark run on commit 9c79ef96.

There were no benchmark performance regressions. 🎉

The full Conbench report has more details.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. fb-exported Merged
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants