Adds measuring the apparent delta vector of footprint added/removed within the timer time slice, and potentially include this (if influx is greater than data removed) in threshold calculation. The idea is to anticipate crossing usage threshold within a time slice, so request a flush slightly earlier, hoping this will give all involved more time to do their disk work. Obviously, this is very akin to just adjusting the threshold downwards, but the slight difference is that we take actual transaction rate vs. segment free rate into account, not just static footprint. Note: this is a very simplistic version of this anticipation scheme, we just use the "raw" delta for the timer slice. A more sophisiticated approach would perhaps do either a lowpass filtered rate (adjust over longer time), or a regression or whatnot. But again, the default persiod of 10s is something of an eternity, so maybe that is superfluous... Closes #10651 * github.com:scylladb/scylla: commitlog: Add (internal) measurement of byte rates add/release/flush-req commitlog: Add counters for # bytes released/flush requested commitlog: Keep track of last flush high position to avoid double request commitlog: Fix counter descriptor language
108 KiB
108 KiB