Out of memory issue in gwt application - gwt

I have been trying to increase heap size max to 1440 of 4 GB ram, but still i am getting the Out of memory issue after two/three refreshes in two different browsers. I have set the VM aruments max to : '-Xmx1440m', while running gwt:run maven goal, but no luck. My system configuration looks as follows:
RAM : 4 GB, build tool: Maven, GWT, Java 1.6

Try to add -XX:MaxPermSize=256M.
It helps at least in Eclipse.

Related

react-native-windows build takes 100% usage of disk

I am running out of options on what to do with this issue.
On vscode when I build a Windows eg react-native run-windows the disk usage is always 100% and it takes 10 to 15 min to build a project.
This disk I am using is D:// and it's free, there is only my projects that I am building and developing.
I have Added D:// so Windows 10 won't scan the driver but it is no use.
Is there something I am missing?

Eclipse is extremely slow on Fedora 24

I am running a Fedora 24 OS (with GNOME 3) and I just installed the eclipse CDT package from the Fedora repositories (Eclipse CDT Neon.1), and it turned out to be extremely slow, but only when writing code or scrolling, the rest of the UI works perfectly and really quickly.
I have done some research about the topic and seemingly this problem is usually related to the GTK backend, and is commonly solved by running eclipse under GTK2 instead of GTK3. However, this has not helped me at all. The options I have tried are:
export SWT_GTK3=0
And
eclipse --launcher.GTK_version 2 (also tried in eclipse.ini)
These two options effectively switch to GTK2, which is noticeable because the graphical appearance changes.
I tried also older versions of Eclipse (Juno, Kepler and Luna) and the problem still exists, probably even worse. I have increased the memory size for the JVM to 3GB and the problem remains intact.
The underlying hardware is a 6 core Intel Xeon (12 virtual cores with Hyperthreading) and 32 GB of RAM, so I assume this should not represent a problem.
I also noticed that while scrolling or writing, one of my cores goes to 70%-100% utilization, which explains the lag, but I don't know how to solve.
Is there any other option I can try?

GWT / Eclipse slow : just unusable (win7 / Juno install)

I have Eclipse Juno + latest GWT (GPE 3.1.2+ SDK 2.5.1).
It's just unusable :
Just hang-up now and then (ten times a day), so I have to kill and restart
At best very slow, meaning waiting minutes before UI response for trivial things
After WEB investigation, i did :
increased JVM resources in eclipse.ini
periodically purge the project folder "gwt-unitCache"
For some reason i also tried GWT on Indigo (as the GWT Designer does not run properly on Juno), but it is the same.
The issues seem to be yet somewhere else.
As there as performance issues posted on Google bug list, I am not too sure where I stand.
So my questions :
Does anyone use Eclipse/GWT with fair performances [on Windows ?
(is the issue related to windows -- which I doubt)]
Can anyone provide a set of configuration instructions which can
lead to a stable config ? -- or explain the traps to avoid ?
Before going to Vaadin I wanted to properly handle GWT, but i am close to drop it. Please help.
I would add RAM. 4 gigs sounds pretty slim for a dev machine. An OS with a few apps running will take up 2 gigs. Start eclipse and that's another gig or 2 easy. Then you start running jetty within eclipse for another gig or 2 and now you're hitting your virtual memory / page file which will slow it down tremendously.
Running firefox doing nothing else then looking at a single tab to test my app is 200MB of RAM. Some of my chrome tabs are 100MB easy. Just figure each browser tab eats 3-5% of your 4 gigs.
I'd say get at least 16GB on a 64bit OS and give eclipse and jetty at least 2 gigs each if not 4 each. A solid state disk (SSD) helps a lot too since compiling does a lot of random reads and writes.
Here's a screenshot of the debug settings with 3 gigs of RAM and some extra permgen space for subsequent refreshes of the pages. Just remember, if you run out of physical RAM and it starts hitting the page file these settings won't increase performance!

Eclipse/Glassfish running out of memory

I'm developing a web app using Eclipse/Glassfish on Windows 7, and I see this error at least a few times a day when deploying a new version of the app:
SEVERE: Exception while preparing the app : PermGen space
SEVERE: java.lang.OutOfMemoryError: PermGen space
When I see it, I have to close Eclipse, use the Windows Task Manager to stop a Java process (which I suspect is Glassfish), and re-start Eclipse. It's a nuisance, and an unwelcome interruption.
Is there anything I can fix/configure that would make this error go away, or at least decrease its frequency? Or is this a memory leak I'm just going to have to live with?
This is a memory leak in Sun / Oracle JVM <= 7 which often occurs when using JPA. Upgrading to Oracle's JVM 8 should solve this.
If you're bound to JVM 7 or lower, you can add the following VM arguments to Glassfish's launch configuration in Eclipse to increase the memory limit (in this example to 1024 MB), which makes the OOMs less regular:
-XX:MaxPermSize=1024M

