The GitHub Actions job "CI" on kvrocks.git/unstable has failed.
Run started by GitHub user PragmaTwice (triggered by PragmaTwice).

Head commit for run:
54929cd01603f9a19cd3b700b8b4da1683e4eda9 / zhixinwen 
<[email protected]>
fix(replication): fix stuck replication due to wrong watermark (#3243)

In order to reduce unnecessary callbacks, we set read watermark based on
data size:

https://github.com/apache/kvrocks/blob/2b7e69a5acd9e1490b96aafc84746d1baef6579e/src/cluster/replication.cc#L700

However, this watermark is not reset after reading the data, which could
result in stuck replication. For example:
1. A batch of size 16kb is received by replica and watermark is set to
16kb
2. A PING was received after the batch by the replica and the callback
returns without resetting the watermark. Replica would continue to
process data only after master sends at least 16kb data.
3. Master only sent 1kb data, and that data is not processed by replica
until master sends enough PING to replica to trigger the 16kb watermark.
This causes the replication to get stuck.

Report URL: https://github.com/apache/kvrocks/actions/runs/18998857605

With regards,
GitHub Actions via GitBox

Reply via email to