Skip to content

connector_init: demote 'i/o error writing to connector stdin' when the connector has already exited #3354

Description

@jacobmarble

Summary

connector_init::rpc logs i/o error writing to connector stdin at warn when the
runtime writes to a connector that has already exited from a terminal error. It is pure
downstream noise — the write fails because the connector is already gone — but it is
logged at the same level as real problems and competes with the causal error for
attention.

Observed in a materialize-clickhouse task on 2026-08-11: three
occurrences, one per connector exit, each immediately following the connector's own
terminal error. While diagnosing a data-loss bug (estuary/connectors#5044) these were
three of the handful of warn/error lines in the window, and none of them said anything
about what actually went wrong.

Requested

Suppress the message, or demote it to debug, when the connector has already reported a
fatal error or its process has already exited. A failed write to a dead process's stdin is
expected in that situation and carries no diagnostic value.

If the write can also fail for reasons unrelated to the connector having exited, keep
warn for that case and distinguish the two — the point is that the expected case should
not look like a problem.

Context

Filed out of estuary/connectors#5044 (Part 3b), which tracked the log noise encountered
while diagnosing the incident. Related: the more consequential problem in that window was
the connector's terminal error being replaced by a transport error in the shard's failure
status, filed separately.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions