drill-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF GitHub Bot (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (DRILL-5116) Enable generated code debugging in each Drill operator
Date Thu, 05 Jan 2017 03:48:58 GMT

    [ https://issues.apache.org/jira/browse/DRILL-5116?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15800197#comment-15800197

ASF GitHub Bot commented on DRILL-5116:

Github user Ben-Zvi commented on a diff in the pull request:

    --- Diff: exec/java-exec/src/main/java/org/apache/drill/exec/compile/CodeCompiler.java
    @@ -117,18 +200,24 @@ public CodeCompiler(final DrillConfig config, final OptionManager
       private class Loader extends CacheLoader<CodeGenerator<?>, GeneratedClassEntry>
         public GeneratedClassEntry load(final CodeGenerator<?> cg) throws Exception
    -      final Class<?> c;
    -      if ( cg.isPlainOldJava( ) ) {
    -        // Generate class as plain old Java
    +      return makeClass(cg);
    +    }
    +  }
    -        c = classBuilder.getImplementationClass(cg);
    -      } else {
    -        // Generate class parts and assemble byte-codes.
    +  /**
    +   * Called when the requested class does not exist in the class and should
    --- End diff --
    "in the cache", not "in the class" 

> Enable generated code debugging in each Drill operator
> ------------------------------------------------------
>                 Key: DRILL-5116
>                 URL: https://issues.apache.org/jira/browse/DRILL-5116
>             Project: Apache Drill
>          Issue Type: Improvement
>    Affects Versions: 1.9.0
>            Reporter: Paul Rogers
>            Assignee: Paul Rogers
>            Priority: Minor
> DRILL-5052 adds the ability to debug generated code. Some of the code generated by Drill's
operators has minor problems when compiled directly using the new technique. These issues
are ignore by the byte-code-merge technique uses in production. This ticket asks to try the
DRILL-5052 feature in each operator, clean up any minor problems, and ensure each operator
generates code suitable for debugging. Use the new {{CodeGenerator.plainOldJavaCapable()}}
method to mark each generated class as ready for "plain-old Java" code gen.
> The advantages of this feature are two:
> 1. Ability to step through the generated code to increase understanding of existing operators
and to ease development of improvements to existing operators and of any new operators we
choose to create.
> 2. Open the door to experimenting with how to improve performance of the generated code.

This message was sent by Atlassian JIRA

View raw message