[
https://issues.apache.org/jira/browse/FLINK-24462?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17430563#comment-17430563
]
Francesco Guardiani commented on FLINK-24462:
---------------------------------------------
I have a PR where I propose a design that has no performance penalty:
https://github.com/apache/flink/pull/17522
Because the generated code ends up being the same, there are no differences in
terms of performance:
Master:
{noformat}
Benchmark Mode Cnt Score
Error Units
UpcastingWithPrimitivesBenchmark.test thrpt 10 92000832.352 ±
1135921.262 ops/s
UpcastingWithPrimitivesNonNullBenchmark.test thrpt 10 92451324.607 ±
705972.176 ops/s
{noformat}
PR #17522
{noformat}
Benchmark Mode Cnt Score
Error Units
UpcastingWithPrimitivesBenchmark.test thrpt 10 92628224.800 ±
421457.645 ops/s
UpcastingWithPrimitivesNonNullBenchmark.test thrpt 10 92664225.733 ±
349682.296 ops/s
{noformat}
> Refactor casting rules in a similar fashion to DataStructureConverter
> ---------------------------------------------------------------------
>
> Key: FLINK-24462
> URL: https://issues.apache.org/jira/browse/FLINK-24462
> Project: Flink
> Issue Type: Sub-task
> Components: Table SQL / Planner
> Reporter: Francesco Guardiani
> Assignee: Francesco Guardiani
> Priority: Major
> Labels: pull-request-available
> Attachments: results.txt
>
>
> The goal of this issue is to reorganize CAST logic in rules, similarly to
> DataStructureConverter. This makes the casting rules easier to debug and
> extend, allows us to reuse some of the rules for
> https://issues.apache.org/jira/browse/FLINK-21456 without duplicating any
> code and simplifies/cleanups the code generator code base. These rules can be
> reused in the context of https://issues.apache.org/jira/browse/FLINK-24385 as
> well.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)