Exception in creating stream consumer puts segments into ERROR state
Open
- Dominant language
- Java
- Stars
- 6.1k
- Forks
- 1.5k
- Avg merge
- 2d 55m
- Merged PRs (30d)
- 182
Description
We recently encountered a situation:
1) When starting a new consuming segment, we try to create the stream consumer. This is in LLRealtimeSegmentDataManager constructor, the call to makeStreamConsumer
2) If we encounter an exception in makeStreamConsumer, the entire state transition fails
3) The segment goes into ERROR state.
Only ways to recover:
1) Restart
We should be able to gracefully recover from this. Some solutions:
1) Catch this as a transient exception, and call handleTransientException. This method will retry creating streamConsumer after a 1s sleep. The retry will happen 5 times.
cc: @mcvsubbu
Contributor guide
Assessment
This issue has not been assessed yet.