Eclipse is getting Hang while debugging GWT application

We are developing our web application using JAVA GWT-P framework (Version 2.4). We are using Eclipse (Version 3.7) Indigo as a development GUI. While we are debugging the application, eclipse is getting hanged generally and surprisingly this is a random behavior.
And this is not happening in only part of the program. Anytime, while we debug, Eclipse hangs in different module.
To resolve this , we tried to use different Operating system such as Windows XP (development gui: Eclipse version 3.7 Indigo), Fedora Version 16 (with development gui: Eclipse version Helios Service Release 2), Cent OS (with development gui: Eclipse version Helios Service Release 2). But no luck.
Can anyone help me out to decide which OS, and eclipse or version should we have to use so can able to resolve the hanging issue?
Use a machine with at least 8G RAM, quad core for GWT development. Anything less than that would be catastrophic and unproductive.
Ideally 8 core, 12 GB.
Increase your eclipse jvm vm heap size max, at startup.
Default eclipse startup is either 256M or 512M. It should be at least 768M. I have tried 1024M which
made only a marginal difference above 768M. I found 900M seems to be
the most that would be used in my cases.
You may have to increase your permgen memory allocation too. I think
permgen space is used for storing class definition and are never
garbage-collected. I presume that when my eclipse hung indefinitely
was when there was no more permgen space to store new class defn.
I have never had to redefine the stackspace allocation for eclipse.
You can google around to find out the jvm startup arguments to define mem allocation. e.g. -Xmx, etc.
Initially develop only for a single browser. Decide between using FF
or Chrome as your dev browser. Then tune your entrypoint gwt.xml to
set the user-agent property for that browser. Google on gwt set
property user-agent. Compiling for only one browser, I have found,
speeds up the compilation a lot.
Don't ever store your projects, source files, resources or libs
that are accessed by the compiler, in a network or usb drive. All your
compilable/includable resources should be on your local drive.
Try to use maven or some other tool for dependency management, so that you do not need to access your jars or dependent projects over the network.
Do not, ever, let your development strategy roll down the hill by
depending on live-project dependencies. Having workspace with 50 or more
projects is disaster and signifies a development team in crisis.
The compulsive and persistent compilation, scanning of projects by
eclipse background take a huge toll on the performance of eclipse.
Try to disable as much validation as possible. e.g., disable html and
javascript validation.
If you have a huge number of server side projects ...
You need to re-architect your development strategy to cluster your 50 - 100 projects into project packages, so that each project package has no more than 20 compilable/validateable project members (ideally less than 5 projects). Each package is frozen by versions and packaged as jars. Use only the jars for development dependencies.
Your programmers need to learn not to have the impulse to work on a workspace with 200 projects. Enhancements are reserved for bugzillas of each project package. Having a 200 project workspace is bad project management. It wastes your programmers' time by having eclipse slow down now and then.
Have sufficient temp space (or for Windows sufficient slack space on
the user disk). I have experienced that insufficient disk space for
compiler buffering/caching has caused slow-downs and hang-ups. Having
a 5G slack space is the minimal - the more the merrier so as to
preclude having to clear the trash or search for files to delete or
clear the GWT compiler generated temp files. A 5G slack space is still
very inconvenient.
AFAI have experienced, neither windows 7/vista or linux made much performance difference except that eclipse seems to start up much slower on Windows.
Therefore, if you know how to tune your anti-virus, may be you should
tell the anti-virus software to skip scanning the workspace and project folders.
Unless you have an 8-core 12GB machine, you should disable most of windows
aero, trasparency. But you need to keep windows compositing
(otherwise you would destroy your eyesight looking at the bad fonts).
THE PROBLEM
I have a GWT project that worked fine on my old core2 machine. When I recently got a new core i7, 8GB ram (Dell XPS Ubuntu developer edition), I discovered that Eclipse hangs VERY OFTEN (about 90% of the startups hang) when I try to start debugging by clicking the browser link under the "Development Mode" eclipse view. There MUST be a thread synchronization bug (deadlock) that can only happen when the 'timing is different' from normal test cases. This fact that it's a timing bug deadlock is why it appears so "random" and has not yet been discovered and fixed. I have all the LATEST GWT at the time I'm writing this, and latest Eclipse etc.
THE WORKAROUND:
Luckily I discovered that if I copy that link and paste it into an already started instance of Firefox (outside eclipse) then there is never any hang. I'm 100% certain that this is not a problem in my code. I'm 95% certain it's a deadlock happening in GWT. So just don't click the "Development Mode" link and you'll be fine. Hope to have helped someone with this post.