Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Handle ERR_REPLICA_NOT_AVAILABLE, etc. #2955

Closed
edenhill opened this issue Jul 1, 2020 · 0 comments
Closed

Handle ERR_REPLICA_NOT_AVAILABLE, etc. #2955

edenhill opened this issue Jul 1, 2020 · 0 comments
Milestone

Comments

@edenhill
Copy link
Contributor

edenhill commented Jul 1, 2020

When partitions are reassigned to different brokers there's a time window where the old leader is no longer a replica of the partition but the client has not yet updated its metadata to find the new leader. In these circumstances the client should refresh its metadata to obtain the new leader.

This applies to:

  • ProduceRequest (mark leader as unavailable, refresh metadata, and schedule retry)
  • FetchRequest (mark leader as unavailable, refresh metadata, and back off next fetch)
  • ListOffsets (refresh metadata, retry)

We'll handle ERR_KAFKA_STORAGE_ERROR the same way.

@edenhill edenhill added this to the v1.5.0 milestone Jul 1, 2020
edenhill added a commit that referenced this issue Jul 1, 2020
And somewhat improved handling of partition errors on OffsetResponse.
edenhill added a commit that referenced this issue Jul 1, 2020
And somewhat improved handling of partition errors on OffsetResponse.
edenhill added a commit that referenced this issue Jul 2, 2020
And somewhat improved handling of partition errors on OffsetResponse.
edenhill added a commit that referenced this issue Jul 2, 2020
And somewhat improved handling of partition errors on OffsetResponse.
@edenhill edenhill closed this as completed Jul 6, 2020
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant