Bug 42553 - After while the Eclipse can't perform save and build operations.
Summary: After while the Eclipse can't perform save and build operations.
Status: RESOLVED INVALID
Alias: None
Product: JDT
Classification: Eclipse Project
Component: Core (show other bugs)
Version: 3.0   Edit
Hardware: PC Windows 2000
: P3 normal (vote)
Target Milestone: 3.0 M4   Edit
Assignee: JDT-Core-Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-09-04 13:46 EDT by Tomas Znamenacek CLA
Modified: 2003-09-09 12:13 EDT (History)
0 users

See Also:


Attachments
This is an export of error log (95.55 KB, text/plain)
2003-09-04 13:48 EDT, Tomas Znamenacek CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Tomas Znamenacek CLA 2003-09-04 13:46:25 EDT
After about a half an hour, the Eclipse shows a dialog box with message "Save 
could not be completed". (Half an hour of using the Eclipse, that is...)
I'm using same machine and same JVM I have been using with previous builds and 
I didn't have these problems. On my other machine, which is a SuSE Linux 8.2, 
I'm getting OutOfMemoryExceptions as well as "Save could not be completed".
Comment 1 Tomas Znamenacek CLA 2003-09-04 13:48:12 EDT
Created attachment 5991 [details]
This is an export of error log
Comment 2 Olivier Thomann CLA 2003-09-04 15:46:22 EDT
This is a JIT bug. Please change your VM.
If you disable the JIT, you won't have it again.
Comment 3 Tomas Znamenacek CLA 2003-09-04 15:56:02 EDT
A few question more questions:
1. How to disable JIT ? (For IBM JRE 141 on Windows and Linux)
2. What is the impact of disabled JIT on Eclipse ?
3. If the same JVM was used with older builds of Eclipse 3, why didn't this 
probelm show up earlier ?
4. If this is a JIT bug, has anyone informed the Sun/IBM (Hursley) about this ?
Comment 4 Olivier Thomann CLA 2003-09-04 17:05:55 EDT
IBM VM JIT has been well-known for randoms NPE.
We got the exact same issue with a IBM JDK1.3.1 VM.
To disable the JIT, use this VM arg -Djava.compiler=NONE.
The consequence is that Eclipse will run more slowly. I would highly suggest to
move to another 1.4 VM.
Comment 5 Olivier Thomann CLA 2003-09-04 17:10:00 EDT
Reduce severity since this looks like a JIT bug.
Please let us know if disabling the JIT fixed it.
Comment 6 Tomas Znamenacek CLA 2003-09-04 17:31:05 EDT
Disabling the JIT seems to have fixed the problem, the Eclipse has been in use 
for over two hours now.
I have been using the Eclipse 3 M3 on my SuSE 8.2 Linux machine with latest JVM 
from Sun as well as with IBM 141 JVM, and the Eclipse was still getting 
OutOfMemoryExceptions and NullPointerExceptions. I'm not sure what other JVM 
should I move to...

The severity of this problem has to be at least "major", because having no 
information about this issue in the readme, and having Eclipse unable to save 
file or do a build after a while, would be a major problem for anyone... (its a 
development tool... )
Comment 7 Philipe Mulet CLA 2003-09-05 04:19:58 EDT
VM bugs are always frustrating indeed, but Eclipse cannot be blamed for these.
Please report directly to the IBM vendor.

Closing this defect as a VM bug.
Comment 8 Tomas Znamenacek CLA 2003-09-05 09:54:24 EDT
I don't agree with closing the bug, and here is why:
1. No explaination has been provided as to why the problem didn't manifest 
itself in earlier builds of Eclipse running with same JVM.
2. No eplaination has been provided as to how does Eclipse make use of the JIT 
and why the root cause is in JIT not in Eclipse's usage of JIT
3. No indication of how this issue will be communicated to the users, I don't 
think letting every one run into this issue is acceptable. IMO, this needs to 
be addressed in the readme.
4. From the comments in this defect it is clear that the Eclipse developers 
know about this issue, yet I have been asked to report the problem to JVM 
vendor. Because I can not provide good enough test scenario to the JVM vendor, 
I was expecting that Eclipse team would to contact the JVM vendor...
5. From my perspective, disabling JIT is a workaround not a resolution. If 
disabling the JIT is the only way to get pass this, then this bug should be 
closed in way indicating that it will be dealt with later.
Comment 9 Olivier Thomann CLA 2003-09-05 14:24:26 EDT
The solution is to fix the JIT. This is clearly a VM issue. I don't see what we
can do to fix the JIT. A JIT is not supposed to cause NPE.
Comment 10 Philipe Mulet CLA 2003-09-09 05:00:50 EDT
Eclipse is just a Java application running on a Java VM. The JIT is the 
optimizer part of the VM. The VM you are using is known to have severe 
defficiencies in this area. 

We cannot workaround these in application code. Any code change is inducing 
different bytecodes, and some are breaking the VM. Does this mean we shouldn't 
change any code because some VM has some bug ? No, you simply need to contact 
the VM vendor and report this problem to them since the bug is in their land 
not in ours. Relying on us to track these down is just not an option, we don't 
have the resource to track VM defects.

Remember that the runtime you are using is still in beta mode (I think).

Disabling the JIT is indeed a workaround, the real solution is to 
upgrade/change the VM. The fact it worked fine with a previous Eclipse drop 
means you were lucky. 

Closing

Comment 11 Tomas Znamenacek CLA 2003-09-09 09:55:18 EDT
Reopening the bug in order to get the Eclipse team to put the workaround into 
the readme(or somewhere, so that the users/testers would be informed about it).

As to the reporting the issue to the vendor, it requires a test case, as simple 
as possible, demostrating the problem. If the Eclipse team is unable to come up 
with one, then no one probaby can.
Comment 12 Philipe Mulet CLA 2003-09-09 10:59:49 EDT
Please report to VM vendor. This bug database is reserved to Eclipse bugs.
If a testcase is needed, then you seem to have one reproducing it.
Closing.
Comment 13 Tomas Znamenacek CLA 2003-09-09 11:22:09 EDT
The reason for reopening was that the information about the workaround has to 
be communicated to the users/testers. Please indicate how this will be handled.

As to the reporting the VM vendors, running Eclipse for an hour is not 
considered a test case and therefore I can not report this the VM vendors.
Comment 14 Philipe Mulet CLA 2003-09-09 12:13:47 EDT
By the time we ship, better JREs will be available. We will conduct a full 
testpass, and provide documentation for known issues. If this one is still an 
issue, then it will be documented for sure.