Proto commits in liftbridge-io/liftbridge

These 80 commits are when the Protocol Buffers files have changed:

Commit:e47508e
Author:Tyler Treat

Add expired field to LeaveConsumerGroupOp This indicates if the consumer was removed because they timed out.

The documentation is generated from this commit.

Commit:ec44e9c
Author:Tyler Treat

Implement group coordinator failover

Commit:f0fcf89
Author:Tyler Treat

Combine assignmentEpoch and coordinatorEpoch Use a single consumer group epoch.

Commit:77e8b49
Author:Tyler Treat

Handle consumer groups on subscribe

Commit:54bae26
Author:Tyler Treat

Consumer groups WIP

Commit:8e2f4da
Author:Tung Hoang
Committer:Tung Hoang

rename encryption variables

Commit:f583e61
Author:Tung Hoang

Add config for EncryptionDataAtRest - Add default config - Add config overwrite

Commit:9103092
Author:Tung Hoang
Committer:Tung Hoang

Add OptimisticConcurrency as a config option on CreateStream

Commit:8b1cb08
Author:Jonathan Mercier-Ganady

Fix stream creation time not being set once by the leader

Commit:4499971
Author:Jonathan Mercier-Ganady
Committer:Jonathan Mercier-Ganady

Add readonly status to metadata

Commit:f202d5c
Author:Tyler Treat

Support overriding MinISR on CreateStream Addresses #269.

Commit:c68d19f
Author:Tyler Treat

Merge branch 'master' of github.com:liftbridge-io/liftbridge into consumer_tracking_api

Commit:69f478d
Author:Tyler Treat

Cursor Manager WIP

Commit:0132325
Author:Jonathan Mercier-Ganady
Committer:Jonathan Mercier-Ganady

Add read-only flag to streams/partitions Readonly streams: simplify and don't block if readonly Fix tests Add comments Add tests Fix a comment

Commit:d1f7edc
Author:Jonathan Mercier-Ganady

Add option to disable partition auto pausing if subscribers > 0

Commit:4219344
Author:Tyler Treat

Implement SetStreamConfig endpoint

Commit:4f39c2e
Author:Tyler Treat

Implement automatic partition pausing

Commit:b62c93e
Author:Tyler Treat

Refactor custom stream config Also ensure custom config survives Raft snapshot/restore.

Commit:2c55e3e
Author:Tung Hoang
Committer:Tung Hoang

Support nullabletype in custom stream config

Commit:aede9da
Author:Tung Hoang
Committer:Tung Hoang

Use nested message for CustomStreamConfiguration

Commit:6b08a2e
Author:Tung Hoang

Add CompactEnabled into stream request parsing

Commit:5d0c2eb
Author:Tung Hoang
Committer:Tung Hoang

Use int64 as configuration type for stream duration configs

Commit:38933f3
Author:Tung Hoang

WIP: use string for duration stream config

Commit:00a7e68
Author:Tung Hoang

Renaming CustomStreamConfig

Commit:b87a521
Author:Tung Hoang

Drop support for Compact

Commit:e6e7371
Author:Tung Hoang

Use gogo/protobuf for generating duration

Commit:90cbb39
Author:Tung Hoang

WIP: Add custom streams config to proto

Commit:24f74cd
Author:Tyler Treat

Merge branch 'master' of github.com:liftbridge-io/liftbridge into improve_activity_stream

Commit:c3bc399
Author:Tyler Treat

Send leader epoch on replication requests Send the leader epoch on replication requests. When a partition leader receives a replication request, check that the leader epoch is the current leader's epoch. If not, drop the request. This fixes an edge case where a leader is partitioned from the rest of the ISR and a new partition leader is elected. Previously, both the old leader and new leader would receive the replication requests. Followers would reject responses from the old leader, but the old leader would still commit messages due to the replication requests sent by followers and stay in a zombie state.

Commit:ce011ec
Author:Tyler Treat

Add other events to activity and add tests

Commit:3e794a6
Author:Tyler Treat

Refactor raft operations to be more consistent

Commit:f7da19e
Author:Tyler Treat

Refactor raft operations

Commit:3d3cf88
Author:Tyler Treat

Activity stream manager WIP

Commit:2a5a9f2
Author:Tyler Treat

Rename proto package to avoid protobuf collision Rename the internal proto package to protocol to avoid protobuf collision with the client proto package.

Commit:e917749
Author:Tyler Treat

Refactor stream pausing Also update go-liftbridge and liftbridge-api deps.

Commit:a01f499
Author:Jonathan Mercier-Ganady

