aboutsummaryrefslogtreecommitdiff
path: root/exec/java-exec/src/main/java/org/apache/drill/exec/compile/ClassTransformer.java
diff options
context:
space:
mode:
authorChris Westin <cwestin@yahoo.com>2015-03-19 17:13:35 -0700
committerJacques Nadeau <jacques@apache.org>2015-03-19 22:14:14 -0700
commit7af5f9a01b1433bb8bb62c1e04a6cef68d629b48 (patch)
tree669e6e534d4bbce65acabe3447d35bc02b640f88 /exec/java-exec/src/main/java/org/apache/drill/exec/compile/ClassTransformer.java
parent838fd08aec6378d3709842b7f93cfabf1e14f87a (diff)
DRILL-2503: AsmUtil ClassTransformer MergeAdapter - add option to pass through ClassReader.EXPAND_FRAMES to satisfy complaint from ASM - rationalize AsmUtils methods' argument lists
TestBugFixes (in ...drill.jdbc.test) - created this to hold random bug fix tests
Diffstat (limited to 'exec/java-exec/src/main/java/org/apache/drill/exec/compile/ClassTransformer.java')
-rw-r--r--exec/java-exec/src/main/java/org/apache/drill/exec/compile/ClassTransformer.java5
1 files changed, 3 insertions, 2 deletions
diff --git a/exec/java-exec/src/main/java/org/apache/drill/exec/compile/ClassTransformer.java b/exec/java-exec/src/main/java/org/apache/drill/exec/compile/ClassTransformer.java
index 493f6ce8e..d4d74dd94 100644
--- a/exec/java-exec/src/main/java/org/apache/drill/exec/compile/ClassTransformer.java
+++ b/exec/java-exec/src/main/java/org/apache/drill/exec/compile/ClassTransformer.java
@@ -30,6 +30,7 @@ import org.apache.drill.exec.server.options.OptionManager;
import org.apache.drill.exec.server.options.OptionValue;
import org.apache.drill.exec.server.options.TypeValidators.EnumeratedStringValidator;
import org.codehaus.commons.compiler.CompileException;
+import org.objectweb.asm.ClassReader;
import org.objectweb.asm.tree.ClassNode;
import com.google.common.annotations.VisibleForTesting;
@@ -226,8 +227,8 @@ public class ClassTransformer {
Map<String, ClassNode> classesToMerge = Maps.newHashMap();
for (byte[] clazz : implementationClasses) {
totalBytecodeSize += clazz.length;
- final ClassNode node = AsmUtil.classFromBytes(clazz);
- if (!AsmUtil.isClassOk(logger, node, "implementationClasses")) {
+ final ClassNode node = AsmUtil.classFromBytes(clazz, ClassReader.EXPAND_FRAMES);
+ if (!AsmUtil.isClassOk(logger, "implementationClasses", node)) {
throw new IllegalStateException("Problem found with implementationClasses");
}
classesToMerge.put(node.name, node);