Add LSB headers to init script to fix problems when setting up ActiveMQ
as a daemon with chkconfig on RHEL and clones.
Signed-off-by: Gregor Zurowski <gregor@zurowski.org>
Adding support for auto detection of wire protocols over a transport.
OpenWire, AMQP, STOMP, and MQTT can all be detected and the broker
will properly handle each one over a given Transport. Currently
auto TCP, NIO, SSL, and NIO+SSL transports can handle auto-detection
of the wire format and client but support could be added in the
future for other transports like websockets.
The previous permission of the <activemq-install-dir>/bin/env file
(755) caused some problems on systems where the
<activemq-install-dir>/bin/ directory is part of the PATH variable.
The executable "env" is also available of all common unix platforms.
If <activemq-install-dir>/bin/ has precedence in the PATH environment
variable this causes lots of unexpected problems.
In future it would be a good idea to relocate the file to the
<activemq-install-dir>/conf directory.
- added more reliable quoting
- improved reliability of stopping
- improved management of concurrent stop processes
- added a "kill" option which terminates the daemon in a rude way
Reduce the default memory minimal overhead of activemq from 1G to 64M to
ensure that activemq does not revoke to work in small environments.
If a larger process heap than 64M is needed the jvm grows up to 1GB.
Conflicts:
assembly/src/release/bin/env
This commit adds:
- some quoting of variables to prevent problems with unusual paths
- sets some default variables to prevent problems
- adds some function and helptext documentation
this adds a pidfile which contains the pid of the running shellscript if
activemq is run by "console". This prevents problems if someone tries to
to use i.e. the start/stop options while some is debugging activemq in
foreground mode.
This adds a better output for some tasks if the broker is not running.
The user gets the information that the broker is currently not running.
Users are confused if they see a java stacktrace on invoking commands -
often they do not read error output in detail.
This change respects that the script can also be used to contact remote
brokers - if ACTIVEMQ_QUEUEMANAGERURL is defined you get the regular
stacktrace, because the script cannot know about the state if a remote
broker.
In >98% of all cases this script controls local instances - we should
help the common user!