chrislu
b1871427c3
persist consumer group offset
...
1. use one follower
2. read write consumer group offset
2024-05-19 00:46:12 -07:00
chrislu
279cb2b85e
consumer acks received messages
2024-05-16 20:28:19 -07:00
chrislu
e568e742c9
renaming
2024-04-01 15:02:52 -07:00
chrislu
4f5c4c3388
refactor
2024-03-24 13:07:51 -07:00
chrislu
d558a58946
refactor
2024-03-24 13:04:59 -07:00
chrislu
205d2285f3
setup follower by publisher
...
* the subscriber would getOrGen a local partition and wait
* the publisher would getOrGen a local partition. If localPartition follower is not setup, and init message has follower info, it would create followers based on init.Messages.
2024-03-24 12:57:09 -07:00
chrislu
516cba7053
remove FollowInMemoryMessages
2024-03-17 22:27:13 -07:00
chrislu
8e5068fd2f
notify
2024-03-16 23:16:33 -07:00
chrislu
44ab42d03c
unnecessary
2024-03-16 17:11:42 -07:00
chrislu
529fa8c4c8
go fmt
2024-03-16 10:51:47 -07:00
chrislu
55714f54ab
local partition is generated or not
2024-03-15 21:08:42 -07:00
chrislu
f653838f34
follower receive a hello message before actual data
...
the leader can ensure the follower has connected
2024-03-15 20:36:01 -07:00
chrislu
6f75a0af55
ask follower to follow
2024-03-10 14:34:28 -07:00
chrislu
28f8f33d6a
include key in LogEntry
2024-03-07 10:53:30 -08:00
chrislu
34f2b600ac
each log function adds a "done" return parameter
2024-03-07 10:50:09 -08:00
chrislu
1b4484bf0a
go fmt
2024-02-29 09:38:52 -08:00
chrislu
a507069d19
lock for creating local partition
2024-01-28 15:55:26 -08:00
chrislu
3ff6b31d94
sub broker wait for partition
2024-01-22 11:56:55 -08:00
chrislu
2beaa2d0b3
pub/sub brokers check filer for assigned partitions
2024-01-22 11:44:21 -08:00
chrislu
c77d35313e
pub/sub broker only check local assigned partitions
2024-01-22 00:49:57 -08:00
chrislu
bc8d2a01cc
create local topic partition from config on filer
2024-01-17 00:15:52 -08:00
chrislu
3795d8dca8
release local topic partition if no publisher and subscribers
2024-01-16 08:43:07 -08:00
chrislu
fa59a5d67e
read from disk if not in memory
2024-01-15 00:20:12 -08:00
chrislu
7afaad31a4
wait on local topic partition creation
2024-01-11 23:08:02 -08:00
chrislu
49428a303b
add batch index for each memory buffer
2024-01-08 00:03:08 -08:00
chrislu
e8611ed85d
subscribe with partition offset
2024-01-05 15:24:14 -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
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
ebd6f96d35
adjust mq.proto
2023-09-30 21:47:57 -07:00
chrislu
c4e6545197
fix compilation
2023-09-30 21:26:09 -07:00
chrislu
ba67e6ca29
api for sub
2023-09-04 21:43:50 -07:00
chrislu
cb470d44df
can pub and sub
2023-09-01 00:36:51 -07:00
chrislu
4d6c18d86f
pub sub initial tests
2023-08-27 17:50:59 -07:00
chrislu
4eb8e8624d
rename
2023-08-27 13:14:39 -07:00