summaryrefslogtreecommitdiff
path: root/cpp/src
Commit message (Collapse)AuthorAgeFilesLines
...
* QPID-3227: account for extra header bytes when computing data size for send ↵Kenneth Anthony Giusti2011-04-273-11/+14
| | | | | | buffers. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1097102 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3222: Prevent ttl overflow; also adds equality operators for ↵Gordon Sim2011-04-263-3/+30
| | | | | | qpid::messaging::Duration. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1096751 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3217: Exchanges with IVE option cause cluster inconsistencies in updateesAlan Conway2011-04-191-1/+5
| | | | | | | Since this option is rarely used, the short term fix is to disallow IVE in a cluster. This is not a regression since it didn't work anyway. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1095209 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3215: cached exchange reference can cause cluster inconsistencies if ↵Alan Conway2011-04-191-1/+1
| | | | | | | | | exchange is deleted/recreated (2) Previous commit only updated one of the two Exchange constructors, this commit updates the other. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1095201 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3215: cached exchange reference can cause cluster inconsistencies if ↵Alan Conway2011-04-195-14/+67
| | | | | | | | | | | | | | | | | exchange is deleted/recreated SemanticState::route() uses a simple cache variable to avoid looking up the exchange for every message. However if the exchange in question is deleted, even if then recreated, this can cause inconsistencies in a cluster. Even in a stand-alone broker messages can be routed by a deleted exchange because of the cache. Fix is to mark the exchange deleted and check the status when using the cached exchange. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1095144 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3208: Exchanges make best effort to route messages if there is an error.Alan Conway2011-04-184-23/+117
| | | | | | | | | | | | | | | Previously if multiple queues were bound to the same routing key, then a failure to deliver to one of the queues (e.g. policy limit error) could prevent delivery on some of the other queues. With this commit the exchange delivers to every queue that did not have an error before raising an error. Note: this was originally committed as r1092765, but it caused test failures was reverted as r1092804. The original commit did not create exceptions of the correct type. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1094734 13f79535-47bb-0310-9956-ffa450edef68
* Revert "QPID-3208: Exchanges make best effort to route messages if there is ↵Alan Conway2011-04-153-99/+10
| | | | | | | | an error." This reverts commit r1092765 which introduced test failures in make check. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1092804 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3204: Add logging for queue threshold eventsGordon Sim2011-04-151-0/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1092772 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3208: Exchanges make best effort to route messages if there is an error.Alan Conway2011-04-153-10/+99
| | | | | | | | | | | Previously if multiple queues were bound to the same routing key, then a failure to deliver to one of the queues (e.g. policy limit error) could prevent delivery on some of the other queues. With this commit the exchange delivers to every queue that did not have an error before raising an error. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1092765 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3206: fix broken test from previous commitGordon Sim2011-04-141-2/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1092306 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3206: added special cases to catch negative numeric string conversions ↵Gordon Sim2011-04-142-4/+75
| | | | | | to unsigned values git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1092219 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3202: Clustered brokers shut down with "unknown connection" error.Alan Conway2011-04-134-18/+27
| | | | | | | | | | | This error is an assertion recently introduced in r1091097, the bug has probably been there for a while. Two fixes: - Connections that close before they are announced no longer send a deliver-close. - Fixed race in OutputInterceptor that sent a deliver-do-output after deliver-close. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1091790 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3201: locking in NullMessageStore to protect set of prepared xidsGordon Sim2011-04-122-0/+6
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1091443 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3199: Locking error qpid::sys::StateMonitorAndrew Stitcher2011-04-111-4/+4
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1091224 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3197: prevent async command completer from accessing session's ↵Kenneth Anthony Giusti2011-04-112-3/+26
| | | | | | connection when session is detached git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1091167 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3198: Clustered broker should exit on unknown connection.Alan Conway2011-04-111-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1091097 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3170: correct deletion of federation routes when keys match.Kenneth Anthony Giusti2011-04-087-51/+376
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1090266 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3191: A fix for the performance problem which replaces the ↵Kim van der Riet2011-04-083-18/+29
| | | | | | QueueListeners std::vector with a std::deque and adds some other improvements. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1090252 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Fix bug in Cluster::timerDrop - calling wrong function.Alan Conway2011-04-071-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1089953 13f79535-47bb-0310-9956-ffa450edef68
* gsim's patch to bring c++ logic in line with other clients.Michael Goulish2011-04-061-8/+9
| | | | | | | | If there is no username, then do nothing with either NAME or PASSWD callbacks. If there is a name but no passwd, then explicitly store an empty PASSWD callback. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1089294 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3187: Added exception handling safeguard for timer tasksGordon Sim2011-04-051-1/+5
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1088951 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: minor improvements to qpid-cpp-benchmark, more flexible arguments.Alan Conway2011-04-041-6/+9
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1088738 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3174: remove further unnecessary enqueueComplete() calls ↵Gordon Sim2011-04-044-11/+1
| | | | | | [enqueueAsync() only called when enqueing in a store, and is not required on recovery at all] git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1088539 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3174: remove unnecessary enqueueComplete() callsKenneth Anthony Giusti2011-04-011-3/+3
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1087868 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3180: fix ring queues for the case where max size is 0 (implying ↵Gordon Sim2011-04-011-1/+1
| | | | | | infinite size) git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1087669 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3129: cluster_tests.LongTests.test_failover hangsAlan Conway2011-03-302-11/+28
| | | | | | | | | | | | | | | | | Fix is a race condition in posix/Socket.cpp Socket::connect. When connecting to a port on the same host which no longer has a process associated with it the OS occasionally chooses the remote port (which is unoccupied) as the port to bind the local end of the socket, resulting in a "circular" connection. This seems like something the OS should prevent but I have confirmed that the sporadic hangs in cluster_tests.LongTests.test_failover on RHEL5 are caused by such a circular connection. The fix is to detect circular connections and raise an error. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1087052 13f79535-47bb-0310-9956-ffa450edef68
* qpid-3171Michael Goulish2011-03-301-1/+1
| | | | | | | | | | | | | | | | | | | | The registration of the codec happens on a different thread from the use of the codec. It is possible for the registration to occur after the first attempted use. In my testing, this happened 3% of the time -- 165 times out of 5000 tests -- when using RDMA transport, and 0 times out of 5000 when using TCP. Which is why we didn't notice it earlier. We have a function that tells when we are ready to encode -- CyrusSecurityLayer::canEncode. But it does not check the validity of the codec pointer before using it, so it cores in this situation. I believe simply checking that pointer is probably the best solution. Introducing that check caused the crash not to show up in 10,000 trials. There were also no hangs. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1087047 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA - Fixed case error in the automake file.Ted Ross2011-03-291-1/+1
| | | | | | | This caused a missing dependency in the qpidtypes library. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1086663 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3168: fix queue flow control --help textKenneth Anthony Giusti2011-03-241-2/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1085065 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA - ACL Modules "reload" method now returns OK status if there was no ↵Ted Ross2011-03-231-1/+4
| | | | | | error. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1084768 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3160: Check in pre-generated man pageAlan Conway2011-03-221-4/+0
| | | | | | | | | | | | | Previously the man page was generated automatically from the output of qpidd --help. To make a distribution, you had to build the entire source tree just to generate the man page. This automation was of limited value as the core broker options do not change often. This commit includes a pre-generated man page. At each release we will manually re-generate and check in a new man page. Instructions are provided in docs/man/Makefile.am git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1084282 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3147: Added missing qpid/DisableExceptionLogging.h to source list in ↵Alan Conway2011-03-211-0/+1
| | | | | | Makefile.am. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1083961 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3147: Misconfigured tracing/logging can lead to hung threads in logging ↵Alan Conway2011-03-213-5/+62
| | | | | | | | | | | stack The hang was caused by re-entrant attempts to initialize the Logger singleton when an exception was thrown during logger configuration. The fix is to disable exception logging temporarily while the logger is constructed. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1083884 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3155: Install module libraries during install-exec phaseAlan Conway2011-03-186-22/+22
| | | | | | | | The C++ automake system has 2 install phases, exec and data. Module libraries are installed incorrectly in the data phase. Fix the makefiles to install them in the exec phase. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1083077 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Fix qpidd late/overran warnings.Alan Conway2011-03-182-9/+13
| | | | | | | Warnings for late-and-overrun tasks were not being correctly reported. Lateness for overrun tasks below the late threshold were not being reported. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1082954 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3153Michael Goulish2011-03-184-4/+8
| | | | | | | added check for ais_exec running -- or don't run these clustered tests git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1082812 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3152Michael Goulish2011-03-181-6/+7
| | | | | | | The non-clustered versions of the sasl_fed_ex tests should probably not attempt to load cluster.so. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1082804 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3150Michael Goulish2011-03-171-1/+1
| | | | | | | | This is a test-only fix. Tell the client explicitly to use DIGEST-MD5, rather than possibly defaulting to a mech that the test has not prepared for. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1082685 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Put a timeout on calls to Thread.join to avoid tests hanging ↵Alan Conway2011-03-171-3/+7
| | | | | | indefinitely. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1082668 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Refactor RefCountedBuffer to be simpler and more flexible.Alan Conway2011-03-156-81/+98
| | | | | | | | | | RefCountedBuffer::pointer is replaced by a separate class BufferRef. BufferRef is independent of RefCountedBuffer, it can be used to manage other reference-counted buffer classes e.g. to implement buffer pools. BufferRef also provides beginning and end of the buffer, not just beginning. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1081631 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3144: Remove "loaded module" info log message.Alan Conway2011-03-141-2/+1
| | | | | | | | | | | | | These messages, printed at plugin load time, interfere with qpidd --check. It is supposed to print the PID of a running qpidd daemon to stdout, for use in scripts and the like. However with log-to-stdout enabled these messages obscure the PID. They are in any case of little value, individual plugins can log their start-up messages on initialization time which does not cause a problem git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1081548 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3138 some cosmetic cleanup & correction for IVECarl C. Trieloff2011-03-142-24/+34
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1081450 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Minor improvements to test scripts qpid-cluster-benchmark and ↵Alan Conway2011-03-144-40/+76
| | | | | | | | | qpid-cpp-benchmark - qpid-cluster-benchmark: added command line options. - qpid-cpp-benchmark: clean up error handling, fixed a race condition. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1081396 13f79535-47bb-0310-9956-ffa450edef68
* NO_JIRA: Removed faulty test, test_dr_no_message was failing sporadically.Alan Conway2011-03-121-19/+0
| | | | | | | | test_dr_no_message was using unreliable sleeps to try to determine expiry of messages. There's no obvious way to implement the test correctly. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1080945 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3129: cluster_tests.LongTests.test_failover hangsAlan Conway2011-03-112-128/+83
| | | | | | | - simplified brokertest.py using subprocess.Popen file redirection instead of threads. - fixed the hang in test_failover git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1080786 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3136: Add option to disable defaults for queue threshold alertsGordon Sim2011-03-115-12/+15
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1080589 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3138 Topic exchange perf improvementCarl C. Trieloff2011-03-112-4/+29
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1080411 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3132: Prevent threshold events triggering directly further threshold eventsGordon Sim2011-03-094-3/+61
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1079854 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1672Michael Goulish2011-03-091-1/+12
| | | | | | | Add new cluster-based sasl_fed_ex tests to EXTRA-DIST git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1079808 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3073: fix to allow older versions of boost to compile.Kenneth Anthony Giusti2011-03-082-4/+4
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1079590 13f79535-47bb-0310-9956-ffa450edef68