Optimize the proxy's and client's selection strategy for brokers when sending messages, and use multiple selection strategies as a pipeline to filter suitable queues.
* typo int readme[ecosystem]
* rocksdb metadata
* add unit test
* fix testOffsetPersistInMemory
* fix unit test
* fix unit test
* remove unused import
* move RocksDBOffsetSerialize to broker moudle
* Fix bazel build scripts
Signed-off-by: Li Zhanhui <lizhanhui@gmail.com>
* Flag QueryMsgByKeyIT as flaky as it fails at frequency: 5 out of 32
Signed-off-by: Li Zhanhui <lizhanhui@gmail.com>
* change public to private of some inner method
---------
Signed-off-by: Li Zhanhui <lizhanhui@gmail.com>
Co-authored-by: Li Zhanhui <lizhanhui@gmail.com>
* add new interface for searching offset with boundary type
* format code
* fix failed test
* unify two BoundaryType class
* add interface getOffsetInQueueByTime(long timestamp, BoundaryType boundaryTYpe) in ConsumeQueueInterface
* fix AdminBrokerProcessorTest unnecessary Mockito stubbings
* Refector PopLongPollingService
* Use enum PollingResult to replace int value
* Move PopLongPollingService to upper level
* Move wakeUp and polling method into PopLongPollingService
* NotificationProcessor use PopLongPollingService
* Add BORN_TIME check
* add NotificationIT
* [ISSUE #6414] polish MQClientAPIImpl.getDefaultTopicRouteInfoFromNameServer parameters
* Fix to make Bazel CI pass
Signed-off-by: Li Zhanhui <lizhanhui@gmail.com>
* Fix typo
Signed-off-by: Li Zhanhui <lizhanhui@gmail.com>
---------
Signed-off-by: Li Zhanhui <lizhanhui@gmail.com>
Co-authored-by: Li Zhanhui <lizhanhui@gmail.com>
* refactor(controller): refactor the register logic
1. refactor the register logic
* refactor(controller): remove unused field in ElectMasterEvent
1. remove unused field in ElectMasterEvent
* feat(controller): add a tryElectMaster request and process logic about it
1. add a tryElectMaster request and process logic about it
* feat(controller): refactor ReplicasInfoManagerTest
1. refactor ReplicasInfoManagerTest
* refactor(controller): refactor DLedgerControllerTest
1. refactor DLedgerControllerTest
* refactor(controller): refactor ControllerManagerTest
1. refactor ControllerManagerTest
* refactor(controller): refactor ReplicasInfoManagerTest
1. refactor ReplicasInfoManagerTest
* refactor(controller): refactor register process and pass the junit test
1. refactor ReplicasInfoManagerTest
* style(broker): rename a constant
1. rename a constant
* feat(controller): update the DLedger dependency from v0.27 to v0.30
1. update the DLedger dependency from v0.27 to v0.30
* style(controller): add a white-line just for trigger GitHub action again
1. add a white-line just for trigger GitHub action again
* feat(controller): combine electMaster api and brokerTryElectMaster api
1. combine electMaster api and brokerTryElectMaster api
* feat(controller): add a logic about verifying the broker id returned from registering
1. add a logic about verifying the broker id returned from registering
* fix(controller): remove unused code and add a warning log in ControllerManager
1. remove unused code and add a warning log in ControllerManager
* fix: resolve conflicts
1. resolve conflicts
* fix(controller): remove unused class
1. remove unused class
* fix(controller): Resolve conflicts after merging
1. Resolve conflicts after merging
* refactor(controller): Refactor ReplicasInfoManager#elect
1. Refactor ReplicasInfoManager#elect
* style(controller): remove unused imports
1. remove unused imports
* style(controller): remove unused imports
1. remove unused imports
* fix(controller): resolve conflicts after merging develop branch
1. resolve conflicts after merging develop branch
* rerun
* fix(controller): resolve conflicts in ReplicasInfoManagerTest#testRegisterNewBroker after merging develop branch
1. resolve conflicts in ReplicasInfoManagerTest#testRegisterNewBroker after merging develop branch
* style(controller): pass style check
1. pass style check