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)