<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/python-packages/qpid-python.git/cpp/src/qpid/ha, branch QPID-6125-ProtocolRefactoring</title>
<subtitle>git.apache.org: qpid.git
</subtitle>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/qpid-python.git/'/>
<entry>
<title>NO-JIRA: HA Remove dead code in ReplicatingSubscription.</title>
<updated>2014-09-22T19:57:33+00:00</updated>
<author>
<name>Alan Conway</name>
<email>aconway@apache.org</email>
</author>
<published>2014-09-22T19:57:33+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/qpid-python.git/commit/?id=c40d863b128b42b06f32974ace106b4075cda401'/>
<id>c40d863b128b42b06f32974ace106b4075cda401</id>
<content type='text'>
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1626882 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1626882 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
<entry>
<title>QPID-5855: Fix to JAVA Client Can not recieve message with qpid ha cluster.</title>
<updated>2014-08-29T19:29:06+00:00</updated>
<author>
<name>Alan Conway</name>
<email>aconway@apache.org</email>
</author>
<published>2014-08-29T19:29:06+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/qpid-python.git/commit/?id=eb6b6828a1e151c6da0a0e43b0ce7118b162ae1f'/>
<id>eb6b6828a1e151c6da0a0e43b0ce7118b162ae1f</id>
<content type='text'>
The original fix for this introduced a regression, running the qpid-txttest2
test against a cluster with the linear store failed. This fixes the fix.

- Run transaction commit logic when the commit completes. Report completion to the user only when
  all prior commands have completed (sync point)
- Fix missing initializer in client/amqp0_10/SessionImpl.cpp for transaction committing flag.
- Remove annoying log messages from IdSetter.h
- Skip transactional messages in prepare, don't wait till commit.
- Added fetch-timeout option to qpid-txtest2

git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1621368 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The original fix for this introduced a regression, running the qpid-txttest2
test against a cluster with the linear store failed. This fixes the fix.

- Run transaction commit logic when the commit completes. Report completion to the user only when
  all prior commands have completed (sync point)
- Fix missing initializer in client/amqp0_10/SessionImpl.cpp for transaction committing flag.
- Remove annoying log messages from IdSetter.h
- Skip transactional messages in prepare, don't wait till commit.
- Added fetch-timeout option to qpid-txtest2

git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1621368 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
<entry>
<title>QPID-6020: HA logging improvements - log prefix with status and ID.</title>
<updated>2014-08-21T20:55:51+00:00</updated>
<author>
<name>Alan Conway</name>
<email>aconway@apache.org</email>
</author>
<published>2014-08-21T20:55:51+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/qpid-python.git/commit/?id=a359ee36281f6af13b33464c8f83e2cf5674932e'/>
<id>a359ee36281f6af13b33464c8f83e2cf5674932e</id>
<content type='text'>
Fix log prefix for RemoteBackup and PrimaryTxObserver objects.
Use short UUIDs for showing UUID sets in logs.

git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1619581 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fix log prefix for RemoteBackup and PrimaryTxObserver objects.
Use short UUIDs for showing UUID sets in logs.

git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1619581 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
<entry>
<title>QPID-6020: HA logging improvements - log prefix with status and ID.</title>
<updated>2014-08-19T22:34:15+00:00</updated>
<author>
<name>Alan Conway</name>
<email>aconway@apache.org</email>
</author>
<published>2014-08-19T22:34:15+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/qpid-python.git/commit/?id=06c148479d170625ea2c67b64f7a68d0ed263127'/>
<id>06c148479d170625ea2c67b64f7a68d0ed263127</id>
<content type='text'>
Include broker status and ID in (almost) all logging messages.
Makes it much easier to track broker state and interactions.

Sundry other logging improvements including:
- Demote noisy messages to trace - connections from rgmanager status checks, searching for primary.
- Rationalise start-up messages.
- Improved queue state detail replicating subscription and queue guard initialization.
- Fail to prepare TX is error.
- Collect all primary TX errors into one.
- Fix status of catchup brokers in primary membership for logging.
- Add process name/PID info to client connection messages.
- Various minor message tweaks.

