aboutsummaryrefslogtreecommitdiff
path: root/weed/mq/topic
AgeCommit message (Collapse)AuthorFilesLines
2024-08-11adds lockingchrislu2-4/+15
2024-08-10refactorchrislu2-4/+7
2024-05-20Merge branch 'master' into mqchrislu1-8/+8
2024-05-20go fmtchrislu1-8/+8
2024-05-19persist consumer group offsetchrislu2-12/+13
1. use one follower 2. read write consumer group offset
2024-05-17renamechrislu1-12/+12
2024-05-14subscriber receives partitions and dispatch to processorschrislu1-0/+10
2024-04-02refactorchrislu1-1/+1
2024-04-02comment out printlnchrislu1-4/+4
2024-04-01send flush message to follower before shutting down logBufferchrislu1-1/+19
2024-04-01renamingchrislu1-5/+5
2024-03-31purge old codechrislu1-2/+0
2024-03-31shutdown follower if no clients, not only publisherschrislu1-3/+1
to avoid overhead when a publisher repeatedly send one message and close
2024-03-31add publisher name for debuggingchrislu1-1/+8
2024-03-30simplifychrislu3-17/+4
2024-03-30logschrislu1-0/+1
2024-03-27LocalPartition shutdownchrislu1-18/+18
2024-03-27simplifychrislu2-17/+4
2024-03-27change visibilitychrislu1-14/+14
2024-03-27publish and send to followerchrislu1-4/+21
2024-03-27MaybeShutdownLocalPartition refactorchrislu1-19/+19
2024-03-27fixchrislu1-1/+1
2024-03-27refactorchrislu1-0/+50
2024-03-27refactorchrislu1-0/+18
2024-03-27separate goroutine to send ack to publisherchrislu1-0/+1
2024-03-26renamechrislu1-2/+2
2024-03-24setup follower by publisherchrislu1-0/+4
* 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-17loggingchrislu1-0/+1
2024-03-16notifychrislu1-3/+16
2024-03-16go fmtchrislu1-7/+7
2024-03-15add size()chrislu2-0/+14
2024-03-10ask follower to followchrislu2-6/+13
2024-03-07change LogBuffer visibility in LocalPartitionchrislu1-9/+9
2024-02-29go fmtchrislu2-2/+3
2024-01-16passing partition infochrislu1-10/+2
2024-01-16release local topic partition if no publisher and subscriberschrislu2-0/+15
2024-01-15reuse local partitionchrislu1-2/+2
2024-01-15read from disk if not in memorychrislu1-16/+38
2024-01-11lintchrislu1-1/+1
2024-01-10passing partition generation timestampchrislu1-1/+1
2024-01-08flush to diskchrislu1-6/+5
Need to do: read from disk
2024-01-08add batch index for each memory bufferchrislu1-2/+14
2023-12-28subscriber can get assignmentschrislu1-0/+9
2023-12-11Merge accumulated changes related to message queue (#5098)Chris Lu7-70/+242
* 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-10-02add subscriber coordinatorchrislu1-0/+17
2023-10-02refactor TopicPartition structchrislu3-14/+12
2023-09-24commentchrislu1-1/+1
2023-09-24ensure latest stats are reportedchrislu1-7/+12
2023-09-24fix listing topicschrislu2-1/+22
2023-09-19wipchrislu1-3/+15