apache / apache/texera

Repeated output port registration starts duplicate storage writers

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

OutputManager starts result and state storage writers before checking whether an output port has already been registered. Replaying the same port assignment therefore starts another writer pair and overwrites the tracked registry entries, while the original threads remain untracked by normal close logic.

Before: one registered port produces two storage setup calls when the assignment is repeated.

After: port schema and storage writers are initialized together only on the first registration.

Reproduction evidence:

1. Create an OutputManager.
2. Add output port 0 with a storage URI.
3. Add the same logical port and URI again.
4. Observe that only one port exists.
5. Observe that set_up_port_storage_writer was called twice.

Version and commit evidence:

1.3.0-incubating-SNAPSHOT (main)

**Commit Hash (Optional)**
70c21145887920528d7d5540e3fb790b43e8b759

## Relevant log output

registered_ports=1
storage_setup_calls=2

### Proposed Solution or Design

After: port schema and storage writers are initialized together only on the first registration.

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