apache / apache/texera

Reassigned input channels remain attached to old ports

Open
#8,227 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

Re-registering an input channel for a different port replaces the channel-to-port mapping but never removes the channel from the previous port's channel set. Port-aligned control messages can then wait for a channel that no longer belongs to that port.

Before: channel moves to a new port -> old port keeps stale membership -> port alignment can wait forever

After: channel moves to a new port -> old membership is discarded -> both mapping directions agree

Expected behavior:

A channel reassigned to another port should be removed from the previous port's channel set.

Reproduction evidence:

Add two input ports, register one channel to the first port, and register the same channel to the second port.

Observed on `70c21145887920528d7d5540e3fb790b43e8b759`:

```text
mapped_port=1
old_port_contains_channel=True
new_port_contains_channel=True
old_port_channel_count=1
```

Version and commit evidence:

1.3.0-incubating-SNAPSHOT (main)

**Commit Hash (Optional)**

`70c21145887920528d7d5540e3fb790b43e8b759`

### Proposed Solution or Design

After: channel moves to a new port -> old membership is discarded -> both mapping directions agree

Expected behavior:

### 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.