| Summary: | [RDT] Dstore crashes during indexing due to out of memory condition | ||
|---|---|---|---|
| Product: | [Tools] PTP | Reporter: | Corey Ashford <cjashfor> |
| Component: | Remote Tools | Assignee: | Project Inbox <ptp-inbox> |
| Status: | CLOSED WONTFIX | QA Contact: | |
| Severity: | normal | ||
| Priority: | P3 | CC: | g.watson, recoskie, rsjoao, sdix, wainersm |
| Version: | 5.0.2 | ||
| Target Milestone: | --- | ||
| Hardware: | PC | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Attachments: | |||
|
Description
Corey Ashford
Created attachment 202948 [details]
Video showing the dstore crash at about 49% complete
Created attachment 202949 [details]
Log file exported from the Error Log view
Created attachment 202950 [details]
Tar file containing the .txt and .trc files that resulted from the dstore crash
I can attach the .phd (hex dump) files, if those would be useful. I haven't attached them yet because they are big (about 20MB each) You need to set the heap size yourself to something that's big enough to handle parsing your code. The heap size set in the server launch script is just a default. Unless you find that there's some kind of runaway condition that is allocating memory in an endless loop or something, it's almost certainly just that one of the files in your project requires a lot of memory to parse and you need to update the heap maximum. Try setting the heap max to 512 MB, 1 GB, etc., and see where that gets you. Generally 1 GB is enough for just about anything. If after that you discover something is still amiss, then we might want to reopen this. (In reply to comment #5) > You need to set the heap size yourself to something that's big enough to handle > parsing your code. The heap size set in the server launch script is just a > default. Unless you find that there's some kind of runaway condition that is > allocating memory in an endless loop or something, it's almost certainly just > that one of the files in your project requires a lot of memory to parse and you > need to update the heap maximum. > > Try setting the heap max to 512 MB, 1 GB, etc., and see where that gets you. > Generally 1 GB is enough for just about anything. If after that you discover > something is still amiss, then we might want to reopen this. After digging for awhile, I found that the java command that is used is not specified in a script, but rather in an extension declared by org.eclipse.ptp.rdt.server.dstore: <plugin> <extension point="org.eclipse.ptp.remote.core.remoteServer"> <remoteServer class="org.eclipse.ptp.rdt.server.dstore.core.DStoreServer" continuous="true" id="org.eclipse.ptp.rdt.server.dstore.RemoteToolsDStoreServer" launchCommand="java -Xms64m -Xmx128m -Xss2m -DA_PLUGIN_PATH=. -DDSTORE_TRACING_ON=false -Dclient.username=$USER -DDSTORE_SPIRIT_ON=true -jar ${payload} 0 60000" name="%RemoteToolsDStoreServer.name" payload="rdt-server.jar" verifyLaunchCommand="java -version" verifyLaunchFailMessage="{0}: Invalid java version or java not installed on "{1}"" verifyLaunchPattern="^(java version )(.)(1\.[5-9]|[2-9]\.).*$"> </remoteServer> ... It doesn't look to me like this is designed to be modified by users, especially without using a plug-in. Even if they used a plug-in, it's not clear which one of the extensions would get processed first and override the other one. Am I missing something here? Good point... I forgot that the launch parameters are somewhat locked when you are using Remote Tools. Greg... not sure how you want to address that. You can never really pick one size that fits all. Maybe the heap size needs to be a command line parameter to the server launch script. This is something that could be done in a future release. For SR1, I could increase the heap size to say, 1gb. At least that would reduce the incidence of the problem. Let me know if you would like me to do this. I would need to do this today if it is to go into SR1. (In reply to comment #9) > I would need to do this today if it is to go into SR1. I tested changing the max heap limit to 1024m yesterday, and found that Eclipse was able to complete the indexing operation, though there still are a number of other anomalies. Making this change would be an improvement. Done. (In reply to comment #11) > Done. Fix will be on 5.0.2? Yes, I committed to ptp_5_0 branch. This problem appears to have slipped back into the latest version. Assuming this will not be fixed. |