You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@phoenix.apache.org by "apurtell (via GitHub)" <gi...@apache.org> on 2026/06/14 04:54:38 UTC
[PR] PHOENIX-7922 Consolidate the EXPLAIN rewrite pass entry points [phoenix]
apurtell opened a new pull request, #2529:
URL: https://github.com/apache/phoenix/pull/2529
Consolidate the rewrite pass entry points.
Add `forRewrite()` on `StatementContext`, carrying rewrite breadcrumbs across the early rewrite pass at four call sites (`PhoenixStatement.ExecutableSelectStatement.compilePlan`, `DeleteCompiler.compile`, `UpsertCompiler.compile`, and `QueryCompiler.compileSubquery`). The bespoke `BindManager` and `FromCompiler` additions in `PhoenixStatement` and `DeleteCompiler` go away. Drops the legacy single argument rewriter overloads `SubselectRewriter.flatten(SelectStatement, PhoenixConnection)` and `SubqueryRewriter.transform(SelectStatement, ColumnResolver, PhoenixConnection)` plus the matching 3-arg `new SubqueryRewriter(...)` constructor. The four legacy overloads are deleted, and the trivial forwarding layer goes with them.
No behavior change. EXPLAIN text and JSON output are unchanged.
Co-authored-by: Claude Opus 4.8[1m] <no...@anthropic.com>
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@phoenix.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] PHOENIX-7922 Consolidate the EXPLAIN rewrite pass entry points [phoenix]
Posted by "apurtell (via GitHub)" <gi...@apache.org>.
apurtell commented on PR #2529:
URL: https://github.com/apache/phoenix/pull/2529#issuecomment-4700746063
## Test Results
### Unit tests
Aggregate: tests run = 2640, skipped = 9.
### Compile-pass tests directly exercising the patch
| Test class | Tests run / pass | Time |
| --------------------------------------------------- | ---------------- | ------- |
| `org.apache.phoenix.query.explain.ExplainPlanTest` | 105 / 105 | 0.78 s |
| `org.apache.phoenix.compile.QueryCompilerTest` | 215 / 215 (2 sk) | 1.49 s |
| `org.apache.phoenix.compile.JoinQueryCompilerTest` | 2 / 2 | 0.09 s |
| `org.apache.phoenix.compile.HavingCompilerTest` | 11 / 11 | 0.22 s |
| `org.apache.phoenix.compile.RVCOffsetCompilerTest` | 7 / 7 | 0.03 s |
| `org.apache.phoenix.compile.WhereOptimizerTest` | 138 / 138 | 4.95 s |
### Integration tests
The patch touches the four early rewrite-pass entry points (SELECT, DELETE, UPSERT SELECT, subquery in `QueryCompiler`) and the test-only `getJoinTable` utility. The IT classes below cover all of them and the EXPLAIN baseline.
| IT class | Tests run / pass | Time |
| ------------------------------------------------------------ | ---------------- | -------- |
| `org.apache.phoenix.end2end.ExplainPlanWithStatsEnabledIT` | 30 / 30 | 45.9 s |
| `org.apache.phoenix.end2end.ExplainPlanWithStatsDisabledIT` | 17 / 17 | 36.8 s |
| `org.apache.phoenix.end2end.DerivedTableIT` | 18 / 18 | 50.0 s |
| `org.apache.phoenix.end2end.join.SubqueryIT` | 36 / 36 | 204.7 s |
| `org.apache.phoenix.end2end.RowValueConstructorOffsetIT` | 33 / 33 | 38.7 s |
| `org.apache.phoenix.end2end.SortMergeJoinMoreIT` | 10 / 10 | 62.5 s |
| `org.apache.phoenix.end2end.DeleteIT` | 74 / 74 | 201.7 s |
| `org.apache.phoenix.end2end.UpsertSelectIT` | 54 / 54 | 204.3 s |
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@phoenix.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] PHOENIX-7922 Consolidate the EXPLAIN rewrite pass entry points [phoenix]
Posted by "apurtell (via GitHub)" <gi...@apache.org>.
apurtell merged PR #2529:
URL: https://github.com/apache/phoenix/pull/2529
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@phoenix.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org