Brandon DeVries created NIFI-2890:
-------------------------------------
Summary: Provenance Repository corruption
Key: NIFI-2890
URL: https://issues.apache.org/jira/browse/NIFI-2890
Project: Apache NiFi
Issue Type: Bug
Affects Versions: 0.7.0, 1.0.0
Reporter: Brandon DeVries
It looks as thought there was a ticket to address this\[1\], but it appears to
not have completely addressed the issue. On an 0.6.1 instance (that crashed
hard), I'm getting a stack trace on startup indicating a corrupt prov repo. The
relevant part of the stack trace (unfortunately typed by hand, so forgive the
inevitable typos) is:
{quote}
...
Caused By java.lang.IllegalArgumentException: No enum constant
org.apahe.nifi.provenance.ProvenenceEventType.
at java.lang/.Enum.valueOf...
at
org.apache.nifi.provenance.ProvenanaceEventType.valueOf(ProvenanaceEventType.java:19)
at
org.apache.nifi.provenance.StandardRecordReader.nextRecord(StandardRecordReader.java:284)
at
org.apache.nifi.provenance.PersistentProvenanceRepository.mergeJournals(PersistentProvenanceRepository.java:1678)
\[2\]
...
{quote}
In 0.x HEAD, this appears to have moved a bit\[3\]. Same is true for 1.x\[4\].
In both 0.x[\5\] and 1.x[\6\], code was added to check for "bad" records coming
from the reader, and ignore them. However, this appears to only address the
issue if the corrupt / bad record is the *first* record coming out of a reader.
If it is a subsequent record, the corruption remains.
\[1\] https://issues.apache.org/jira/browse/NIFI-803
\[2\]
https://github.com/apache/nifi/blob/rel/nifi-0.6.1/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository/src/main/java/org/apache/nifi/provenance/PersistentProvenanceRepository.java#L1678
\[3\]
https://github.com/apache/nifi/blob/0.x/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository/src/main/java/org/apache/nifi/provenance/PersistentProvenanceRepository.java#L1711
\[4\]
https://github.com/apache/nifi/blob/rel/nifi-0.6.1/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository/src/main/java/org/apache/nifi/provenance/PersistentProvenanceRepository.java#L1678
\[5\]
https://github.com/apache/nifi/blob/0.x/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository/src/main/java/org/apache/nifi/provenance/PersistentProvenanceRepository.java#L1564-L1578
\[6\]
https://github.com/apache/nifi/blob/master/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository/src/main/java/org/apache/nifi/provenance/PersistentProvenanceRepository.java#L1658-L1672
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)