Closed thomas-k-git closed 1 year ago
Thanks very much, I'll have a look (although it might be next weekend at this point)
As always, thanks Jamie!
Alas, looks like this is happening in the IDEA internals, where the code has no way to recover from an interruption in the buffer allocation. As far as I can tell there's little we can do at the plugin level. Sorry!
...the real problem is that in some places we just have no good strategy to deal with thread interruption: e.g. in this case DirectByteBufferAllocator uses dedicated thread to allocate new DirectByteBuffer because of tricky behaviour of Linux system allocator -- interruption of this 'deferred allocation' task forces us allocate the Buffer in a current thread, which triggers Linux to allocate thread-local memory pool of quite a big size, uselessly spending JVM native memory limit on it.
It would be better, for sure, would all our code be ready/safe for thread interruption.
in current latest version 5.82.0