Rob Fellows created NIFI-15654:
----------------------------------
Summary: UI - Connections can completely overlap, causing users to
be unaware that more than one connection is present
Key: NIFI-15654
URL: https://issues.apache.org/jira/browse/NIFI-15654
Project: Apache NiFi
Issue Type: Bug
Components: Core UI
Reporter: Rob Fellows
Assignee: Rob Fellows
There is existing collision avoidance logic to prevent connections from
overlapping completely. However, it is only applied through the Drag-to-create
flow: when a user drags a new connection between two components that already
have a straight-line connection, it adds offset bend points so they don't
overlap.
h3. There are some gaps that still allow this undesired behavior to creep in:
Gap 1: Endpoint Drag (Changing Destination)
In when a user drags a connection's endpoint to a new destination, there is
{*}no collision check{*}. If the new destination already has a straight-line
connection from the same source, the moved connection simply overlaps it.
h3. Gap 2: Edit Connection Dialog (Changing Destination)
Users can change the destination of a connection. No overlap check is performed.
h3. Gap 3: Programmatic/API-Created Connections
Connections created via REST API (POST /process-groups/\{id}/connections)
bypass all UI-side collision logic. The NiFi backend allows multiple
connections between the same source and destination with no bend points.
h3. Gap 4: Removing Bend Points
A user can manually remove bend points from a connection that was initially
offset for collision avoidance, causing it to become a straight line that
overlaps another connection.
h3. Gap 5: Paste Operations
Pasted flow snippets can introduce connections that overlap existing ones since
the paste flow doesn't run collision detection against pre-existing connections.
Gaps 1, 2, 4, and even 5 can be addressed in code. However, Gap 3 is
unavoidable and should not be ignored. In the case where this scenario is
already in a flow or a connection is added via the API, the users should be
alerted in some way to this fact. Be it a banner or badge or something to bring
their attention to the hidden connection issue.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)