Skip to content

Conversation

@hantangwangd
Copy link
Member

@hantangwangd hantangwangd commented Oct 21, 2025

Description

[WIP]: wait for the previous two parts to be merged.

This PR is the third part of many PRs to support distributed procedure into Presto. It is a split of the original entire PR which is located here: #22659.

The whole work in this PR includes the necessary presto c++ protocol and native changes to support calling distributed procedures in native workers.

Motivation and Context

prestodb/rfcs#12

Impact

N/A

Test Plan

N/A

Contributor checklist

  • Please make sure your submission complies with our contributing guide, in particular code style and commit standards.
  • PR description addresses the issue accurately and concisely. If the change is non-trivial, a GitHub Issue is referenced.
  • Documented new properties (with its default value), SQL syntax, functions, or other functionality.
  • If release notes are required, they follow the release notes guidelines.
  • Adequate tests were added if applicable.
  • CI passed.
  • If adding new dependencies, verified they have an OpenSSF Scorecard score of 5.0 or higher (or obtained explicit TSC approval for lower scores).

Release Notes

== NO RELEASE NOTE ==

Copy link
Contributor

@sourcery-ai sourcery-ai bot left a comment

Choose a reason for hiding this comment

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

Sorry @hantangwangd, your pull request is larger than the review limit of 150000 diff characters

@hantangwangd hantangwangd changed the title feat: Distributed Procedure Support Part 2/X - native part changes feat: Distributed Procedure Support Part 3/X - native part changes Oct 21, 2025
@hantangwangd hantangwangd force-pushed the support_call_distributed_procedure_part3 branch from db906b2 to b59a17f Compare October 22, 2025 07:27
And expose the procedure registry to the `presto-analyzer` and
`connectors` module
Refactor `Procedure` and `DistributedProcedure` into abstract classes.
Use a subclass `TableDataRewriteDistributedProcedure` for table rewrite
tasks, for example, merge small data files, sort table data,
repartition table data etc. And introduce a new class `LocalProcedure`
to represent the former coordinator-only procedures.

Rename `IProcedureRegistry` to `ProcedureRegistry`, and accordingly
rename previous `ProcedureRegistry` to `BuiltInProcedureRegistry`.
@hantangwangd hantangwangd force-pushed the support_call_distributed_procedure_part3 branch from b59a17f to 34f0586 Compare October 31, 2025 00:50
@hantangwangd hantangwangd force-pushed the support_call_distributed_procedure_part3 branch from 34f0586 to 4a75c9b Compare October 31, 2025 01:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant