Uploaded image for project: 'Apache NiFi'
  1. Apache NiFi
  2. NIFI-4967

CSVRecordReader does not read header with specific formats

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 1.5.0
    • 1.6.0
    • Extensions
    • None

    Description

      When using a specific CSV format (example Microsoft Excel) in the CSV reader (with schema defined from header, and Apache Commons CSV parser), the CSV reader is not correctly initialized and the header is null leading to a NPE which is not clearly exposed. Instead the following exception can be seen:

      2018-03-12 23:34:30,427 WARN [Timer-Driven Process Thread-5] o.a.nifi.processors.standard.QueryRecord QueryRecord[id=4428e3a1-cf73-377f-150d-98d404785786] Processor Administratively Yielded for 1 sec due to processing failure
      2018-03-12 23:34:30,427 WARN [Timer-Driven Process Thread-5] o.a.n.c.t.ContinuallyRunProcessorTask Administratively Yielding QueryRecord[id=4428e3a1-cf73-377f-150d-98d404785786] due to uncaught Exception: java.lang.IllegalStateException: StandardFlowFileRecord[uuid=c5f428f0-0fa8-4660-b0df-6974bbd82f47,claim=StandardContentClaim [resourceClaim=StandardResourceClaim[id=1520889888555-181, container=default, section=181], offset=604078, length=37421],offset=0,name=865467214336135,size=37421] already in use for an active callback or an InputStream created by ProcessSession.read(FlowFile) has not been closed
      2018-03-12 23:34:30,427 WARN [Timer-Driven Process Thread-5] o.a.n.c.t.ContinuallyRunProcessorTask
      java.lang.IllegalStateException: StandardFlowFileRecord[uuid=c5f428f0-0fa8-4660-b0df-6974bbd82f47,claim=StandardContentClaim [resourceClaim=StandardResourceClaim[id=1520889888555-181, container=default, section=181], offset=604078, length=37421],offset=0,name=865467214336135,size=37421] already in use for an active callback or an InputStream created by ProcessSession.read(FlowFile) has not been closed
              at org.apache.nifi.controller.repository.StandardProcessSession.validateRecordState(StandardProcessSession.java:3060)
              at org.apache.nifi.controller.repository.StandardProcessSession.validateRecordState(StandardProcessSession.java:3055)
              at org.apache.nifi.controller.repository.StandardProcessSession.transfer(StandardProcessSession.java:1854)
              at org.apache.nifi.processors.standard.QueryRecord.onTrigger(QueryRecord.java:378)
              at org.apache.nifi.processor.AbstractProcessor.onTrigger(AbstractProcessor.java:27)
              at org.apache.nifi.controller.StandardProcessorNode.onTrigger(StandardProcessorNode.java:1123)
              at org.apache.nifi.controller.tasks.ContinuallyRunProcessorTask.call(ContinuallyRunProcessorTask.java:147)
              at org.apache.nifi.controller.tasks.ContinuallyRunProcessorTask.call(ContinuallyRunProcessorTask.java:47)
              at org.apache.nifi.controller.scheduling.TimerDrivenSchedulingAgent$1.run(TimerDrivenSchedulingAgent.java:128)
              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:1142)
              at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
              at java.lang.Thread.run(Thread.java:745)

      Attachments

        Issue Links

          Activity

            People

              pvillard Pierre Villard
              pvillard Pierre Villard
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: