[
https://issues.apache.org/jira/browse/NIFI-6851?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17030129#comment-17030129
]
Nissim Shiman commented on NIFI-6851:
-------------------------------------
Regarding [~joewitt] 's question:
"would provenance events generated by an older nifi version be read by this
one? And would provenance events written by this one be readable by an older
nifi? [in case someone rolls back]"
The answer is yes to both. Both have scenarios have been tested with both java
8 and java 11.
Test 1 was a follows:
Create simple graph on apache nifi 1.10.0
GetFile -> UpdateAttribute
run a few times.
Check Data Provenance
then using nifi compiled from the new/NIFI-6851 version of apache nifi
move over flow.xml.gz as well as the content_repository, database_repository,
flowfile_repository, provenance_repository from 1.10.0 version to this
new/NIFI-6851 nifi version
start up nifi
the Data Provenance looks exactly as it did before (and is searchable, actions
can be replayed etc)
Test 2 was as follows:
Create simple graph with this code (i.e. NIFI-6851) included in the build.
GetFile -> UpdateAttribute
run a few times.
Check Data Provenance
then using an older version of nifi (in my case, I did 1.10.0)
move over flow.xml.gz as well as the content_repository, database_repository,
flowfile_repository, provenance_repository from the new/NIFI-6851 version to
this older version
start up nifi
the Data Provenance looks exactly as it did before (and is searchable, actions
can be replayed etc)
> Improve Provenance RECEIVE and FETCH events to allow for specifics on how
> flowfile was RECEIVE'ed/FETCH'ed
> ----------------------------------------------------------------------------------------------------------
>
> Key: NIFI-6851
> URL: https://issues.apache.org/jira/browse/NIFI-6851
> Project: Apache NiFi
> Issue Type: Improvement
> Components: Core Framework
> Affects Versions: 1.10.0
> Reporter: Nissim Shiman
> Assignee: Michael Hogue
> Priority: Major
> Time Spent: 2h 50m
> Remaining Estimate: 0h
>
> Currently there is no way to know if a Provenance RECEIVE or FETCH event is
> the result of an active (i.e. GetFTP, FetchFTP, GetHTTP), passive (i.e.
> ListenHTTP) or query (i.e. GetMongo) event.
> There was a discussion on the dev mailing lists regarding the most graceful
> way to do this [1] [2],
>
> At this time the smoothest path forward is to keep the current method
> signatures of receive() and fetch() as is in ProvenanceReporter.java [3]
> and to add new fetch() and receive()'s with a new parameter:
> receive(...,ACTIVE|PASSIVE|QUERY)
> If not specified it would be UNSPECIFIED.
> (Thank You [~joewitt] for this solution)
>
>
> [1] [https://mail-archives.apache.org/mod_mbox/nifi-dev/201910.mbox/browser]
> , topic of PULL ProvenanceEvent
> [2] [https://mail-archives.apache.org/mod_mbox/nifi-dev/201911.mbox/browser]
> , topic of Re: PULL ProvenanceEvent
> [3]
> [https://github.com/apache/nifi/blob/master/nifi-api/src/main/java/org/apache/nifi/provenance/ProvenanceReporter.java]
--
This message was sent by Atlassian Jira
(v8.3.4#803005)