Closed vigith closed 6 months ago
@yhl25 - be aware we need to have a different sock file and server-info file for the fallback container.
@yhl25 - be aware we need to have a different sock file and server-info file for the fallback container.
We can populate a builtin ENV for all the UD containers to indicate the container type.
Problem
DLQ is already available out-of-the-box in Numaflow (using conditional forwarding) except for the Sink vertex. In the Sink vertex, the user must "manually" write to a DLQ if the Sink is down; otherwise, the backpressure caused will back-propagate and stop reading from the source. This is a significant concern when users have multiple Sinks where they expect writes to happen even if there is a failing Sink (else a failing Sink can cause the entire pipeline to stall).
Approaches
Multiple Container for fallback
e.g.,
Conditional Forwarding at Sink level
DLQ is unavailable only in the Sink because it is a terminal state, and no forwarding happens after the Sink. We could extend the conditional-forwarding and let a Sink forward to another Sink.
Use Cases
Message from the maintainers:
If you wish to see this enhancement implemented please add a 👍 reaction to this issue! We often sort issues this way to know what to prioritize.