In several pipelines using streaming engine and thus the streaming commit rpcs, work became stuck in state COMMITTING indefinitely. Such stuckness coincided with repeated streaming rpc failures.
The status page shows that the key has work in state COMMITTING, and has 1 queued work item.
There is a single active commit stream, with 0 pending requests.
The stream could exist past the stream deadline because the StreamCache only closes stream due to the deadline when a stream is retrieved, which only occurs if there are other commits. Since the pipeline is stuck due to this event, there are no other commits.
It seems therefore there is some race on the commitStream between onNewStream and commitWork that either prevents work from being retried, an exception that triggers between when the pending request is removed and the callback is called, or some potential corruption of the activeWork data structure.