summaryrefslogtreecommitdiff
path: root/qpid/cpp/etc/qpidd.in
Commit message (Collapse)AuthorAgeFilesLines
* QPID-5942: qpid HA cluster may end-up in joining state after HA primary is ↵Alan Conway2014-07-311-35/+58
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | killed There are two issues here, both related to the fact that rgmanager sees qpidd and qpidd-primary as two separate services. 1. The service start/stop scripts can be called concurrently. This can lead to running a qpidd process who's pid is not in the pidfile. rgmanager cannot detect or kill this qpidd and cannot start another qpidd because of the lock on the qpidd data directory. 2. rgmanager sees a primary failure as two failures: qpidd and qpidd-primary, and will then try to stop and start both services. The order of these actions is not defined and can lead to rgmanager killing a service it has just started. This patch makes two major changes to the init scripts: 1. Uses flock to lock the sensitive stop/start part of the scripts to ensure they are not executed concurrently. 2. On "stop" the scripts check if a running qpidd is primary or not. "qpidd stop" is a no-op if the running broker is primary, "qpidd-primary stop" is a no op if it is not. This ensures that a broker will be stopped by the same stream of service actions that started it. Minor changes in this patch: - better logging of broker start-up and shut-down sequence. - qpid-ha heartbeat use half of timeout option. - add missing timeouts in qpid-ha. Notes: This changes the behavior of 'clusvcadm -d <qpidd-service>' on the primary node. Previously this would have stopped the qpidd service on that node, killed the qpidd process and relocated the primary service. Now this will stop the qpidd service (as far as rgmanager is concerned) but will not kill qpidd or relocate the primary service. When the primary is relocated the qpidd service wil not be able to re-start on that node until it is re-enabled with 'clusvcadm -e'. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1614895 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5719: HA becomes unresponsive once any of the brokers are SIGSTOPedAlan Conway2014-07-181-2/+14
| | | | | | | | | Fixed typo in qpidd script that was causing this not to work if a backup was SIGSTOPed. Also fixed bug where data-dir setting in qpidd.conf was being ignored. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1611790 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5719: Fix unintentional dependency on qpid-ha for non-HA installations.Alan Conway2014-04-281-3/+8
| | | | | | qpidd init script should not use qpid-ha if it is not installed. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1590777 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5719: HA becomes unresponsive once any of the brokers are SIGSTOPedAlan Conway2014-04-241-15/+19
| | | | | | | | | | | | | | | | | | | | | | | | - Added timeout to qpid-ha. - qpidd init script pings broker to verify it is not hung. - updated documentation in qpid/doc/book/src/cpp-broker/Active-Passive-Cluster.xml. The new results for the cases mentioned in the bug: a] stopped ALL brokers: rgmanager restarts the entire cluster but data is lost. Equivalent to killing all the brokers at once. This does not affect quorum because only qpidd services are affected, not other services managed by cman. b] stopped the primary: rgmanager restarts the primary after a timeout and promotes one of the backups. c] stopped a backup: rgmanager restarts the backups after a timeout. Clients that are actively sending messages may see a delay while backup is restarted. Note you need to set link-heartbeat-interval in qpidd.conf. The default is very high (120 seconds), it should be set lower to see recovery from sigstop in a reasonable time. See the updated documentation in qpid/doc/book/src/cpp-broker/Active-Passive-Cluster.xml. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1589807 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5711: HA cannot promote primary if SASL security is enabled.Alan Conway2014-04-231-3/+7
| | | | | | | | | | | | Updated the qpid-ha tool and qpidd init scripts to handle SASL authentication. The qpid-ha script as as called by the qpidd-primary init script now reads authentication settings from the qpidd.conf file and uses them to connect to the local broker. - qpidd-primary script respects prefix: use installed location for qpidd script, not "service" call - qpid-ha added --config option qpid-ha options to use qpidd.conf for local broker connection. - qpid-ha --all use user/pass for each broker. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1589391 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5336: Don't hardcode location of bash in shell scriptsAndrew Stitcher2013-11-141-1/+1
| | | | | | | As bash isn't specified by POSIX its location is variable. Specifically under BSDs it isn't found in /bin/bash. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1541763 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5035: Revert change 1510657, which incorrectly altered the config ↵Justin Ross2013-10-151-1/+2
| | | | | | precedence git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1532542 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5035: Respect data-dir setting from config fileJustin Ross2013-08-051-2/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1510657 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4733: Fix cmake installation of init scriptsAlan Conway2013-04-101-6/+6
| | | | | | | | | - Install both qpidd and qpidd-primary init scripts. - Fix path substitution to use absolute paths. - Fix substitution to work on cmake and automake. - Set executable permissions for init scripts. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1466645 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3603: Minor improvements to HA tests, documentation and examples.Alan Conway2012-04-161-3/+4
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1326755 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3603: Substitute installation directories in qpidd init scripts.Alan Conway2012-03-271-0/+118
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1306007 13f79535-47bb-0310-9956-ffa450edef68