martinsumner / kv_index_tictactree

Provide Active-Anti-Entropy features to a virtual node in a KV store
Apache License 2.0
21 stars 7 forks source link

Mas i1765 asynchandling #81

Closed martinsumner closed 4 years ago

martinsumner commented 4 years ago

This PR provides a number of changes to improve handling of pressure within the kv_index_tictactree, especially in how it can signal back-pressure to the calling application to reduce workloads.

In volume tests on a cluster with >2TB per node on 8 nodes, if tictacaae is enabled for the first time in parallel mode when the cluster is under load and subject to deliberate node failures - then vnode crashes may be seen. In particular these are related to memory leaks caused by overlapping queries, or by timeouts on sync calls within the kv_index_tictcatree process heirarchy.

There are a number of changes merged in here to alleviate this: