[ https://issues.apache.org/jira/browse/DRILL-4715?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15325071#comment-15325071 ]
Jacques Nadeau commented on DRILL-4715: --------------------------------------- I also wonder whether this test even passes: https://github.com/apache/drill/blob/master/exec/java-exec/src/test/java/org/apache/drill/exec/compile/TestLargeFileCompilation.java It isn't run in the default build but it was designed especially to ensure that we avoid this problem. Aditya was one of the main people who worked on the kind of expression breakup that Aman is proposing. I believe we currently do it at the project column level. Maybe we need to also support subexpression level. > 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)