Description
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:
...
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]
...
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 skip 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