From 1038a11dada985bd2d08bcd8d65aecb248780dcf Mon Sep 17 00:00:00 2001 From: "chao.liuc" Date: Wed, 16 Nov 2011 02:31:02 +0000 Subject: [PATCH] =?UTF-8?q?DUBBO-71=20Graceful=20shutdown-=E5=8D=8A?= =?UTF-8?q?=E5=85=B3=E9=97=AD=E7=8A=B6=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://code.alibabatech.com/svn/dubbo/trunk@335 1a56cb94-b969-4eaa-88fa-be21384802f2 --- .../dubbo/rpc/protocol/dubbo/DubboInvoker.java | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/dubbo-rpc-default/src/main/java/com/alibaba/dubbo/rpc/protocol/dubbo/DubboInvoker.java b/dubbo-rpc-default/src/main/java/com/alibaba/dubbo/rpc/protocol/dubbo/DubboInvoker.java index 6cf91ea7e1..e3a4c01e9f 100644 --- a/dubbo-rpc-default/src/main/java/com/alibaba/dubbo/rpc/protocol/dubbo/DubboInvoker.java +++ b/dubbo-rpc-default/src/main/java/com/alibaba/dubbo/rpc/protocol/dubbo/DubboInvoker.java @@ -103,13 +103,10 @@ public class DubboInvoker extends AbstractInvoker { public boolean isAvailable() { if (!super.isAvailable()) return false; - if (clients.length ==1){ - return clients[0].isConnected(); - } else { - for (ExchangeClient client : clients){ - if (client.isConnected()){ - return true; - } + for (ExchangeClient client : clients){ + //cannot write == not Available ? + if (client.isConnected() && !client.hasAttribute(Constants.CHANNEL_CANNOTWRITE_KEY)){ + return true; } } return false;