[PATCH v2 6/8] vinyl: keep track of compaction queue length

Konstantin Osipov kostja at tarantool.org
Wed Sep 19 04:53:19 MSK 2018


* Vladimir Davydov <vdavydov.dev at gmail.com> [18/09/17 15:05]:
> Currently, there's no way to figure out whether compaction keeps up
> with dumps or not while this is essential for implementing transaction
> throttling. This patch adds a metric that is supposed to help answer
> this question. This is the compaction queue size. It is calculated per
> range and per LSM tree as the total size of slices awaiting compaction.
> We update the metric along with the compaction priority of a range, in
> vy_range_update_compact_priority(), and account it to an LSM tree in
> vy_lsm_acct_range(). For now, the new metric is reported only on per
> index basis, in index.stat() under disk.compact.queue.

OK to push.

Accounting pages, rows and bytes seems to be a bit of overkill for
now. All we need to throttle is dump bandwidth, which is in bytes.
I assume you have plans for rows and pages.

> 

-- 
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