svn commit: r1367522 - in /qpid/trunk/qpid/java: broker/src/main/java/org/apache/qpid/server/ broker/src/main/java/org/apache/qpid/server/transport/ broker/src/test/java/org/apache/qpid/server/ systes

2012-07-31 Thread robbie
Author: robbie
Date: Tue Jul 31 12:48:51 2012
New Revision: 1367522

URL: http://svn.apache.org/viewvc?rev=1367522view=rev
Log:
QPID-4124: Improved logging that is produced when the various transaction 
timeouts are exceeded. Remove duplication of messages and reorder 
logging/closing.

Work by myself, Keith Wall, Phil Harvey.

Added:

qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/TransactionTimeoutHelper.java

qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/TransactionTimeoutHelperTest.java
Modified:

qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/AMQChannel.java

qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/transport/ServerSession.java

qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/test/unit/transacted/TransactionTimeoutTest.java

Modified: 
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/AMQChannel.java
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/AMQChannel.java?rev=1367522r1=1367521r2=1367522view=diff
==
--- 
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/AMQChannel.java
 (original)
+++ 
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/AMQChannel.java
 Tue Jul 31 12:48:51 2012
@@ -176,6 +176,8 @@ public class AMQChannel implements Sessi
 
 private final ClientDeliveryMethod _clientDeliveryMethod;
 
+private final TransactionTimeoutHelper _transactionTimeoutHelper;
+
 public AMQChannel(AMQProtocolSession session, int channelId, MessageStore 
messageStore)
 throws AMQException
 {
@@ -195,6 +197,8 @@ public class AMQChannel implements Sessi
 _transaction = new AsyncAutoCommitTransaction(_messageStore, this);
 
  _clientDeliveryMethod = session.createDeliveryMethod(_channelId);
+
+ _transactionTimeoutHelper = new TransactionTimeoutHelper(_logSubject);
 }
 
 public ConfigStore getConfigStore()
@@ -1407,7 +1411,7 @@ public class AMQChannel implements Sessi
 }
 }
 }
-
+
 public synchronized void block(AMQQueue queue)
 {
 if(_blockingEntities.add(queue))
@@ -1542,27 +1546,20 @@ public class AMQChannel implements Sessi
 long openTime = currentTime - 
_transaction.getTransactionStartTime();
 long idleTime = currentTime - _txnUpdateTime.get();
 
-// Log a warning on idle or open transactions
-if (idleWarn  0L  idleTime  idleWarn)
-{
-CurrentActor.get().message(_logSubject, 
ChannelMessages.IDLE_TXN(idleTime));
-_logger.warn(IDLE TRANSACTION ALERT  + 
_logSubject.toString() +   + idleTime +  ms);
-}
-else if (openWarn  0L  openTime  openWarn)
-{
-CurrentActor.get().message(_logSubject, 
ChannelMessages.OPEN_TXN(openTime));
-_logger.warn(OPEN TRANSACTION ALERT  + 
_logSubject.toString() +   + openTime +  ms);
-}
-
-// Close _connection_ for idle or open transactions that have 
timed out (this is different
-// than the 0-10 code path which closes the session).
-if (idleClose  0L  idleTime  idleClose)
+_transactionTimeoutHelper.logIfNecessary(idleTime, idleWarn, 
ChannelMessages.IDLE_TXN(idleTime),
+ 
TransactionTimeoutHelper.IDLE_TRANSACTION_ALERT);
+if (_transactionTimeoutHelper.isTimedOut(idleTime, idleClose))
 {
 closeConnection(Idle transaction timed out);
+return;
 }
-else if (openClose  0L  openTime  openClose)
+
+_transactionTimeoutHelper.logIfNecessary(openTime, openWarn, 
ChannelMessages.OPEN_TXN(openTime),
+ 
TransactionTimeoutHelper.OPEN_TRANSACTION_ALERT);
+if (_transactionTimeoutHelper.isTimedOut(openTime, openClose))
 {
 closeConnection(Open transaction timed out);
+return;
 }
 }
 }

Added: 
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/TransactionTimeoutHelper.java
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/TransactionTimeoutHelper.java?rev=1367522view=auto
==
--- 
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/TransactionTimeoutHelper.java
 (added)
+++ 
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/TransactionTimeoutHelper.java
 Tue Jul 31 12:48:51 2012
@@ -0,0 +1,63 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for 

svn commit: r1367531 - in /qpid/branches/0.18/qpid/java: ./ amqp-1-0-client-jms/ amqp-1-0-client/ amqp-1-0-common/ bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/ broker/ broker/bin/ b

2012-07-31 Thread robbie
Author: robbie
Date: Tue Jul 31 13:14:44 2012
New Revision: 1367531

URL: http://svn.apache.org/viewvc?rev=1367531view=rev
Log:
QPID-4164: only keep a hard reference to the meta data if it has yet to be 
persisted

merged from trunk r1366339

Modified:
qpid/branches/0.18/qpid/java/   (props changed)
qpid/branches/0.18/qpid/java/amqp-1-0-client/   (props changed)
qpid/branches/0.18/qpid/java/amqp-1-0-client-jms/   (props changed)
qpid/branches/0.18/qpid/java/amqp-1-0-common/   (props changed)

qpid/branches/0.18/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/AbstractBDBMessageStore.java
qpid/branches/0.18/qpid/java/broker/   (props changed)
qpid/branches/0.18/qpid/java/broker/bin/   (props changed)

qpid/branches/0.18/qpid/java/broker/src/main/java/org/apache/qpid/server/management/
   (props changed)

qpid/branches/0.18/qpid/java/broker/src/main/java/org/apache/qpid/server/message/MessageMetaData_1_0.java
   (props changed)

qpid/branches/0.18/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/ProtocolEngine_1_0_0.java
   (props changed)

qpid/branches/0.18/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/ProtocolEngine_1_0_0_SASL.java
   (props changed)

qpid/branches/0.18/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v1_0/
   (props changed)

qpid/branches/0.18/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/ 
  (props changed)

qpid/branches/0.18/qpid/java/broker/src/main/java/org/apache/qpid/server/store/derby/DerbyMessageStore.java

qpid/branches/0.18/qpid/java/broker/src/main/java/org/apache/qpid/server/virtualhost/
   (props changed)

qpid/branches/0.18/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ConfigurationManagement.java
   (props changed)

qpid/branches/0.18/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/LoggingManagement.java
   (props changed)

qpid/branches/0.18/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedBroker.java
   (props changed)

qpid/branches/0.18/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedConnection.java
   (props changed)

qpid/branches/0.18/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedExchange.java
   (props changed)

qpid/branches/0.18/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedQueue.java
   (props changed)

qpid/branches/0.18/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/UserManagement.java
   (props changed)

qpid/branches/0.18/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanAttribute.java
   (props changed)

qpid/branches/0.18/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanConstructor.java
   (props changed)

qpid/branches/0.18/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanDescription.java
   (props changed)

qpid/branches/0.18/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanOperation.java
   (props changed)

qpid/branches/0.18/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanOperationParameter.java
   (props changed)
qpid/branches/0.18/qpid/java/management/eclipse-plugin/src/   (props 
changed)

qpid/branches/0.18/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/ConnectionTypeTabControl.java
   (props changed)

qpid/branches/0.18/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/ExchangeTypeTabControl.java
   (props changed)

