You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@drill.apache.org by "Aman Sinha (JIRA)" <ji...@apache.org> on 2014/10/23 08:40:34 UTC

[jira] [Created] (DRILL-1574) Storing system options in zookeeper causes accessing zk during code generation

Aman Sinha created DRILL-1574:
---------------------------------

             Summary: Storing system options in zookeeper causes accessing zk during code generation
                 Key: DRILL-1574
                 URL: https://issues.apache.org/jira/browse/DRILL-1574
             Project: Apache Drill
          Issue Type: Improvement
          Components: Execution - Codegen
    Affects Versions: 0.6.0
            Reporter: Aman Sinha


While debugging a different issue, I noticed that when the CodeCompiler does a lookup in the local cache for the generated code, it actually ends up making an access to Zookeeper to get the System Options.  This should be avoided because we will do this for each and every generated code class. 

...
        at org.apache.drill.exec.store.sys.zk.ZkPStore.get(ZkPStore.java:90) ~[drill-java-exec-0.7.0-incubating-SNAPSHOT-rebuffed.jar:0.7.0-incubating-SNAPSHOT]
        at org.apache.drill.exec.server.options.SystemOptionManager.getOption(SystemOptionManager.java:142) ~[drill-java-exec-0.7.0-incubating-SNAPSHOT-rebuffed.jar:0.7.0-incubating-SNAPSHOT]
        at org.apache.drill.exec.compile.QueryClassLoader$ClassCompilerSelector.<init>(QueryClassLoader.java:118) ~[drill-java-exec-0.7.0-incubating-SNAPSHOT-rebuffed.jar:0.7.0-incubating-SNAPSHOT]
        at org.apache.drill.exec.compile.QueryClassLoader.<init>(QueryClassLoader.java:76) ~[drill-java-exec-0.7.0-incubating-SNAPSHOT-rebuffed.jar:0.7.0-incubating-SNAPSHOT]
        at org.apache.drill.exec.compile.CodeCompiler$Loader.load(CodeCompiler.java:70) ~[drill-java-exec-0.7.0-incubating-SNAPSHOT-rebuffed.jar:0.7.0-incubating-SNAPSHOT]
        at org.apache.drill.exec.compile.CodeCompiler$Loader.load(CodeCompiler.java:67) ~[drill-java-exec-0.7.0-incubating-SNAPSHOT-rebuffed.jar:0.7.0-incubating-SNAPSHOT]
        at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3599) ~[guava-14.0.1.jar:na]
        at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2379) ~[guava-14.0.1.jar:na]
        at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2342) ~[guava-14.0.1.jar:na]
        at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2257) ~[guava-14.0.1.jar:na]
        at com.google.common.cache.LocalCache.get(LocalCache.java:4000) ~[guava-14.0.1.jar:na]
        at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:4004) ~[guava-14.0.1.jar:na]
        at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4874) ~[guava-14.0.1.jar:na]
        at org.apache.drill.exec.compile.CodeCompiler.getImplementationClass(CodeCompiler.java:60) ~[drill-java-exec-0.7.0-incubating-SNAPSHOT-rebuffed.jar:0.7.0-incubating-SNAPSHOT]
        at org.apache.drill.exec.ops.FragmentContext.getImplementationClass(FragmentContext.java:209) ~[drill-java-exec-0.7.0-incubating-SNAPSHOT-rebuffed.jar:0.7.0-incubating-SNAPSHOT]
        at org.apache.drill.exec.ops.FragmentContext.getImplementationClass(FragmentContext.java:205) ~[drill-java-exec-0.7.0-incubating-SNAPSHOT-rebuffed.jar:0.7.0-incubating-SNAPSHOT]
        at org.apache.drill.exec.physical.impl.join.MergeJoinBatch.generateNewWorker(MergeJoinBatch.java:416) ~[drill-java-exec-0.7.0-incubating-SNAPSHOT-rebuffed.jar:0.7.0-incubating-SNAPSHOT]
        at org.apache.drill.exec.physical.impl.join.MergeJoinBatch.innerNext(MergeJoinBatch.java:173) ~[drill-java-exec-0.7.0-incubating-SNAPSHOT-rebuffed.jar:0.7.0-incubating-SNAPSHOT]



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)