Adding vmargs to imqenv.conf
I wanted MQ to auto-startup during boot with the JVM arguments that I wanted. So I added the following line to imqenv.conf:
ARGS=-vmargs -Xms384m -vmargs -Xmx512m -vmargs -XX:+UseParallelGC
However, lib/imqinit ( which is called bin/imqbrokerd and imqcmd ) by will shown an error like this:
# sh lib/imqinit
lib/../etc/imqenv.conf: line 42: -Xms384m: command not found
If I put quotes in that line:
ARGS="-vmargs -Xms384m -vmargs -Xmx512m -vmargs -XX:+UseParallelGC"
... that error is gone, but imqbrokerd will not recognise the last JVM option. It will say:
Unrecognized VM option'+UseParallelGC"'
So I removed the quotes, and for now just live with the " command not found" error.
[797 byte] By [
j.salvo] at [2007-11-26 8:19:52]

# 2
JDK 1.5.0_07
The problem is not the JDK. The problem is the script lib/mqinit that is part of MQ. Notice the error closely again:
Unrecognized VM option '+UseParallelGC"'
Because the line added in imqenv.conf have double quotes on it:
ARGS="-vmargs -Xms384m -vmargs -Xmx512m -vmargs -XX:+UseParallelGC"
.. the lib/mqinit failed to remove the ending double quote at the end of the line, which causes the JDK to complain about the +UseParallelGC"
option.
If I remove the double quotes on that line, you get:
# sh lib/imqinit
lib/../etc/imqenv.conf: line 42: -Xms384m: command not found
... which is the workaround I am using now, since it appears that MQ still runs with the correct option.
It is an annoyance rather than a real bug.