radmirnovii opened a new pull request, #24586:
URL: https://github.com/apache/datafusion/pull/24586

   ## Which issue does this PR close?
   
   Refs #20935 and #19458.
   
   ## Rationale for this change
   
   Scalar functions over dictionary-encoded columns have no benchmark coverage:
   neither the hand-written dictionary arms (e.g. `reverse`'s, from #23930) nor
   the cast away from the encoding that every function without preservation pays
   (e.g. `encode`). This lands the baseline first, so follow-up work 
generalizing
   the arms shows its delta on stable benchmark ids.
   
   ## What changes are included in this PR?
   
   One criterion benchmark:
   
   - `reverse` over a dictionary of its own per batch (`cold`) and one shared
     across batches the way a Parquet column chunk delivers them (`warm`) — 
today
     the two cost the same, since an arm cannot reuse anything across batches;
   - `cast_away`: the dictionary cast to its value type and the function called
     once per row — what any function without encoding preservation pays;
   - `flat`: the same rows with no encoding anywhere, as a bound.
   
   `encode` cannot be called over a dictionary today, so it has no
   dictionary-typed groups yet.
   
   ## Are these changes tested?
   
   `cargo bench -p datafusion-physical-expr --bench scalar_function_dictionary`
   runs clean.
   
   ## Are there any user-facing changes?
   
   No.
   
   🤖 Generated with [Claude Code](https://claude.com/claude-code)
   
   https://claude.ai/code/session_01NysGeXTG5opiJKBApsAe5H
   


-- 
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]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to