We have seen this for some time and have tried to avoid it in the application.
We're on version 1.3.6 and it may well be fixed in newer versions.
What's happening is that if our data (distribution) contains multiple records with the same "key" the records cause one document to be updated and hence VersionConflict exceptions. (We set elasticsearch retry to 20 before an exception is thrown.)
Seems what's happening is each VersionConflict exception causes heap to be allocated say an extra 10%
extra 10%, extra 10%... eventually it just goes sky high / exponential.
But seems to me the data shouldn't result in a catastrophic situation like the server crashing due to out of heap memory.
What is the solution?
And in absence of a solid solution maybe a good workaround.