The riak_kv_replrtq_snk worker_count is intended to help control the pace at which replication references are fetched by a sink cluster. However, reducing the sink worker count can lead to a situation where fetching is no longer limited by the worker count, but instead by the per_peer_limit * count(peers).
This is a problem caused by the deferred_queue_length not being reset not being reset when the worker_count is updated.
The
riak_kv_replrtq_snkworker_countis intended to help control the pace at which replication references are fetched by a sink cluster. However, reducing the sink worker count can lead to a situation where fetching is no longer limited by the worker count, but instead by theper_peer_limit * count(peers).This is a problem caused by the
deferred_queue_lengthnot being reset not being reset when theworker_countis updated.