This bug may be fixed after commit: 6fb33afff976e467bfa8e0b29eb82770a2a3aaec

When you start two consumer processes with a regex topic (with 2 or more 
partitions for the matching topics), the second (i.e. nonleader) consumer will 
fail with a null pointer exception.

Exception in thread "StreamThread-4" java.lang.NullPointerException
                at 
org.apache.kafka.streams.processor.internals.RecordQueue.addRawRecords(RecordQueue.java:78)
                at 
org.apache.kafka.streams.processor.internals.PartitionGroup.addRawRecords(PartitionGroup.java:117)
                at 
org.apache.kafka.streams.processor.internals.StreamTask.addRecords(StreamTask.java:139)
                at 
org.apache.kafka.streams.processor.internals.StreamThread.runLoop(StreamThread.java:299)
                at 
org.apache.kafka.streams.processor.internals.StreamThread.run(StreamThread.java:208)

The issue may be in the TopologyBuilder line 832:
String[] topics = (sourceNodeFactory.pattern != null) ? 
sourceNodeFactory.getTopics(subscriptionUpdates.getUpdates()) : 
sourceNodeFactory.getTopics();

Because the 2nd consumer joins as a follower, “getUpdates” returns an empty 
collection and the regular expression doesn’t get applied to any topics.  
Perhaps this is fixed after?: 6fb33afff976e467bfa8e0b29eb82770a2a3aaec

-David



Reply via email to