THIS IS A TEST INSTANCE. ALL YOUR CHANGES WILL BE LOST!!!!
...
- Reads all child nodes in /brokers/ids/ to get current brokers with broker generation
- Detect new brokers, dead brokers and bounced brokers:
- new brokers: brokers exist in current brokers list and do not exist in controller context
- dead brokers: brokers exist in controller context but do not exist in current brokers list
- bounce brokers: brokers exist in both current brokers list and controller context but have higher generation than the cached value in controller context
- Update the broker info (broker id + broker generation) live broker ids in controller context
- Handle broker state change:
- new brokers: update broker generation in controller context for new brokers, then invoke onBrokerStartUp(...new brokers)
- dead brokers: invoke onBrokerFailure(...dead brokers)
- bounced brokers: invoke onBrokerFailure(...bounced brokers) first, then update broker generation in controller context for bounced brokers, finally invoke onBrokerStartUp(...bounced brokers)
Compatibility, Deprecation, and Migration Plan
...