summaryrefslogtreecommitdiff
path: root/qpid/cpp/src
Commit message (Collapse)AuthorAgeFilesLines
* QPID-5421: HA replication error in stand-alone replicationAlan Conway2013-12-1313-158/+89
| | | | | | | | | | | | | | | | | 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
* QPID-5421: Refactor: clean up QueueObservers.Alan Conway2013-12-1313-116/+138
| | | | | | | | | | Refactor of queue observers to use the broker::Observers base class. Simplifies Queue code and makes it more consistent with other observers (BrokerObservers, ConnectionObservers.) Modified Observers base class to allow identical locking behaviour to previous impementation. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1550818 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Expanded the HA overview writeup, integrated with doxygen docs.Alan Conway2013-12-122-76/+225
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1550507 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5416: added missing export for method now used in amqp 1.0 pluginGordon Sim2013-12-111-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1550190 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5416: esure message publisher is setGordon Sim2013-12-101-0/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1549993 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5404: HA broker message duplication when deleting a queue with an ↵Alan Conway2013-12-109-97/+89
| | | | | | | | | | | | | | | 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
* NO-JIRA: Remove useless commentsAndrew Stitcher2013-12-091-6/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1549638 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5398: Fix cut 'n paste error in sys/posix/Path.cppAlan Conway2013-12-061-5/+1
| | | | | | Posix Path::IsAbsolute() function was checking for windows-style paths. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1548596 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5398: Minor improvement to log message.Alan Conway2013-12-051-1/+1
| | | | | | Fix typo in previous commit. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1548322 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5398: Minor improvement to log message.Alan Conway2013-12-051-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1548317 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5398: qpidd --acl-file does not work with a drive-prefixed path on windows.Alan Conway2013-12-055-5/+198
| | | | | | | | | | On windows, acl-file was not recognizing drive-prefixed paths (e.g. c:\foo) as absolute and was trying to interpret them relative to the brokers data-dir. This commit fixes the problem and adds a general-purpose Path class that can be a collection point for any other path-related portability problems that come up. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1548279 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3981: Windows C++ Broker fails ACL self testsAlan Conway2013-12-051-1/+11
| | | | | | | | | | | | Most failures caused by a bug in NullAuthenticator, it was not adding the default realm to user IDs that didn't already have a realm. This fixes 20 of the 23 failures for this test, 3 tests are still failing: 16: acl.ACLTests.test_connection_limits_by_ip_address ....................... fail 16: acl.ACLTests.test_connection_limits_cli_sets_all ........................ fail 16: acl.ACLTests.test_queue_per_user_quota .................................. fail git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1548268 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5396: map confusing registry GUI name to its real name: Personal -> MyClifford Allan Jansen2013-12-051-3/+7
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1548180 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5395: use newly added proton tracer callback to unify loggingGordon Sim2013-12-056-2/+67
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1548177 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5375: make Windows client certs more like their Posix counterpart, no ↵Clifford Allan Jansen2013-12-041-37/+87
| | | | | | longer restricted to SASL EXTERNAL git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1547958 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5356: stop default search for client certificate when not specifiedClifford Allan Jansen2013-12-043-5/+24
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1547951 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5388: Segmentation fault when recovering empty queue. The recovery ↵Kim van der Riet2013-12-047-19/+53
| | | | | | could not handle uninitialized journal files, which exist prior to the first write of a record to the journal. The recovery now correctly utilizes the uninitialized file. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1547921 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5387: Segmentation fault when deleting queue. Incorrect order of ↵Kim van der Riet2013-12-032-2/+1
| | | | | | operations on LinearFileController resulted in all JournalFile objects being deleted before they could be recycled to the EFP. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1547641 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5358: Checksum not implemented in record tail, not checked during read. ↵Kim van der Riet2013-12-0313-50/+211
| | | | | | Implemented the Alder-32 algorithm to check every record from the start of the header to the start of the record tail. Upon recovery, the recovered record checksum is compared to the record tail checksum. This should detect the condition where a multi-page record may have its header and tail written, but one or more of its inbetween pages may not be fully written. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1547601 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5383, QPID-5384: added some test cases for assertionsGordon Sim2013-12-031-2/+35
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1547497 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5384: special asserting logic for autodeleteGordon Sim2013-12-035-9/+35
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1547496 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5383: retain encoding information in queue propertiesGordon Sim2013-12-031-2/+12
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1547495 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5379: missing export directive for windowsGordon Sim2013-12-021-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1546952 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5379: fix security layer for 1.0 clientGordon Sim2013-11-296-3/+50
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1546628 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5378: track outstanding fetches and for receivers with zero capaicty, ↵Gordon Sim2013-11-282-1/+12
| | | | | | reissue credit correctly on reconnect git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1546415 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Fix use of intrusive_ptr.reset, not available on RHEL5.Alan Conway2013-11-281-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1546398 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5357 "Linearstore: Empty file recycling not functional": Fix which ↵Kim van der Riet2013-11-263-4/+14
| | | | | | implements the empty file check for trailing empty files. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1545563 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: add a bit more visible logging to indicate progress in reconnect ↵Gordon Sim2013-11-221-0/+2
| | | | | | attempt git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1544602 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5363: Add locks to prevent race condition in Amqp 1.0 transport handler.Charles E. Rolke2013-11-202-16/+35
| | | | | | | | | Windows clients occasionally crash on exit handling simultaneous eof() and close() on separate threads. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1543935 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: HA remove use of make_shared, not available in RHEL5 boost.Alan Conway2013-11-201-2/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1543922 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5366: qpid segfaults in qpid::ha::BrokerReplicator::disconnectedAlan Conway2013-11-202-34/+19
| | | | | | | | | | | | | | | Fix for a race condition: previously, BrokerReplicator created a separate ConnectionObserver object to forward connection events to it. However the Observers locking is such that it is possible for an event to arrive *after* calling Observers::remove (Observers copies the pointers and delivers events outside its lock.) This meant that it was possible for a call to BrokerReplicator::disconnect to be made after the BrokerReplicator was deleted. The fix is to combine BrokerReplicator and BrokerReplicator::ConnectionObserver into a single object with one lifetime that will last until it is removed from both the ExchangeRegistry and the ConnectionObservers. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1543893 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Update of ISSUES file to reflect latest JIRA numbers for ↵Kim van der Riet2013-11-191-19/+17
| | | | | | outstanding issues git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1543504 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5278 , QPID-5281: Queue flow limit validation ignores size parameters , ↵Pavel Moravec2013-11-194-88/+85
| | | | | | 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
* QPID-5355: Restore deleted management statistic.Charles E. Rolke2013-11-181-0/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1543123 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4984: Cleanup of #includesKim van der Riet2013-11-1848-1018/+810
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1543093 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5354: added testGordon Sim2013-11-181-1/+6
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1543019 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5354: ensure requested durability for dynamically created node is ↵Gordon Sim2013-11-181-1/+1
| | | | | | communicated git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1543018 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5349: qpid-proton.dll is not installed in \binCharles E. Rolke2013-11-181-2/+2
| | | | | | | ampq.cmake installed the file in \lib and not in \bin with the rest of the dlls. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1542880 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4984: Change jrnl directory to journal - aligns namespaces with journal ↵Kim van der Riet2013-11-1571-219/+180
| | | | | | structure git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1542385 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5348: add option to have to field populated automaticallyGordon Sim2013-11-157-16/+24
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1542337 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4984: Fix for recovery ambiguity issue, other code tidy-upsKim van der Riet2013-11-1481-1929/+1217
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1542066 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5341: change maximum version of proton supported to 0.6 in anticipation ↵Gordon Sim2013-11-141-1/+1
| | | | | | of a release not too different from 0.6rc1 git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1542010 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Don't need full trace for regular test runsAndrew Stitcher2013-11-141-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1541766 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5330: Typo in original checkinAndrew Stitcher2013-11-141-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1541765 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5306: Improve test wrapper to avoid using getopt for long optionsAndrew Stitcher2013-11-142-5/+41
| | | | | | | 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
* QPID-5336: Don't hardcode location of bash in shell scriptsAndrew Stitcher2013-11-1456-56/+56
| | | | | | | 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-5330: Simplify testing for presence of python testing code -Andrew Stitcher2013-11-1218-265/+78
| | | | | | | 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
* QPID-5275: HA transactions failing in qpid-cluster-benchmarkAlan Conway2013-11-1226-299/+552
| | | | | | | | | | | | | | | | | | 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
* QPID-5275: Add missing lock to ExchangeRegistry::registerExchangeAlan Conway2013-11-121-0/+1
| | | | | | | | Discovered while working on QPID-5275: ExchangeRegistry::registerExchange was not taking the write lock. Caused sporadic core dumps in ha_tests.py, tx_block_threads. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1541145 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5275: Segmentation fault in SaslFactory.Alan Conway2013-11-121-0/+2
| | | | | | | Discovered while working on QPID-5275: SecretsMap in SaslFactory.cpp was thread unsafe, added a mutex. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1541144 13f79535-47bb-0310-9956-ffa450edef68