qpid/branches/0.18/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/MBeanTypeTabControl.java
   (props changed)

qpid/branches/0.18/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/QueueTypeTabControl.java
   (props changed)

qpid/branches/0.18/qpid/java/management/eclipse-plugin/src/main/resources/macosx/Contents/MacOS/qpidmc
   (props changed)

qpid/branches/0.18/qpid/java/systests/src/main/java/org/apache/qpid/server/SupportedProtocolVersionsTest.java
   (props changed)

qpid/branches/0.18/qpid/java/systests/src/main/java/org/apache/qpid/test/utils/QpidBrokerTestCase.java
   (props changed)
qpid/branches/0.18/qpid/java/test-profiles/   (props changed)
qpid/branches/0.18/qpid/java/test-profiles/CPPExcludes   (props changed)
qpid/branches/0.18/qpid/java/test-profiles/Excludes   (props changed)
qpid/branches/0.18/qpid/java/test-profiles/JavaBDBExcludes   (props changed)

svn commit: r1367534 - in /qpid/branches/0.18/qpid/java: ./ amqp-1-0-client-jms/ amqp-1-0-client/ amqp-1-0-common/ broker/ broker/bin/ broker/src/main/java/org/apache/qpid/server/management/ broker/sr

2012-07-31 Thread robbie
Author: robbie
Date: Tue Jul 31 13:22:11 2012
New Revision: 1367534

URL: http://svn.apache.org/viewvc?rev=1367534view=rev
Log:
QPID-4164: Patch to extend MaxDeliveryCountTest to check for this bug

Applied patch from Philip Harvey p...@philharveyonline.com

merged from trunk r1367095

Modified:
qpid/branches/0.18/qpid/java/   (props changed)
qpid/branches/0.18/qpid/java/amqp-1-0-client/   (props changed)
qpid/branches/0.18/qpid/java/amqp-1-0-client-jms/   (props changed)
qpid/branches/0.18/qpid/java/amqp-1-0-common/   (props changed)
qpid/branches/0.18/qpid/java/broker/   (props changed)
qpid/branches/0.18/qpid/java/broker/bin/   (props changed)

qpid/branches/0.18/qpid/java/broker/src/main/java/org/apache/qpid/server/management/
   (props changed)

qpid/branches/0.18/qpid/java/broker/src/main/java/org/apache/qpid/server/message/MessageMetaData_1_0.java
   (props changed)

qpid/branches/0.18/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/ProtocolEngine_1_0_0.java
   (props changed)

qpid/branches/0.18/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/ProtocolEngine_1_0_0_SASL.java
   (props changed)

qpid/branches/0.18/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/v1_0/
   (props changed)

qpid/branches/0.18/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/ 
  (props changed)

qpid/branches/0.18/qpid/java/broker/src/main/java/org/apache/qpid/server/virtualhost/
   (props changed)

qpid/branches/0.18/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ConfigurationManagement.java
   (props changed)

qpid/branches/0.18/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/LoggingManagement.java
   (props changed)

qpid/branches/0.18/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedBroker.java
   (props changed)

qpid/branches/0.18/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedConnection.java
   (props changed)

qpid/branches/0.18/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedExchange.java
   (props changed)

qpid/branches/0.18/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedQueue.java
   (props changed)

qpid/branches/0.18/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/UserManagement.java
   (props changed)

qpid/branches/0.18/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanAttribute.java
   (props changed)

qpid/branches/0.18/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanConstructor.java
   (props changed)

qpid/branches/0.18/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanDescription.java
   (props changed)

qpid/branches/0.18/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanOperation.java
   (props changed)

qpid/branches/0.18/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanOperationParameter.java
   (props changed)
qpid/branches/0.18/qpid/java/management/eclipse-plugin/src/   (props 
changed)

qpid/branches/0.18/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/ConnectionTypeTabControl.java
   (props changed)

qpid/branches/0.18/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/ExchangeTypeTabControl.java
   (props changed)

qpid/branches/0.18/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/MBeanTypeTabControl.java
   (props changed)

qpid/branches/0.18/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/QueueTypeTabControl.java
   (props changed)

qpid/branches/0.18/qpid/java/management/eclipse-plugin/src/main/resources/macosx/Contents/MacOS/qpidmc
   (props changed)

qpid/branches/0.18/qpid/java/systests/src/main/java/org/apache/qpid/server/SupportedProtocolVersionsTest.java
   (props changed)

qpid/branches/0.18/qpid/java/systests/src/main/java/org/apache/qpid/test/unit/client/MaxDeliveryCountTest.java

qpid/branches/0.18/qpid/java/systests/src/main/java/org/apache/qpid/test/utils/QpidBrokerTestCase.java
   (props changed)
qpid/branches/0.18/qpid/java/test-profiles/   (props changed)
qpid/branches/0.18/qpid/java/test-profiles/CPPExcludes   (props changed)
qpid/branches/0.18/qpid/java/test-profiles/Excludes   (props changed)
qpid/branches/0.18/qpid/java/test-profiles/JavaBDBExcludes   (props changed)
qpid/branches/0.18/qpid/java/test-profiles/JavaExcludes   (props changed)

svn commit: r1367543 - in /qpid/branches/0.18/qpid/cpp/src/qpid/ha: BrokerReplicator.cpp HaBroker.cpp QueueReplicator.cpp QueueReplicator.h

2012-07-31 Thread aconway
Author: aconway
Date: Tue Jul 31 13:44:20 2012
New Revision: 1367543

URL: http://svn.apache.org/viewvc?rev=1367543view=rev
Log:
WIP: BrokerReplicator, QueueReplicator error handling.

Modified:
qpid/branches/0.18/qpid/cpp/src/qpid/ha/BrokerReplicator.cpp
qpid/branches/0.18/qpid/cpp/src/qpid/ha/HaBroker.cpp
qpid/branches/0.18/qpid/cpp/src/qpid/ha/QueueReplicator.cpp
qpid/branches/0.18/qpid/cpp/src/qpid/ha/QueueReplicator.h

Modified: qpid/branches/0.18/qpid/cpp/src/qpid/ha/BrokerReplicator.cpp
URL: 
http://svn.apache.org/viewvc/qpid/branches/0.18/qpid/cpp/src/qpid/ha/BrokerReplicator.cpp?rev=1367543r1=1367542r2=1367543view=diff
==
--- qpid/branches/0.18/qpid/cpp/src/qpid/ha/BrokerReplicator.cpp (original)
+++ qpid/branches/0.18/qpid/cpp/src/qpid/ha/BrokerReplicator.cpp Tue Jul 31 
13:44:20 2012
@@ -300,10 +300,12 @@ void BrokerReplicator::route(Deliverable
 } catch (const std::exception e) {
 QPID_LOG(critical, logPrefix  Configuration failed:   e.what()
   : while handling:   list);
+haBroker.shutdown();
 throw;
 }
 }
 
