+1.

On Mon, Oct 28, 2019 at 12:11 PM Bill Burcham <bill.burc...@gmail.com>
wrote:

> The SystemFailure class is a clearing house for detecting and attempting to
> mitigate SystemFailure exceptions e.g. VirtualMachineError and
> OutOfMemoryError.
>
> This class should not exist. SystemFailure exceptions should be allowed to
> percolate up and cause the JVM to terminate as soon as possible with an
> informative message in the log, if possible.
>
> Here is what the JVM spec has to say [1]:
>
> "A Java Virtual Machine implementation throws an object that is an instance
> of a subclass of the class VirtualMethodError (sic) when an internal error
> or resource limitation prevents it from implementing the semantics
> described in this chapter. This specification cannot predict where internal
> errors or resource limitations may be encountered and does not mandate
> precisely when they can be reported."
>
> There's a typo in the spec there: it says "VirtualMethodError" when it
> means "VirtualMachineError". Anyhoo, the upshot is: the JVM spec does not
> apply after you've encountered a VirtualMachineError. As a result, there is
> no reason to believe that subsequent processing will make things better
> (than exiting immediately).
>
> The SystemFailure class should be deprecated so no new dependencies to it
> are added. Existing dependencies on it, should be eliminated over time.
>
> Do you have any objections to deprecating the class and beginning
> elimination of usage of it within Geode?
>
> Regards,
> Bill
>
> [1]
> https://docs.oracle.com/javase/specs/jvms/se7/html/jvms-6.html#jvms-6.3
> [2] oh and here's a ticket
> https://issues.apache.org/jira/browse/GEODE-7369
>

Reply via email to