[
https://issues.jboss.org/browse/JBIDE-21857?page=com.atlassian.jira.plugi...
]
Thomas Mäder commented on JBIDE-21857:
--------------------------------------
Hi [~mlabuda]. When you have a change that you can't HCR, the jboss tooling offers to
reload the module with the new version of the code. The user expectation now is that
further simple changes (add a printf) would simply work. However, even though the original
version of the class is now garbage, the VM never garbage collects it. So every time I now
want to do a further simple change, the VM will reject it because the original version of
the class is still in memory.
If you want to test this, you can do the following:
1. Rename a private method in a class
2. Observe: you get a dialog saying the HCR has failed and offering to reload the module
3. Reload the module
4. Now make a further change that is HCR-compatible (add a printf)
5. Observe: the HCR works.
Before the fix, step #5 would have failed.
Hot class reload doesn't work on OpenShift
------------------------------------------
Key: JBIDE-21857
URL:
https://issues.jboss.org/browse/JBIDE-21857
Project: Tools (JBoss Tools)
Issue Type: Bug
Components: openshift
Affects Versions: 4.3.1.Beta2
Reporter: Fred Bricon
Assignee: Rob Stryker
Fix For: 4.4.2.Final, 4.4.3.AM1, 4.5.0.AM1
Attachments: HCRFailure.zip
When enabling debug mode on an EAP server deployed on OpenShift, locally changing a class
file will :
- work sometimes when only the content of the method changed, but could fail in some
other occasions with the Debugger saying the JDK is out of sync
- will always fail if a method signature changed, the debugger saying JDK is out of sync
Restarting the deployed module (with the .dodeploy flag) doesn't fixes the issue (as
opposed to the same tweak ahen running on a local EAP server)
This may be caused by running OpenJDK? Does it support the same level of debugging as
Oracle JDK?
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)