[
https://issues.apache.org/jira/browse/DRILL-5269?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16157394#comment-16157394
]
ASF GitHub Bot commented on DRILL-5269:
---------------------------------------
Github user amansinha100 commented on a diff in the pull request:
https://github.com/apache/drill/pull/926#discussion_r137619550
--- Diff:
exec/java-exec/src/main/java/org/apache/drill/exec/store/RecordReader.java ---
@@ -26,6 +26,9 @@
import org.apache.drill.exec.record.MaterializedField;
import org.apache.drill.exec.vector.ValueVector;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+
+@JsonTypeInfo(use=JsonTypeInfo.Id.NAME,
include=JsonTypeInfo.As.WRAPPER_OBJECT, property="type")
--- End diff --
I am not a Jackson expert; since this annotation is in the core
RecordReader interface, what impact does it have on all the implementers of
this interface ?
> SYSTEM ERROR: JsonMappingException: No suitable constructor found for type
> [simple type, class org.apache.drill.exec.store.direct.DirectSubScan]
> ------------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: DRILL-5269
> URL: https://issues.apache.org/jira/browse/DRILL-5269
> Project: Apache Drill
> Issue Type: Bug
> Affects Versions: 1.9.0
> Reporter: Anas
> Assignee: Vlad Rozov
> Priority: Critical
> Attachments: tc_sm_parquet.tar.gz
>
>
> I am a query that has nested joins. The query fails with the following
> exception.
> {code}
> SYSTEM ERROR: JsonMappingException: No suitable constructor found for type
> [simple type, class org.apache.drill.exec.store.direct.DirectSubScan]: can
> not instantiate from JSON object (missing default constructor or creator, or
> perhaps need to add/enable type information?)
> at [Source: {
> "pop" : "broadcast-sender",
> "@id" : 0,
> "receiver-major-fragment" : 1,
> "child" : {
> "pop" : "selection-vector-remover",
> "@id" : 1,
> "child" : {
> "pop" : "filter",
> "@id" : 2,
> "child" : {
> "pop" : "project",
> "@id" : 3,
> "exprs" : [ {
> "ref" : "`__measure__10`",
> "expr" : "`count`"
> } ],
> "child" : {
> "pop" : "DirectSubScan",
> "@id" : 4,
> "initialAllocation" : 1000000,
> "maxAllocation" : 10000000000,
> "reader" : [ {
> "count" : 633
> } ],
> "cost" : 0.0
> },
> "initialAllocation" : 1000000,
> "maxAllocation" : 10000000000,
> "cost" : 20.0
> },
> "expr" : "greater_than(`__measure__10`, 0) ",
> "initialAllocation" : 1000000,
> "maxAllocation" : 10000000000,
> "cost" : 10.0
> },
> "initialAllocation" : 1000000,
> "maxAllocation" : 10000000000,
> "cost" : 10.0
> },
> "destinations" : [ {
> "minorFragmentId" : 0,
> "endpoint" : "Cg0xOTIuMTY4LjAuMTAwEKLyARij8gEgpPIB"
> }, {
> "minorFragmentId" : 1,
> "endpoint" : "Cg0xOTIuMTY4LjAuMTAwEKLyARij8gEgpPIB"
> } ],
> "initialAllocation" : 1000000,
> "maxAllocation" : 10000000000,
> "cost" : 10.0
> }; line: 20, column: 11] (through reference chain:
> org.apache.drill.exec.physical.config.BroadcastSender["child"]->org.apache.drill.exec.physical.config.SelectionVectorRemover["child"]->org.apache.drill.exec.physical.config.Filter["child"]->org.apache.drill.exec.physical.config.Project["child"])
> Fragment 3:0
> [Error Id: 9fb4ef4a-f118-4625-94f5-56c96dc7bdb4 on 192.168.0.100:31010]
> (com.fasterxml.jackson.databind.JsonMappingException) No suitable
> constructor found for type [simple type, class
> org.apache.drill.exec.store.direct.DirectSubScan]: can not instantiate from
> JSON object (missing default constructor or creator, or perhaps need to
> add/enable type information?)
> at [Source: {
> "pop" : "broadcast-sender",
> "@id" : 0,
> "receiver-major-fragment" : 1,
> "child" : {
> "pop" : "selection-vector-remover",
> "@id" : 1,
> "child" : {
> "pop" : "filter",
> "@id" : 2,
> "child" : {
> "pop" : "project",
> "@id" : 3,
> "exprs" : [ {
> "ref" : "`__measure__10`",
> "expr" : "`count`"
> } ],
> "child" : {
> "pop" : "DirectSubScan",
> "@id" : 4,
> "initialAllocation" : 1000000,
> "maxAllocation" : 10000000000,
> "reader" : [ {
> "count" : 633
> } ],
> "cost" : 0.0
> },
> "initialAllocation" : 1000000,
> "maxAllocation" : 10000000000,
> "cost" : 20.0
> },
> "expr" : "greater_than(`__measure__10`, 0) ",
> "initialAllocation" : 1000000,
> "maxAllocation" : 10000000000,
> "cost" : 10.0
> },
> "initialAllocation" : 1000000,
> "maxAllocation" : 10000000000,
> "cost" : 10.0
> },
> "destinations" : [ {
> "minorFragmentId" : 0,
> "endpoint" : "Cg0xOTIuMTY4LjAuMTAwEKLyARij8gEgpPIB"
> }, {
> "minorFragmentId" : 1,
> "endpoint" : "Cg0xOTIuMTY4LjAuMTAwEKLyARij8gEgpPIB"
> } ],
> "initialAllocation" : 1000000,
> "maxAllocation" : 10000000000,
> "cost" : 10.0
> }; line: 20, column: 11] (through reference chain:
> org.apache.drill.exec.physical.config.BroadcastSender["child"]->org.apache.drill.exec.physical.config.SelectionVectorRemover["child"]->org.apache.drill.exec.physical.config.Filter["child"]->org.apache.drill.exec.physical.config.Project["child"])
> com.fasterxml.jackson.databind.JsonMappingException.from():216
>
> com.fasterxml.jackson.databind.deser.BeanDeserializerBase.deserializeFromObjectUsingNonDefault():1130
>
> com.fasterxml.jackson.databind.deser.BeanDeserializer.deserializeFromObject():298
>
> com.fasterxml.jackson.databind.deser.BeanDeserializerBase.deserializeWithObjectId():1094
>
> com.fasterxml.jackson.databind.deser.BeanDeserializer._deserializeOther():166
> com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize():135
>
> com.fasterxml.jackson.databind.jsontype.impl.AsPropertyTypeDeserializer._deserializeTypedForId():120
>
> com.fasterxml.jackson.databind.jsontype.impl.AsPropertyTypeDeserializer.deserializeTypedFromObject():91
>
> com.fasterxml.jackson.databind.deser.AbstractDeserializer.deserializeWithType():142
>
> com.fasterxml.jackson.databind.deser.SettableBeanProperty.deserialize():488
>
> com.fasterxml.jackson.databind.deser.BeanDeserializer._deserializeWithErrorWrapping():465
>
> com.fasterxml.jackson.databind.deser.BeanDeserializer._deserializeUsingPropertyBased():380
>
> com.fasterxml.jackson.databind.deser.BeanDeserializerBase.deserializeFromObjectUsingNonDefault():1123
>
> com.fasterxml.jackson.databind.deser.BeanDeserializer.deserializeFromObject():298
>
> com.fasterxml.jackson.databind.deser.BeanDeserializerBase.deserializeWithObjectId():1094
>
> com.fasterxml.jackson.databind.deser.BeanDeserializer._deserializeOther():166
> com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize():135
>
> com.fasterxml.jackson.databind.jsontype.impl.AsPropertyTypeDeserializer._deserializeTypedForId():120
>
> com.fasterxml.jackson.databind.jsontype.impl.AsPropertyTypeDeserializer.deserializeTypedFromObject():91
>
> com.fasterxml.jackson.databind.deser.AbstractDeserializer.deserializeWithType():142
>
> com.fasterxml.jackson.databind.deser.SettableBeanProperty.deserialize():488
>
> com.fasterxml.jackson.databind.deser.BeanDeserializer._deserializeWithErrorWrapping():465
>
> com.fasterxml.jackson.databind.deser.BeanDeserializer._deserializeUsingPropertyBased():380
>
> com.fasterxml.jackson.databind.deser.BeanDeserializerBase.deserializeFromObjectUsingNonDefault():1123
>
> com.fasterxml.jackson.databind.deser.BeanDeserializer.deserializeFromObject():298
>
> com.fasterxml.jackson.databind.deser.BeanDeserializerBase.deserializeWithObjectId():1094
>
> com.fasterxml.jackson.databind.deser.BeanDeserializer._deserializeOther():166
> com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize():135
>
> com.fasterxml.jackson.databind.jsontype.impl.AsPropertyTypeDeserializer._deserializeTypedForId():120
>
> com.fasterxml.jackson.databind.jsontype.impl.AsPropertyTypeDeserializer.deserializeTypedFromObject():91
>
> com.fasterxml.jackson.databind.deser.AbstractDeserializer.deserializeWithType():142
>
> com.fasterxml.jackson.databind.deser.SettableBeanProperty.deserialize():488
>
> com.fasterxml.jackson.databind.deser.BeanDeserializer._deserializeWithErrorWrapping():465
>
> com.fasterxml.jackson.databind.deser.BeanDeserializer._deserializeUsingPropertyBased():380
>
> com.fasterxml.jackson.databind.deser.BeanDeserializerBase.deserializeFromObjectUsingNonDefault():1123
>
> com.fasterxml.jackson.databind.deser.BeanDeserializer.deserializeFromObject():298
>
> com.fasterxml.jackson.databind.deser.BeanDeserializerBase.deserializeWithObjectId():1094
>
> com.fasterxml.jackson.databind.deser.BeanDeserializer._deserializeOther():166
> com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize():135
>
> com.fasterxml.jackson.databind.jsontype.impl.AsPropertyTypeDeserializer._deserializeTypedForId():120
>
> com.fasterxml.jackson.databind.jsontype.impl.AsPropertyTypeDeserializer.deserializeTypedFromObject():91
>
> com.fasterxml.jackson.databind.deser.AbstractDeserializer.deserializeWithType():142
>
> com.fasterxml.jackson.databind.deser.SettableBeanProperty.deserialize():488
>
> com.fasterxml.jackson.databind.deser.BeanDeserializer._deserializeWithErrorWrapping():465
>
> com.fasterxml.jackson.databind.deser.BeanDeserializer._deserializeUsingPropertyBased():380
>
> com.fasterxml.jackson.databind.deser.BeanDeserializerBase.deserializeFromObjectUsingNonDefault():1123
>
> com.fasterxml.jackson.databind.deser.BeanDeserializer.deserializeFromObject():298
>
> com.fasterxml.jackson.databind.deser.BeanDeserializerBase.deserializeWithObjectId():1094
>
> com.fasterxml.jackson.databind.deser.BeanDeserializer._deserializeOther():166
> com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize():135
>
> com.fasterxml.jackson.databind.jsontype.impl.AsPropertyTypeDeserializer._deserializeTypedForId():120
>
> com.fasterxml.jackson.databind.jsontype.impl.AsPropertyTypeDeserializer.deserializeTypedFromObject():91
>
> com.fasterxml.jackson.databind.deser.AbstractDeserializer.deserializeWithType():142
>
> com.fasterxml.jackson.databind.deser.impl.TypeWrappedDeserializer.deserialize():42
> com.fasterxml.jackson.databind.ObjectReader._bindAndClose():1575
> com.fasterxml.jackson.databind.ObjectReader.readValue():1200
> org.apache.drill.exec.planner.PhysicalPlanReader.readFragmentOperator():94
> org.apache.drill.exec.work.fragment.FragmentExecutor.run():203
> org.apache.drill.common.SelfCleaningRunnable.run():38
> java.util.concurrent.ThreadPoolExecutor.runWorker():1142
> java.util.concurrent.ThreadPoolExecutor$Worker.run():617
> java.lang.Thread.run():745
> {code}
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)