git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1619003 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Include broker status and ID in (almost) all logging messages.
Makes it much easier to track broker state and interactions.

Sundry other logging improvements including:
- Demote noisy messages to trace - connections from rgmanager status checks, searching for primary.
- Rationalise start-up messages.
- Improved queue state detail replicating subscription and queue guard initialization.
- Fail to prepare TX is error.
- Collect all primary TX errors into one.
- Fix status of catchup brokers in primary membership for logging.
- Add process name/PID info to client connection messages.
- Various minor message tweaks.

git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1619003 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
<entry>
<title>QPID-6015: HA Python QMF console raises exception due to HA subscriptions.</title>
<updated>2014-08-18T19:18:31+00:00</updated>
<author>
<name>Alan Conway</name>
<email>aconway@apache.org</email>
</author>
<published>2014-08-18T19:18:31+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/qpid-python.git/commit/?id=76f6a9421460f8df8c219655daaea829cd3afca6'/>
<id>76f6a9421460f8df8c219655daaea829cd3afca6</id>
<content type='text'>
One of the arguments in a HA subscription (qpid.ha-ids) is binary encoded data,
however it was being passed as a string type in the arguments map.  This caused
python qmf console clients to choke when they tried to utf-decode the data.

Fix is to pass the data using the vbin32 type which is intended for binary data.

git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1618712 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
One of the arguments in a HA subscription (qpid.ha-ids) is binary encoded data,
however it was being passed as a string type in the arguments map.  This caused
python qmf console clients to choke when they tried to utf-decode the data.

Fix is to pass the data using the vbin32 type which is intended for binary data.

git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1618712 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
<entry>
<title>NO-JIRA: HA Account for TX primary replication queues as HA user.</title>
<updated>2014-08-15T10:01:28+00:00</updated>
<author>
<name>Alan Conway</name>
<email>aconway@apache.org</email>
</author>
<published>2014-08-15T10:01:28+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/qpid-python.git/commit/?id=f9589e43edf16e5d31f564d1219528b87eab1380'/>
<id>f9589e43edf16e5d31f564d1219528b87eab1380</id>
<content type='text'>
Previously they were not accounted which caused ACL notice messages.

git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1618133 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Previously they were not accounted which caused ACL notice messages.

git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1618133 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
<entry>
<title>QPID-5966: HA mixing tx enqueue and non-tx dequeue leaves extra messages on backup.</title>
<updated>2014-08-08T09:24:15+00:00</updated>
<author>
<name>Alan Conway</name>
<email>aconway@apache.org</email>
</author>
<published>2014-08-08T09:24:15+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/qpid-python.git/commit/?id=0ef26b59c9a070ebcc56f451c9944d0ea69a584d'/>
<id>0ef26b59c9a070ebcc56f451c9944d0ea69a584d</id>
<content type='text'>
There were several problems:

1. Positions of transactionally enqueued messages not known to QueueReplicator, so not dequeued
   on backup if dequeued outside a TX on primary.

2. Race condition if tx created immediately after queue could cause duplication of TX message.

3. Replication IDs were not being set during recovery from store (regression, store change?)

Fix:

1. Update positions QueueReplicator positions via QueueObserver::enqueued to see all enqueues.
2. Check for duplicate replication-ids on backup in QueueReplicator::route.
3. Set replication-id in publish() if not already set in record().

git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1616704 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
There were several problems:

1. Positions of transactionally enqueued messages not known to QueueReplicator, so not dequeued
   on backup if dequeued outside a TX on primary.

2. Race condition if tx created immediately after queue could cause duplication of TX message.

3. Replication IDs were not being set during recovery from store (regression, store change?)

Fix:

1. Update positions QueueReplicator positions via QueueObserver::enqueued to see all enqueues.
2. Check for duplicate replication-ids on backup in QueueReplicator::route.
3. Set replication-id in publish() if not already set in record().

