chrislu
53d1d2b78a
save schema when configuring topic
8 months ago
chrislu
ccdd9cd8de
refactor
9 months ago
chrislu
f37c0d0d7a
comment out println
9 months ago
chrislu
d935f70e3c
shutdown follower when leader stops
9 months ago
chrislu
f07875e8e1
send flush message to follower before shutting down logBuffer
9 months ago
chrislu
e568e742c9
renaming
9 months ago
chrislu
66a878af39
add control message to data message
9 months ago
chrislu
c9df613b6b
add publisher name for debugging
9 months ago
chrislu
0d55bddc75
logs
9 months ago
chrislu
ab9fc0ad70
simplify
9 months ago
chrislu
dab5454332
publish and send to follower
9 months ago
chrislu
059a120708
refactor
9 months ago
chrislu
7d87c1d2bb
refactor
9 months ago
chrislu
5cc94a05b9
separate goroutine to send ack to publisher
9 months ago
chrislu
17806cde2a
separate context
If using the same context, the downstream grpc would be cancelled when the parent grpc is cancelled.
9 months ago
chrislu
f67c8309d8
rename
9 months ago
chrislu
d6a066495b
adjust logs
9 months ago
chrislu
1b1b96ea1e
close local partition if no more publishers and subscribers
9 months ago
chrislu
4f5c4c3388
refactor
9 months ago
chrislu
d558a58946
refactor
9 months ago
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.
9 months ago
chrislu
7003ce7425
publisher is able to fully send data and receive acks
still needs to close the pipes cleanly
9 months ago
chrislu
516cba7053
remove FollowInMemoryMessages
9 months ago
chrislu
a8b73296d7
fix test3
9 months ago
chrislu
8e5068fd2f
notify
9 months ago
chrislu
44ab42d03c
unnecessary
9 months ago
chrislu
3f2dd8cc3e
add follower id info
9 months ago
chrislu
529fa8c4c8
go fmt
9 months ago
chrislu
1b5c547cfe
logs
9 months ago
chrislu
55714f54ab
local partition is generated or not
9 months ago
chrislu
549455c30d
streaming mode
9 months ago
chrislu
f653838f34
follower receive a hello message before actual data
the leader can ensure the follower has connected
9 months ago
chrislu
6f75a0af55
ask follower to follow
10 months ago
chrislu
e7823ee967
retry connecting to broker leader
10 months ago
chrislu
28f8f33d6a
include key in LogEntry
10 months ago
chrislu
34f2b600ac
each log function adds a "done" return parameter
10 months ago
chrislu
62397f2371
adjust error
10 months ago
chrislu
7598922b41
assign followers
10 months ago
chrislu
1b4484bf0a
go fmt
10 months ago
Chris Lu
16b4f9d9ab
subscriber find broker leader first
11 months ago
Chris Lu
656b78d1af
proxy to broker leader
11 months ago
Chris Lu
4dc6681833
proxy requests to lock owner
11 months ago
Chris Lu
f9131de43f
fix lock TTL
11 months ago
Chris Lu
0a12301b3d
avoid too large expiration time
11 months ago
chrislu
d41792461c
lock returns host and owner
11 months ago
chrislu
d30150dde1
use a short-lived lock
11 months ago
chrislu
ac50d8a822
re-lock if the lock owner is not found
11 months ago
chrislu
0b2e5ddc7c
wait 3 seconds before shutting down publish client, to wait for all messages to be received
11 months ago
chrislu
a507069d19
lock for creating local partition
11 months ago
chrislu
9e6ea80dff
read existing topic conf
11 months ago