Given the following scenario:
- Output port 1 in process group A
- Input port 2 in process group B
- A connection between A and B
- Process group C is versioned and contains A and B
Removing the connection as well as output port 1 and then committing the version creates a flow version that cannot be upgraded to. (Try reverting to an older version, and back to this version). Throwing an IllegalStateException.
I believe this is caused by the order of updates in "StandardProcessGroup.java" where child groups (line 3781) are updated prior to the connections of the group itself (line 3986). This causes the output port to be removed before the connection from it is removed. I haven't tested this but probably removing the input port causes similar issues.