I've made some tests and it seems like zookeeper doesn't clean up the last
500 deleted nodes.
In my test I created nodes and deleted each node after it was created. I
repeated this step 1000 times and then triggered a full gc. These are the
Creating 1000 Nodes and deleting 1000 Nodes and each node has...
...1000kb data = 529MB heap used after FullGC
...500kb data = 281MB heap used after FullGC
...256kb data = 140MB heap used after FullGC
...128kb data = 68MB heap used after FullGC
If I'm creating 1000 nodes with each 1000kb data and then deleting the
nodes and after that creating 1000 nodes with 128kb data and deleting the
nodes again, 68MB heap space is used.
So it seems Zookeeper caches / doesn't clean up the last 500 deleted nodes.
Is this a bug or are there configuration parameter to change that behaviour?