chrislu
d45a372615
add schema.proto
9 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
47975e75bf
purge old code
9 months ago
chrislu
237e68059d
shutdown follower if no clients, not only publishers
to avoid overhead when a publisher repeatedly send one message and close
9 months ago
chrislu
66a878af39
add control message to data message
9 months ago
chrislu
546ae87c39
send is_close message to broker
9 months ago
chrislu
c9df613b6b
add publisher name for debugging
9 months ago
chrislu
ca4f89a6f6
simplify
9 months ago
chrislu
0d55bddc75
logs
9 months ago
chrislu
e3c8be7f89
LocalPartition shutdown
9 months ago
chrislu
ab9fc0ad70
simplify
9 months ago
chrislu
7463058299
change visibility
9 months ago
chrislu
dab5454332
publish and send to follower
9 months ago
chrislu
f249f831b1
MaybeShutdownLocalPartition refactor
9 months ago
chrislu
2a0ab7e90d
fix
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
da31e9b939
correctly wait for the publisher to finish
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
6ef3e6bcad
logging
9 months ago
chrislu
a8b73296d7
fix test3
9 months ago
chrislu
ea2601799c
fix test
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
64a32730a2
add size()
9 months ago
chrislu
6f75a0af55
ask follower to follow
10 months ago
chrislu
e7823ee967
retry connecting to broker leader
10 months ago
chrislu
3b28433cb1
change LogBuffer visibility in LocalPartition
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