platinumhamburg opened a new issue, #2977:
URL: https://github.com/apache/fluss/issues/2977

   ### Search before asking
   
   - [x] I searched in the [issues](https://github.com/apache/fluss/issues) and 
found nothing similar.
   
   
   ### Fluss version
   
   0.9.0 (latest release)
   
   ### Please describe the bug 🐞
   
   In PeriodicSnapshotManager, the initial delay is computed as:
   ```
     this.initialDelay = periodicSnapshotDelay > 0
         ? MathUtils.murmurHash(tableBucket.hashCode()) % periodicSnapshotDelay
         : 0;
   ```
   When `murmurHash(tableBucket.hashCode()) % snapshotInterval` happens to be 
exactly 0, `start()` never schedules snapshots because of the guard 
`initialDelay > 0.` The affected TableBucket will never take KV snapshots, 
which means after a leader failover, the replica must restore entirely from WAL 
logs.
   
   ### Solution
   
   - Check `snapshotIntervalSupplier.getAsLong() > 0` instead of `initialDelay 
> 0`
    - Use `Math.max(initialDelay, 1)` to avoid scheduling with zero delay
   
   ### Are you willing to submit a PR?
   
   - [x] I'm willing to submit a PR!


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to