zalando / nakadi

A distributed event bus that implements a RESTful API abstraction on top of Kafka-like queues
https://nakadi.io
MIT License
952 stars 292 forks source link

Do not close producers on specific errors #1536

Closed a1exsh closed 1 year ago

a1exsh commented 1 year ago

Not removing producers means we do not explicitly close them, so we don't need all the locking code around take/terminate/release in KafkaFactory.

Note the change in KafkaTopicRepository::listPartitionNames: use admin client instead of some producer, because we need the up-to-date result, not some cached value. This call is not used in hot path, as the partitions list is storead in the EventTypeCache. Also when invalidating that cache entry we need to fetch an up-to-date value.

a1exsh commented 1 year ago

:+1:

adyach commented 1 year ago

👍