Anton Gozhiy created DRILL-7041:
-----------------------------------

             Summary: CompileException happens if a nested coalesce function 
returns null
                 Key: DRILL-7041
                 URL: https://issues.apache.org/jira/browse/DRILL-7041
             Project: Apache Drill
          Issue Type: Bug
    Affects Versions: 1.16.0
            Reporter: Anton Gozhiy
            Assignee: Anton Gozhiy


*Query:*
{code:sql}
select coalesce(coalesce(n_name1, n_name2), n_name) from 
cp.`tpch/nation.parquet`
{code}

*Expected result:*
Values from "n_name" column should be returned

*Actual result:*
An exception happens:
{noformat}
org.apache.drill.common.exceptions.UserRemoteException: SYSTEM ERROR: 
CompileException: Line 57, Column 27: Assignment conversion not possible from 
type "org.apache.drill.exec.expr.holders.NullableVarCharHolder" to type 
"org.apache.drill.exec.vector.UntypedNullHolder" Fragment 0:0 Please, refer to 
logs for more information. [Error Id: e54d5bfd-604d-4a39-b62f-33bb964e5286 on 
userf87d-pc:31010] (org.apache.drill.exec.exception.SchemaChangeException) 
Failure while attempting to load generated class 
org.apache.drill.exec.physical.impl.project.ProjectRecordBatch.setupNewSchemaFromInput():573
 
org.apache.drill.exec.physical.impl.project.ProjectRecordBatch.setupNewSchema():583
 org.apache.drill.exec.record.AbstractUnaryRecordBatch.innerNext():101 
