drill-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Aditya Kishore (JIRA)" <j...@apache.org>
Subject [jira] [Created] (DRILL-1167) Split large runtime generated functions into a chain of functions
Date Tue, 22 Jul 2014 10:54:39 GMT
Aditya Kishore created DRILL-1167:
-------------------------------------

             Summary: Split large runtime generated functions into a chain of functions
                 Key: DRILL-1167
                 URL: https://issues.apache.org/jira/browse/DRILL-1167
             Project: Apache Drill
          Issue Type: Sub-task
          Components: Execution - Codegen
    Affects Versions: 1.0.0-BETA1
            Reporter: Aditya Kishore
            Assignee: Aditya Kishore


Since a Java function can not grow beyond 64kb (of byte code), it would be useful to split
such functions into multiple functions and invoke them as a chain.

For example, the following function
{code}
public boolean doEval() {
  //block 0:
  {
    ...
  }
...
  //block m-1:
  {
    ...
  }
  //block m:
  {
    ...
  }
...
  //block n:
  {
    ...
  }
  {
    return true;
  }
}
{code}

Can be re-written as:
{code}
public boolean doEval() {
  //block 0:
  {
    ...
  }
...
  //block m-1:
  {
    ...
  }
  return doEval0();
}

public boolean doEval0() {
  //block m:
  {
    ...
  }
...
  //block n:
  {
    ...
  }
  {
    return true;
  }
}
{code}




--
This message was sent by Atlassian JIRA
(v6.2#6252)

Mime
View raw message