You should upgrade to 2.5.1, it contains a fix for this. Technically the "fix" is just to automatically set the num.stream.threads to 0 when a global-only topology is detected, so setting this manually would accomplish the same thing. But the fix also includes a tweak of the KafkaStreams state machine to make sure it reaches the RUNNING state even with no stream threads. So if you use a state listener, you'll want to use 2.5.1
It's always a good idea to upgrade when a new bugfix version is released anyway On Fri, Sep 11, 2020 at 5:15 AM Pushkar Deole <pdeole2...@gmail.com> wrote: > Hi All, > > I upgraded from Kafka streams 2.4 to 2.5.0 and one of the applications > suddenly stopped working with the error message: > > Exception in thread > "DsiApplication-0fcde033-dab2-431c-9d82-76e85fcb4c91-StreamThread-1" > java.lang.IllegalStateException: Consumer is not subscribed to any topics > or assigned any partitions > at > > org.apache.kafka.clients.consumer.KafkaConsumer.poll(KafkaConsumer.java:1228) > at > > org.apache.kafka.clients.consumer.KafkaConsumer.poll(KafkaConsumer.java:1216) > at > > org.apache.kafka.streams.processor.internals.StreamThread.pollRequests(StreamThread.java:853) > at > > org.apache.kafka.streams.processor.internals.StreamThread.runOnce(StreamThread.java:753) > at > > org.apache.kafka.streams.processor.internals.StreamThread.runLoop(StreamThread.java:697) > at > > org.apache.kafka.streams.processor.internals.StreamThread.run(StreamThread.java:670) > > This application uses streams just to create a global state store from a > topic in order to create a global state store as a cache for static data > across application instances and the stream doesn't consume from any input > topic. Came across following thread on stackoverflow > > https://stackoverflow.com/questions/61342530/kafka-streams-2-5-0-requires-input-topic > > Matthias, I see you have answered some queries there, so would like to > confirm if setting num.stream.threads to 0 will solve this issue? >