| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1507112 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously HA code used queue sequence numbers to identify messasges.
This assumes that message sequence is identical on primary and backup.
Implementing new features (for example transactions) requires that we tolerate
ordering differences between primary and backups.
This patch introduces a new, queue-scoped HA sequence number managed by the HA
plugin. The HA ID is set *before* the message is enqueued and assigned a queue
sequence number. This means it is possible to identify messages before they are
enqueued, e.g. messages in an open transaction.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1493771 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1485759 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
| |
Add support for the "amq.failover" exchange with new HA, to support migration of
clients that used this facility with the old cluster.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1485511 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1455236 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
|
|
|
| |
in a simpler way.
The build-define _IN_QPID_BROKER is now used for modules built in the broker. The shared-pointer
changes are conditionally compiled only for in-broker cases.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1415796 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
|
|
|
|
|
| |
A joining broker now attempts to contact all known members of the cluster and
check their status. If any brokers are in a state other than "joining" the
broker will refuse to promote. This will allow rgmanager to continue to try
addresses till it finds a ready brokers.
Note this reqiures ha-brokers-url to be a list of all known brokers, not a
virtual IP. ha-public-url can still be a VIP.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1394706 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1362104 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1361733 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
|
| |
Set alternate exchange on replicated queues and exchanges. If the exchange is
available, set it immediately. Otherwise remember what needs to be set so it can
be set when the exchange becomes available.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1361334 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1357851 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1353017 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
| |
ReplicatingSubscription syncs the primary and backup queues, and does not
re-send messages that are already on the backup.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1351481 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1351431 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
|
|
|
|
| |
The primary creates RemoteBackup object for each connected or expected
backup. On first being promoted, the new primary has a RemoteBackup
for each of the known backups at the time of the failure.
The RemoteBackup manages queue guards for its backup and
tracks it's readiness.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1349540 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
QueueGuard: implements QueueObserver to delay completion of new messages.
ReplicatingSubscription: Implements subscription, sends messages & events to backup.
These were previously combined as one. QueueGuard is now separated out
so that it can be created before the ReplicatingSubscription, in
anticipation of an expected backup connecting. This is needed for 2 reasons:
- new queues must be guarded until they are backuped up.
- after a failover, all queues must be guarded until backups are ready.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1349538 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1348113 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
| |
Pass hostname, management UUID and status in link connection arguments.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1341580 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Introduce HA broker state machien
- Inform backup queues when ready.
- Incomplete implementation of backup ready check.
- does not count correctly after a failover, see countUnready.
- Existing replicator bridges updated out of sync with BrokerReplicator initialize.
- Does not handle multi-messages responses.
- Newly promoted HA primary waits for backups to be ready before accepting clients.
- Uniform log prefixes for HA messages.
- qpid-ha tests, call qpid-ha python code directly.
- Move excluder from Backup to HaBroker, it is also used in PROMOTING.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1338889 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
| |
Takes values 'all', 'configuration', 'all'. This is the replication level to use
if a queue or exchange is created without an explicit 'qpid.replicate' argument.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1308597 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
Merged from qpid-3603-7. This is basic support for the new HA approach.
For information & limitations see qpid/cpp/design_docs/new-ha-design.txt.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1245587 13f79535-47bb-0310-9956-ffa450edef68
|