Uploaded image for project: 'Apache Drill'
  1. Apache Drill
  2. DRILL-4715

Java compilation error for a query with large number of expressions

VotersWatch issueWatchersLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 1.8.0
    • Execution - Codegen
    • None

    Description

      The following query would hit compilation error, when Drill generates and compiles the run-time code.

      Q1 :

      select  expr1, expr2, expr3, ...., exprN
      from table
      

      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.

      Attachments

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            jni Jinfeng Ni
            jni Jinfeng Ni
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment