The logging functionality of 1.4.2 has regressed and is broken in 1.5 due to interactions with recent changes in the error handler.
Back-line engineers (such as myself) routinely use this feature to diagnose hard-to-reproduce crashes in the field. It is totally unacceptable to break this functionality in 1.5.
When the VM crashes on a customer, we need as much historical information as possible about the run in order to diagnose the bug. However, recent changes to the error handler for 4515367 have wrongly turned off log cleanup. This means that the VM will refuse to flush its logs in exactly the cases where the logs are most critical, when the VM crashes. This means that Sun engineers will not be able to inspect the most recent compilations.
The basic idea of 4515367 was to output crash information more robustly. However, it is unacceptable to disable the existing information dumps, at least unconditionally (by removing the ostream_exit call).
The ostream_exit call is intended to be robust, even if the the VM is crashing. It was designed to write diagnostic information for crashes.
If there is a strong reason not to call ostream_exit by default, then add a new flag which will allow us to get them flushed, or use LogCompilation:
if (LogCompilation) ostream_exit()