Fixed on trunk:
------------------------------------------------------------------------
r1136971 | aconway | 2011-06-17 14:35:48 -0400 (Fri, 17 Jun 2011) | 2 lines
NO-JIRA: Fix compile error on windows due to assigning an AtomicValue.
------------------------------------------------------------------------
On 06/17/2011 09:57 AM, Gordon Sim wrote:
On 06/15/2011 09:15 PM, acon...@apache.org wrote:
Author: aconway
Date: Wed Jun 15 20:15:51 2011
New Revision: 1136170
URL: http://svn.apache.org/viewvc?rev=1136170&view=rev
Log:
QPID-3280: Performance problem with TTL messages.
When sending a large number of messages with nonzero TTLs to a
cluster, overall message throughput drops by around 20-30% compared to
messages with TTL 0.
The previous approach to TTL in the cluster is replaced with a simpler
"cluster clock". Also QueueCleaner is executed in the cluster timer,
and modified to be deterministic in a cluster.
[snip]
Modified: qpid/trunk/qpid/cpp/src/qpid/broker/Queue.cpp
URL:
http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/broker/Queue.cpp?rev=1136170&r1=1136169&r2=1136170&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/broker/Queue.cpp (original)
+++ qpid/trunk/qpid/cpp/src/qpid/broker/Queue.cpp Wed Jun 15 20:15:51 2011
[snip]
@@ -1197,6 +1203,10 @@ const Broker* Queue::getBroker()
return broker;
}
+void Queue::setDequeueSincePurge(uint32_t value) {
+ dequeueSincePurge = AtomicValue<uint32_t>(value);
+}
+
Queue::UsageBarrier::UsageBarrier(Queue& q) : parent(q), count(0) {}
The snippet above causes a compilation error on windows. There the mutex-based
version of AtomicValue is used and that cannot be assigned as the mutex is
non-copyable.
Need to add an assignment operator to AtomicValue that works in both cases, or
use the existing operators to test and set until update succeeds.
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:dev-subscr...@qpid.apache.org
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:dev-subscr...@qpid.apache.org