Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

When encountering MEMBER_ID_REQUIRED exception, the client will use the given member id in the join group response to retry the join, which is expected to be accepted by the broker if id matches. If we encounter UNKNOWN_MEMBER_ID exception with the second join attempt, client handling logic will be the same, which is reseting the generation and ask a new member id from broker by sending anonymous join group request. We also handle the registered member id eviction through session timeout so that the pre-allocation map will not grow indefinitely, although the map size should be trivial since we only store a random generated id.

Effectively speaking, previously we accept anonymous member joining as new member, and now we require one more bounce to justify new member identity.

...