[
https://issues.apache.org/jira/browse/NIFI-3678?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Mark Payne updated NIFI-3678:
-----------------------------
Description:
A user from the users list posted that they are seeing the following stack
trace when trying to startup NiFi:
{code}
2017-02-03 16:04:48,588 ERROR [main] o.a.nifi.controller.StandardFlowService
Failed to load flow from cluster due to:
org.apache.nifi.cluster.ConnectionException: Failed to connect node to cluster
due to: java.io.IOExcept
ion: Unable to read Record Schema from stream
org.apache.nifi.cluster.ConnectionException: Failed to connect node to cluster
due to: java.io.IOException: Unable to read Record Schema from stream
at
org.apache.nifi.controller.StandardFlowService.loadFromConnectionResponse(StandardFlowService.java:901)
~[nifi-framework-core-1.1.0.jar:1.1.0]
at
org.apache.nifi.controller.StandardFlowService.load(StandardFlowService.java:493)
~[nifi-framework-core-1.1.0.jar:1.1.0]
at org.apache.nifi.web.server.JettyServer.start(JettyServer.java:770)
[nifi-jetty-1.1.0.jar:1.1.0]
at org.apache.nifi.NiFi.<init>(NiFi.java:156)
[nifi-runtime-1.1.0.jar:1.1.0]
at org.apache.nifi.NiFi.main(NiFi.java:262)
[nifi-runtime-1.1.0.jar:1.1.0]
Caused by: java.io.IOException: Unable to read Record Schema from stream
at
org.apache.nifi.repository.schema.RecordSchema.readFrom(RecordSchema.java:117)
~[nifi-schema-utils-1.1.0.jar:1.1.0]
at
org.apache.nifi.controller.repository.SchemaRepositoryRecordSerde.readHeader(SchemaRepositoryRecordSerde.java:100)
~[nifi-framework-core-1.1.0.jar:1.1.0]
at
org.wali.MinimalLockingWriteAheadLog$Partition.getRecoveryStream(MinimalLockingWriteAheadLog.java:1005)
~[nifi-write-ahead-log-1.1.0.jar:1.1.0]
at
org.wali.MinimalLockingWriteAheadLog$Partition.getNextRecoverableTransactionId(MinimalLockingWriteAheadLog.java:1016)
~[nifi-write-ahead-log-1.1.0.jar:1.1.0]
at
org.wali.MinimalLockingWriteAheadLog.recoverFromEdits(MinimalLockingWriteAheadLog.java:430)
~[nifi-write-ahead-log-1.1.0.jar:1.1.0]
at
org.wali.MinimalLockingWriteAheadLog.recoverRecords(MinimalLockingWriteAheadLog.java:301)
~[nifi-write-ahead-log-1.1.0.jar:1.1.0]
at
org.apache.nifi.controller.repository.WriteAheadFlowFileRepository.loadFlowFiles(WriteAheadFlowFileRepository.java:346)
~[nifi-framework-core-1.1.0.jar:1.1.0]
at
org.apache.nifi.controller.FlowController.initializeFlow(FlowController.java:700)
~[nifi-framework-core-1.1.0.jar:1.1.0]
at
org.apache.nifi.controller.StandardFlowService.loadFromBytes(StandardFlowService.java:701)
~[nifi-framework-core-1.1.0.jar:1.1.0]
at
org.apache.nifi.controller.StandardFlowService.loadFromConnectionResponse(StandardFlowService.java:872)
~[nifi-framework-core-1.1.0.jar:1.1.0]
... 4 common frames omitted
Caused by: java.io.EOFException: null
at java.io.DataInputStream.readFully(DataInputStream.java:197)
~[na:1.8.0_111]
at java.io.DataInputStream.readUTF(DataInputStream.java:609)
~[na:1.8.0_111]
at java.io.DataInputStream.readUTF(DataInputStream.java:564)
~[na:1.8.0_111]
at
org.apache.nifi.repository.schema.RecordSchema.readField(RecordSchema.java:126)
~[nifi-schema-utils-1.1.0.jar:1.1.0]
at
org.apache.nifi.repository.schema.RecordSchema.readField(RecordSchema.java:144)
~[nifi-schema-utils-1.1.0.jar:1.1.0]
at
org.apache.nifi.repository.schema.RecordSchema.readField(RecordSchema.java:144)
~[nifi-schema-utils-1.1.0.jar:1.1.0]
at
org.apache.nifi.repository.schema.RecordSchema.readFrom(RecordSchema.java:111)
~[nifi-schema-utils-1.1.0.jar:1.1.0]
... 13 common frames omitted
{code}
It appears that we do not properly handle Exceptions that are thrown when
reading the header information from a Partition file.
was:
A user from the users list posted that they are seeing the following stack
trace when trying to startup NiFi:
{code}
2017-02-03 16:04:48,588 ERROR [main] o.a.nifi.controller.StandardFlowService
Failed to load flow from cluster due to:
org.apache.nifi.cluster.ConnectionException: Failed to connect node to cluster
due to: java.io.IOExcept
ion: Unable to read Record Schema from stream
org.apache.nifi.cluster.ConnectionException: Failed to connect node to cluster
due to: java.io.IOException: Unable to read Record Schema from stream
at
org.apache.nifi.controller.StandardFlowService.loadFromConnectionResponse(StandardFlowService.java:901)
~[nifi-framework-core-1.1.0.jar:1.1.0]
at
org.apache.nifi.controller.StandardFlowService.load(StandardFlowService.java:493)
~[nifi-framework-core-1.1.0.jar:1.1.0]
at org.apache.nifi.web.server.JettyServer.start(JettyServer.java:770)
[nifi-jetty-1.1.0.jar:1.1.0]
at org.apache.nifi.NiFi.<init>(NiFi.java:156)
[nifi-runtime-1.1.0.jar:1.1.0]
at org.apache.nifi.NiFi.main(NiFi.java:262)
[nifi-runtime-1.1.0.jar:1.1.0]
Caused by: java.io.IOException: Unable to read Record Schema from stream
at
org.apache.nifi.repository.schema.RecordSchema.readFrom(RecordSchema.java:117)
~[nifi-schema-utils-1.1.0.jar:1.1.0]
at
org.apache.nifi.controller.repository.SchemaRepositoryRecordSerde.readHeader(SchemaRepositoryRecordSerde.java:100)
~[nifi-framework-core-1.1.0.jar:1.1.0]
at
org.wali.MinimalLockingWriteAheadLog$Partition.getRecoveryStream(MinimalLockingWriteAheadLog.java:1005)
~[nifi-write-ahead-log-1.1.0.jar:1.1.0]
at
org.wali.MinimalLockingWriteAheadLog$Partition.getNextRecoverableTransactionId(MinimalLockingWriteAheadLog.java:1016)
~[nifi-write-ahead-log-1.1.0.jar:1.1.0]
at
org.wali.MinimalLockingWriteAheadLog.recoverFromEdits(MinimalLockingWriteAheadLog.java:430)
~[nifi-write-ahead-log-1.1.0.jar:1.1.0]
at
org.wali.MinimalLockingWriteAheadLog.recoverRecords(MinimalLockingWriteAheadLog.java:301)
~[nifi-write-ahead-log-1.1.0.jar:1.1.0]
at
org.apache.nifi.controller.repository.WriteAheadFlowFileRepository.loadFlowFiles(WriteAheadFlowFileRepository.java:346)
~[nifi-framework-core-1.1.0.jar:1.1.0]
at
org.apache.nifi.controller.FlowController.initializeFlow(FlowController.java:700)
~[nifi-framework-core-1.1.0.jar:1.1.0]
at
org.apache.nifi.controller.StandardFlowService.loadFromBytes(StandardFlowService.java:701)
~[nifi-framework-core-1.1.0.jar:1.1.0]
at
org.apache.nifi.controller.StandardFlowService.loadFromConnectionResponse(StandardFlowService.java:872)
~[nifi-framework-core-1.1.0.jar:1.1.0]
... 4 common frames omitted
Caused by: java.io.EOFException: null
at java.io.DataInputStream.readFully(DataInputStream.java:197)
~[na:1.8.0_111]
at java.io.DataInputStream.readUTF(DataInputStream.java:609)
~[na:1.8.0_111]
at java.io.DataInputStream.readUTF(DataInputStream.java:564)
~[na:1.8.0_111]
at
org.apache.nifi.repository.schema.RecordSchema.readField(RecordSchema.java:126)
~[nifi-schema-utils-1.1.0.jar:1.1.0]
at
org.apache.nifi.repository.schema.RecordSchema.readField(RecordSchema.java:144)
~[nifi-schema-utils-1.1.0.jar:1.1.0]
at
org.apache.nifi.repository.schema.RecordSchema.readField(RecordSchema.java:144)
~[nifi-schema-utils-1.1.0.jar:1.1.0]
at
org.apache.nifi.repository.schema.RecordSchema.readFrom(RecordSchema.java:111)
~[nifi-schema-utils-1.1.0.jar:1.1.0]
... 13 common frames omitted
{code}
I have seen the same issue when I shutdown NiFi with the disk partition that
the FlowFile Repository is using is filled. On restart, I got the following
stack trace:
{code}
2017-04-06 15:22:49,707 WARN [main] org.apache.nifi.web.server.JettyServer
Failed to start web server... shutting down.
org.apache.nifi.web.NiFiCoreException: Unable to start Flow Controller.
at
org.apache.nifi.web.contextlistener.ApplicationStartupContextListener.contextInitialized(ApplicationStartupContextListener.java:88)
~[na:na]
at
org.eclipse.jetty.server.handler.ContextHandler.callContextInitialized(ContextHandler.java:876)
~[jetty-server-9.4.2.v20170220.jar:9.4.2.v20170220]
at
org.eclipse.jetty.servlet.ServletContextHandler.callContextInitialized(ServletContextHandler.java:532)
~[jetty-servlet-9.4.2.v20170220.jar:9.4.2.v20170220]
at
org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextHandler.java:839)
~[jetty-server-9.4.2.v20170220.jar:9.4.2.v20170220]
at
org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:344)
~[jetty-servlet-9.4.2.v20170220.jar:9.4.2.v20170220]
at
org.eclipse.jetty.webapp.WebAppContext.startWebapp(WebAppContext.java:1480)
~[jetty-webapp-9.4.2.v20170220.jar:9.4.2.v20170220]
at
org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1442)
~[jetty-webapp-9.4.2.v20170220.jar:9.4.2.v20170220]
at
org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:799)
~[jetty-server-9.4.2.v20170220.jar:9.4.2.v20170220]
at
org.eclipse.jetty.servlet.ServletContextHandler.doStart(ServletContextHandler.java:261)
~[jetty-servlet-9.4.2.v20170220.jar:9.4.2.v20170220]
at
org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:540)
~[jetty-webapp-9.4.2.v20170220.jar:9.4.2.v20170220]
at
org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
~[jetty-util-9.4.2.v20170220.jar:9.4.2.v20170220]
at
org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:131)
~[jetty-util-9.4.2.v20170220.jar:9.4.2.v20170220]
at
org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:113)
~[jetty-util-9.4.2.v20170220.jar:9.4.2.v20170220]
at
org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:113)
~[jetty-server-9.4.2.v20170220.jar:9.4.2.v20170220]
at
org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
~[jetty-util-9.4.2.v20170220.jar:9.4.2.v20170220]
at
org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:131)
~[jetty-util-9.4.2.v20170220.jar:9.4.2.v20170220]
at
org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:105)
~[jetty-util-9.4.2.v20170220.jar:9.4.2.v20170220]
at
org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:113)
~[jetty-server-9.4.2.v20170220.jar:9.4.2.v20170220]
at
org.eclipse.jetty.server.handler.gzip.GzipHandler.doStart(GzipHandler.java:290)
~[jetty-server-9.4.2.v20170220.jar:9.4.2.v20170220]
at
org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
~[jetty-util-9.4.2.v20170220.jar:9.4.2.v20170220]
at
org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:131)
~[jetty-util-9.4.2.v20170220.jar:9.4.2.v20170220]
at org.eclipse.jetty.server.Server.start(Server.java:452)
~[jetty-server-9.4.2.v20170220.jar:9.4.2.v20170220]
at
org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:105)
~[jetty-util-9.4.2.v20170220.jar:9.4.2.v20170220]
at
org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:113)
~[jetty-server-9.4.2.v20170220.jar:9.4.2.v20170220]
at org.eclipse.jetty.server.Server.doStart(Server.java:419)
~[jetty-server-9.4.2.v20170220.jar:9.4.2.v20170220]
at
org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
~[jetty-util-9.4.2.v20170220.jar:9.4.2.v20170220]
at org.apache.nifi.web.server.JettyServer.start(JettyServer.java:695)
~[nifi-jetty-1.2.0-SNAPSHOT.jar:1.2.0-SNAPSHOT]
at org.apache.nifi.NiFi.<init>(NiFi.java:157)
[nifi-runtime-1.2.0-SNAPSHOT.jar:1.2.0-SNAPSHOT]
at org.apache.nifi.NiFi.main(NiFi.java:264)
[nifi-runtime-1.2.0-SNAPSHOT.jar:1.2.0-SNAPSHOT]
Caused by: java.io.FileNotFoundException:
/Volumes/FlowFileRepository/partition-0/12.journal (No space left on device)
at java.io.FileOutputStream.open0(Native Method) ~[na:1.8.0_60]
at java.io.FileOutputStream.open(FileOutputStream.java:270)
~[na:1.8.0_60]
at java.io.FileOutputStream.<init>(FileOutputStream.java:213)
~[na:1.8.0_60]
at java.io.FileOutputStream.<init>(FileOutputStream.java:162)
~[na:1.8.0_60]
at
org.wali.MinimalLockingWriteAheadLog$Partition.endRecovery(MinimalLockingWriteAheadLog.java:1040)
~[nifi-write-ahead-log-1.2.0-SNAPSHOT.jar:1.2.0-SNAPSHOT]
at
org.wali.MinimalLockingWriteAheadLog.recoverFromEdits(MinimalLockingWriteAheadLog.java:487)
~[nifi-write-ahead-log-1.2.0-SNAPSHOT.jar:1.2.0-SNAPSHOT]
at
org.wali.MinimalLockingWriteAheadLog.recoverRecords(MinimalLockingWriteAheadLog.java:301)
~[nifi-write-ahead-log-1.2.0-SNAPSHOT.jar:1.2.0-SNAPSHOT]
at
org.apache.nifi.controller.repository.WriteAheadFlowFileRepository.loadFlowFiles(WriteAheadFlowFileRepository.java:381)
~[nifi-framework-core-1.2.0-SNAPSHOT.jar:1.2.0-SNAPSHOT]
at
org.apache.nifi.controller.FlowController.initializeFlow(FlowController.java:712)
~[nifi-framework-core-1.2.0-SNAPSHOT.jar:1.2.0-SNAPSHOT]
at
org.apache.nifi.controller.StandardFlowService.initializeController(StandardFlowService.java:953)
~[nifi-framework-core-1.2.0-SNAPSHOT.jar:1.2.0-SNAPSHOT]
at
org.apache.nifi.controller.StandardFlowService.load(StandardFlowService.java:534)
~[nifi-framework-core-1.2.0-SNAPSHOT.jar:1.2.0-SNAPSHOT]
at
org.apache.nifi.web.contextlistener.ApplicationStartupContextListener.contextInitialized(ApplicationStartupContextListener.java:72)
~[na:na]
... 28 common frames omitted
{code}
> NiFi may fail to startup if shutdown while FlowFile Repository partition is
> full
> --------------------------------------------------------------------------------
>
> Key: NIFI-3678
> URL: https://issues.apache.org/jira/browse/NIFI-3678
> Project: Apache NiFi
> Issue Type: Bug
> Components: Core Framework
> Reporter: Mark Payne
> Assignee: Mark Payne
>
> A user from the users list posted that they are seeing the following stack
> trace when trying to startup NiFi:
> {code}
> 2017-02-03 16:04:48,588 ERROR [main] o.a.nifi.controller.StandardFlowService
> Failed to load flow from cluster due to:
> org.apache.nifi.cluster.ConnectionException: Failed to connect node to
> cluster due to: java.io.IOExcept
> ion: Unable to read Record Schema from stream
> org.apache.nifi.cluster.ConnectionException: Failed to connect node to
> cluster due to: java.io.IOException: Unable to read Record Schema from stream
> at
> org.apache.nifi.controller.StandardFlowService.loadFromConnectionResponse(StandardFlowService.java:901)
> ~[nifi-framework-core-1.1.0.jar:1.1.0]
> at
> org.apache.nifi.controller.StandardFlowService.load(StandardFlowService.java:493)
> ~[nifi-framework-core-1.1.0.jar:1.1.0]
> at org.apache.nifi.web.server.JettyServer.start(JettyServer.java:770)
> [nifi-jetty-1.1.0.jar:1.1.0]
> at org.apache.nifi.NiFi.<init>(NiFi.java:156)
> [nifi-runtime-1.1.0.jar:1.1.0]
> at org.apache.nifi.NiFi.main(NiFi.java:262)
> [nifi-runtime-1.1.0.jar:1.1.0]
> Caused by: java.io.IOException: Unable to read Record Schema from stream
> at
> org.apache.nifi.repository.schema.RecordSchema.readFrom(RecordSchema.java:117)
> ~[nifi-schema-utils-1.1.0.jar:1.1.0]
> at
> org.apache.nifi.controller.repository.SchemaRepositoryRecordSerde.readHeader(SchemaRepositoryRecordSerde.java:100)
> ~[nifi-framework-core-1.1.0.jar:1.1.0]
> at
> org.wali.MinimalLockingWriteAheadLog$Partition.getRecoveryStream(MinimalLockingWriteAheadLog.java:1005)
> ~[nifi-write-ahead-log-1.1.0.jar:1.1.0]
> at
> org.wali.MinimalLockingWriteAheadLog$Partition.getNextRecoverableTransactionId(MinimalLockingWriteAheadLog.java:1016)
> ~[nifi-write-ahead-log-1.1.0.jar:1.1.0]
> at
> org.wali.MinimalLockingWriteAheadLog.recoverFromEdits(MinimalLockingWriteAheadLog.java:430)
> ~[nifi-write-ahead-log-1.1.0.jar:1.1.0]
> at
> org.wali.MinimalLockingWriteAheadLog.recoverRecords(MinimalLockingWriteAheadLog.java:301)
> ~[nifi-write-ahead-log-1.1.0.jar:1.1.0]
> at
> org.apache.nifi.controller.repository.WriteAheadFlowFileRepository.loadFlowFiles(WriteAheadFlowFileRepository.java:346)
> ~[nifi-framework-core-1.1.0.jar:1.1.0]
> at
> org.apache.nifi.controller.FlowController.initializeFlow(FlowController.java:700)
> ~[nifi-framework-core-1.1.0.jar:1.1.0]
> at
> org.apache.nifi.controller.StandardFlowService.loadFromBytes(StandardFlowService.java:701)
> ~[nifi-framework-core-1.1.0.jar:1.1.0]
> at
> org.apache.nifi.controller.StandardFlowService.loadFromConnectionResponse(StandardFlowService.java:872)
> ~[nifi-framework-core-1.1.0.jar:1.1.0]
> ... 4 common frames omitted
> Caused by: java.io.EOFException: null
> at java.io.DataInputStream.readFully(DataInputStream.java:197)
> ~[na:1.8.0_111]
> at java.io.DataInputStream.readUTF(DataInputStream.java:609)
> ~[na:1.8.0_111]
> at java.io.DataInputStream.readUTF(DataInputStream.java:564)
> ~[na:1.8.0_111]
> at
> org.apache.nifi.repository.schema.RecordSchema.readField(RecordSchema.java:126)
> ~[nifi-schema-utils-1.1.0.jar:1.1.0]
> at
> org.apache.nifi.repository.schema.RecordSchema.readField(RecordSchema.java:144)
> ~[nifi-schema-utils-1.1.0.jar:1.1.0]
> at
> org.apache.nifi.repository.schema.RecordSchema.readField(RecordSchema.java:144)
> ~[nifi-schema-utils-1.1.0.jar:1.1.0]
> at
> org.apache.nifi.repository.schema.RecordSchema.readFrom(RecordSchema.java:111)
> ~[nifi-schema-utils-1.1.0.jar:1.1.0]
> ... 13 common frames omitted
> {code}
> It appears that we do not properly handle Exceptions that are thrown when
> reading the header information from a Partition file.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)