[PATCH v2 0/8] vinyl: improve stats for throttling

Vladimir Davydov vdavydov.dev at gmail.com
Sun Sep 16 20:06:43 MSK 2018


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




More information about the Tarantool-patches mailing list