Commit graph

23 commits

Author SHA1 Message Date
chrislu ddd0fde094 rename functions 2024-01-05 15:16:01 -08:00
chrislu ee41dbb7fc rename functions 2024-01-05 15:14:25 -08:00
chrislu 47a4963d7a subscription start from specified timestamp 2024-01-03 15:57:36 -08:00
chrislu 35869b5c80 subscriber can be notified of the assignment change when topic is just configured
Next: Subscriber needs to read by the timestamp offset.
2024-01-03 13:30:30 -08:00
chrislu 8b4cd50aac log errors 2024-01-01 19:09:17 -08:00
chrislu 32bc8d6a38 adjust wait time 2023-12-31 17:42:44 -08:00
chrislu 458ddbf919 clean up dead code 2023-12-31 13:25:33 -08:00
chrislu 2845230329 passing broker into the assignments 2023-12-28 21:13:49 -08:00
chrislu 093fdc1621 subscriber can get assignments 2023-12-28 20:35:15 -08:00
chrislu c950a40aad subscriber keep connected to the balancer 2023-12-28 11:56:37 -08:00
Chris Lu 580940bf82
Merge accumulated changes related to message queue (#5098)
* balance partitions on brokers

* prepare topic partition first and then publish, move partition

* purge unused APIs

* clean up

* adjust logs

* add BalanceTopics() grpc API

* configure topic

* configure topic command

* refactor

* repair missing partitions

* sequence of operations to ensure ordering

* proto to close publishers and consumers

* rename file

* topic partition versioned by unixTimeNs

* create local topic partition

* close publishers

* randomize the client name

* wait until no publishers

* logs

* close stop publisher channel

* send last ack

* comments

* comment

* comments

* support list of brokers

* add cli options

* Update .gitignore

* logs

* return io.eof directly

* refactor

* optionally create topic

* refactoring

* detect consumer disconnection

* sub client wait for more messages

* subscribe by time stamp

* rename

* rename to sub_balancer

* rename

* adjust comments

* rename

* fix compilation

* rename

* rename

* SubscriberToSubCoordinator

* sticky rebalance

* go fmt

* add tests

* balance partitions on brokers

* prepare topic partition first and then publish, move partition

* purge unused APIs

* clean up

* adjust logs

* add BalanceTopics() grpc API

* configure topic

* configure topic command

* refactor

* repair missing partitions

* sequence of operations to ensure ordering

* proto to close publishers and consumers

* rename file

* topic partition versioned by unixTimeNs

* create local topic partition

* close publishers

* randomize the client name

* wait until no publishers

* logs

* close stop publisher channel

* send last ack

* comments

* comment

* comments

* support list of brokers

* add cli options

* Update .gitignore

* logs

* return io.eof directly

* refactor

* optionally create topic

* refactoring

* detect consumer disconnection

* sub client wait for more messages

* subscribe by time stamp

* rename

* rename to sub_balancer

* rename

* adjust comments

* rename

* fix compilation

* rename

* rename

* SubscriberToSubCoordinator

* sticky rebalance

* go fmt

* add tests

* tracking topic=>broker

* merge

* comment
2023-12-11 12:05:54 -08:00
chrislu bf13f3ced7 add subscriber coordinator 2023-10-02 01:02:27 -07:00
chrislu 2a578b9033 refactor 2023-10-01 11:59:19 -07:00
chrislu ebd6f96d35 adjust mq.proto 2023-09-30 21:47:57 -07:00
chrislu 411bdda08d fix compilation 2023-09-19 16:22:41 -07:00
chrislu 39941edc0b add publisher shutdown 2023-09-07 23:55:19 -07:00
chrislu 984b6c54cf ack interval 128 2023-09-06 23:15:29 -07:00
chrislu ba67e6ca29 api for sub 2023-09-04 21:43:50 -07:00
chrislu 9e4f985698 publish, benchmark 2023-09-04 21:43:30 -07:00
chrislu cb470d44df can pub and sub 2023-09-01 00:36:51 -07:00
chrislu 1eb2da46d5 connect and publish 2023-08-28 09:02:12 -07:00
chrislu 4d6c18d86f pub sub initial tests 2023-08-27 17:50:59 -07:00
chrislu 1990456670 sub 2023-08-27 13:13:14 -07:00