You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@nifi.apache.org by "Prasad Dasari (JIRA)" <ji...@apache.org> on 2019/03/27 22:49:00 UTC

[jira] [Created] (NIFI-6158) FetchParquet : Unable to read parquet data which has decimal data type

Prasad Dasari created NIFI-6158:
-----------------------------------

             Summary: FetchParquet : Unable to read parquet data which has decimal data type
                 Key: NIFI-6158
                 URL: https://issues.apache.org/jira/browse/NIFI-6158
             Project: Apache NiFi
          Issue Type: Bug
          Components: Core Framework
    Affects Versions: 1.9.1
            Reporter: Prasad Dasari


Unable to read parquet data using FetchParquet processor which has decimal datype (decimal(38,10))


Here is the error message 
Cannot convert value [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] of type class org.apache.avro.generic.GenericData$Fixed because no compatible types exist in the UNION for field my_amount

The parquet schema has following data type 
fixed_len_byte_array(16) my_amount (DECIMAL(38,10))

 

Here is the stack trace 

2019-03-27 17:47:02,255 ERROR [Timer-Driven Process Thread-42] o.a.nifi.processors.parquet.FetchParquet FetchParquet[id=c0836062-0169-1000-0000-0000360a45b6] Failed to retrieve content from xxxxxxxxxx for StandardFlowFileRecord[uuid=6b65220b-3f77-460e-a5c4-e5298300a5c2,claim=,offset=0,name=part-00000,size=0] due to org.apache.nifi.serialization.record.util.IllegalTypeConversionException: Cannot convert value [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] of type class org.apache.avro.generic.GenericData$Fixed because no compatible types exist in the UNION for field xxxx; routing to failure: org.apache.nifi.serialization.record.util.IllegalTypeConversionException: Cannot convert value [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] of type class org.apache.avro.generic.GenericData$Fixed because no compatible types exist in the UNION for field xxxx
org.apache.nifi.serialization.record.util.IllegalTypeConversionException: Cannot convert value [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] of type class org.apache.avro.generic.GenericData$Fixed because no compatible types exist in the UNION for field xxxxx
 at org.apache.nifi.avro.AvroTypeUtil.convertUnionFieldValue(AvroTypeUtil.java:793)
 at org.apache.nifi.avro.AvroTypeUtil.normalizeValue(AvroTypeUtil.java:879)
 at org.apache.nifi.avro.AvroTypeUtil.convertAvroRecordToMap(AvroTypeUtil.java:742)
 at org.apache.nifi.avro.AvroTypeUtil.convertAvroRecordToMap(AvroTypeUtil.java:715)
 at org.apache.nifi.processors.parquet.record.AvroParquetHDFSRecordReader.nextRecord(AvroParquetHDFSRecordReader.java:62)
 at org.apache.nifi.processors.hadoop.AbstractFetchHDFSRecord.lambda$null$0(AbstractFetchHDFSRecord.java:198)
 at org.apache.nifi.controller.repository.StandardProcessSession.write(StandardProcessSession.java:2648)
 at org.apache.nifi.processors.hadoop.AbstractFetchHDFSRecord.lambda$onTrigger$1(AbstractFetchHDFSRecord.java:194)
 at java.security.AccessController.doPrivileged(Native Method)
 at javax.security.auth.Subject.doAs(Subject.java:360)
 at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1942)
 at org.apache.nifi.processors.hadoop.AbstractFetchHDFSRecord.onTrigger(AbstractFetchHDFSRecord.java:178)
 at org.apache.nifi.processor.AbstractProcessor.onTrigger(AbstractProcessor.java:27)
 at org.apache.nifi.controller.StandardProcessorNode.onTrigger(StandardProcessorNode.java:1165)
 at org.apache.nifi.controller.tasks.ConnectableTask.invoke(ConnectableTask.java:203)
 at org.apache.nifi.controller.scheduling.TimerDrivenSchedulingAgent$1.run(TimerDrivenSchedulingAgent.java:117)
 at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
 at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
 at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
 at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
 at java.lang.Thread.run(Thread.java:748)

 



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