summaryrefslogtreecommitdiff
path: root/cpp/src/qpid
Commit message (Collapse)AuthorAgeFilesLines
* QPID-5539: Separate credential processing for re-use in AMQP1.0 SSL transport.Clifford Jansen2014-02-053-255/+363
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1564611 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5528: HA add missing QPID_BROKER_EXTERN declarations.Alan Conway2014-02-031-4/+4
| | | | | | | Missing from previous commit r1564010 | QPID-5528: HA Clean up error messages around rolled-back transactions. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1564120 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5528: HA Clean up error messages around rolled-back transactions.Alan Conway2014-02-0315-76/+279
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A simple transaction test on a 3 node cluster generates a lot of errors and rollback messages in the broker logs even though the test code never rolls back a transaction. E.g. qpid-cluster-benchmark -b 20.0.20.200 -n1 -m 1000 -q3 -s2 -r2 --send-arg=--tx --send-arg=10 --receive-arg=--tx --receive-arg=10 The errors are caused by queues being deleted while backup brokers are using them. This happens a lot in the transaction test because a transactional session must create a new transaction when the previous one closes. When the session closes the open transaction is rolled back automatically. Thus there is almost always an empty transaction that is created then immediately rolled back at the end of the session. Backup brokers may still be in the process of subscribing to the transaction's replication queue at this point, causing (harmlesss) errors. This commit takes the following steps to clean up the unwanted error and rollback messages: HA TX messages cleaned up: - Remove log messages about rolling back/destroying empty transactions. - Remove misleading "backup disconnected" message for cancelled transactions. - Remove spurious warning about ignored unreplicated dequeues. - Include TxReplicator destroy in QueueReplicator mutex, idempotence check before destroy. Allow HA to suppress/modify broker exception logging: - Move broker exception logging into ErrorListener - Every SessionHandler has DefaultErrorListener that does the same logging as before. - Added SessionHandlerObserver to allow plugins to change the error listener. - HA plugin set ErrorListeners to log harmless exceptions as HA debug messages. Unrelated cleanup: - Broker now logs "incoming execution exceptions" as debug messages rather than ignoring. - Exception prefixes: don't add the prefix if already present. The exception test above should now pass without errors or rollback messages in the logs. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1564010 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5519: ACL property/properties for paged queues - fixed typo, added ↵Pavel Moravec2014-02-031-2/+2
| | | | | | tests and documentation git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1563866 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5534: [C++ broker] Headers exchange can route a message to one queue ↵Pavel Moravec2014-02-031-1/+6
| | | | | | multiple times git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1563863 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5519: ACL property/properties for paged queuesPavel Moravec2014-02-024-1/+61
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1563628 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5121: Store module does not raise exception when attempting to enqueue ↵Pavel Moravec2014-02-021-2/+4
| | | | | | a message bigger than the journal size git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1563613 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5532: [C++ broker] Add debug log when timeouting DTX transactionPavel Moravec2014-02-011-0/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1563403 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5485: If no directory for paging file is enabled print warning (as ifAndrew Stitcher2014-01-318-15/+12
| | | | | | | memory mapped files were not supported) but still create a queue. - Also improve DataDir const correctness. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1563256 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5485: Fixes to broken original checkinAndrew Stitcher2014-01-312-4/+5
| | | | | | | - Fix signatures of dummy windows memory mapped file implementation - Fix detecting no data dir git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1563152 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5529: remove failed send from delivery bufferGordon Sim2014-01-311-5/+11
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1563122 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5485: By default use a subdirectory of the data dir called "pq" forAndrew Stitcher2014-01-308-21/+39
| | | | | | | 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/qpid@1563012 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Minor rationalization of log statement priorities.Alan Conway2014-01-276-13/+10
| | | | | | | | | Demote "backup of queue x connected to y" from info to debug. Tighten up redundant 'notice' messages around promotion of primary. Promote 'DTX not implemented' to warning Misc. other minor adjustments. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1561833 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Minor refactor to improve code safety: calling shared_from_this on ↵Alan Conway2014-01-2711-31/+64
| | | | | | | | | | | | | | creation. Previous anti-pattern: Classes need to call shared_from_this during creation, but can't call it in the ctor so had a separate initiailize function that the user was required to call immediately after the constructor. Possible for user to forget. Improved pattern: Introduce public static create() functions to call constructor and initialize, make constructor and initialize private. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1561828 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5513: HA backup fails if number of replicated queues exceeds number of ↵Alan Conway2014-01-247-9/+102
| | | | | | | | | | | | | | | | | | | | | | | | | 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/qpid@1561206 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5509: release messages that have not yet been fetched when closing receiverGordon Sim2014-01-232-11/+17
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1560718 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5488: Allow for not enough bytes initially received by client for ↵Andrew Stitcher2014-01-232-2/+6
| | | | | | protocol init git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1560575 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5503 implement nextReceiver()Gordon Sim2014-01-227-3/+33
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1560394 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5501: implement missing qmf operationsGordon Sim2014-01-229-4/+122
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1560393 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5501: raise error if topic of given name already existsGordon Sim2014-01-221-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1560307 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5498: restore expiration on paged messagesGordon Sim2014-01-214-11/+34
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1560126 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5497: implement Session::sync()Gordon Sim2014-01-213-2/+16
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1560125 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5488: Fix Amqp protocol version printingAndrew Stitcher2014-01-172-9/+9
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1559251 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5486: Creating paged queue can overwrite existing qpidd filesPavel Moravec2014-01-171-2/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1559090 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5489: Uuid code improvementsAndrew Stitcher2014-01-179-172/+27
| | | | | | | | | | | | | - 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/qpid@1559017 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5487: [linearstore] Replace use of /dev/urandom with c random generator ↵Kim van der Riet2014-01-165-31/+28
| | | | | | calls git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1558913 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5486 Creating paged queue can overwrite existing qpidd filesPavel Moravec2014-01-161-0/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1558806 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5485 Deleting paged queue does not remove underlying filePavel Moravec2014-01-165-0/+18
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1558790 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5484 [linearstore] Poor performance relative to legacystore. Partial ↵Kim van der Riet2014-01-152-2/+9
| | | | | | fix: The use of /dev/random exhausts the kernel's supply of non-deterministic random data, and calls to read from it block until enough is available. It has been determined that /dev/urandom is good enough for this use-case (Journal serial numbers), and does not suffer from blocking. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1558592 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Removed linear/legacy store CMake checks for uuid libraryAndrew Stitcher2014-01-151-1/+1
| | | | | | | - The stores do not directly depend on the library but rather use the platform indirection in qpid to get to uuid capabilities. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1558591 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5483: [linearstore] Recovery of journal with partly written record ↵Kim van der Riet2014-01-1511-139/+247
| | | | | | fails with "JERR_JREC_BADRECTAIL: Invalid data record tail" error message git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1558589 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5482: HA Backup becomes useless if a connection-forced error is raised.Alan Conway2014-01-155-20/+39
| | | | | | | | | | | Backup will now shut-down with critical error if it receives a connection-forced while trying to connect to the primary so the problem is obvious. ha/StatusCheck: don't use the HaBroker outside the StatusCheck constructor as it may be deleted. Avoids core dump if broker shuts down early while status check is ongoing. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1558538 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5473: Recovery where last record in file is truncated (ie spans files), ↵Kim van der Riet2014-01-122-2/+3
| | | | | | but following file is uninitialized causes crash git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1557620 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5469: link should not override a topic policy specifying autodeletionGordon Sim2014-01-101-1/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1557280 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5468: fix handling of delete-if-unused for sending linksGordon Sim2014-01-101-5/+6
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1557279 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5467: fix handling of delete-on-closeGordon Sim2014-01-104-8/+25
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1557272 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5463: make dynamic nodes auto deleted by defaultGordon Sim2014-01-104-4/+9
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1557262 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5454: Sporadic core dump in ↵Alan Conway2014-01-091-2/+3
| | | | | | | | | | | ha_tests.ReplicationTests.test_auto_delete_failover Due to race condition Bridge::cancel using a deleted Connection object. If the bridge is being cancelled because it is about to be created on a new connection, then it should not attempt to send a cancel to the remote peer since that connection is no longer valid. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1556966 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5460: [linearstore] Recovery of store which contains prepared but ↵Kim van der Riet2014-01-0912-131/+132
| | | | | | incomplete transactions results in message loss git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1556892 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5457: support for messages composed of multiple transfersGordon Sim2014-01-093-14/+35
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1556787 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5451: remove unnecessary notice loggingGordon Sim2014-01-071-6/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1556163 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Remove out of date qpid/cpp/src/qpid/ha/README.mdAlan Conway2014-01-061-98/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1556032 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5418: Prevent qpidd from loading multiple store modules - Patch from ↵Charles E. Rolke2014-01-061-0/+6
| | | | | | | | | | Ernie Allen Approved in https://reviews.apache.org/r/16573/ git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1556014 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5415: Implement control of internal log output in qpid::messaging APIAndrew Stitcher2014-01-036-19/+233
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1555202 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5427: Critical log messages should not ever be disabledAndrew Stitcher2014-01-031-0/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1555201 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5447: check whether exchange type was actually specified before raising ↵Gordon Sim2014-01-033-3/+9
| | | | | | error git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1555106 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5446: fix typo in special property nameGordon Sim2014-01-021-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1554785 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5444: Recovering from qpid-txtest fails with "Inconsisntent TPL 2PC ↵Kim van der Riet2013-12-235-9/+9
| | | | | | count" error message git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1553148 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Rename Message_ostream.h/.cpp to Message_io.h/.cpp.Alan Conway2013-12-201-1/+1
| | | | | | Allow for addition of istream operator in future. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1552780 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5422: DTX test failure, and some tidying up of code in JournalImpl.cpp/hKim van der Riet2013-12-2018-303/+407
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1552772 13f79535-47bb-0310-9956-ffa450edef68