apache / apache/texera

Reassigned input channels remain in old port alignment sets

Open
#8,197 1 comment 0 reactions 1 assignee Claimed by @carloea2 View on GitHub
Dominant language
Scala
Stars
314
Forks
187
Avg merge
1d 21h
Merged PRs (30d)
214

Description

### Feature Summary

InputManager updates its channel-to-port mapping when an existing channel is registered on a new input port, but it never removes that channel from the old port's reverse channel set. Port-aligned control messages use those reverse sets, so an old port can continue waiting for a channel that has been reassigned.

Before: the forward mapping points to port 1 while both port 0 and port 1 contain the channel.

After: the channel belongs only to port 1, and the forward and reverse mappings agree.

Reproduction evidence:

1. Add input ports 0 and 1 to an InputManager.
2. Register one data channel on port 0.
3. Register the same channel on port 1.
4. Observe that get_port_id reports port 1.
5. Observe that get_channels on both ports still contains the channel.

Version and commit evidence:

1.3.0-incubating-SNAPSHOT (main)

**Commit Hash (Optional)**
70c21145887920528d7d5540e3fb790b43e8b759

## Relevant log output

forward_port=1
port_a_channels=1
port_b_channels=1
present_in_both=True

### Proposed Solution or Design

After: the channel belongs only to port 1, and the forward and reverse mappings agree.

### Affected Area

Workflow Engine (Amber)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.