| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
| |
tests and documentation
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1563866 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
| |
page queue files. If neither data dir nor paging dir are set then error
on any attempt to create a paged queue.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1563012 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
| |
channels.
Fix link error (incorrect libraries listed) in ha_test_max_queues on windows.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1561754 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
channels.
The problem:
- create cluster of 2 brokers.
- create more than 32768 queues (exceeds number of channels on a connection)
- backup exits with critical error but
- client creating queues receives no error, primary continues with unreplicated queue.
The solution: Primary raises an error to the client if it attempts to create
queues in excess of the channel limit. The queue is not created on primary
or backup, primary and backup continue as normal.
In addition: raised the channel limit from 32k to 64k. There was no reason for
the smaller limit. See discussion: http://qpid.2158936.n2.nabble.com/CHANNEL-MAX-and-CHANNEL-HIGH-BIT-question-tp7603121p7603138.html
New unit test to reproduce the issue, must create > 64k queues.
Other minor improvements:
- brokertest framework doesn't override --log options in the arguments.
- increased default heartbeat in test framework for tests that have busy brokers.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1561206 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
| |
- So just after the previous checkin Gordon changed the python
code. This made me think that the python install needs to have
the dependencies!
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1561130 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
| |
- Use an intermediate build area in the build area not in the source.
-- With this change the source tree is now completely untouched during
a build.
- Fiddle with CMake so that the python install into the build area doesn't
happen on every build.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1560851 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1560692 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Don't use uuid_compare() as it will get the wrong version of the
function under FreeBSD which has a uuid library build into libc with
different function signatures from libuuid but some overlapping names.
- Reorganise the uuid code to limit the used external symbols to uuid_generate(),
uuid_parse(), uuid_unparse()
- Minimise the framing::Uuid code so that it is a simple wrapper around types::Uuid
- Use uuid_generate() as the symbol to search in CMake (uuid_compare() isn't used
in qpid anymore).
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1559017 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
| |
qpid-send/qpid/receive are useful utilities in their own right and
not just used for testing so install them in an easily accessible
location.
Patch from Irina Boverman
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1558193 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Heartbeats ignored when opening a connection, could hang indefinitely
Need to cover 3 cases (test included):
- Connect sucessful but then broker stalls.
- Connect to a stalled broker that never responds.
- Fail-over to a stalled broker that never responds
All cases are handled by the following fixes to driver.py:
- Check for heartbeats even before engine._connected since we may time out
before receiving open-ok if the peer is stalled and never sends data.
- Set _last_in and _last_out so that we time heartbeats from the start of the
connection if no data is ever sent or received.
- Call self.update_status in Driver.timeout to detect connection closed due to
heartbeat timeout (rather than a readable or writeable event.)
Make update_status a no-op if engine or transport are not yet set up.
- Don't consider reconnect complete in connect(), wait till we get the open-ok.
See the comment on Driver._check_retry_ok()
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1556971 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1556344 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
| |
Previosly the qpid/python code was being installed only during cmake
configuration phase and was not updated if the python code changed later. Added
a custom target to run setup.py whenever make is run. setup.py is smart enough
not to do un-necessary work if the python files have not changed.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1555989 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1555202 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
| |
assume it is utf8)
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1552401 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
| |
queues.
Primary::opened was not checking if the primary was ready after a knonw backup
reconnected, only when a replicated queue became ready. Thus if there were
no replicated queues the primary never became ready.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1552025 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1551304 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
There were replication errors because with stand-alone replication an IdSetter
was not set on the original queue until queue replication was set up. Any
messages on the queue *before* replication was setup had 0 replication IDs. When
one of those messages was dequeued on the source queue, an incorrect message was
dequeued on the replica queue.
The fix is to add an IdSetter to every queue when replication is enabled.
The unit test ha_tests.ReplicationTests.test_standalone_queue_replica has been
updated to test for this issue.
This commit also has some general tidy-up work around IdSetter and QueueSnapshot.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1550819 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
alt-exchange
The old code ran auto-delete on the backup on disconnect. This reroutes
messages onto the alt queue with incorrect replication IDs from the original
queue, and then replicates duplicate rerouted messages from the primary. The
solution is to process auto deletes on the new primary and let them replicate to
the backups.
- Move all auto-delete logic into QueueReplicator
- Primary process auto-delete on QueueReplicator as part of promotion.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1549844 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1549638 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1547497 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
| |
Creating a queue with invalid settings results in no queue but only its management object exists
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1543449 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1543019 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1541766 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1541765 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
| |
Using getopt with long options is a gnu extension and so best avoided
for portability reasons.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1541764 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
| |
this makes it much easier not to call the python testing code
when it isn't available
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1541241 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The test was failing due to incorrect handling of the transaction lifecycle:
- Failing to handle the automatic rollback of the empty TX at session close.
- Deleting the tx-q before all backups were finished with it.
The fixes include
- Make tx-q auto-delete, deleted only when the TxReplicators cancel their subscriptions.
- Use markInUse/releaseFromUse on the primary to keep the tx-q until the primary is done.
- Count TxReplicators for auto-delete (unlike normal QueueReplicators)
- Improved error handling and log messages
- Handle *incoming* exceptions on a federation link by passing to ErrorListener
- QueueReplicator catches incoming not-found and resource-deleted exceptions
- close the backup bridge, handle race between subscribe and delete.
- Simplify QueueSnapshots, remove need for snapshot map.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1541146 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
| |
on demand if they match the specified pattern
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1541059 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1541058 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
| |
object has no attribute 'name'"
This was due to a race condition where a session was deleted while the QmfAgent
was looking it up.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1540171 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1540136 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1539777 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
| |
- This meshes nicely with the Jenkins CI system which can better
display tests results generated in XML.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1539686 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1539511 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add options to run_test script:
--working-dir - run the test in this directory
--build-dir - set the top of the build tree
--source-dir - set the top of the source tree
--python - run a python test
--start-broker - start/stop broker before and after test
--broker-options - allow non default broker options
Remove a bunch of now obsolete testing related scripts
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1539510 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
| |
(The tests for the xml exchange will obviously fail, but at least
you can run anything else you might have been interested in)
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1539505 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1538656 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1538627 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1537889 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1537579 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
| |
Removed test "NAME" from qpid/cpp/src/tests/legacystore/CMakeLists.txt.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1537512 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1537497 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PrimaryTxObserver::prepare used to block pending responses from each backup. With
concurrent transactions this can deadlock the broker: once all worker threads
are blocked in prepare, responses from backups cannot be received.
This commit generalizes the async completion mechanism for messages to allow
async completion of arbitrary commands. It leaves the special-case code for
messages undisturbed but adds a second path (starting from
SessionState::handleCommand) for async completion of other commands.
In particular it implements tx.commit to allow async completion.
TxBuffer is now an AsyncCompletion and commitLocal() is split into
- startCommit() called by SemanticState::commit()
- endCommit() called when the commit command completes
TxAccept no longer holds pre-computed ranges, compute fresh each time.
- Avoid range iterators going out of date during a delayed commit.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1536754 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
| |
Switched from shared_ptr to intrusive_ptr for TxBuffer and DtxBuffer.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1536752 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1536751 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Move to cmake 2.6 as minimum required version
(2.4 is extremely long in the tooth now)
* Add control over building individual language bindings
* Make settings you don't usually want to change advanced
so they are hidden by default
* Changed to a uniform naming scheme for options:
** Options controlling what to build are all BUILD_
** Options controlling features of he build are ENABLE_
** Options controlling internal aspects of the qpid runtime are QPID_
* Respect the BUILD_TESTING option so that we won't build the
tests unless it is set (it is by default)
* If we don't find the boost_unit_test_framework then don't fail,
just don't build the unit tests (this is motivated by one of the
Apache Jenkins ubuntu builders which has this set up)
* Tidied up some of the detection of external dependencies to make it
more idiomatic cmake (but there is more to do here)
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1536329 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
| |
separately
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1535750 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
|
|
| |
[also remove unused files]
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1535398 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1535389 13f79535-47bb-0310-9956-ffa450edef68
|