Status
Current state: Under Discussion
Discussion thread: here
JIRA: KAFKA-6520
Please keep the discussion on the mailing list rather than commenting on the wiki (wiki discussions get unwieldy fast).
Motivation
When a Kafka Streams application is started, and then is killed (for example, the docker container is deleted), then the user does not have an easy way of identifying the current state of Kafka Streams. For users who wish to know the status of their application, they would have to use alternative means of performing a health check. This KIP works to resolve this issue by adding a DISCONNECTED state to KafkaStreams#state()
.
Public Interfaces
In Kafka Streams, State.DISCONNECTED
will be added. When something happens in Kafka Streams, such as an unexpected crash or error, KafkaStreams#state()
will return State.DISCONNECTED
.
Proposed Changes
We would query individual StreamThreads for their individual status and update the state accordingly.
Compatibility, Deprecation, and Migration Plan
This would not have any compatibility issues with previous versions. Changers are internalized and since the version of messages are not a concern, no upgrade path should be necessary.