apurtell opened a new pull request, #2522:
URL: https://github.com/apache/phoenix/pull/2522

   Replace the two opaque per-scan markers `SERVER ARRAY ELEMENT PROJECTION` 
and `SERVER JSON FUNCTION PROJECTION` with per-type clauses `SERVER ARRAY 
PROJECTION <count>`, `SERVER JSON PROJECTION <count>`, and `SERVER BSON 
PROJECTION <count>`, emitted only when at least one path expression of the 
corresponding type is pushed server-side, and each followed by one indented 
detail line per expression in the function-call form (`Expression.toString()` 
indented to the next level).
   
   `ProjectionCompiler.compileSelectClause` stashes the per-attribute 
expression buckets (the `serverAttributeToFuncExpressionMap` it already builds 
before scan serialization) on `StatementContext` as `serverParsedProjections : 
Map<String, List<Expression>>` keyed by scan attribute name. 
`ExplainTable.explain(...)` replaces the existing code with new code that 
processes "ARRAY", "JSON", and "BSON" buckets, emits the counted header, and 
the additional indented detail lines.
   
   `ExplainPlanAttributes` retires the `serverArrayElementProjection` boolean 
and adds a `serverParsedProjections: Map<String,List<String>>` map, with up to 
three buckets ("ARRAY", "JSON", and "BSON" ) each holding a `List<String>`, 
with matching `ExplainPlanTestUtil` fluent assertion getters, setters, and 
testers.
   
   Co-authored-by: Claude Opus 4.8[1m] <[email protected]>


-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to