summaryrefslogtreecommitdiff
path: root/qpid/cpp/src
Commit message (Collapse)AuthorAgeFilesLines
* QPID-5648: restore processing the ConnectionSettings protocol, lost ↵Clifford Allan Jansen2014-04-022-5/+9
| | | | | | inadvertently in QPID-5568 git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1583901 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5362: Bugfix for qpid_qls_analyzeKim van der Riet2014-04-012-11/+22
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1583778 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5651: [C++ broker] segfault in ↵Pavel Moravec2014-03-281-0/+1
| | | | | | qpid::linearstore::journal::jdir::clear_dir when declaring durable queue git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1582730 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5641: [legacystore] Valgrind reports memory leaks on older store testsKim van der Riet2014-03-215-1727/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1579963 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5586: Introduce SessionClosed exceptionAndrew Stitcher2014-03-193-1/+5
| | | | | | | - use it for qpid::messaging::Session::nextReceiver to ensure that closing a connection/session can be distinguished. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1579367 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5362: No store tools exist for examining the journals - Bugfix and ↵Kim van der Riet2014-03-185-124/+142
| | | | | | reorganization of qls python modules. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1578899 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5631: Adjust for changes in Proton detection files exported by proton.Andrew Stitcher2014-03-162-62/+18
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1577982 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5632: Added cmake config files to the install areaAndrew Stitcher2014-03-163-1/+81
| | | | | | For use by other projects using cmake that want to simply detect qpid libraries git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1577981 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5630: Windows C++ broker never loads modules using --module-dirAndrew Stitcher2014-03-141-1/+3
| | | | | | - Need to use full path to load modules instead of just the filename. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1577742 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5623: [C++ Messaging Client - amqp1.0] throws qpid::Exception instead ↵Charles E. Rolke2014-03-131-1/+7
| | | | | | | | | | of qpid::types::Exception Intercept the trap and rethrow in proper format. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1577322 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5621: [C++ broker] userId is not passed to ACL when DIGEST-MD5 is used ↵Pavel Moravec2014-03-111-21/+21
| | | | | | while creating link git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1576248 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5613: Self test broker start command fails without --interface option.Charles E. Rolke2014-03-071-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1575443 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5608: [amqp1.0] delete-on-close: typo in r1575225Charles E. Rolke2014-03-071-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1575441 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5608: [amqp1.0] delete-on-close policy do not work for producers to ↵Pavel Moravec2014-03-073-7/+16
| | | | | | exchanges git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1575225 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5607: [linearstore] Recovery of store results in jexception 0x010b ↵Kim van der Riet2014-03-064-35/+83
| | | | | | LinearFileController::getCurrentSerial() threw JERR_NULL git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1575009 13f79535-47bb-0310-9956-ffa450edef68
* Revert "NO-JIRA: CMakelists.txt check that ../python exists before building it."Alan Conway2014-03-051-6/+16
| | | | | | | | | | | | | | | | This reverts most of commit r1574138. The changes were intended to simplify handling of setup.py by letting it detect when things were out of date, but even when there are no changes setup.py does touch some files: changing mode of /home/andrew/Work/qpid/bld-ninja/src/tests/python/commands/qpid-python-trunning install_egg_info removing /home/andrew/Work/qpid/bld-ninja/src/tests/python/qpid_python-0.27-py2.7.egg-info writing /home/andrew/Work/qpid/bld-ninja/src/tests/python/qpid_python-0.27-py2.7.egg-info This commit restores the previous logic that avoids running setup.py if not needed but retains the if (EXISTS ${python_src}) check to avoid all this logic if there is no python source directory available. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1574656 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5603: Broker recovery fails with JERR_JREC_BADRECTAIL when record tail ↵Kim van der Riet2014-03-051-1/+1
| | | | | | is partly or fully separated from rest of record by file boundary git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1574513 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5599: C++ Broker silently ignores --max-connections option when no ACL ↵Charles E. Rolke2014-03-051-2/+2
| | | | | | | | | | | file is loaded Subsequent reloads of the ACL file did not reflect that the rule set in force was created by a user. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1574490 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5599: C++ Broker silently ignores --max-connections option when no ACL ↵Charles E. Rolke2014-03-056-17/+23
| | | | | | | | | | | | | | | | | | | | | | | | | file is loaded Simply installing a null and permissive rule file trips up the 'create link' security check. The security check from https://issues.apache.org/jira/browse/QPID-4631 reasons that if authentication is enabled and no ACL rule file is specified then interbroker links are denied. The check for 'ACL rule file is loaded' is simply the existence of the ACL object. That check is voided by always having an ACL object regardless of whether the ACL rule file was specified or not. One fix considered was adding an ACL rule "acl deny-log all create link" to the formerly null rule set when no ACL file is specified. This solution has too much complexity in several places and is too hard. The fix implemented here is a boolean flag indicating if the ACL rule set in force is specified by the user or not. Then the security check tests that the acl exists (always true) and that the rule set is specified by the user. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1574291 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5599: C++ Broker silently ignores --max-connections option when no ACL ↵Charles E. Rolke2014-03-041-4/+4
| | | | | | | | | | | file is loaded Temporarily revert creation of ACL with null rule set as it subverts the CREATE LINK security check and self test. Real fix coming shortly. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1574219 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5599: C++ Broker silently ignores --max-connections option when no ACL ↵Charles E. Rolke2014-03-043-12/+41
| | | | | | | | | | | file is loaded. Always create an ACL object. If no ACL file is specified then create a permissive, empty ACL rule set. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1574208 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: CMakelists.txt check that ../python exists before building it.Alan Conway2014-03-041-20/+11
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1574138 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5597: [C++ client] Topic subscriptions should not ignore auto-delete ↵Pavel Moravec2014-03-041-1/+3
| | | | | | x-declare flag git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1574119 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5594: [amqp1.0] missing first-acquirer property support in C++ brokerPavel Moravec2014-03-033-5/+7
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1573546 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5587: QMF to track queue owner (userId)Pavel Moravec2014-02-283-3/+10
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1572963 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Fix Coverty "Uncaught exception" errors in test clients.Alan Conway2014-02-262-2/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1572061 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5561: QPID-5565: Broker->ACL module improvementsPavel Moravec2014-02-264-16/+27
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1572059 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5584: use more specific exception types where appropriateGordon Sim2014-02-251-2/+11
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1571688 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Fix compile error on RHEL5 in qpid-pingAlan Conway2014-02-221-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1570775 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5568: HA C++ qpid::messaging AMQP 1.0 client failover logging is not clearAlan Conway2014-02-207-150/+183
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The qpid::messaging AMQP 1.0 protocol logging did not give clear information about reconnection during failover. This patch simplifies the reconnect logic by collapsing all known addresses from broker URL and reconnect URLs into a single URL with no duplicates. It rationalizes the info and notice logging as follows: # Initial connection with multiple addresses, info logs show the # full URL, each attempt to connect and the finally connected address. [Messaging] info Starting connection to amqp:tcp:20.0.10.33:5672,tcp:20.0.10.34:5672,tcp:20.0.10.35:5672 [Messaging] info Connecting to tcp:20.0.10.33:5672 [Messaging] info Failed to connect to tcp:20.0.10.33:5672 [Messaging] info Connecting to tcp:20.0.10.34:5672 [Messaging] info Failed to connect to tcp:20.0.10.34:5672 [Messaging] info Connecting to tcp:20.0.10.35:5672 [Messaging] info Connected to tcp:20.0.10.35:5672 # Re-connection due to a failure. notice logs for the start of reconnection (with full URL) # and eventual sucess (with individual address). info logs for individual connection attempts. [Messaging] notice Auto-reconnecting to amqp:tcp:20.0.10.33:5672,tcp:20.0.10.34:5672,tcp:20.0.10.35:5672 [Messaging] info Connecting to tcp:20.0.10.33:5672 [Messaging] info Failed to connect to tcp:20.0.10.33:5672 .... [Messaging] info Connected to tcp:20.0.10.33:5672 [Messaging] notice Auto-reconnected to amqp:tcp:20.0.10.33:5672 The idea here is that there are no logs by default (info is not on by default) for "normal" behavior, but failover does get a (short) notice log by default. By turning on info logs you can follow the detailed blow-by-blow of failover without getting drowned in the detail of debug logs. Note that final failure to connect is signalled to the application via an exception. There was not previously any log message for that and I didn't add one. Additional changes: updated qpid-ping test client to use the messaging library. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1570231 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5549: windows ssl over AMQP 1.0Clifford Allan Jansen2014-02-193-4/+143
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1569916 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Fix build error in ha_test_max_queues for release builds.Alan Conway2014-02-181-1/+4
| | | | | | argc was only being tested in an assert which was compiled out for release builds. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1569400 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Fix windows build problem introduced by r1565431 in ↵Alan Conway2014-02-061-3/+7
| | | | | | log/Statement.cpp commit. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1565448 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Get rid of valgrind "rechable" block in logging statements.Alan Conway2014-02-063-38/+14
| | | | | | | | | Each logging statement was allocating and not freeing a string, generating a huge number of harmless but annoying "blocks are still reachable". Fixed so the strings are freed at static destructor time. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1565431 13f79535-47bb-0310-9956-ffa450edef68
* Author: Alan Conway <aconway@redhat.com>Alan Conway2014-02-062-2/+2
| | | | | | | --- log message follows this NO-JIRA: Remove use of python built-in 'next', not available before python 2.6. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1565382 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5524: ssl-cert-name connection argument processing in AMQP 1.0. cpp clientClifford Allan Jansen2014-02-064-1/+18
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1565376 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5544: HA memory leak in backup broker after shutdown.Alan Conway2014-02-066-109/+45
| | | | | | | | The memory leaks were due to shared_ptr cycles between the QueueReplicator, Bridge and Link objects. This patch breaks the cycles using weak_ptrs in the appropriate places. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1565340 13f79535-47bb-0310-9956-ffa450edef68
* NO_JIRA: Added Apache license text to tx-text-soak.sh, updates to ↵Kim van der Riet2014-02-052-10/+33
| | | | | | linearstore ISSUES file git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1564935 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5361: Added a bash script which allows for transactional soak testing.Kim van der Riet2014-02-051-0/+234
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1564893 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5480: Recovery of store failure with "JERR_MAP_NOTFOUND: Key not found ↵Kim van der Riet2014-02-0522-247/+371
| | | | | | in map." error message. Fixed numerous recovery issues, particularly the handling of files at the end of the file list during recovery when the last file is not used or incompletely written. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1564877 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5531: [C++ broker] Set timeout for every DTX transactionPavel Moravec2014-02-055-5/+23
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1564694 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5540: use mutex to ensure single SCHANNEL_SHUTDOWNClifford Allan Jansen2014-02-052-6/+12
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1564644 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5539: Separate credential processing for re-use in AMQP1.0 SSL transport.Clifford Allan Jansen2014-02-054-255/+365
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@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@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@1564010 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5519: ACL property/properties for paged queues - fixed typo, added ↵Pavel Moravec2014-02-032-2/+225
| | | | | | tests and documentation git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@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@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@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@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@1563403 13f79535-47bb-0310-9956-ffa450edef68