After upgrading kafka-clients to 2.1.1 following trace records are observed:
25 Mar 2019 03:37:02.417-0700 [14708] WARN #splapptrc,J[13],P[95],KafkaStream0 M[CrKafkaConsumerGroupClient.java:com.ibm.streamsx.kafka.clients.consumer.CrKafkaConsumerGroupClient.onPartitionsAssigned:736] - onPartitionsAssigned() [POLLING_THROTTLED]: unexpected state for onPartitionsAssigned()
25 Mar 2019 03:38:56.949-0700 [16692] WARN #splapptrc,J[13],P[95],KafkaStream0 M[CrKafkaConsumerGroupClient.java:com.ibm.streamsx.kafka.clients.consumer.CrKafkaConsumerGroupClient.onPartitionsAssigned:736] - onPartitionsAssigned() [POLLING_STOPPED]: unexpected state for onPartitionsAssigned()
The effect of this is that the consumer is not seeked to the offset from the checkpoint after reset of the consistent region. The tuples are not replayed.
The reason is a different behavior of the KafkaConsumer (part of the client) compared with the old kafka client. Group rebalancing is not blocking any more. The callbacks onPartitionsRevoked and onPartitionsAssigned can now be called back during different user invocations of consumer.poll().
After upgrading kafka-clients to 2.1.1 following trace records are observed:
The effect of this is that the consumer is not seeked to the offset from the checkpoint after reset of the consistent region. The tuples are not replayed.
The reason is a different behavior of the KafkaConsumer (part of the client) compared with the old kafka client. Group rebalancing is not blocking any more. The callbacks
onPartitionsRevoked
andonPartitionsAssigned
can now be called back during different user invocations ofconsumer.poll()
.