From 193aef453c4f0f9819c00f2437abb544cb7abed6 Mon Sep 17 00:00:00 2001 From: Gordon Sim Date: Mon, 9 Feb 2015 21:49:43 +0000 Subject: QPID-6324: refine previous fix such that no explicit reliability setting on durable subscription results in timeout by default git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1658581 13f79535-47bb-0310-9956-ffa450edef68 --- qpid/cpp/src/qpid/client/amqp0_10/AddressResolution.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/qpid/cpp/src/qpid/client/amqp0_10/AddressResolution.cpp b/qpid/cpp/src/qpid/client/amqp0_10/AddressResolution.cpp index 0225ee74cb..ed931c90fb 100644 --- a/qpid/cpp/src/qpid/client/amqp0_10/AddressResolution.cpp +++ b/qpid/cpp/src/qpid/client/amqp0_10/AddressResolution.cpp @@ -548,8 +548,8 @@ Subscription::Subscription(const Address& address, const std::string& type) if ((Opt(address)/LINK).hasKey(TIMEOUT)) { const Variant* timeout = (Opt(address)/LINK/TIMEOUT).value; if (timeout->asUint32()) queueOptions.setInt("qpid.auto_delete_timeout", timeout->asUint32()); - } else if (durable && !reliable && !(Opt(address)/LINK/X_DECLARE).hasKey(AUTO_DELETE)) { - //if durable but not reliable, and auto-delete not + } else if (durable && !AddressResolution::is_reliable(address) && !(Opt(address)/LINK/X_DECLARE).hasKey(AUTO_DELETE)) { + //if durable, not explicitly reliable, and auto-delete not //explicitly set, then set a non-zero default for the //autodelete timeout queueOptions.setInt("qpid.auto_delete_timeout", 2*60); -- cgit v1.2.1