Add partition pausing and resume all at once options

Commit:70bc095
Author:Jonathan Mercier-Ganady
Committer:Jonathan Mercier-Ganady

Add partition pausing and auto resume on publish

Commit:6dc8526
Author:Jonathan Mercier-Ganady
Committer:Jonathan Mercier-Ganady

Add a delete stream implementation

Commit:d4ee04e
Author:Tyler Treat

Add unit tests around LEO notifications And other general code cleanup.

Commit:abb60eb
Author:Tyler Treat

Fix idle follower ack delay Fix issue #102 by having the leader notify followers when there is new data available after the follower has caught up with the leader's log end offset. This also introduces a new config `replica.max.idle.fetch.wait` which controls the max amount of time an idle follower will wait before making a replication request. The primary purpose of this is to ensure timely check-ins with the leader for health checking.

Commit:373a03b
Author:Tyler Treat

Clean up metadata api

Commit:0568492
Author:Tyler Treat

Remove TotalPartitions field from partition

Commit:935f76c
Author:Tyler Treat

Rename name to stream

Commit:7338faf
Author:Tyler Treat

Partitioning WIP

Commit:9e710af
Author:Tyler Treat

Implement partitioning

Commit:250f40b
Author:Tyler Treat

Alter replication protocol to use leader epoch Currently, when a replica starts, it truncates its log up to the high watermark (HW) to remove any potentially uncommitted messages. There are a couple edge cases with this method of truncating the log that could result in data loss or replica divergence. This solves the issue by using a leader epoch rather than the high watermark for truncation. Fixes #38

Commit:0c597b3
Author:tsingsonqin

support github.com/nats-io/nats-server/v2 and github.com/nats-io/nats.go 1. support github.com/nats-io/nats-server/v2 and github.com/nats-io/nats.go 2. move bridge-io/nats-on-a-log inside repo

Commit:5195ee1
Author:Tyler Treat

Update go-liftbridge dependency

Commit:d8349f1
Author:Marc-François Cochaux-Laberge

Fix module name

Commit:cb87310
Author:Marc-François Cochaux-Laberge

Refactor to Go modules

Commit:6335fea
Author:Tyler Treat

Update go-liftbridge again

Commit:b3f409c
Author:Tyler Treat

Update go-liftbridge

Commit:c60dba4
Author:Tyler Treat

Update go-liftbridge

Commit:6ae696a
Author:Tyler Treat

Update go-liftbridge dep

Commit:034563d
Author:Tyler Treat

Update deps

Commit:4a25ea7
Author:Tyler Treat

Update liftbridge-grpc dep

Commit:9f5e188
Author:Tyler Treat

Update deps

Commit:67c6696
Author:Tyler Treat

Use correct go-liftbridge dependency

Commit:e2f70e1
Author:Tyler Treat

Update import paths

Commit:833810d
Author:Tyler Treat

Fix stuff using new subscribe api

Commit:90af4e7
Author:Tyler Treat

Fix publish race condition Also wire up correlation id properly.

Commit:cbb897f
Author:Tyler Treat

Vendor dependencies

Commit:bf2aa9f
Author:Tyler Treat

Use correct path for grpc definitions

Commit:8987835
Author:Tyler Treat

Rename ConsumerGroup to Group

Commit:fd79ee1
Author:Tyler Treat

Add replication test and fix create stream race

Commit:804571c
Author:Tyler Treat

Make server id durable

Commit:cb981ec
Author:Tyler Treat

Refactor leader failure detector

Commit:d19e25c
Author:Tyler Treat

Reimplement replication to improve performance

Commit:e96f7ac
Author:Tyler Treat

Implement fetch metadata api

Commit:a5bd20a
Author:Tyler Treat

Rename jetbridge to liftbridge

Commit:0ffe08c
Author:Tyler Treat

Fix stream recovery from raft log

Commit:4c38531
Author:Tyler Treat

Lots of bug fixes

Commit:9ef3c1e
Author:Tyler Treat

Implement leader failure detector Also implement leader failovers and expanding ISR.

Commit:e50de92
Author:Tyler Treat

Implement high watermark and log truncation

Commit:4d0e251
Author:Tyler Treat

Implement request propagation and ISR shrinking

Commit:4c86eee
Author:Tyler Treat

Start sketching out replication

Commit:125097a
Author:Tyler Treat

Rename participant to replica

Commit:0e7b012
Author:Tyler Treat

Refactor streams and implement snapshot/restore

Commit:5e7aaa7
Author:Tyler Treat

Implement log

Commit:e277570
Author:Tyler Treat

Initial commit