Affects Version/s: 1.5.0
Fix Version/s: None
Component/s: Flow Versioning
Nifi flow version control is inconsistent in tracking actions for Remote Process Groups
Suggested solution: ignore changes to unused remote ports (i.e. ports that have not been switched on in the "Mange remote ports" dialog. This also prevents unrelated input/output ports from affecting a version controlled flow.
See below for list of steps to reproduce, note that it creates an inconsistent state between PG1 and PG2
- start Nifi
- create "group-a" Process Group (call it PG1)
- enter PG1
- add RPG to http://localhost:8080/nifi/ HTTP
- leave PG1
- commit changes to flow control
- add input port "input-a"
- add funnel
- add connection "input-a" to funnel
- start "input-a"
- enter group-a
- refresh remote on RPG
- new port appears when calling "Mange remote ports", no change to version control for PG1
- drag in new PG, import "group-a" (call it PG2)
- immediately PG2 detects local change: "Remote Input Port was added"
- repeat 7-10 to add new Input Port "input-b"
- no change for PG1
- PG2 detects local change: "Remote Input Port was added"
The situation is worse if you attempt to commit changes to PG2
- commit changes to PG2
- refresh canvas, PG1 will detect new version
- update PG1 to new version
- PG1 will immediately detects local changes: "Remote Input Port was added/removed"