nifi-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Shawn Weeks <swe...@weeksconsulting.us>
Subject Re: CSV Illegal Initial Character
Date Mon, 20 Aug 2018 14:05:36 GMT
That option is ignored if you're deriving the schema from the header. Since in the CSV standard
supports quoting everything then having the header quoted should be supported.


Thanks

Shawn


________________________________
From: Mark Payne <markap14@hotmail.com>
Sent: Saturday, August 18, 2018 6:56 PM
To: users@nifi.apache.org
Subject: Re: CSV Illegal Initial Character

Hey Shawn,

It sounds like you need to set the cvs reader’s “Treat First Line as Header” property
to true. By default it treats the first line as the first record (as opposed to the header),
which looks like the case here.

Sent from my iPhone

On Aug 18, 2018, at 1:30 PM, Shawn Weeks <sweeks@weeksconsulting.us<mailto:sweeks@weeksconsulting.us>>
wrote:


I was building some example NiFi workflows from the CSV files at https://people.sc.fsu.edu/~jburkardt/data/csv/csv.html
specifically nile.csv and it appears that NiFi is trying to include the quoted header with
quotes in the Avro schema it generates. This is an all defaults CSVReader used with a JsonRecordSetWriter
in ConvertRecord. Wondering if this is a bug or expected behavior. I’m using the latest
1.7 binaries from nifi.apache.org<http://nifi.apache.org>.



org.apache.avro.SchemaParseException: Illegal initial character: "Flood"

              at org.apache.avro.Schema.validateName(Schema.java:1147)

              at org.apache.avro.Schema.access$200(Schema.java:81)

              at org.apache.avro.Schema$Field.<init>(Schema.java:403)

              at org.apache.avro.Schema$Field.<init>(Schema.java:423)

              at org.apache.avro.Schema$Field.<init>(Schema.java:415)

              at org.apache.nifi.avro.AvroTypeUtil.buildAvroField(AvroTypeUtil.java:123)

              at org.apache.nifi.avro.AvroTypeUtil.buildAvroSchema(AvroTypeUtil.java:114)

              at org.apache.nifi.avro.AvroTypeUtil.extractAvroSchema(AvroTypeUtil.java:94)

              at org.apache.nifi.schema.access.WriteAvroSchemaAttributeStrategy.getAttributes(WriteAvroSchemaAttributeStrategy.java:58)

              at org.apache.nifi.json.WriteJsonResult.writeRecord(WriteJsonResult.java:137)

              at org.apache.nifi.serialization.AbstractRecordSetWriter.write(AbstractRecordSetWriter.java:59)

              at org.apache.nifi.processors.standard.AbstractRecordProcessor$1.process(AbstractRecordProcessor.java:122)

              at org.apache.nifi.controller.repository.StandardProcessSession.write(StandardProcessSession.java:2885)

              at org.apache.nifi.processors.standard.AbstractRecordProcessor.onTrigger(AbstractRecordProcessor.java:109)

              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)

Mime
View raw message