David Holmes - Sun Microsystems wrote:
Jeremy,
As I see it there was no consensus reached on whether this change
should be made. I have some reservations as previously outlined, but
Alan seemed to be of the view that the current situation was
deliberately chosen - which implied to me (Alan correct me if I'm
wrong) that he opposed the change.
It may be that including this case in the OOM onError handling is
okay, but that the JVMTI event posting is not. But Alan will need to
clarify his position on that.
You got it. My view is that we should not post a JVM TI
ResourceExhausted event for this case.
I think Jeremy's original motive was to have the OnOutOfMemoryError
actions run. I don't see a problem changing the code to do that. Yes,
the current behavior is deliberate but this option is for
troubleshooting and maybe it can help with the (probably rare) cases
where this happens.
The other point I attempted to make is that if both OnOutOfMemoryError
and HeapDumpOnOutOfMemoryError are enabled then we should always
generate the heap dump before the OnOutOfMemoryError run. I think we are
in agreement that the heap dump is not interesting here but we should
still generate it anyway.
-Alan.