[
https://issues.apache.org/jira/browse/CASSANDRA-15214?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16900379#comment-16900379
]
Dinesh Joshi edited comment on CASSANDRA-15214 at 8/5/19 8:07 PM:
------------------------------------------------------------------
I think this issue might be related to
https://bugs.openjdk.java.net/browse/JDK-8027434. Other projects that use the
JVM have run into a similar issue and the usual solution is to use
[jvmkill|https://github.com/airlift/jvmkill]. The issue at hand is that when a
JVM runs out of memory (heap or otherwise), it enters an undefined state. In
this situation, I would not expect the handlers to work as expected. I think we
should either use jvmkill or
[jvmquake|https://github.com/Netflix-Skunkworks/jvmquake] to solve this issue
as it has proven to be reliable and Netflix, Facebook and other large JVM users
are actively using it.
was (Author: djoshi3):
I think this issue might be related to
https://bugs.openjdk.java.net/browse/JDK-8027434. Other projects that use the
JVM have run into a similar issue and the usual solution is to use
[jvmkill|https://github.com/airlift/jvmkill]. The issue at hand is when a JVM
has run out of memory (heap or otherwise), it enters an undefined state. In
this situation, I would not expect the handlers to work as expected either. I
think we should either use jvmkill or
[jvmquake|https://github.com/Netflix-Skunkworks/jvmquake] to solve this issue
as it has proven to be reliable and Netflix, Facebook and other large JVM users
are actively using it.
> OOMs caught and not rethrown
> ----------------------------
>
> Key: CASSANDRA-15214
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15214
> Project: Cassandra
> Issue Type: Bug
> Components: Messaging/Client, Messaging/Internode
> Reporter: Benedict
> Priority: Normal
> Fix For: 4.0
>
>
> Netty (at least, and perhaps elsewhere in Executors) catches all exceptions,
> so presently there is no way to ensure that an OOM reaches the JVM handler to
> trigger a crash/heapdump.
> It may be that the simplest most consistent way to do this would be to have a
> single thread spawned at startup that waits for any exceptions we must
> propagate to the Runtime.
> We could probably submit a patch upstream to Netty, but for a guaranteed
> future proof approach, it may be worth paying the cost of a single thread.
--
This message was sent by Atlassian JIRA
(v7.6.14#76016)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]