diff --git a/modules/dcache-xrootd/src/main/java/org/dcache/xrootd/pool/XrootdTransferService.java b/modules/dcache-xrootd/src/main/java/org/dcache/xrootd/pool/XrootdTransferService.java index 8cee1649ad2..8c269bd6ea5 100644 --- a/modules/dcache-xrootd/src/main/java/org/dcache/xrootd/pool/XrootdTransferService.java +++ b/modules/dcache-xrootd/src/main/java/org/dcache/xrootd/pool/XrootdTransferService.java @@ -354,15 +354,10 @@ protected void initChannel(Channel ch) throws Exception pipeline.addLast("transfer", handler); } - @PreDestroy @Override - public synchronized void shutdown() { - super.shutdown(); - thirdPartyClientGroup.shutdownGracefully(1, 3, TimeUnit.SECONDS); - try { - thirdPartyClientGroup.terminationFuture().sync(); - } catch (InterruptedException e) { - Thread.currentThread().interrupt(); - } + protected void initialiseShutdown() + { + super.initialiseShutdown(); + shutdownGracefully(thirdPartyClientGroup); } } diff --git a/modules/dcache/src/main/java/org/dcache/pool/movers/NettyTransferService.java b/modules/dcache/src/main/java/org/dcache/pool/movers/NettyTransferService.java index a84af214b21..f6490774b71 100644 --- a/modules/dcache/src/main/java/org/dcache/pool/movers/NettyTransferService.java +++ b/modules/dcache/src/main/java/org/dcache/pool/movers/NettyTransferService.java @@ -43,6 +43,8 @@ import java.net.InetSocketAddress; import java.nio.ByteBuffer; import java.nio.channels.CompletionHandler; +import java.util.ArrayList; +import java.util.List; import java.util.UUID; import java.util.concurrent.ConcurrentMap; import java.util.concurrent.Executors; @@ -137,6 +139,8 @@ public abstract class NettyTransferService
private CellAddressCore address;
+ private final List