[
https://issues.apache.org/jira/browse/DRILL-4715?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15324780#comment-15324780
]
Aman Sinha commented on DRILL-4715:
-----------------------------------
Interesting...it seems like we would need to find a balance: divide up the N
expressions into a few small number of doEval() methods, apply CSE within each
such method rather than trying to optimize across all N expressions.
> Java compilation error for a query with large number of expressions
> -------------------------------------------------------------------
>
> Key: DRILL-4715
> URL: https://issues.apache.org/jira/browse/DRILL-4715
> Project: Apache Drill
> Issue Type: Bug
> Components: Execution - Codegen
> Reporter: Jinfeng Ni
>
> The following query would hit compilation error, when Drill generates and
> compiles the run-time code.
> Q1 :
> {code}
> select expr1, expr2, expr3, ...., exprN
> from table
> {code}
> In Q1, expr1, expr2, ..., exprN are non-trivial expression (in stead of
> simply column reference), and N is big enough, then the run-time generated
> code may have a method which goes beyond the 64k limit imposed by JVM.
> This seems to be a regression from DRILL-3912 (Common subexpression
> elimination). CSE tries to put as many expressions in one block as possible,
> to detect and eliminate as many CSE as possible. However, this implies we may
> end up with big method with compilation error.
>
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)