Files
scylladb/api
Eliran Sinvani 971711a546 storage proxy: migrate to per scheduling group statistics
This commit builds on top of the introduced per scheduling group
statistics template and employs it for achieving a per scheduling
group statistics in storage_proxy.

Some of the statistics also had meaning as a global - per
shard one. Those are the ones for determining if to
throttle the write request. This was handled by creating a
global stats struct that will hold those stats and by changing
the stat update to also include the global one.

One point that complicated it is an already existing aggregation
over the per shard stats that now became a per scheduling group
per shard stats, converting the aggregation to a two-dimensional
aggregation.

One thing this commit doesn't handle is validating that an individual
statistic didn't "cross a scheduling group boundary", such validation
is possible but it can easily be added in the future. There is a
subtlety to doing so since if the operation did cross to other
scheduling group two connected statistics can lose balance
for example written bytes and completed write transactions.

Signed-off-by: Eliran Sinvani <eliransin@scylladb.com>
2020-01-30 15:01:44 +01:00
..
2020-01-27 17:42:04 +03:00
2020-01-27 17:42:04 +03:00
2019-06-10 17:11:47 +03:00
2018-11-21 00:01:44 +02:00
2018-03-28 12:41:55 +03:00
2018-11-21 00:01:44 +02:00
2016-04-08 08:12:47 +03:00
2019-11-20 16:44:11 +02:00