From afb59a79c28b02f0cf8a6d2c3f71aa03b55fb97a Mon Sep 17 00:00:00 2001 From: Tomas Cere Date: Mon, 12 Jun 2017 15:29:46 +0200 Subject: [PATCH] BUG 8494 log possibly hanged futures in tx handlers Change-Id: Iccc90e575033c6770a3a499853f31e0684a712e4 Signed-off-by: Tomas Cere (cherry picked from commit 0723037074588cb901212e9b3ad9bf437e754f89) --- .../it/provider/impl/ProduceTransactionsHandler.java | 7 +++++++ .../it/provider/impl/WriteTransactionsHandler.java | 7 +++++++ 2 files changed, 14 insertions(+) diff --git a/opendaylight/md-sal/samples/clustering-test-app/provider/src/main/java/org/opendaylight/controller/clustering/it/provider/impl/ProduceTransactionsHandler.java b/opendaylight/md-sal/samples/clustering-test-app/provider/src/main/java/org/opendaylight/controller/clustering/it/provider/impl/ProduceTransactionsHandler.java index 01be4645bc..cfd59a5251 100644 --- a/opendaylight/md-sal/samples/clustering-test-app/provider/src/main/java/org/opendaylight/controller/clustering/it/provider/impl/ProduceTransactionsHandler.java +++ b/opendaylight/md-sal/samples/clustering-test-app/provider/src/main/java/org/opendaylight/controller/clustering/it/provider/impl/ProduceTransactionsHandler.java @@ -208,6 +208,13 @@ public class ProduceTransactionsHandler implements Runnable { completionFuture.set(RpcResultBuilder.failed() .withError(RpcError.ErrorType.APPLICATION, "Unexpected-exception", exception).build()); + for (int i = 0; i < futures.size(); i++) { + final CheckedFuture future = futures.get(i); + if (!future.isDone()) { + LOG.warn("Future #{}/{} possibly hanged.", future, futures.size()); + } + } + executor.shutdown(); } finally { try { diff --git a/opendaylight/md-sal/samples/clustering-test-app/provider/src/main/java/org/opendaylight/controller/clustering/it/provider/impl/WriteTransactionsHandler.java b/opendaylight/md-sal/samples/clustering-test-app/provider/src/main/java/org/opendaylight/controller/clustering/it/provider/impl/WriteTransactionsHandler.java index 7b57263157..6ecb8c8381 100644 --- a/opendaylight/md-sal/samples/clustering-test-app/provider/src/main/java/org/opendaylight/controller/clustering/it/provider/impl/WriteTransactionsHandler.java +++ b/opendaylight/md-sal/samples/clustering-test-app/provider/src/main/java/org/opendaylight/controller/clustering/it/provider/impl/WriteTransactionsHandler.java @@ -250,6 +250,13 @@ public class WriteTransactionsHandler implements Runnable { completionFuture.set(RpcResultBuilder.failed() .withError(RpcError.ErrorType.APPLICATION, "Unexpected-exception", exception).build()); + for (int i = 0; i < futures.size(); i++) { + final CheckedFuture future = futures.get(i); + if (!future.isDone()) { + LOG.warn("Future #{}/{} possibly hanged.", future, futures.size()); + } + } + executor.shutdown(); } } -- 2.36.6