+
 void BrokerReplicator::doEventQueueDeclare(Variant::Map values) {
 Variant::Map argsMap = asMapVoid(values[ARGS]);
 bool autoDel = values[AUTODEL].asBool();
@@ -543,7 +545,7 @@ void BrokerReplicator::startQueueReplica
 {
 if (replicationTest.replicateLevel(queue-getSettings()) == ALL) {
 boost::shared_ptrQueueReplicator qr(
-new QueueReplicator(haBroker.getBrokerInfo(), queue, link));
+new QueueReplicator(haBroker, queue, link));
 if (!broker.getExchanges().registerExchange(qr))
 throw Exception(QPID_MSG(Duplicate queue replicator   
qr-getName()));
 qr-activate();

Modified: qpid/branches/0.18/qpid/cpp/src/qpid/ha/HaBroker.cpp
URL: 
http://svn.apache.org/viewvc/qpid/branches/0.18/qpid/cpp/src/qpid/ha/HaBroker.cpp?rev=1367543r1=1367542r2=1367543view=diff
==
--- qpid/branches/0.18/qpid/cpp/src/qpid/ha/HaBroker.cpp (original)
+++ qpid/branches/0.18/qpid/cpp/src/qpid/ha/HaBroker.cpp Tue Jul 31 13:44:20 
2012
@@ -192,7 +192,7 @@ Manageable::status_t HaBroker::Managemen
   link-setUrl(url);
   // Create a queue replicator
   boost::shared_ptrQueueReplicator qr(
-  new QueueReplicator(brokerInfo, queue, link));
+  new QueueReplicator(*this, queue, link));
   qr-activate();
   broker.getExchanges().registerExchange(qr);
   break;

Modified: qpid/branches/0.18/qpid/cpp/src/qpid/ha/QueueReplicator.cpp
URL: 
http://svn.apache.org/viewvc/qpid/branches/0.18/qpid/cpp/src/qpid/ha/QueueReplicator.cpp?rev=1367543r1=1367542r2=1367543view=diff
==
--- qpid/branches/0.18/qpid/cpp/src/qpid/ha/QueueReplicator.cpp (original)
+++ qpid/branches/0.18/qpid/cpp/src/qpid/ha/QueueReplicator.cpp Tue Jul 31 
13:44:20 2012
@@ -19,6 +19,7 @@
  *
  */
 
+#include HaBroker.h
 #include QueueReplicator.h
 #include ReplicatingSubscription.h
 #include qpid/broker/Bridge.h
@@ -58,12 +59,13 @@ bool QueueReplicator::isEventKey(const s
 return ret;
 }
 
-QueueReplicator::QueueReplicator(const BrokerInfo info,
+QueueReplicator::QueueReplicator(HaBroker hb,
  boost::shared_ptrQueue q,
  boost::shared_ptrLink l)
 : Exchange(replicatorName(q-getName()), 0, q-getBroker()),
+  haBroker(hb),
   logPrefix(Backup queue +q-getName()+: ),
-  queue(q), link(l), brokerInfo(info)
+  queue(q), link(l), brokerInfo(hb.getBrokerInfo())
 {
 Uuid uuid(true);
 bridgeName = replicatorName(q-getName()) + std::string(.) + uuid.str();
@@ -183,6 +185,7 @@ void QueueReplicator::route(Deliverable
 }
 catch (const std::exception e) {
 QPID_LOG(critical, logPrefix  Replication failed:   e.what());
+haBroker.shutdown();
 throw;
 }
 }

Modified: qpid/branches/0.18/qpid/cpp/src/qpid/ha/QueueReplicator.h
URL: 
http://svn.apache.org/viewvc/qpid/branches/0.18/qpid/cpp/src/qpid/ha/QueueReplicator.h?rev=1367543r1=1367542r2=1367543view=diff
==
--- qpid/branches/0.18/qpid/cpp/src/qpid/ha/QueueReplicator.h (original)
+++ qpid/branches/0.18/qpid/cpp/src/qpid/ha/QueueReplicator.h Tue Jul 31 
13:44:20 2012
@@ -40,6 +40,7 @@ class Deliverable;
 }
 
 namespace ha {
+class HaBroker;
 
 /**
  * Exchange created on a backup broker to replicate a queue on the primary.
@@ -60,7 +61,7 @@ class QueueReplicator : public broker::E
 /** Test if a string is an event key */
 static bool isEventKey(const std::string key);
 
-QueueReplicator(const BrokerInfo,
+QueueReplicator(HaBroker,
 boost::shared_ptrbroker::Queue q,
 

svn commit: r1367547 - in /qpid/branches/0.18/qpid/cpp/src/qpid/ha: Backup.cpp Backup.h BrokerReplicator.cpp BrokerReplicator.h HaBroker.cpp Primary.cpp

2012-07-31 Thread aconway
Author: aconway
Date: Tue Jul 31 13:47:29 2012
New Revision: 1367547

URL: http://svn.apache.org/viewvc?rev=1367547view=rev
Log:
QPID-4175: HA code rationalize logging

Clean up and rationalize log messages and levels.

notice: Major broker-level events: connecting, failing-over, primary active, 
backup ready.
info: Major queue level events: subscriptions ready, replicators created etc.
debug: Detailed replication events: accept/reject conections, details of queue 
replication protocol.
trace: dumping raw QMF messages

Modified:
qpid/branches/0.18/qpid/cpp/src/qpid/ha/Backup.cpp
qpid/branches/0.18/qpid/cpp/src/qpid/ha/Backup.h
qpid/branches/0.18/qpid/cpp/src/qpid/ha/BrokerReplicator.cpp
qpid/branches/0.18/qpid/cpp/src/qpid/ha/BrokerReplicator.h
qpid/branches/0.18/qpid/cpp/src/qpid/ha/HaBroker.cpp
qpid/branches/0.18/qpid/cpp/src/qpid/ha/Primary.cpp

Modified: qpid/branches/0.18/qpid/cpp/src/qpid/ha/Backup.cpp
URL: 
http://svn.apache.org/viewvc/qpid/branches/0.18/qpid/cpp/src/qpid/ha/Backup.cpp?rev=1367547r1=1367546r2=1367547view=diff
==
--- qpid/branches/0.18/qpid/cpp/src/qpid/ha/Backup.cpp (original)
+++ qpid/branches/0.18/qpid/cpp/src/qpid/ha/Backup.cpp Tue Jul 31 13:47:29 2012
@@ -115,4 +115,16 @@ void Backup::setBrokerUrl(const Url url
 initialize(url);// Deferred initialization
 }
 
+void Backup::setStatus(BrokerStatus status) {
+switch (status) {
+  case READY:
+QPID_LOG(notice, logPrefix  Ready to become primary.);
+break;
+  case CATCHUP:
+QPID_LOG(notice, logPrefix  Catching up on primary, cannot be 
promoted.);
+  default:
+assert(0);
+}
+}
+
 }} // namespace qpid::ha

Modified: qpid/branches/0.18/qpid/cpp/src/qpid/ha/Backup.h
URL: 
http://svn.apache.org/viewvc/qpid/branches/0.18/qpid/cpp/src/qpid/ha/Backup.h?rev=1367547r1=1367546r2=1367547view=diff
==
--- qpid/branches/0.18/qpid/cpp/src/qpid/ha/Backup.h (original)
+++ qpid/branches/0.18/qpid/cpp/src/qpid/ha/Backup.h Tue Jul 31 13:47:29 2012
@@ -50,12 +50,12 @@ class Backup
 Backup(HaBroker, const Settings);
 ~Backup();
 void setBrokerUrl(const Url);
+void setStatus(BrokerStatus);
 
   private:
 bool isSelf(const Address a) const;
 Url removeSelf(const Url) const;
 void initialize(const Url);
-
 std::string logPrefix;
 
 sys::Mutex lock;

Modified: qpid/branches/0.18/qpid/cpp/src/qpid/ha/BrokerReplicator.cpp
URL: 
http://svn.apache.org/viewvc/qpid/branches/0.18/qpid/cpp/src/qpid/ha/BrokerReplicator.cpp?rev=1367547r1=1367546r2=1367547view=diff
==
--- qpid/branches/0.18/qpid/cpp/src/qpid/ha/BrokerReplicator.cpp (original)
+++ qpid/branches/0.18/qpid/cpp/src/qpid/ha/BrokerReplicator.cpp Tue Jul 31 
13:47:29 2012
@@ -216,11 +216,10 @@ void BrokerReplicator::initializeBridge(
 userId = link-getConnection()-getUserId();
 remoteHost = link-getConnection()-getUrl();
 
-qpid::Address primary;
 link-getRemoteAddress(primary);
 string queueName = bridge.getQueueName();
 
-QPID_LOG(info, logPrefix  (initialized ? Connecting : Failing-over)
+QPID_LOG(info, logPrefix  (initialized ? Connecting : Failing over)
to primary   primary
status:  printable(haBroker.getStatus()));
 initialized = true;
@@ -245,15 +244,15 @@ void BrokerReplicator::initializeBridge(
 sendQuery(ORG_APACHE_QPID_BROKER, QUEUE, queueName, sessionHandler);
 sendQuery(ORG_APACHE_QPID_BROKER, EXCHANGE, queueName, sessionHandler);
 sendQuery(ORG_APACHE_QPID_BROKER, BINDING, queueName, sessionHandler);
-
-QPID_LOG(debug, logPrefix  Connected to primary   primary
-  (  queueName  )   status:  
printable(haBroker.getStatus()));
 }
 
 void BrokerReplicator::route(Deliverable msg) {
 // We transition from JOINING-CATCHUP on the first message received from 
the primary.
 // Until now we couldn't be sure if we had a good connection to the 
primary.
-if (haBroker.getStatus() == JOINING) haBroker.setStatus(CATCHUP);
+if (haBroker.getStatus() == JOINING) {
+haBroker.setStatus(CATCHUP);
+QPID_LOG(notice, logPrefix  Connected to primary   primary);
+}
 
 const framing::FieldTable* headers = 
msg.getMessage().getApplicationHeaders();
 const MessageProperties* messageProperties = 
msg.getMessage().getPropertiesMessageProperties();

Modified: qpid/branches/0.18/qpid/cpp/src/qpid/ha/BrokerReplicator.h
URL: 
http://svn.apache.org/viewvc/qpid/branches/0.18/qpid/cpp/src/qpid/ha/BrokerReplicator.h?rev=1367547r1=1367546r2=1367547view=diff
==
--- qpid/branches/0.18/qpid/cpp/src/qpid/ha/BrokerReplicator.h (original)
+++ 

svn commit: r1367554 - in /qpid/trunk/qpid/cpp/src/qpid/ha: BrokerReplicator.cpp HaBroker.cpp QueueReplicator.cpp QueueReplicator.h

2012-07-31 Thread aconway
Author: aconway
Date: Tue Jul 31 13:58:36 2012
New Revision: 1367554

URL: http://svn.apache.org/viewvc?rev=1367554view=rev
Log:
QPID-4176: HA Error handling

Fix error handling so that backup brokers shut down on replication errors.

Previously replication errors were being thrown to the primary, breaking the 
replication
session. This would put the primary into an endless futile reconnect attempt.

Modified:
qpid/trunk/qpid/cpp/src/qpid/ha/BrokerReplicator.cpp
qpid/trunk/qpid/cpp/src/qpid/ha/HaBroker.cpp
qpid/trunk/qpid/cpp/src/qpid/ha/QueueReplicator.cpp
qpid/trunk/qpid/cpp/src/qpid/ha/QueueReplicator.h

Modified: qpid/trunk/qpid/cpp/src/qpid/ha/BrokerReplicator.cpp
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/ha/BrokerReplicator.cpp?rev=1367554r1=1367553r2=1367554view=diff
==
--- qpid/trunk/qpid/cpp/src/qpid/ha/BrokerReplicator.cpp (original)
+++ qpid/trunk/qpid/cpp/src/qpid/ha/BrokerReplicator.cpp Tue Jul 31 13:58:36 
2012
@@ -299,10 +299,12 @@ void BrokerReplicator::route(Deliverable
 } catch (const std::exception e) {
 QPID_LOG(critical, logPrefix  Configuration failed:   e.what()
   : while handling:   list);
+haBroker.shutdown();
 throw;
 }
 }
 
+
 void BrokerReplicator::doEventQueueDeclare(Variant::Map values) {
 Variant::Map argsMap = asMapVoid(values[ARGS]);
 bool autoDel = values[AUTODEL].asBool();
@@ -542,7 +544,7 @@ void BrokerReplicator::startQueueReplica
 {
 if (replicationTest.replicateLevel(queue-getSettings()) == ALL) {
 boost::shared_ptrQueueReplicator qr(
-new QueueReplicator(haBroker.getBrokerInfo(), queue, link));
+new QueueReplicator(haBroker, queue, link));
 if (!broker.getExchanges().registerExchange(qr))
 throw Exception(QPID_MSG(Duplicate queue replicator   
qr-getName()));
 qr-activate();

Modified: qpid/trunk/qpid/cpp/src/qpid/ha/HaBroker.cpp
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/ha/HaBroker.cpp?rev=1367554r1=1367553r2=1367554view=diff
==
--- qpid/trunk/qpid/cpp/src/qpid/ha/HaBroker.cpp (original)
+++ qpid/trunk/qpid/cpp/src/qpid/ha/HaBroker.cpp Tue Jul 31 13:58:36 2012
@@ -193,7 +193,7 @@ Manageable::status_t HaBroker::Managemen
   link-setUrl(url);
   // Create a queue replicator
   boost::shared_ptrQueueReplicator qr(
-  new QueueReplicator(brokerInfo, queue, link));
+  new QueueReplicator(*this, queue, link));
   qr-activate();
   broker.getExchanges().registerExchange(qr);
   break;

Modified: qpid/trunk/qpid/cpp/src/qpid/ha/QueueReplicator.cpp
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/ha/QueueReplicator.cpp?rev=1367554r1=1367553r2=1367554view=diff
==
--- qpid/trunk/qpid/cpp/src/qpid/ha/QueueReplicator.cpp (original)
+++ qpid/trunk/qpid/cpp/src/qpid/ha/QueueReplicator.cpp Tue Jul 31 13:58:36 2012
@@ -19,6 +19,7 @@
  *
  */
 
+#include HaBroker.h
 #include QueueReplicator.h
 #include ReplicatingSubscription.h
 #include qpid/broker/Bridge.h
@@ -58,12 +59,13 @@ bool QueueReplicator::isEventKey(const s
 return ret;
 }
 
-QueueReplicator::QueueReplicator(const BrokerInfo info,
+QueueReplicator::QueueReplicator(HaBroker hb,
  boost::shared_ptrQueue q,
  boost::shared_ptrLink l)
 : Exchange(replicatorName(q-getName()), 0, q-getBroker()),
+  haBroker(hb),
   logPrefix(Backup queue +q-getName()+: ),
-  queue(q), link(l), brokerInfo(info)
+  queue(q), link(l), brokerInfo(hb.getBrokerInfo())
 {
 Uuid uuid(true);
 bridgeName = replicatorName(q-getName()) + std::string(.) + uuid.str();
@@ -183,6 +185,7 @@ void QueueReplicator::route(Deliverable
 }
 catch (const std::exception e) {
 QPID_LOG(critical, logPrefix  Replication failed:   e.what());
+haBroker.shutdown();
 throw;
 }
 }

Modified: qpid/trunk/qpid/cpp/src/qpid/ha/QueueReplicator.h
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/ha/QueueReplicator.h?rev=1367554r1=1367553r2=1367554view=diff
==
--- qpid/trunk/qpid/cpp/src/qpid/ha/QueueReplicator.h (original)
+++ qpid/trunk/qpid/cpp/src/qpid/ha/QueueReplicator.h Tue Jul 31 13:58:36 2012
@@ -40,6 +40,7 @@ class Deliverable;
 }
 
 namespace ha {
+class HaBroker;
 
 /**
  * Exchange created on a backup broker to replicate a queue on the primary.
@@ -60,7 +61,7 @@ class QueueReplicator : public broker::E
 /** Test if a string is an event key */
 static bool isEventKey(const std::string key);
 
-QueueReplicator(const BrokerInfo,
+QueueReplicator(HaBroker,

svn commit: r1367611 - /qpid/proton/trunk/proton-c/bindings/php/CMakeLists.txt

2012-07-31 Thread rhs
Author: rhs
Date: Tue Jul 31 15:18:51 2012
New Revision: 1367611

URL: http://svn.apache.org/viewvc?rev=1367611view=rev
Log:
added install for php bindings

Modified:
qpid/proton/trunk/proton-c/bindings/php/CMakeLists.txt

Modified: qpid/proton/trunk/proton-c/bindings/php/CMakeLists.txt
URL: 
http://svn.apache.org/viewvc/qpid/proton/trunk/proton-c/bindings/php/CMakeLists.txt?rev=1367611r1=1367610r2=1367611view=diff
==
--- qpid/proton/trunk/proton-c/bindings/php/CMakeLists.txt (original)
+++ qpid/proton/trunk/proton-c/bindings/php/CMakeLists.txt Tue Jul 31 15:18:51 
2012
@@ -29,12 +29,22 @@ execute_process(COMMAND ${PHP_CONFIG_EXE
 RESULT_VARIABLE retval
 ERROR_VARIABLE  errmsg
 OUTPUT_STRIP_TRAILING_WHITESPACE)
-if (NOT ${retval} EQUAL 0)
-  message(SEND_ERROR Command \${PHP_CONFIG_EXE} --include\ failed with 
output:\n${errmsg})
-else ()
-  #message(STATUS PHP_INCLUDES=[${PHP_INCLUDES}])
-  set_source_files_properties(${CMAKE_CURRENT_SOURCE_DIR}/php.i PROPERTIES 
SWIG_FLAGS -I${PROJECT_SOURCE_DIR}/include)
-  swig_add_module(cproton php ${CMAKE_CURRENT_SOURCE_DIR}/php.i)
-  set_source_files_properties(${swig_generated_file_fullname} PROPERTIES 
COMPILE_FLAGS ${PHP_INCLUDES})
-  swig_link_libraries(cproton ${BINDING_DEPS})
-endif ()
+
+set_source_files_properties(${CMAKE_CURRENT_SOURCE_DIR}/php.i PROPERTIES 
SWIG_FLAGS -I${PROJECT_SOURCE_DIR}/include)
+swig_add_module(cproton php ${CMAKE_CURRENT_SOURCE_DIR}/php.i)
+set_target_properties(cproton PROPERTIES PREFIX )
+set_source_files_properties(${swig_generated_file_fullname} PROPERTIES 
COMPILE_FLAGS ${PHP_INCLUDES})
+swig_link_libraries(cproton ${BINDING_DEPS})
+
+execute_process(COMMAND ${PHP_CONFIG_EXE} --extension-dir
+OUTPUT_VARIABLE PHP_EXT_DIR
+OUTPUT_STRIP_TRAILING_WHITESPACE)
+execute_process(COMMAND ${PHP_CONFIG_EXE} --prefix
+OUTPUT_VARIABLE PHP_PFX
+OUTPUT_STRIP_TRAILING_WHITESPACE)
+
+string(REPLACE ${PHP_PFX} ${CMAKE_INSTALL_PREFIX} PHP_REL_EXT_DIR 
${PHP_EXT_DIR})
+
+install(FILES ${CMAKE_CURRENT_BINARY_DIR}/cproton.so
+DESTINATION ${PHP_REL_EXT_DIR}
+COMPONENT PHP)



-
To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org
For additional commands, e-mail: commits-h...@qpid.apache.org



svn commit: r1367733 - in /qpid/trunk/qpid/doc/book/src/cpp-broker: Active-Passive-Cluster.xml Cheat-Sheet-for-configuring-Queue-Options.xml

2012-07-31 Thread aconway
Author: aconway
Date: Tue Jul 31 19:57:59 2012
New Revision: 1367733

URL: http://svn.apache.org/viewvc?rev=1367733view=rev
Log:
NO-JIRA: Update HA docs to mention link-maintenace-interval, minor doc fixes.

Modified:
qpid/trunk/qpid/doc/book/src/cpp-broker/Active-Passive-Cluster.xml

qpid/trunk/qpid/doc/book/src/cpp-broker/Cheat-Sheet-for-configuring-Queue-Options.xml

Modified: qpid/trunk/qpid/doc/book/src/cpp-broker/Active-Passive-Cluster.xml
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/doc/book/src/cpp-broker/Active-Passive-Cluster.xml?rev=1367733r1=1367732r2=1367733view=diff
==
--- qpid/trunk/qpid/doc/book/src/cpp-broker/Active-Passive-Cluster.xml 
(original)
+++ qpid/trunk/qpid/doc/book/src/cpp-broker/Active-Passive-Cluster.xml Tue Jul 
31 19:57:59 2012
@@ -185,18 +185,20 @@ under the License.
/listitem
listitem
  Configuration changes (creating or deleting queues, exchanges and 
bindings) are
- replicated asynchronously. Management tools used to make changes will 
consider the
- change complete when it is complete on the primary, it may not yet be 
replicated
- to all the backups.
+ replicated asynchronously. Management tools used to make changes will 
consider
+ the change complete when it is complete on the primary, it may not 
yet be
+ replicated to all the backups.
/listitem
listitem
- Deletions made immediately after a failure (before all the backups 
are ready) may
- be lost on a backup. Queues, exchange or bindings that were deleted 
on the primary could
- re-appear if that backup is promoted to primary on a subsequent 
failure.
+ Deletions made immediately after a failure (before all the backups 
are ready)
+ may be lost on a backup. Queues, exchange or bindings that were 
deleted on the
+ primary could re-appear if that backup is promoted to primary on a 
subsequent
+ failure.
/listitem
listitem
- Federated links from the primary will be lost in fail over, they will 
not be
- re-connected on the new primary. Federation links to the primary can 
fail over.
+ Federated links emphasisfrom/emphasis the primary will be lost in 
fail over,
+ they will not be re-connected to the new primary. Federation links
+ emphasisto/emphasis the primary can fail over.
/listitem
   /itemizedlist
 /section
@@ -227,10 +229,10 @@ under the License.
   default. The following broker options are available for the HA module.
 /para
 table frame=all id=ha-broker-options
-  titleOptions for High Availability Messaging Cluster/title
+  titleBroker Options for High Availability Messaging Cluster/title
   tgroup align=left cols=2 colsep=1 rowsep=1
-   colspec colname=c1 colwidth=1*/
-   colspec colname=c2 colwidth=3*/
+   colspec colname=c1/
+   colspec colname=c2/
thead
  row
entry align=center nameend=c2 namest=c1
@@ -241,7 +243,7 @@ under the License.
tbody
  row
entry
- literal--ha-cluster replaceableyes|no/replaceable/literal
+ literalha-cluster replaceableyes|no/replaceable/literal
/entry
entry
  Set to yes to have the broker join a cluster.
@@ -249,7 +251,7 @@ under the License.
  /row
  row
entry
- literal--ha-brokers-url replaceableURL/replaceable/literal
+ literalha-brokers-url replaceableURL/replaceable/literal
/entry
entry
  para
@@ -258,11 +260,11 @@ under the License.
  para
  The full format of the URL is given by this grammar:
  programlisting
-   url = [amqp:][ user [/ password] @ ] addr (, addr)*
-   addr = tcp_addr / rmda_addr / ssl_addr / ...
-   tcp_addr = [tcp:] host [: port]
-   rdma_addr = rdma: host [: port]
-   ssl_addr = ssl: host [: port]'
+url = [amqp:][ user [/ password] @ ] addr (, addr)*
+addr = tcp_addr / rmda_addr / ssl_addr / ...
+tcp_addr = [tcp:] host [: port]
+rdma_addr = rdma: host [: port]
+ssl_addr = ssl: host [: port]'
  /programlisting
  /para
/footnote
@@ -274,11 +276,11 @@ under the License.
/entry
  /row
  row
-   entryliteral--ha-public-url 
replaceableURL/replaceable/literal /entry
+   entryliteralha-public-url 
replaceableURL/replaceable/literal /entry
entry
  para
The URL that is advertised to clients. This defaults to the
-   literal--ha-brokers-url/literal URL above, and has the same 
format.  A
+   literalha-brokers-url/literal URL above, and has the 

svn commit: r1367734 - in /qpid/branches/0.18/qpid/doc/book/src/cpp-broker: Active-Passive-Cluster.xml Cheat-Sheet-for-configuring-Queue-Options.xml

2012-07-31 Thread aconway
Author: aconway
Date: Tue Jul 31 19:58:34 2012
New Revision: 1367734

URL: http://svn.apache.org/viewvc?rev=1367734view=rev
Log:
NO-JIRA: Update HA docs to mention link-maintenace-interval, minor doc fixes.

Modified:
qpid/branches/0.18/qpid/doc/book/src/cpp-broker/Active-Passive-Cluster.xml

qpid/branches/0.18/qpid/doc/book/src/cpp-broker/Cheat-Sheet-for-configuring-Queue-Options.xml

Modified: 
qpid/branches/0.18/qpid/doc/book/src/cpp-broker/Active-Passive-Cluster.xml
URL: 
http://svn.apache.org/viewvc/qpid/branches/0.18/qpid/doc/book/src/cpp-broker/Active-Passive-Cluster.xml?rev=1367734r1=1367733r2=1367734view=diff
==
--- qpid/branches/0.18/qpid/doc/book/src/cpp-broker/Active-Passive-Cluster.xml 
(original)
+++ qpid/branches/0.18/qpid/doc/book/src/cpp-broker/Active-Passive-Cluster.xml 
Tue Jul 31 19:58:34 2012
@@ -185,18 +185,20 @@ under the License.
/listitem
listitem
  Configuration changes (creating or deleting queues, exchanges and 
bindings) are
- replicated asynchronously. Management tools used to make changes will 
consider the
- change complete when it is complete on the primary, it may not yet be 
replicated
- to all the backups.
+ replicated asynchronously. Management tools used to make changes will 
consider
+ the change complete when it is complete on the primary, it may not 
yet be
+ replicated to all the backups.
/listitem
listitem
- Deletions made immediately after a failure (before all the backups 
are ready) may
- be lost on a backup. Queues, exchange or bindings that were deleted 
on the primary could
- re-appear if that backup is promoted to primary on a subsequent 
failure.
+ Deletions made immediately after a failure (before all the backups 
are ready)
+ may be lost on a backup. Queues, exchange or bindings that were 
deleted on the
+ primary could re-appear if that backup is promoted to primary on a 
subsequent
+ failure.
/listitem
listitem
- Federated links from the primary will be lost in fail over, they will 
not be
- re-connected on the new primary. Federation links to the primary can 
fail over.
+ Federated links emphasisfrom/emphasis the primary will be lost in 
fail over,
+ they will not be re-connected to the new primary. Federation links
+ emphasisto/emphasis the primary can fail over.
/listitem
   /itemizedlist
 /section
@@ -227,10 +229,10 @@ under the License.
   default. The following broker options are available for the HA module.
 /para
 table frame=all id=ha-broker-options
-  titleOptions for High Availability Messaging Cluster/title
+  titleBroker Options for High Availability Messaging Cluster/title
   tgroup align=left cols=2 colsep=1 rowsep=1
-   colspec colname=c1 colwidth=1*/
-   colspec colname=c2 colwidth=3*/
+   colspec colname=c1/
+   colspec colname=c2/
thead
  row
entry align=center nameend=c2 namest=c1
@@ -241,7 +243,7 @@ under the License.
tbody
  row
entry
- literal--ha-cluster replaceableyes|no/replaceable/literal
+ literalha-cluster replaceableyes|no/replaceable/literal
/entry
entry
  Set to yes to have the broker join a cluster.
@@ -249,7 +251,7 @@ under the License.
  /row
  row
entry
- literal--ha-brokers-url replaceableURL/replaceable/literal
+ literalha-brokers-url replaceableURL/replaceable/literal
/entry
entry
  para
@@ -258,11 +260,11 @@ under the License.
  para
  The full format of the URL is given by this grammar:
  programlisting
-   url = [amqp:][ user [/ password] @ ] addr (, addr)*
-   addr = tcp_addr / rmda_addr / ssl_addr / ...
-   tcp_addr = [tcp:] host [: port]
-   rdma_addr = rdma: host [: port]
-   ssl_addr = ssl: host [: port]'
+url = [amqp:][ user [/ password] @ ] addr (, addr)*
+addr = tcp_addr / rmda_addr / ssl_addr / ...
+tcp_addr = [tcp:] host [: port]
+rdma_addr = rdma: host [: port]
+ssl_addr = ssl: host [: port]'
  /programlisting
  /para
/footnote
@@ -274,11 +276,11 @@ under the License.
/entry
  /row
  row
-   entryliteral--ha-public-url 
replaceableURL/replaceable/literal /entry
+   entryliteralha-public-url 
replaceableURL/replaceable/literal /entry
entry
  para
The URL that is advertised to clients. This defaults to the
-   literal--ha-brokers-url/literal URL above, and has the same 
format.  A
+   

svn commit: r1367776 - in /qpid/trunk/qpid: cpp/src/qpid/broker/Queue.cpp cpp/src/qpid/cluster/UpdateClient.cpp specs/management-schema.xml

2012-07-31 Thread aconway
Author: aconway
Date: Tue Jul 31 20:57:30 2012
New Revision: 1367776

URL: http://svn.apache.org/viewvc?rev=1367776view=rev
Log:
QPID-4179: Cluster does not replicate exclusive status of queues.

Modified:
qpid/trunk/qpid/cpp/src/qpid/broker/Queue.cpp
qpid/trunk/qpid/cpp/src/qpid/cluster/UpdateClient.cpp
qpid/trunk/qpid/specs/management-schema.xml

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=1367776r1=1367775r2=1367776view=diff
==
--- qpid/trunk/qpid/cpp/src/qpid/broker/Queue.cpp (original)
+++ qpid/trunk/qpid/cpp/src/qpid/broker/Queue.cpp Tue Jul 31 20:57:30 2012
@@ -178,7 +178,8 @@ Queue::Queue(const string _name, bool _
 ManagementAgent* agent = broker-getManagementAgent();
 
 if (agent != 0) {
-mgmtObject = new _qmf::Queue(agent, this, parent, _name, _store != 
0, _autodelete, _owner != 0);
+mgmtObject = new _qmf::Queue(agent, this, parent, _name, _store != 
0, _autodelete);
+mgmtObject-set_exclusive(_owner != 0);
 agent-addObject(mgmtObject, 0, store != 0);
 brokerMgmtObject = (qmf::org::apache::qpid::broker::Broker*) 
broker-GetManagementObject();
 if (brokerMgmtObject)

Modified: qpid/trunk/qpid/cpp/src/qpid/cluster/UpdateClient.cpp
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/cluster/UpdateClient.cpp?rev=1367776r1=1367775r2=1367776view=diff
==
--- qpid/trunk/qpid/cpp/src/qpid/cluster/UpdateClient.cpp (original)
+++ qpid/trunk/qpid/cpp/src/qpid/cluster/UpdateClient.cpp Tue Jul 31 20:57:30 
2012
@@ -89,6 +89,8 @@ using namespace framing;
 namespace arg=client::arg;
 using client::SessionBase_0_10Access;
 
+namespace _qmf = qmf::org::apache::qpid::broker;
+
 // Reserved exchange/queue name for catch-up, avoid clashes with user 
queues/exchanges.
 const std::string UpdateClient::UPDATE(x-qpid.cluster-update);
 // Name for header used to carry expiration information.
@@ -371,13 +373,14 @@ class MessageUpdater {
 
 void UpdateClient::updateQueue(client::AsyncSession s, const 
boost::shared_ptrQueue q) {
 broker::Exchange::shared_ptr alternateExchange = q-getAlternateExchange();
+_qmf::Queue* mgmtQueue = 
dynamic_cast_qmf::Queue*(q-GetManagementObject());
 s.queueDeclare(
 arg::queue = q-getName(),
 arg::durable = q-isDurable(),
 arg::autoDelete = q-isAutoDelete(),
 arg::alternateExchange = alternateExchange ? 
alternateExchange-getName() : ,
 arg::arguments = q-getSettings(),
-arg::exclusive = q-hasExclusiveOwner()
+arg::exclusive = mgmtQueue  mgmtQueue-get_exclusive()
 );
 MessageUpdater updater(q-getName(), s, expiry);
 q-eachMessage(boost::bind(MessageUpdater::updateQueuedMessage, updater, 
_1));

Modified: qpid/trunk/qpid/specs/management-schema.xml
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/specs/management-schema.xml?rev=1367776r1=1367775r2=1367776view=diff
==
--- qpid/trunk/qpid/specs/management-schema.xml (original)
+++ qpid/trunk/qpid/specs/management-schema.xml Tue Jul 31 20:57:30 2012
@@ -219,7 +219,7 @@
 
 property name=durable type=bool  access=RC/
 property name=autoDelete  type=bool  access=RC/
-property name=exclusive   type=bool  access=RC/
+property name=exclusive   type=bool  access=RO/
 property name=arguments   type=map   access=RO desc=Arguments 
supplied in queue.declare/
 property name=altExchange type=objId references=Exchange 
access=RO optional=y/
 



-
To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org
For additional commands, e-mail: commits-h...@qpid.apache.org



svn commit: r1367790 - in /qpid/trunk/qpid/cpp/src/qpid/client: TCPConnector.cpp TCPConnector.h

2012-07-31 Thread astitcher
Author: astitcher
Date: Tue Jul 31 21:39:27 2012
New Revision: 1367790

URL: http://svn.apache.org/viewvc?rev=1367790view=rev
Log:
NO-JIRA: Removed unused return parameter

Modified:
qpid/trunk/qpid/cpp/src/qpid/client/TCPConnector.cpp
qpid/trunk/qpid/cpp/src/qpid/client/TCPConnector.h

Modified: qpid/trunk/qpid/cpp/src/qpid/client/TCPConnector.cpp
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/client/TCPConnector.cpp?rev=1367790r1=1367789r2=1367790view=diff
==
--- qpid/trunk/qpid/cpp/src/qpid/client/TCPConnector.cpp (original)
+++ qpid/trunk/qpid/cpp/src/qpid/client/TCPConnector.cpp Tue Jul 31 21:39:27 
2012
@@ -266,7 +266,7 @@ size_t TCPConnector::encode(const char* 
 return bytesWritten;
 }
 
-bool TCPConnector::readbuff(AsynchIO aio, AsynchIO::BufferBase* buff) 
+void TCPConnector::readbuff(AsynchIO aio, AsynchIO::BufferBase* buff)
 {
 Codec* codec = securityLayer.get() ? (Codec*) securityLayer.get() : 
(Codec*) this;
 int32_t decoded = codec-decode(buff-bytes+buff-dataStart, 
buff-dataCount);
@@ -281,10 +281,9 @@ bool TCPConnector::readbuff(AsynchIO ai
 // Give whole buffer back to aio subsystem
 aio.queueReadBuffer(buff);
 }
-return true;
 }
 
-size_t TCPConnector::decode(const char* buffer, size_t size) 
+size_t TCPConnector::decode(const char* buffer, size_t size)
 {
 framing::Buffer in(const_castchar*(buffer), size);
 if (!initiated) {

Modified: qpid/trunk/qpid/cpp/src/qpid/client/TCPConnector.h
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/client/TCPConnector.h?rev=1367790r1=1367789r2=1367790view=diff
==
--- qpid/trunk/qpid/cpp/src/qpid/client/TCPConnector.h (original)
+++ qpid/trunk/qpid/cpp/src/qpid/client/TCPConnector.h Tue Jul 31 21:39:27 2012
@@ -100,7 +100,7 @@ protected:
 void start(sys::AsynchIO* aio_);
 void initAmqp();
 virtual void connectFailed(const std::string msg);
-bool readbuff(qpid::sys::AsynchIO, qpid::sys::AsynchIOBufferBase*);
+void readbuff(qpid::sys::AsynchIO, qpid::sys::AsynchIOBufferBase*);
 void writebuff(qpid::sys::AsynchIO);
 void eof(qpid::sys::AsynchIO);
 void disconnected(qpid::sys::AsynchIO);



-
To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org
For additional commands, e-mail: commits-h...@qpid.apache.org



svn commit: r1367796 - in /qpid/trunk/qpid/java: broker-plugins/management-http/ broker-plugins/management-http/src/main/java/resources/ broker-plugins/management-http/src/main/java/resources/js/qpid/

2012-07-31 Thread robbie
Author: robbie
Date: Tue Jul 31 22:02:40 2012
New Revision: 1367796

URL: http://svn.apache.org/viewvc?rev=1367796view=rev
Log:
QPID-4167: Fix setting of queue attributes via web management console and rest 
interfaces. Also import Subscription into the bundle to resolve CDNFExcept ion 
when viewing a queue with Consumers.

Work by Oleksandr Rudyy, Keith Wall and myself.

Modified:
qpid/trunk/qpid/java/broker-plugins/management-http/MANIFEST.MF

qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/addQueue.html

qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addQueue.js

qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/showQueue.html

qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/showVirtualHost.html

qpid/trunk/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/servlet/rest/Asserts.java

qpid/trunk/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/servlet/rest/VirtualHostRestTest.java

qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/QueueAdapter.java

qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/plugins/OsgiSystemPackages.properties

Modified: qpid/trunk/qpid/java/broker-plugins/management-http/MANIFEST.MF
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-plugins/management-http/MANIFEST.MF?rev=1367796r1=1367795r2=1367796view=diff
==
--- qpid/trunk/qpid/java/broker-plugins/management-http/MANIFEST.MF (original)
+++ qpid/trunk/qpid/java/broker-plugins/management-http/MANIFEST.MF Tue Jul 31 
22:02:40 2012
@@ -30,6 +30,7 @@ Import-Package:  org.apache.qpid,
  org.apache.qpid.server.plugins,
  org.apache.qpid.server.protocol,
  org.apache.qpid.server.queue,
+ org.apache.qpid.server.subscription,
  org.apache.qpid.server.registry,
  org.apache.qpid.server.security,
  org.apache.qpid.server.security.access,

Modified: 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/addQueue.html
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/addQueue.html?rev=1367796r1=1367795r2=1367796view=diff
==
--- 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/addQueue.html
 (original)
+++ 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/addQueue.html
 Tue Jul 31 22:02:40 2012
@@ -94,7 +94,7 @@
 tdinput type=text required=false 
name=queueFlowControlSizeBytes id=formAddQueue.capacity placeholder=Size 
in bytes
 dojoType=dijit.form.ValidationTextBox
 trim=true
-regexp=(^[0-9]+(b|K(b)?|M(b)?|G(b)?)?$)
+regexp=[0-9]+
 invalidMessage= Invalid value//td
 /tr
 !-- x-qpid-flow-resume-capacity --
@@ -103,7 +103,7 @@
 tdinput type=text required=false 
name=queueFlowResumeSizeBytes id=formAddQueue.flowResumeCapacity 
placeholder=Size in bytes
 dojoType=dijit.form.ValidationTextBox
 trim=true
-regexp=(^[0-9]+(b|K(b)?|M(b)?|G(b)?)?$)
+regexp=[0-9]+
 invalidMessage= Invalid value//td
 /tr
 /table
@@ -111,27 +111,28 @@
 br/
 div data-dojo-type=dijit.TitlePane data-dojo-props=title: 
'Alerting Settings', open: false
 table cellpadding=0 cellspacing=2
+!-- x-qpid-maximum-message-count --
 tr
-td valign=topstrongMaximum Message Age:  
/strong/td
-tdinput type=text required=false 
name=alertThresholdMessageAge id=formAddQueue.maximumMessageAge 
placeholder=Time in ms
+td valign=topstrongQueue Depth:  /strong/td
+tdinput type=text required=false 
name=alertThresholdQueueDepthMessages id=formAddQueue.maximumMessageCount 
placeholder=Count of messages
 dojoType=dijit.form.ValidationTextBox
 trim=true
-
regexp=(^[0-9]+(s(ec(ond(s)?)?)?|m(in(ute)?(s)?)?|h|d|w|M|y)?$)
+regexp=[0-9]+
 invalidMessage= Invalid value //td
 /tr
-!-- x-qpid-maximum-message-size --
+!-- x-qpid-maximum-message-age --
 tr
-td valign=topstrongMaximum Message Size:  

svn commit: r1367797 - in /qpid/trunk/qpid/java/broker-plugins/management-http/src: main/java/org/apache/qpid/server/management/plugin/servlet/rest/ main/java/resources/ main/java/resources/js/qpid/ma

2012-07-31 Thread robbie
Author: robbie
Date: Tue Jul 31 22:03:12 2012
New Revision: 1367797

URL: http://svn.apache.org/viewvc?rev=1367797view=rev
Log:
QPID-4167: Fix a cycle in the JSON output of the AlternateExchange attribute 
which would lead to massive/broken output that would cripple the webui. Add 
REST test to validate the fix. Add checkbox to create a DLQ for the new queue, 
and display the alternateExchange attribute.

Work by myself and Keith Wall.

Modified:

qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/RestServlet.java

qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/addQueue.html

qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/Queue.js

qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addQueue.js

qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/showQueue.html

qpid/trunk/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/servlet/rest/VirtualHostRestTest.java

Modified: 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/RestServlet.java
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/RestServlet.java?rev=1367797r1=1367796r2=1367797view=diff
==
--- 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/RestServlet.java
 (original)
+++ 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/RestServlet.java
 Tue Jul 31 22:03:12 2012
@@ -292,7 +292,11 @@ public class RestServlet extends Abstrac
 for(String name : confObject.getAttributeNames())
 {
 Object value = confObject.getAttribute(name);
-if(value != null)
+if(value instanceof ConfiguredObject)
+{
+object.put(name, ((ConfiguredObject) value).getName());
+}
+else if(value != null)
 {
 object.put(name, value);
 }

Modified: 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/addQueue.html
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/addQueue.html?rev=1367797r1=1367796r2=1367797view=diff
==
--- 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/addQueue.html
 (original)
+++ 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/addQueue.html
 Tue Jul 31 22:03:12 2012
@@ -162,8 +162,15 @@
 regexp=[0-9]+
 invalidMessage= Invalid value//td
 /tr
-
-
+tr
+td valign=topstrongCreate DLQ? /strong/td
+tdinput type=checkbox name=dlqEnabled 
id=formAddQueue.dlqEnabled value=dlqEnabled dojoType=dijit.form.CheckBox 
//td
+/tr
+/table
+table cellpadding=0 cellspacing=2
+tr
+td valign=topNOTE: Configuring maximum delivery 
retries on a queue which has no DLQ / AlternateExchange will result in messages 
being discarded after the limit is reached./td
+/tr
 /table
 /div
 br/

Modified: 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/Queue.js
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/Queue.js?rev=1367797r1=1367796r2=1367797view=diff
==
--- 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/Queue.js
 (original)
+++ 
qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/Queue.js
 Tue Jul 31 22:03:12 2012
@@ -270,8 +270,7 @@ define([dojo/_base/xhr,
durable,
lifetimePolicy,
type,
-   keyName,
-   keyValue,
+   typeQualifier,
alertRepeatGap,
alertRepeatGapUnits,
alertThresholdMessageAge,
@@ -281,6 +280,7 @@ define([dojo/_base/xhr,
alertThresholdQueueDepthBytes,
alertThresholdQueueDepthBytesUnits,