org.apache.drill.exec.physical.impl.project.ProjectRecordBatch.innerNext():143 
org.apache.drill.exec.record.AbstractRecordBatch.next():186 
org.apache.drill.exec.physical.impl.BaseRootExec.next():104 
org.apache.drill.exec.physical.impl.ScreenCreator$ScreenRoot.innerNext():83 
org.apache.drill.exec.physical.impl.BaseRootExec.next():94 
org.apache.drill.exec.work.fragment.FragmentExecutor$1.run():297 
org.apache.drill.exec.work.fragment.FragmentExecutor$1.run():284 
java.security.AccessController.doPrivileged():-2 
javax.security.auth.Subject.doAs():422 
org.apache.hadoop.security.UserGroupInformation.doAs():1746 
org.apache.drill.exec.work.fragment.FragmentExecutor.run():284 
org.apache.drill.common.SelfCleaningRunnable.run():38 
java.util.concurrent.ThreadPoolExecutor.runWorker():1149 
java.util.concurrent.ThreadPoolExecutor$Worker.run():624 
java.lang.Thread.run():748 Caused By 
(org.apache.drill.exec.exception.ClassTransformationException) 
java.util.concurrent.ExecutionException: 
org.apache.drill.exec.exception.ClassTransformationException: Failure 
generating transformation classes for value: package 
org.apache.drill.exec.test.generated; import 
org.apache.drill.exec.exception.SchemaChangeException; import 
org.apache.drill.exec.expr.holders.BigIntHolder; import 
org.apache.drill.exec.expr.holders.BitHolder; import 
org.apache.drill.exec.expr.holders.NullableVarBinaryHolder; import 
org.apache.drill.exec.expr.holders.NullableVarCharHolder; import 
org.apache.drill.exec.expr.holders.VarCharHolder; import 
org.apache.drill.exec.ops.FragmentContext; import 
org.apache.drill.exec.record.RecordBatch; import 
org.apache.drill.exec.vector.UntypedNullHolder; import 
org.apache.drill.exec.vector.UntypedNullVector; import 
org.apache.drill.exec.vector.VarCharVector; public class ProjectorGen35 { 
BigIntHolder const6; BitHolder constant9; UntypedNullHolder constant13; 
VarCharVector vv14; UntypedNullVector vv19; public void doEval(int inIndex, int 
outIndex) throws SchemaChangeException { { UntypedNullHolder out0 = new 
UntypedNullHolder(); if (constant9 .value == 1) { if (constant13 .isSet!= 0) { 
out0 = constant13; } } else { VarCharHolder out17 = new VarCharHolder(); { 
out17 .buffer = vv14 .getBuffer(); long startEnd = vv14 
.getAccessor().getStartEnd((inIndex)); out17 .start = ((int) startEnd); out17 
.end = ((int)(startEnd >> 32)); } //---- start of eval portion of 
convertToNullableVARCHAR function. ----// NullableVarCharHolder out18 = new 
NullableVarCharHolder(); { final NullableVarCharHolder output = new 
NullableVarCharHolder(); VarCharHolder input = out17; 
GConvertToNullableVarCharHolder_eval: { output.isSet = 1; output.start = 
input.start; output.end = input.end; output.buffer = input.buffer; } out18 = 
output; } //---- end of eval portion of convertToNullableVARCHAR function. 
----// if (out18 .isSet!= 0) { out0 = out18; } } if (!(out0 .isSet == 0)) { 
vv19 .getMutator().set((outIndex), out0 .isSet, out0); } } } public void 
doSetup(FragmentContext context, RecordBatch incoming, RecordBatch outgoing) 
throws SchemaChangeException { { UntypedNullHolder out1 = new 
UntypedNullHolder(); NullableVarBinaryHolder out2 = new 
NullableVarBinaryHolder(); /** start SETUP for function isnotnull **/ { 
NullableVarBinaryHolder input = out2; 
GNullOpNullableVarBinaryHolder$IsNotNull_setup: {} } /** end SETUP for function 
isnotnull **/ //---- start of eval portion of isnotnull function. ----// 
BitHolder out3 = new BitHolder(); { final BitHolder out = new BitHolder(); 
NullableVarBinaryHolder input = out2; 
GNullOpNullableVarBinaryHolder$IsNotNull_eval: { out.value = (input.isSet == 0 
? 0 : 1); } out3 = out; } //---- end of eval portion of isnotnull function. 
----// if (out3 .value == 1) { UntypedNullHolder out4 = new 
UntypedNullHolder(); if (out4 .isSet!= 0) { out1 = out4; } } else { 
UntypedNullHolder out5 = new UntypedNullHolder(); if (out5 .isSet!= 0) { out1 = 
out5; } } /** start SETUP for function castVARBINARY **/ { UntypedNullHolder in 
= out1; BigIntHolder len = const6; CastUntypedNullVarBinary_setup: {} } /** end 
SETUP for function castVARBINARY **/ //---- start of eval portion of 
castVARBINARY function. ----// NullableVarBinaryHolder out7 = new 
NullableVarBinaryHolder(); { if (out1 .isSet == 0) { out7 .isSet = 0; } else { 
final NullableVarBinaryHolder out = new NullableVarBinaryHolder(); 
UntypedNullHolder in = out1; BigIntHolder len = const6; 
CastUntypedNullVarBinary_eval: { out.isSet = 0; } out.isSet = 1; out7 = out; 
out.isSet = 1; } } //---- end of eval portion of castVARBINARY function. ----// 
/** start SETUP for function isnotnull **/ { NullableVarBinaryHolder input = 
out7; GNullOpNullableVarBinaryHolder$IsNotNull_setup: {} } /** end SETUP for 
function isnotnull **/ //---- start of eval portion of isnotnull function. 
----// BitHolder out8 = new BitHolder(); { final BitHolder out = new 
BitHolder(); NullableVarBinaryHolder input = out7; 
GNullOpNullableVarBinaryHolder$IsNotNull_eval: { out.value = (input.isSet == 0 
? 0 : 1); } out8 = out; } //---- end of eval portion of isnotnull function. 
----// constant9 = out8; UntypedNullHolder out10 = new UntypedNullHolder(); if 
(out3 .value == 1) { UntypedNullHolder out11 = new UntypedNullHolder(); if 
(out11 .isSet!= 0) { out10 = out11; } } else { UntypedNullHolder out12 = new 
UntypedNullHolder(); if (out12 .isSet!= 0) { out10 = out12; } } constant13 = 
out10; int[] fieldIds15 = new int[ 1 ] ; fieldIds15 [ 0 ] = 0; Object tmp16 = 
(incoming).getValueAccessorById(VarCharVector.class, 
fieldIds15).getValueVector(); if (tmp16 == null) { throw new 
SchemaChangeException("Failure while loading vector vv14 with id: TypedFieldId 
[fieldIds=[0], remainder=null]."); } vv14 = ((VarCharVector) tmp16); /** start 
SETUP for function convertToNullableVARCHAR **/ { 
GConvertToNullableVarCharHolder_setup: {} } /** end SETUP for function 
convertToNullableVARCHAR **/ int[] fieldIds20 = new int[ 1 ] ; fieldIds20 [ 0 ] 
= 0; Object tmp21 = (outgoing).getValueAccessorById(UntypedNullVector.class, 
fieldIds20).getValueVector(); if (tmp21 == null) { throw new 
SchemaChangeException("Failure while loading vector vv19 with id: TypedFieldId 
[fieldIds=[0], remainder=null]."); } vv19 = ((UntypedNullVector) tmp21); } } 
public void __DRILL_INIT__() throws SchemaChangeException { } } 
org.apache.drill.exec.compile.CodeCompiler.createInstances():197 
org.apache.drill.exec.compile.CodeCompiler.createInstance():163 
org.apache.drill.exec.ops.BaseFragmentContext.getImplementationClass():57 
org.apache.drill.exec.physical.impl.project.ProjectRecordBatch.setupNewSchemaFromInput():570
 
org.apache.drill.exec.physical.impl.project.ProjectRecordBatch.setupNewSchema():583
 org.apache.drill.exec.record.AbstractUnaryRecordBatch.innerNext():101 
org.apache.drill.exec.physical.impl.project.ProjectRecordBatch.innerNext():143 
org.apache.drill.exec.record.AbstractRecordBatch.next():186 
org.apache.drill.exec.physical.impl.BaseRootExec.next():104 
org.apache.drill.exec.physical.impl.ScreenCreator$ScreenRoot.innerNext():83 
org.apache.drill.exec.physical.impl.BaseRootExec.next():94 
org.apache.drill.exec.work.fragment.FragmentExecutor$1.run():297 
org.apache.drill.exec.work.fragment.FragmentExecutor$1.run():284 
java.security.AccessController.doPrivileged():-2 
javax.security.auth.Subject.doAs():422 
org.apache.hadoop.security.UserGroupInformation.doAs():1746 
org.apache.drill.exec.work.fragment.FragmentExecutor.run():284 
org.apache.drill.common.SelfCleaningRunnable.run():38 
java.util.concurrent.ThreadPoolExecutor.runWorker():1149 
java.util.concurrent.ThreadPoolExecutor$Worker.run():624 
java.lang.Thread.run():748 Caused By (java.util.concurrent.ExecutionException) 
org.apache.drill.exec.exception.ClassTransformationException: Failure 
generating transformation classes for value: package 
org.apache.drill.exec.test.generated; import 
org.apache.drill.exec.exception.SchemaChangeException; import 
org.apache.drill.exec.expr.holders.BigIntHolder; import 
org.apache.drill.exec.expr.holders.BitHolder; import 
org.apache.drill.exec.expr.holders.NullableVarBinaryHolder; import 
org.apache.drill.exec.expr.holders.NullableVarCharHolder; import 
org.apache.drill.exec.expr.holders.VarCharHolder; import 
org.apache.drill.exec.ops.FragmentContext; import 
org.apache.drill.exec.record.RecordBatch; import 
org.apache.drill.exec.vector.UntypedNullHolder; import 
org.apache.drill.exec.vector.UntypedNullVector; import 
org.apache.drill.exec.vector.VarCharVector; public class ProjectorGen35 { 
BigIntHolder const6; BitHolder constant9; UntypedNullHolder constant13; 
VarCharVector vv14; UntypedNullVector vv19; public void doEval(int inIndex, int 
outIndex) throws SchemaChangeException { { UntypedNullHolder out0 = new 
UntypedNullHolder(); if (constant9 .value == 1) { if (constant13 .isSet!= 0) { 
out0 = constant13; } } else { VarCharHolder out17 = new VarCharHolder(); { 
out17 .buffer = vv14 .getBuffer(); long startEnd = vv14 
.getAccessor().getStartEnd((inIndex)); out17 .start = ((int) startEnd); out17 
.end = ((int)(startEnd >> 32)); } //---- start of eval portion of 
convertToNullableVARCHAR function. ----// NullableVarCharHolder out18 = new 
NullableVarCharHolder(); { final NullableVarCharHolder output = new 
NullableVarCharHolder(); VarCharHolder input = out17; 
GConvertToNullableVarCharHolder_eval: { output.isSet = 1; output.start = 
input.start; output.end = input.end; output.buffer = input.buffer; } out18 = 
output; } //---- end of eval portion of convertToNullableVARCHAR function. 
----// if (out18 .isSet!= 0) { out0 = out18; } } if (!(out0 .isSet == 0)) { 
vv19 .getMutator().set((outIndex), out0 .isSet, out0); } } } public void 
doSetup(FragmentContext context, RecordBatch incoming, RecordBatch outgoing) 
throws SchemaChangeException { { UntypedNullHolder out1 = new 
UntypedNullHolder(); NullableVarBinaryHolder out2 = new 
NullableVarBinaryHolder(); /** start SETUP for function isnotnull **/ { 
NullableVarBinaryHolder input = out2; 
GNullOpNullableVarBinaryHolder$IsNotNull_setup: {} } /** end SETUP for function 
isnotnull **/ //---- start of eval portion of isnotnull function. ----// 
BitHolder out3 = new BitHolder(); { final BitHolder out = new BitHolder(); 
NullableVarBinaryHolder input = out2; 
GNullOpNullableVarBinaryHolder$IsNotNull_eval: { out.value = (input.isSet == 0 
? 0 : 1); } out3 = out; } //---- end of eval portion of isnotnull function. 
----// if (out3 .value == 1) { UntypedNullHolder out4 = new 
UntypedNullHolder(); if (out4 .isSet!= 0) { out1 = out4; } } else { 
UntypedNullHolder out5 = new UntypedNullHolder(); if (out5 .isSet!= 0) { out1 = 
out5; } } /** start SETUP for function castVARBINARY **/ { UntypedNullHolder in 
= out1; BigIntHolder len = const6; CastUntypedNullVarBinary_setup: {} } /** end 
SETUP for function castVARBINARY **/ //---- start of eval portion of 
castVARBINARY function. ----// NullableVarBinaryHolder out7 = new 
NullableVarBinaryHolder(); { if (out1 .isSet == 0) { out7 .isSet = 0; } else { 
final NullableVarBinaryHolder out = new NullableVarBinaryHolder(); 
UntypedNullHolder in = out1; BigIntHolder len = const6; 
CastUntypedNullVarBinary_eval: { out.isSet = 0; } out.isSet = 1; out7 = out; 
out.isSet = 1; } } //---- end of eval portion of castVARBINARY function. ----// 
/** start SETUP for function isnotnull **/ { NullableVarBinaryHolder input = 
out7; GNullOpNullableVarBinaryHolder$IsNotNull_setup: {} } /** end SETUP for 
function isnotnull **/ //---- start of eval portion of isnotnull function. 
----// BitHolder out8 = new BitHolder(); { final BitHolder out = new 
BitHolder(); NullableVarBinaryHolder input = out7; 
GNullOpNullableVarBinaryHolder$IsNotNull_eval: { out.value = (input.isSet == 0 
? 0 : 1); } out8 = out; } //---- end of eval portion of isnotnull function. 
----// constant9 = out8; UntypedNullHolder out10 = new UntypedNullHolder(); if 
(out3 .value == 1) { UntypedNullHolder out11 = new UntypedNullHolder(); if 
(out11 .isSet!= 0) { out10 = out11; } } else { UntypedNullHolder out12 = new 
UntypedNullHolder(); if (out12 .isSet!= 0) { out10 = out12; } } constant13 = 
out10; int[] fieldIds15 = new int[ 1 ] ; fieldIds15 [ 0 ] = 0; Object tmp16 = 
(incoming).getValueAccessorById(VarCharVector.class, 
fieldIds15).getValueVector(); if (tmp16 == null) { throw new 
SchemaChangeException("Failure while loading vector vv14 with id: TypedFieldId 
[fieldIds=[0], remainder=null]."); } vv14 = ((VarCharVector) tmp16); /** start 
SETUP for function convertToNullableVARCHAR **/ { 
GConvertToNullableVarCharHolder_setup: {} } /** end SETUP for function 
convertToNullableVARCHAR **/ int[] fieldIds20 = new int[ 1 ] ; fieldIds20 [ 0 ] 
= 0; Object tmp21 = (outgoing).getValueAccessorById(UntypedNullVector.class, 
fieldIds20).getValueVector(); if (tmp21 == null) { throw new 
SchemaChangeException("Failure while loading vector vv19 with id: TypedFieldId 
[fieldIds=[0], remainder=null]."); } vv19 = ((UntypedNullVector) tmp21); } } 
public void __DRILL_INIT__() throws SchemaChangeException { } } 
org.apache.drill.shaded.guava.com.google.common.util.concurrent.AbstractFuture.getDoneValue():502
 
org.apache.drill.shaded.guava.com.google.common.util.concurrent.AbstractFuture.get():461
 
org.apache.drill.shaded.guava.com.google.common.util.concurrent.AbstractFuture$TrustedFuture.get():83
 
org.apache.drill.shaded.guava.com.google.common.util.concurrent.Uninterruptibles.getUninterruptibly():142
 
org.apache.drill.shaded.guava.com.google.common.cache.LocalCache$Segment.getAndRecordStats():2453
 
org.apache.drill.shaded.guava.com.google.common.cache.LocalCache$Segment.loadSync():2417
 
org.apache.drill.shaded.guava.com.google.common.cache.LocalCache$Segment.lockedGetOrLoad():2299
 
org.apache.drill.shaded.guava.com.google.common.cache.LocalCache$Segment.get():2212
 org.apache.drill.shaded.guava.com.google.common.cache.LocalCache.get():4147 
org.apache.drill.shaded.guava.com.google.common.cache.LocalCache.getOrLoad():4151
 
org.apache.drill.shaded.guava.com.google.common.cache.LocalCache$LocalLoadingCache.get():5140
 org.apache.drill.exec.compile.CodeCompiler.createInstances():186 
org.apache.drill.exec.compile.CodeCompiler.createInstance():163 
org.apache.drill.exec.ops.BaseFragmentContext.getImplementationClass():57 
org.apache.drill.exec.physical.impl.project.ProjectRecordBatch.setupNewSchemaFromInput():570
 
org.apache.drill.exec.physical.impl.project.ProjectRecordBatch.setupNewSchema():583
 org.apache.drill.exec.record.AbstractUnaryRecordBatch.innerNext():101 
org.apache.drill.exec.physical.impl.project.ProjectRecordBatch.innerNext():143 
org.apache.drill.exec.record.AbstractRecordBatch.next():186 
org.apache.drill.exec.physical.impl.BaseRootExec.next():104 
org.apache.drill.exec.physical.impl.ScreenCreator$ScreenRoot.innerNext():83 
org.apache.drill.exec.physical.impl.BaseRootExec.next():94 
org.apache.drill.exec.work.fragment.FragmentExecutor$1.run():297 
org.apache.drill.exec.work.fragment.FragmentExecutor$1.run():284 
java.security.AccessController.doPrivileged():-2 
javax.security.auth.Subject.doAs():422 
org.apache.hadoop.security.UserGroupInformation.doAs():1746 
org.apache.drill.exec.work.fragment.FragmentExecutor.run():284 
org.apache.drill.common.SelfCleaningRunnable.run():38 
java.util.concurrent.ThreadPoolExecutor.runWorker():1149 
java.util.concurrent.ThreadPoolExecutor$Worker.run():624 
java.lang.Thread.run():748 Caused By 
(org.apache.drill.exec.exception.ClassTransformationException) Failure 
generating transformation classes for value: package 
org.apache.drill.exec.test.generated; import 
org.apache.drill.exec.exception.SchemaChangeException; import 
org.apache.drill.exec.expr.holders.BigIntHolder; import 
org.apache.drill.exec.expr.holders.BitHolder; import 
org.apache.drill.exec.expr.holders.NullableVarBinaryHolder; import 
org.apache.drill.exec.expr.holders.NullableVarCharHolder; import 
org.apache.drill.exec.expr.holders.VarCharHolder; import 
org.apache.drill.exec.ops.FragmentContext; import 
org.apache.drill.exec.record.RecordBatch; import 
org.apache.drill.exec.vector.UntypedNullHolder; import 
org.apache.drill.exec.vector.UntypedNullVector; import 
org.apache.drill.exec.vector.VarCharVector; public class ProjectorGen35 { 
BigIntHolder const6; BitHolder constant9; UntypedNullHolder constant13; 
VarCharVector vv14; UntypedNullVector vv19; public void doEval(int inIndex, int 
outIndex) throws SchemaChangeException { { UntypedNullHolder out0 = new 
UntypedNullHolder(); if (constant9 .value == 1) { if (constant13 .isSet!= 0) { 
out0 = constant13; } } else { VarCharHolder out17 = new VarCharHolder(); { 
out17 .buffer = vv14 .getBuffer(); long startEnd = vv14 
.getAccessor().getStartEnd((inIndex)); out17 .start = ((int) startEnd); out17 
.end = ((int)(startEnd >> 32)); } //---- start of eval portion of 
convertToNullableVARCHAR function. ----// NullableVarCharHolder out18 = new 
NullableVarCharHolder(); { final NullableVarCharHolder output = new 
NullableVarCharHolder(); VarCharHolder input = out17; 
GConvertToNullableVarCharHolder_eval: { output.isSet = 1; output.start = 
input.start; output.end = input.end; output.buffer = input.buffer; } out18 = 
output; } //---- end of eval portion of convertToNullableVARCHAR function. 
----// if (out18 .isSet!= 0) { out0 = out18; } } if (!(out0 .isSet == 0)) { 
vv19 .getMutator().set((outIndex), out0 .isSet, out0); } } } public void 
doSetup(FragmentContext context, RecordBatch incoming, RecordBatch outgoing) 
throws SchemaChangeException { { UntypedNullHolder out1 = new 
UntypedNullHolder(); NullableVarBinaryHolder out2 = new 
NullableVarBinaryHolder(); /** start SETUP for function isnotnull **/ { 
NullableVarBinaryHolder input = out2; 
GNullOpNullableVarBinaryHolder$IsNotNull_setup: {} } /** end SETUP for function 
isnotnull **/ //---- start of eval portion of isnotnull function. ----// 
BitHolder out3 = new BitHolder(); { final BitHolder out = new BitHolder(); 
NullableVarBinaryHolder input = out2; 
GNullOpNullableVarBinaryHolder$IsNotNull_eval: { out.value = (input.isSet == 0 
? 0 : 1); } out3 = out; } //---- end of eval portion of isnotnull function. 
----// if (out3 .value == 1) { UntypedNullHolder out4 = new 
UntypedNullHolder(); if (out4 .isSet!= 0) { out1 = out4; } } else { 
UntypedNullHolder out5 = new UntypedNullHolder(); if (out5 .isSet!= 0) { out1 = 
out5; } } /** start SETUP for function castVARBINARY **/ { UntypedNullHolder in 
= out1; BigIntHolder len = const6; CastUntypedNullVarBinary_setup: {} } /** end 
SETUP for function castVARBINARY **/ //---- start of eval portion of 
castVARBINARY function. ----// NullableVarBinaryHolder out7 = new 
NullableVarBinaryHolder(); { if (out1 .isSet == 0) { out7 .isSet = 0; } else { 
final NullableVarBinaryHolder out = new NullableVarBinaryHolder(); 
UntypedNullHolder in = out1; BigIntHolder len = const6; 
CastUntypedNullVarBinary_eval: { out.isSet = 0; } out.isSet = 1; out7 = out; 
out.isSet = 1; } } //---- end of eval portion of castVARBINARY function. ----// 
/** start SETUP for function isnotnull **/ { NullableVarBinaryHolder input = 
out7; GNullOpNullableVarBinaryHolder$IsNotNull_setup: {} } /** end SETUP for 
function isnotnull **/ //---- start of eval portion of isnotnull function. 
----// BitHolder out8 = new BitHolder(); { final BitHolder out = new 
BitHolder(); NullableVarBinaryHolder input = out7; 
GNullOpNullableVarBinaryHolder$IsNotNull_eval: { out.value = (input.isSet == 0 
? 0 : 1); } out8 = out; } //---- end of eval portion of isnotnull function. 
----// constant9 = out8; UntypedNullHolder out10 = new UntypedNullHolder(); if 
(out3 .value == 1) { UntypedNullHolder out11 = new UntypedNullHolder(); if 
(out11 .isSet!= 0) { out10 = out11; } } else { UntypedNullHolder out12 = new 
UntypedNullHolder(); if (out12 .isSet!= 0) { out10 = out12; } } constant13 = 
out10; int[] fieldIds15 = new int[ 1 ] ; fieldIds15 [ 0 ] = 0; Object tmp16 = 
(incoming).getValueAccessorById(VarCharVector.class, 
fieldIds15).getValueVector(); if (tmp16 == null) { throw new 
SchemaChangeException("Failure while loading vector vv14 with id: TypedFieldId 
[fieldIds=[0], remainder=null]."); } vv14 = ((VarCharVector) tmp16); /** start 
SETUP for function convertToNullableVARCHAR **/ { 
GConvertToNullableVarCharHolder_setup: {} } /** end SETUP for function 
convertToNullableVARCHAR **/ int[] fieldIds20 = new int[ 1 ] ; fieldIds20 [ 0 ] 
= 0; Object tmp21 = (outgoing).getValueAccessorById(UntypedNullVector.class, 
fieldIds20).getValueVector(); if (tmp21 == null) { throw new 
SchemaChangeException("Failure while loading vector vv19 with id: TypedFieldId 
[fieldIds=[0], remainder=null]."); } vv19 = ((UntypedNullVector) tmp21); } } 
public void __DRILL_INIT__() throws SchemaChangeException { } } 
org.apache.drill.exec.compile.ClassTransformer.getImplementationClass():330 
org.apache.drill.exec.compile.ClassTransformer.getImplementationClass():223 
org.apache.drill.exec.compile.CodeCompiler$CodeGenCompiler.compile():79 
org.apache.drill.exec.compile.CodeCompiler.makeClass():229 
org.apache.drill.exec.compile.CodeCompiler.access$300():41 
org.apache.drill.exec.compile.CodeCompiler$Loader.load():212 
org.apache.drill.exec.compile.CodeCompiler$Loader.load():209 
org.apache.drill.shaded.guava.com.google.common.cache.LocalCache$LoadingValueReference.loadFuture():3708
 
org.apache.drill.shaded.guava.com.google.common.cache.LocalCache$Segment.loadSync():2416
 
org.apache.drill.shaded.guava.com.google.common.cache.LocalCache$Segment.lockedGetOrLoad():2299
 
org.apache.drill.shaded.guava.com.google.common.cache.LocalCache$Segment.get():2212
 org.apache.drill.shaded.guava.com.google.common.cache.LocalCache.get():4147 
org.apache.drill.shaded.guava.com.google.common.cache.LocalCache.getOrLoad():4151
 
org.apache.drill.shaded.guava.com.google.common.cache.LocalCache$LocalLoadingCache.get():5140
 org.apache.drill.exec.compile.CodeCompiler.createInstances():186 
org.apache.drill.exec.compile.CodeCompiler.createInstance():163 
org.apache.drill.exec.ops.BaseFragmentContext.getImplementationClass():57 
org.apache.drill.exec.physical.impl.project.ProjectRecordBatch.setupNewSchemaFromInput():570
 
org.apache.drill.exec.physical.impl.project.ProjectRecordBatch.setupNewSchema():583
 org.apache.drill.exec.record.AbstractUnaryRecordBatch.innerNext():101 
org.apache.drill.exec.physical.impl.project.ProjectRecordBatch.innerNext():143 
org.apache.drill.exec.record.AbstractRecordBatch.next():186 
org.apache.drill.exec.physical.impl.BaseRootExec.next():104 
org.apache.drill.exec.physical.impl.ScreenCreator$ScreenRoot.innerNext():83 
org.apache.drill.exec.physical.impl.BaseRootExec.next():94 
org.apache.drill.exec.work.fragment.FragmentExecutor$1.run():297 
org.apache.drill.exec.work.fragment.FragmentExecutor$1.run():284 
java.security.AccessController.doPrivileged():-2 
javax.security.auth.Subject.doAs():422 
org.apache.hadoop.security.UserGroupInformation.doAs():1746 
org.apache.drill.exec.work.fragment.FragmentExecutor.run():284 
org.apache.drill.common.SelfCleaningRunnable.run():38 
java.util.concurrent.ThreadPoolExecutor.runWorker():1149 
java.util.concurrent.ThreadPoolExecutor$Worker.run():624 
java.lang.Thread.run():748 Caused By 
(org.codehaus.commons.compiler.CompileException) Line 57, Column 27: Assignment 
conversion not possible from type 
"org.apache.drill.exec.expr.holders.NullableVarCharHolder" to type 
"org.apache.drill.exec.vector.UntypedNullHolder" 
org.codehaus.janino.UnitCompiler.compileError():12211 
org.codehaus.janino.UnitCompiler.assignmentConversion():11062 
org.codehaus.janino.UnitCompiler.compile2():3790 
org.codehaus.janino.UnitCompiler.access$6100():215 
org.codehaus.janino.UnitCompiler$13.visitAssignment():3754 
org.codehaus.janino.UnitCompiler$13.visitAssignment():3734 
org.codehaus.janino.Java$Assignment.accept():4477 
org.codehaus.janino.UnitCompiler.compile():3734 
org.codehaus.janino.UnitCompiler.compile2():2360 
org.codehaus.janino.UnitCompiler.access$1800():215 
org.codehaus.janino.UnitCompiler$6.visitExpressionStatement():1494 
org.codehaus.janino.UnitCompiler$6.visitExpressionStatement():1487 
org.codehaus.janino.Java$ExpressionStatement.accept():2874 
org.codehaus.janino.UnitCompiler.compile():1487 
org.codehaus.janino.UnitCompiler.compileStatements():1567 
org.codehaus.janino.UnitCompiler.compile2():1553 
org.codehaus.janino.UnitCompiler.access$1700():215 
org.codehaus.janino.UnitCompiler$6.visitBlock():1493 
org.codehaus.janino.UnitCompiler$6.visitBlock():1487 
org.codehaus.janino.Java$Block.accept():2779 
org.codehaus.janino.UnitCompiler.compile():1487 
org.codehaus.janino.UnitCompiler.compile2():2476 
org.codehaus.janino.UnitCompiler.access$1900():215 
org.codehaus.janino.UnitCompiler$6.visitIfStatement():1495 
org.codehaus.janino.UnitCompiler$6.visitIfStatement():1487 
org.codehaus.janino.Java$IfStatement.accept():2950 
org.codehaus.janino.UnitCompiler.compile():1487 
org.codehaus.janino.UnitCompiler.compileStatements():1567 
org.codehaus.janino.UnitCompiler.compile2():1553 
org.codehaus.janino.UnitCompiler.access$1700():215 
org.codehaus.janino.UnitCompiler$6.visitBlock():1493 
org.codehaus.janino.UnitCompiler$6.visitBlock():1487 
org.codehaus.janino.Java$Block.accept():2779 
org.codehaus.janino.UnitCompiler.compile():1487 
org.codehaus.janino.UnitCompiler.compile2():2468 
org.codehaus.janino.UnitCompiler.access$1900():215 
org.codehaus.janino.UnitCompiler$6.visitIfStatement():1495 
org.codehaus.janino.UnitCompiler$6.visitIfStatement():1487 
org.codehaus.janino.Java$IfStatement.accept():2950 
org.codehaus.janino.UnitCompiler.compile():1487 
org.codehaus.janino.UnitCompiler.compileStatements():1567 
org.codehaus.janino.UnitCompiler.compile2():1553 
org.codehaus.janino.UnitCompiler.access$1700():215 
org.codehaus.janino.UnitCompiler$6.visitBlock():1493 
org.codehaus.janino.UnitCompiler$6.visitBlock():1487 
org.codehaus.janino.Java$Block.accept():2779 
org.codehaus.janino.UnitCompiler.compile():1487 
org.codehaus.janino.UnitCompiler.compileStatements():1567 
org.codehaus.janino.UnitCompiler.compile():3388 
org.codehaus.janino.UnitCompiler.compileDeclaredMethods():1357 
org.codehaus.janino.UnitCompiler.compileDeclaredMethods():1330 
org.codehaus.janino.UnitCompiler.compile2():822 
org.codehaus.janino.UnitCompiler.compile2():432 
org.codehaus.janino.UnitCompiler.access$400():215 
org.codehaus.janino.UnitCompiler$2.visitPackageMemberClassDeclaration():411 
org.codehaus.janino.UnitCompiler$2.visitPackageMemberClassDeclaration():406 
org.codehaus.janino.Java$PackageMemberClassDeclaration.accept():1414 
org.codehaus.janino.UnitCompiler.compile():406 
org.codehaus.janino.UnitCompiler.compileUnit():378 
org.apache.drill.exec.compile.JaninoClassCompiler.doCompile():77 
org.apache.drill.exec.compile.JaninoClassCompiler.getByteCode():49 
org.apache.drill.exec.compile.AbstractClassCompiler.getClassByteCode():53 
org.apache.drill.exec.compile.ClassCompilerSelector.getClassByteCode():128 
org.apache.drill.exec.compile.QueryClassLoader.getClassByteCode():90 
org.apache.drill.exec.compile.ClassTransformer.getImplementationClass():238 
org.apache.drill.exec.compile.ClassTransformer.getImplementationClass():223 
org.apache.drill.exec.compile.CodeCompiler$CodeGenCompiler.compile():79 
org.apache.drill.exec.compile.CodeCompiler.makeClass():229 
org.apache.drill.exec.compile.CodeCompiler.access$300():41 
org.apache.drill.exec.compile.CodeCompiler$Loader.load():212 
org.apache.drill.exec.compile.CodeCompiler$Loader.load():209 
org.apache.drill.shaded.guava.com.google.common.cache.LocalCache$LoadingValueReference.loadFuture():3708
 
org.apache.drill.shaded.guava.com.google.common.cache.LocalCache$Segment.loadSync():2416
 
org.apache.drill.shaded.guava.com.google.common.cache.LocalCache$Segment.lockedGetOrLoad():2299
 
org.apache.drill.shaded.guava.com.google.common.cache.LocalCache$Segment.get():2212
 org.apache.drill.shaded.guava.com.google.common.cache.LocalCache.get():4147 
org.apache.drill.shaded.guava.com.google.common.cache.LocalCache.getOrLoad():4151
 
org.apache.drill.shaded.guava.com.google.common.cache.LocalCache$LocalLoadingCache.get():5140
 org.apache.drill.exec.compile.CodeCompiler.createInstances():186 
org.apache.drill.exec.compile.CodeCompiler.createInstance():163 
org.apache.drill.exec.ops.BaseFragmentContext.getImplementationClass():57 
org.apache.drill.exec.physical.impl.project.ProjectRecordBatch.setupNewSchemaFromInput():570
 
org.apache.drill.exec.physical.impl.project.ProjectRecordBatch.setupNewSchema():583
 org.apache.drill.exec.record.AbstractUnaryRecordBatch.innerNext():101 
org.apache.drill.exec.physical.impl.project.ProjectRecordBatch.innerNext():143 
org.apache.drill.exec.record.AbstractRecordBatch.next():186 
org.apache.drill.exec.physical.impl.BaseRootExec.next():104 
org.apache.drill.exec.physical.impl.ScreenCreator$ScreenRoot.innerNext():83 
org.apache.drill.exec.physical.impl.BaseRootExec.next():94 
org.apache.drill.exec.work.fragment.FragmentExecutor$1.run():297 
org.apache.drill.exec.work.fragment.FragmentExecutor$1.run():284 
java.security.AccessController.doPrivileged():-2 
javax.security.auth.Subject.doAs():422 
org.apache.hadoop.security.UserGroupInformation.doAs():1746 
org.apache.drill.exec.work.fragment.FragmentExecutor.run():284 
org.apache.drill.common.SelfCleaningRunnable.run():38 
java.util.concurrent.ThreadPoolExecutor.runWorker():1149 
java.util.concurrent.ThreadPoolExecutor$Worker.run():624 
java.lang.Thread.run():748
{noformat}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to