From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: From: Vladimir Davydov Subject: [PATCH v2 0/8] vinyl: improve stats for throttling Date: Sun, 16 Sep 2018 20:06:43 +0300 Message-Id: To: kostja@tarantool.org Cc: tarantool-patches@freelists.org List-ID: This patch set adds some essential global disk statistics necessary for transaction throttling, namely size of data stored on disk, written by dump and compaction threads, awaiting compaction. This is probably not enough for implementing throttling, but that should be a good start. https://github.com/tarantool/tarantool/issues/1862 https://github.com/tarantool/tarantool/commits/dv/vy-stats-for-throttling Changes in v2: - Remove controversial disk idle ratio and compaction debt metrics, because they still need to be elaborated. - Rework the way global disk statistics are reported. - Remove the patches that have been merged, rebase on the latest 1.10, and refactor the code slightly. v1: https://www.freelists.org/post/tarantool-patches/PATCH-07-vinyl-improve-stats-for-throttling Vladimir Davydov (8): vinyl: fix force compaction logic vinyl: update compact priority usual way on range split/coalesce vinyl: annotate info_table_end with comment vinyl: report pages and bytes_compressed in dump/compact in/out stats vinyl: add helpers for resetting statement counters vinyl: keep track of compaction queue length vinyl: factor out helpers for accounting dump/compaction vinyl: add global disk stats src/box/vinyl.c | 111 +++++++++++++++++++++++++++++-------------- src/box/vy_lsm.c | 95 ++++++++++++++++++++++++++++++------- src/box/vy_lsm.h | 34 +++++++++++++- src/box/vy_range.c | 27 +++++------ src/box/vy_range.h | 10 ++-- src/box/vy_scheduler.c | 40 +++++++++------- src/box/vy_stat.h | 62 +++++++++++++++++++----- src/errinj.h | 1 + test/box/errinj.result | 4 +- test/vinyl/errinj.result | 114 +++++++++++++++++++++++++++++++++++++++++++++ test/vinyl/errinj.test.lua | 32 +++++++++++++ test/vinyl/info.result | 111 ++++++++++++++++++++++++++++++++++++++++--- test/vinyl/info.test.lua | 14 ++++++ 13 files changed, 544 insertions(+), 111 deletions(-) -- 2.11.0