git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1616704 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
<entry>
<title>QPID-5974: HA qpid-txtest2 can bring down a cluster (JERR_MAP_LOCKED))</title>
<updated>2014-08-08T09:24:03+00:00</updated>
<author>
<name>Alan Conway</name>
<email>aconway@apache.org</email>
</author>
<published>2014-08-08T09:24:03+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/qpid-python.git/commit/?id=0ad30517d338ec17a3767699cfe8881f38e18248'/>
<id>0ad30517d338ec17a3767699cfe8881f38e18248</id>
<content type='text'>
Problem: transactional dequeues can be sent via two paths as part of the transaction and
via the normal queue replication. If journal is involved this can result result in store errors
if the normal replication path attempts to dequeue before the transaction.

Solution: this is also the case for enqueues, and we already have code in place to skip replication
of tx enqueues via the normal route. Copied the same logic for dequeues.

git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1616703 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem: transactional dequeues can be sent via two paths as part of the transaction and
via the normal queue replication. If journal is involved this can result result in store errors
if the normal replication path attempts to dequeue before the transaction.

Solution: this is also the case for enqueues, and we already have code in place to skip replication
of tx enqueues via the normal route. Copied the same logic for dequeues.

git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1616703 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
<entry>
<title>QPID-5973: HA cluster state may get stuck in recovering</title>
<updated>2014-08-08T09:23:54+00:00</updated>
<author>
<name>Alan Conway</name>
<email>aconway@apache.org</email>
</author>
<published>2014-08-08T09:23:54+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/qpid-python.git/commit/?id=fe4c2fde825a90dd1ff5abf20206cd3b95509a28'/>
<id>fe4c2fde825a90dd1ff5abf20206cd3b95509a28</id>
<content type='text'>
A backup queue is considered "ready" when all messages up to the first guarded
position have either been replicated and acknowledged or dequeued.

Previously this was implemented by waiting for the replicationg subscription to
advance to the first guarded position and wating for all expected acks. However
if messages are dequeued out-of-order (which happens with transactions) there
can be a gap at the tail of the queue. The replicating subscription will not
advance past this gap because it only advances when there are messages to
consume. This resulted in backups stuck in catch-up. The recovering primary has
a time-out for backups that never re-connect, but if they connect sucessfully
and don't disconnect, the primary assumes they will become ready and waits -
causing the primary to be stuck in "recovering".

The fixes is to notify a replicating subscription if it becomes "stopped"
because there are no more messages available on the queue. This implies that
either it is at the tail OR there are no more messags until the tail. Either way
we should consider this "ready" from the point of view of HA catch-up.

git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1616702 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
A backup queue is considered "ready" when all messages up to the first guarded
position have either been replicated and acknowledged or dequeued.

Previously this was implemented by waiting for the replicationg subscription to
advance to the first guarded position and wating for all expected acks. However
if messages are dequeued out-of-order (which happens with transactions) there
can be a gap at the tail of the queue. The replicating subscription will not
advance past this gap because it only advances when there are messages to
consume. This resulted in backups stuck in catch-up. The recovering primary has
a time-out for backups that never re-connect, but if they connect sucessfully
and don't disconnect, the primary assumes they will become ready and waits -
causing the primary to be stuck in "recovering".

The fixes is to notify a replicating subscription if it becomes "stopped"
because there are no more messages available on the queue. This implies that
either it is at the tail OR there are no more messags until the tail. Either way
we should consider this "ready" from the point of view of HA catch-up.

git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1616702 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
<entry>
<title>QPID-3921: Refactored Broker::Options into its own independent class</title>
<updated>2014-07-01T19:12:38+00:00</updated>
<author>
<name>Andrew Stitcher</name>
<email>astitcher@apache.org</email>
</author>
<published>2014-07-01T19:12:38+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/qpid-python.git/commit/?id=f302102638ff0866aa4cfa5fb761e05d3d04dc6b'/>
<id>f302102638ff0866aa4cfa5fb761e05d3d04dc6b</id>
<content type='text'>
- Now called BrokerOptions
- Added extra getters to Broker so that nothing else needs to know
  about BrokerOptions
- Significantly reduces header coupling as lots of files include
  Broker.h, but now don't need Options.h

git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1607166 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- Now called BrokerOptions
- Added extra getters to Broker so that nothing else needs to know
  about BrokerOptions
- Significantly reduces header coupling as lots of files include
  Broker.h, but now don't need Options.h

git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1607166 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
</feed>
