| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
tools and extras
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1740289 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Implements the "transactional retire and settle immediately" option for
transactions as specified in AMQP 1.0 in the qpid::messaging C++ client.
NOTE: Transactions over AMQP 1.0 require proton 0.9 or greater. With older
versions, attempting a transactions over AMQP 1.0 will raise a link-detached
exception "Node not found: tx-transaction"
1. Added descriptor list to Variant with support in Encoder and PnData.
Required to support transactions, need to be able to create described lists.
Variant changes are source and binary compatible.
A Variant now has a Variant::List of descripors which can be numeric or string.
Nested descriptors are implemented by putting multiple descriptors in the list.
Other minor changes:
- Variant refactor: don't delete impl on every assignment.
- Add Variant constructors that take a string encoding.
(new constructors, not defaulted arguments, so the change is binary and source compatible.)
- Growable buffer support for Encoder.
- Printing described Variant prints descriptors in form @descriptor value
2. Added transaction support to AMQP 1.0 client code
Added messaging/amqp/Transaction.h,cpp: transaction logic
- communicate with coordinator, send declare/dischange messages.
- add tx state info to transfers and acknowledgements.
- Sync session after discharge.
- A transactional session automatically acks any message retrieved by fetch/get
to bring them into the transaction. This is consistent the 0-10 client.
Minor fixes to existing client code:
- Fix use of pn_drain API in C++ client to work with C++ and Java brokers.
- Make amqp::Exception derive from qpid::Exception
3. Fixes to existing broker code:
- Incoming.cpp fix: start async completion before processing message.
- Delay accept of dischage message till commit is complete.
- newSession - handle failover during session creation.
4. Added tests
interop_tests.py: transaction tests that can run against an external broker, see comments.
ha_tests.py: Enable transaction tests over AMQP 1.0.
Minor test fixes:
- brokertest.py don't set default logging if QPID_LOG env vars set.
- brokertest.py Pass kwargs to broker() create function.
- qpid-receive: capacity should never be larger than message count.
- Accept user:pass as well as user/pass in Url.
- brokertest.py: Always do a ready() check on all brokers.
If proton < 0.9 is used, transaction tests will be skipped or will downgrade to
the amqp0-10 protocol with a printed warning.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1662743 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
| |
legacystore.so is built.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1619236 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
| |
Use native python client for older (<=0.6) versions of proton.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1586646 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The HA tests were using only AMQP 0-10.
Modified the tests to use AMQP 1.0 if available (still use 0-10 if 1.0 is not available)
Fixed bugs uncovered both in the tests and in the AMQP 1.0 implementation.
Summary of changes:
- brokertest.py: configurable support for of swig vs. native and amqp0-10 vs. 1.0
- default to swig+amqp1.0 if swig is available, native+amqp0-10 otherwise
- qpidtoollibs/broker.py: enable use of swig client with BrokerAgent
- Swig python client:
- support for passing client_properties/properties.
- expose AddressHelper pn_data read/write as PnData helper class
- set sender/receiver capacity on creation
- limited disposition support - rejected messages.
- support for additional timeout parameters
- expose messaging::Logger, allow log configuration to be set from python.
- ha_tests.py:
- bind, delete policies not supported by AMQP 1.0, switched to using BrokerAgent QMF.
- pass protocol:amqp1.0 connection-option to c++ test clients (qpid-send, qpid-receive)
- TX tests forsce use of 0-10 protocol (but still with Swig client if enabled.)
- Broker fixes:
- Queue::Settings::isTemporary was set in the 0-10 SessionAdapter, moved to Broker::createQueue.
- broker::amqp::Session was always setting an exclusive owner in createQueue
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1585588 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
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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
|
| |
|
|
|
|
| |
[also remove unused files]
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1535398 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
|
|
|
|
| |
This commit disposes of the amqpc library and moves the functions into the
qpidmessaging library. Now any client that loads qpidmessaging gets amqp0-10
and amqp1.0 selectable through the connection protocol option. C++ brokers
still must load the amqp library to enable 1.0 support.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1529235 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1524669 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
On primary a PrimaryTxObserver observes a transaction's TxBuffer and generates
transaction events on a tx-replication-queue. On the backup a TxReplicator
receives the events and constructs a TxBuffer equivalent to the one in the
primary.
Unfinished:
- Primary does not wait for backups to prepare() before committing.
- All connected backups are assumed to be in the transaction, there are race
conditions around brokers joining/leavinv where this assumption is invalid.
- Need more tests.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1509423 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1503652 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
| |
(also remove final references to dead watchdog plugin)
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1494697 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1456621 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1453970 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1424141 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1383536 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
|
|
|
|
| |
Previously cluster tests would run if cluster services were running, even
if build was explicitly configured without CPG. Don't run cluster tests
unless the build is configured with CPG.
If the build is configured *with* CPG, you can still skip the CPG tests by setting
QPID_USE_CPG=no in the environment.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1326756 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1293397 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
| |
ha_tests.py depends on the python tools directory being available.
Modified it to skip the test if it is not (e.g. when running make distcheck)
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1292937 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
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1196597 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
| |
absolute.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1033740 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
|
|
| |
Reverts revisions:
r1023966 "Introduce broker::Cluster interface."
r1024275 "Fix compile error: outline set/getCluster fucntions on Broker."
r1027210 "New cluster: core framework and initial implementation of enqueue logic."
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1028055 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1027210 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1003229 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1001887 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@921517 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
|
|
| |
The v2key of cluster agents was not being passed as part of a cluster update.
This meant they were not being associated with the correct shadow connections on
the updatee. This caused inconsistencies that shut down the new broker.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@920414 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
| |
By default they don't, added BOOST_TEST_CATCH_SYSTEM_ERRORS=no to test_env.sh
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@916474 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
| |
into extras/qmf
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@910016 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@906961 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@904565 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
|
|
|
| |
clients.
cluster_tests.py: added LongTests.test_management
brokertest.py: optionally drain test process output to *.out/*.err files. On by default.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@903868 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
|
|
|
| |
Various other test fixes.
- Env vars to abstract different library location under cmake/automake.
- More consistent use of env vars test_env.sh in test scripts.
- Fix replication/replicating_exchange mismatch.
- Add --no-module-dir to prevent accidentally loading modules.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@886259 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
| |
absent.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@885759 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@885591 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
- consolidate test env vars in test_env.sh, also useful from command line.
- generate test_env.sh with autoconf/cmake to cover library location differences.
- Remove explicit mention of .libs, use $QPID_MODULE_DIR to load modules.
- Fix run_test to run valgrind under cmake
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@885557 13f79535-47bb-0310-9956-ffa450edef68
|