summaryrefslogtreecommitdiff
path: root/qpid/cpp/src
Commit message (Collapse)AuthorAgeFilesLines
...
* QPID-5815Michael Goulish2014-07-231-0/+5
| | | | | | | Checkin for Irina Boverman. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1612838 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5910Michael Goulish2014-07-223-7/+21
| | | | | | | | | | | | | | The previous way of computing required credit was apparently pretty slow -- perhaps because it is doing some unnceessary copying down in its guts. (Which theory I did not prove.) And it was running while a lock was held, which caused a significant throughput regression (which was reported as an enormous latency regression.) The simpler means of calculating credit in this diff removes most of the problem. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1612559 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Fix unreachable code in Waitable.cppAlan Conway2014-07-211-1/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1612336 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5908: merge annotations into properties, don't replace existing elementsGordon Sim2014-07-211-2/+17
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1612258 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4947: Injecting derived host address failed to strip IPv6 [] decorationCharles E. Rolke2014-07-181-3/+8
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1611776 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5888: transaction should always be aborted on failoverAlan Conway2014-07-183-21/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | C++ and python clients were attempting to continue the transation transparently after failover which is in correct. They were re-sending messages in the transaction but there is no way to re-do transactional receives. The transaction must be aborted. The C++ and python clients have been modified to kill a transactional session with a TransactionAborted exception if there is a failover. Note the Java client already behaves correctly but not identically. It defers raising an exception until commit rather than failing immediately on failover, and the session can still be used. The following commits are involved: r1611349 QPID-5887: revised approach to implict abort r1610959 QPID-5887: allow qpid-txtest2 to be run by make test r1610958 QPID-5887: fix to new txtest2, acknowledge messages in the check phase to ensure queues remain drained for any subsequent runs r1609748 QPID-5887: abort transactional session on failover; added equivalent of txtest using messaging API This commit does the following: - Update ha_tests.py tx_simpler_failover test to expect transaction aborted. - Minor improvements to qpid-txtest2 - Fix native (non-swig) python client. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1611748 13f79535-47bb-0310-9956-ffa450edef68
* No-JIRA: Get rid of throw in destructor for ~Waitable.Alan Conway2014-07-181-18/+8
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1611745 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5902: Replace boost::make_shared with boost::shared_ptrCharles E. Rolke2014-07-171-2/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1611409 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5887: revised approach to implict abortGordon Sim2014-07-174-30/+67
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1611349 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5898: AclHost unit test fails on systems with no IPv6Charles E. Rolke2014-07-163-108/+175
| | | | | | | | | | | | | * In SocketAddress::isComparable catch exceptions thrown by getAddrInfo when address family is not supported. * Delete self test that expects hosts to have 127.0.0.1 and ::1 as valid addresses for localhost. * In self tests sense whether IPv4 and IPv6 are supported and skip running tests that use those families accordingly. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1611059 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5850: Support for long session names (patch from Ernie Allen)Gordon Sim2014-07-163-3/+13
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1611016 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5898: Self tests fail on systems with IPv6 disabled.Charles E. Rolke2014-07-161-30/+30
| | | | | | | Temporarily disable tests that assume IPv6 to restore automated testing. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1610992 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4947: ensure member variable is always initialisedGordon Sim2014-07-161-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1610960 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5887: allow qpid-txtest2 to be run by make testGordon Sim2014-07-163-2/+16
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1610959 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5887: fix to new txtest2, acknowledge messages in the check phase to ↵Gordon Sim2014-07-161-0/+1
| | | | | | ensure queues remain drained for any subsequent runs git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1610958 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4947: C++ Broker ACL restricts hosts from which users may connect.Charles E. Rolke2014-07-1521-61/+1057
| | | | | | | | | | | | | | | | | This commit adds: * Acl rule file "create connection host=hostname" support for allowing and denying connections. * AclHost class to represent a host specified in the rule file. * Global and user-specific lists of AclHost rules. Created by AclReader and consumed by AclConnectionCounter. * Address range checks and other giblets in SocketAddress: ** asString support to hide IPv6 decoration and service (port) details. ** binary comparison of network addresses. ** new firstAddress function to complement existing nextAddress. Socket addrinfo for AclHost objects is computed once only for lifetime of Acl file load. ** Posix and Windows implementations are identical. * New unit test for address comparisons. Testing a live broker is great but forcing connections to be from some arbitrary IPv4 or IPv6 address is hard. So there's a unit test for that. Further discussion about this feature is in https://reviews.apache.org/r/23322 git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1610874 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5890: Add missing "queuename" property to Security doc. Rearrange ↵Charles E. Rolke2014-07-151-25/+25
| | | | | | entries in AclValidator for better automated doc generation. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1610700 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5890: Add missing "queuename" property for MOVE QUEUE and REDIRECT QUEUECharles E. Rolke2014-07-151-3/+3
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1610697 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5890: Refactor AclModuleCharles E. Rolke2014-07-135-121/+125
| | | | | | | | | | Remove AclHelper::loaValidationMap() function from AclLexer and replace it with new logic in AclValidator. See https://reviews.apache.org/r/23447/ for a visual diff of the changes. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1610195 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5890: Improve Acl enum verificationCharles E. Rolke2014-07-121-13/+5
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1609900 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5890: Refactoring AclModule.hCharles E. Rolke2014-07-114-176/+257
| | | | | | | | | | | | | * make single instances of strings associated with enums * make more compact search functions * make string definitions const * return 'const string&' instead of copies of temporaries * add self test as string defs sanity check * export AclHelper to satisfy tests (!!) git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1609828 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5887: abort transactional session of failover.Charles E. Rolke2014-07-111-1/+1
| | | | | | qpid-txtest2.cpp requires new EXTERN git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1609763 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5887: abort transactional session on failover; added equivalent of ↵Gordon Sim2014-07-114-10/+336
| | | | | | txtest using messaging API git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1609748 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5890: Refactor AclModule.hCharles E. Rolke2014-07-114-437/+511
| | | | | | | | | Move code from .h file into AclLexer source module. Does not change basic function structure. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1609728 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5858: Remove unneeded line that generates a warning on Windows VS2010.Charles E. Rolke2014-07-111-1/+0
| | | | | | | | | 2> MessagingSessionTests.cpp 2>..\..\..\cpp\src\tests\MessagingSessionTests.cpp(1438): warning C4930: 'std::string queue(void)': prototyped function not called (was a variable definition intended?) git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1609726 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5886: Get windows to export the Handle<CompletonImpl> methods.Charles E. Rolke2014-07-104-6/+45
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1609444 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: qpid-send help: copy&paste typo fixedPavel Moravec2014-07-091-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1609098 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5883: improve error message a little for 'no-mech' sasl errorGordon Sim2014-07-081-3/+9
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1608711 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5882: fix authentication failure on 1.0 codepathGordon Sim2014-07-074-30/+69
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1608578 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Fix defects found by coverity.Alan Conway2014-07-074-5/+5
| | | | | | | | | | | | | | | | | | To view the defects in Coverity Scan visit, http://scan.coverity.com/projects/6?tab=overview ** CID 1224524: Big parameter passed by value (PASS_BY_VALUE) /qpidbuilds/trunk/qpid/cpp/src/tests/BrokerFixture.h: 155 in qpid::tests::SessionFixtureT<qpid::tests::LocalConnection, qpid::client::Session_0_10>::SessionFixtureT(qpid::broker::BrokerOptions)() ** CID 1224525: Big parameter passed by value (PASS_BY_VALUE) /qpidbuilds/trunk/qpid/cpp/src/tests/ClientSessionTest.cpp: 108 in qpid::tests::ClientSessionFixture::ClientSessionFixture(qpid::broker::BrokerOptions)() ** CID 1224526: Big parameter passed by value (PASS_BY_VALUE) /qpidbuilds/trunk/qpid/cpp/src/tests/MessagingFixture.h: 106 in qpid::tests::MessagingFixture::MessagingFixture(qpid::broker::BrokerOptions, bool)() ** CID 1224527: Wrapper object use after free (WRAPPER_ESCAPE) /qpidbuilds/trunk/qpid/cpp/src/qpid/broker/SaslAuthenticator.cpp: 276 in qpid::broker::CyrusAuthenticator::init()() git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1608487 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5874: Treat all empty selectors sensiblyAndrew Stitcher2014-07-034-16/+15
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1607739 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5806: Allow quoted syntax for non standard selector identifiersAndrew Stitcher2014-07-032-8/+10
| | | | | | - This matches the Java broker syntax for selectors git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1607738 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5869: Check that agent is not null before firing event.Charles E. Rolke2014-07-031-12/+24
| | | | | | | | Propagate Rajith's logic to the rest of the cases in Acl code. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1607634 13f79535-47bb-0310-9956-ffa450edef68
* [QPID-5866]: [C++ client] AMQP 1.0 closing session without closing receiver ↵Pavel Moravec2014-07-032-9/+11
| | | | | | first marks further messages as redelivered (previous commit not complete) git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1607628 13f79535-47bb-0310-9956-ffa450edef68
* [QPID-5866]: [C++ client] AMQP 1.0 closing session without closing receiver ↵Pavel Moravec2014-07-031-0/+8
| | | | | | first marks further messages as redelivered git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1607562 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5871: Remove unused generated code and dependent codeAndrew Stitcher2014-07-0334-2703/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1607521 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5869 Added a check to see if agent is null before firing the event.Rajith Muditha Attapattu2014-07-021-1/+3
| | | | | | There are other places in the code where this check is missing. Chuck will take care of them. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1607488 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3921: Removed unused header includesAndrew Stitcher2014-07-023-5/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1607452 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3921: Deleted unnecessary header file includesAndrew Stitcher2014-07-012-2/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1607176 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5859: Fix to allow listening to some interfaces to failAndrew Stitcher2014-07-011-21/+17
| | | | | | - but still listen to the succeeding ones git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1607167 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3921: Refactored Broker::Options into its own independent classAndrew Stitcher2014-07-0129-154/+265
| | | | | | | | | | - Now called BrokerOptions - Added extra getters to Broker so that nothing else needs to know about BrokerOptions - Significantly reduces header coupling as lots of files include Broker.h, but now don't need Options.h git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1607166 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5865: Be more robust in face of system clock being changed:Andrew Stitcher2014-07-0119-65/+129
| | | | | | | | | | - Separate Wall clock time uses from other time * (assumed that any time with respect to the epoch is wallclock) - For Posix use CLOCK_MONOTONIC for all non wall clock purposes so that changing system time doesn't affect internal timekeeping - For Windows kept the same time keeping scheme. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1607140 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5860: release sender lock before invoking on sessionGordon Sim2014-06-271-3/+5
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1606259 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5858: prevent leakage of old exception typesGordon Sim2014-06-272-1/+34
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1606258 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5859: Make qpidd listen to all protocol addresses when it starts up.Andrew Stitcher2014-06-271-2/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1606197 13f79535-47bb-0310-9956-ffa450edef68
* [no JIRA]: brokertest to set connection option 'protocol' only for SWIG ↵Pavel Moravec2014-06-261-2/+4
| | | | | | client on AMQP1.0 git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1605703 13f79535-47bb-0310-9956-ffa450edef68
* [no JIRA]: mark flow-to-disk stats as deprecatedPavel Moravec2014-06-261-13/+13
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1605678 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5843: Producing to many queues locks I/O threads for new connectionsAlan Conway2014-06-261-2/+2
| | | | | | | | | This patch changes where the duration is calculated in sys/posix/AsyncIO.cpp->readable(). This will prevent the loop from executing past the threadMaxIoTimeNs. Doing this decreased the connection delay observed by 19%. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1605664 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5849: set mechanism on management connection even if auth=noGordon Sim2014-06-251-0/+4
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1605511 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5828: more consistent behaviour os send() when disconnectedGordon Sim2014-06-256-19/+42
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1605429 13f79535-47bb-0310-9956-ffa450edef68