A customer (see Comments for contact details) provided a test case that shows that the recent fix for 6683047 (separate_jvm parameter should tear down target JVM more quickly) is conflicting with the applet relaunch mechanism. The attached JVM is tearing itself immediately after sending the applet relaunch message back to the browser and the browser side never gets a chance to process it. The code needs to be changed so that the browser side is responsible for tearing down the attached JVM in the case where the attached JVM was for a particular applet and it also caused an applet relaunch.
The fix for 6683047 (separate_jvm parameter should tear down target
JVM more quickly) introduced a conflict with the applet relaunch
mechanism. To resolve it, the attached JVM needs to keep track of
whether an applet relaunch occurred, and if so, then if it is an
exclusive JVM instance, then the browser side assumes responsibility
for tearing it down.
Tested with the customer's test case. No test case right now due to
severe time constraints.