I' m using Jboss-eap-5.1. when I trying to change memory parameters through run.conf.bat, it is not change. when I run the server after doing changes i saw through Java Visual VM, changes are not applied. How can I change the memory sizes in Jboss-eap-5.1
This shows you how I do the changes (JAVA_OPTS="-Xms128m -Xmx512m )
Solved it. Before run the server through run.bat command need to run the run.conf.bat file. Then system will initialize the parameters in run.conf.bat file
Related
Is it possible to set an environment variable for the current run of Eclipse ( RAD )?
Here is my situation
I have RAD 8.5 and RAD 9.0 installed on my box. It stopped working all of a sudden last week. It wouldn't even come up. When I checked the logs, both the versions had below error in the logs
java.lang.NoClassDefFoundError: com.mercury.ftjadin.hooks.interfaces.WToolkitHookQTJA
After some research I also found out that it is caused by HP's product that was installed on my box ( It was done as a corporate push and I wasn't even aware of it ).
Further research also revealed that there are about 4 environment variables that have a conflict with Eclipse and should be removed / blanked out for RAD to work. This will of course cause the HP product to not work.
So, I was wondering if there is a way to set these to blank in eclipse.ini file for each of the RADs or as part of the shorcut of RAD which is
C:\Software\RAD90\eclipse.exe -product com.ibm.rational.rad.product.v9.ide -showlocation -nosplash -clean
but not blank them out in the Environment Variables definition
This way, I will be able to use both the products without having to save the variable values between RAD and HP Mercury product usages and do not have to do a copy / paste every time which is prone to user errors / mistakes.
Hope the question makes sense. Please let me know, if I need to clarify anything.
You can start eclipse (for example RAD) from eclipse (for example a minimal Java plugin development) and in that case, you have the option to set the environment variables you want to use.
You have to set the target environment to the RAD instance and create a run configuration with the proper environment.
I know, this is less than ideal, but should work.
Another option would be the unsetting env variables (locally) in a batch file:
set var=
Though I do not know whether it would work or not.
This page helped my situation
Instead of playing with registry I took an option of batch
These suggestions will allow to work around this situation even with the environment variables in place and with corresponding values. Note: Conflicting application will not be recognized in a java context because it is being excluded from the java support mechanism.
Impact: Excludes Add-ins support from hooking to conflicting application executable via Windows Registry Editor
Requirement: The application must be started by an EXE file, except Java.exe/Javaw.exe/jpnlauncher.exe
Instructions:
a. Locate the executable filename of the application conflicting with add-in(s) support. Either use the Task Manager or the Microsoft Process Explorer.
b. Open Windows Registry Editor.
c. Navigate to: HKEY_LOCAL_MACHINE\SOFTWARE\Mercury Interactive\JavaAgent\Modules
For 32bits applications on Windows x64:
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Mercury Interactive\JavaAgent\Modules
d. Create a DWORD value with the name of the conflicting software executable filenmae and set the value to 0.
Impact: Does not load Java Support for specific launched session
Requirement: Application be launched using a batch file
Instructions:
a. Create a batch file (.bat)
b. Copy/Paste below coding before executing launching of Java application.
#ECHO off
Set _JAVA_OPTIONS=
Set JAVA_TOOL_OPTIONS=
Set IBM_JAVA_OPTIONS=
This approach will disable the java environment variables for the run session of the .bat file. Once batch execution closes, environment variables changes are lost.
I created a simple console application that I run from Eclipse (right clicking on the file and selecting run as Java application.) I stuck a sleep in there so I can ensure that the process is still running when I start the Aquire Heap Dump Dialog. I start the dialog, hit refresh, and there are no local processes listed.
I checked Eclipse's error log and it only reports that it had problems listing the IBM VM processes (the HPROF one is configured and working fine.)
What am I doing wrong?
Why not create the heap dump from your program code?
https://blogs.oracle.com/sundararajan/entry/programmatically_dumping_heap_from_java
Or when that runs into security issues from here:
create heap dump from within application, without HotSpotDiagnosticMXBean
I used that to take a heap dump after a fixed number of iterations in my JUnit tests, all that is left to do is open the dumps in Eclipse MAT and find the cause of the memory leak :-(
I faced same issue and after googled I found this solution.
Specify jdk path in "Acquire Head Dump" -> "Configure..." -> Select "HPROF jmap dump provider" -> "-jdkhome" -> speficy jdk path by default it should be
"C:\Program Files\Java\jdk1.8.0_102" or your jdk location.
I hope it works for you.
So I created a Websphere Application Server in Eclipse and pointed it at my WAS_HOME and the profile I created. Whenever I try to start the server, it starts fine and according to the log I see...
[2/22/12 14:16:25:037 EST] 00000000 WsServerImpl A WSVR0001I: Server server1 open for e-business
However, Eclipse says it is still waiting to start, typically it sticks at 23%. Eventually it times out saying it couldn't start, however, the instance is still up and running fine.
How do I get it to recognize the running instance?
Your workspace folder/name could be the issue.
or for me it was the WAS installation itself. When I moved it to C:\was8 everything started to work properly. The default puts it into c:\Program Files... and that was hanging at 23%
a. Please use websphere jre to replace sun hotspot vm to launch the eclipse, like below setting in the eclipse.ini
-vm
D:/IBM/WebSphere/AppServer/java/bin/javaw.exe
b. Please make sure there is not a specail character (like 23%) in the websphere path or eclipse workpsace.
Recently, I've got the same problem with Eclipse Luna and Websphere Developer Tools... The problem was the eclipse proxy configuration
Increase the initial and max heap sizes of the VM that is loading Eclipse.
I've developing an application in Eclipse 3.6 and am trying to get some simple execution profiling statistics with TPTP (basically just the execution time analysis).
However, the profiling is running so slowing that it's barely possible to get a successful run, Eclipse sometimes crashes with OutOfMemoryErrors and I highly doubt that any of the execution time statistics are anything close to what I normally get. I guess it's running about 100th of normal speed, using 100% of a CPU.
Any ideas as to what could be causing this and how I could fix it?
System is Core i7 980 running Windows 7 64-bit, JVM is Sun JDK 1.6.20 in case that is relevant
Did you try with this eclipse.ini file for some optimization and hopefully and better runtime experience?.
Note: keep the Java1.6u20, or make sure ti use the 1.6u21 build 7 (not build 6).
That way, you will ensure the --launcher.XXMaxPermSize parameter (that you should set to an high value in order to facilitate your session) will be correctly recognized.
please try this
following is the instructions to switch built in profiling database with newer version
close your eclipse ide
browse to your-workspace-folder/.metadata/.plugins/org.eclipse.dltk.core.index.sql.h2
copy all files under this folder to another location as a backup
and delete all files with .db extension
download latest version of H2 database for All Platforms zip from this link
goto your-eclipse-folder\plugins\ and find the file something like org.h2_1.1.117.v201105142352.jar and copy it to some place as a backup
extract the zip file downloaded on step 5
you will find the file h2-1.3.170.jar under h2\bin\ folder
rename h2-1.3.170.jar to the file name from the step 6 which is org.h2_1.1.117.v201105142352.jar
after this you can put the file renamed in step 9 into the folder your-eclipse-folder\plugins\
you can try to start your eclipse
please let me know if this makes your eclipse run faster
I cannot get JBoss Portal to start from Eclipse, though the AS alone starts fine, and the Portal starts correctly as well, when started from the command line as opposed to from within Eclipse. I'm running in Windows, with 3GB. Suggestions? Thank you.
I've spend hours to discover this, and almost gave up and started to use JBoss out of Eclipse.
In order to increase your JBoss vmargs when starting it from Eclipse you have to change JBoss launch configuration. If you change standalone.conf, nothing happens because Eclipse doesn't use it.
So, to change JBoss vmargs in Eclipse, you have to go to "Servers" tab, right click on your Jboss instance, and select "Open".
It will appear a new window. In the first section, you have a option: "Open launch configuration". When you click there, you'll see the textbox to change vmargs.
Hope this helps you!
There are different types of OutOfMemory errors:
java.lang.OutOfMemoryError: Java heap space
Increase the -Xms and -Xmx. I'd make sure they are set at least 256m and generally it's a good idea to set them to the same value.
java.lang.OutOfMemoryError: PermGen space
Add either -XX:+CMSPermGenSweepingEnabled or increase the PermGen size: -XX:PermSize=256m
java.lang.OutOfMemoryError: GC overhead limit exceeded
Add more heap, the garbage collector can't free enough memory with each cycle. Also try turning on GC logging.
java.lang.OutOfMemoryError: unable to create new native thread
Decrease your heap :) This means that you have too much memory allocated to the heap that the OS doesn't have enough memory to create threads..
Two last things, the above can be configured in jboss/bin/run.conf.
Also when starting JBoss see what -X parameters are being passed to the JVM, it prints this information by default, verify that it's what you expect it to be.
You need to increase the memory you're allocating to Java, in particular heap space and PermGen. This article is highly relevant. It mentions that this issue often occurs with Eclipse and JBoss (since both are fairly large), and provides a solution (adjusting the command-line flags).
What are you using for running portal from eclipse? Maybe Jboss tools can help you
http://www.jboss.org/tools
According to my experiments, all options of vmargs set in eclipse.ini, plays only once - when creating a new workspace. When you want to change the options in the existing workspace, use run/debug configuration as in https://stackoverflow.com/a/10814631/715269. vmargs in ini won't be read any more.
Be careful, you should set -XX:MaxPermSize=...M, not -XX:PermSize=..., the last sets minimal, starting PermSize.
ad. Jeremy. It is senseless to put mins and maxs to the same value. You deprive Eclipse of adaptability. -Xms and -Xmx ( heap) and PermGen and MaxPermGen should be different. (MaxPermGen =256 by default)