[PATCH 17/18] vinyl: set quota timer period to 100 ms
Konstantin Osipov
kostja at tarantool.org
Thu Aug 23 23:49:36 MSK 2018
* Vladimir Davydov <vdavydov.dev at gmail.com> [18/08/16 23:03]:
> Currently, it's 1 second, which is OK for calculating watermark, but
> too long for throttling (think of latency of 1 seconds that would be
> introduced by throttling if such timeout were used).
1) I think the timer period should self-adjust based on the amount
of available quota.
2) We narrowed down the problem to throttling only.
We never do anticipatory dump/compaction today. Let's design a
system which swings the pendulum both ways - not only throttles
the client when the load is high but performs an anticipatory
dump/compaction when the load is low. See for example
https://github.com/tarantool/tarantool/issues/3225
In other words, I think we should not only enable "stalls" in
the timer callback when the write stream is strong, but
trigger compaction when the write stream is thin. Unfortunately
we do not collect read statistics per lsm as a secondary
indicator of compaction priority, so we may only trigger
compaction based simply on the number of levels, but never the
less.
--
Konstantin Osipov, Moscow, Russia, +7 903 626 22 32
http://tarantool.io - www.twitter.com/kostja_osipov
More information about the Tarantool-patches
mailing list