diff -r acd677795920 modules/xdr/src/main/java/org/dcache/xdr/ClientTransport.java --- a/modules/xdr/src/main/java/org/dcache/xdr/ClientTransport.java +++ b/modules/xdr/src/main/java/org/dcache/xdr/ClientTransport.java @@ -39,7 +39,7 @@ public class ClientTransport implements } @Override - public void send(Xdr data) + public void send(Xdr data) throws IOException { Buffer buffer = data.body(); _connection.write(buffer); diff -r acd677795920 modules/xdr/src/main/java/org/dcache/xdr/GrizzlyXdrTransport.java --- a/modules/xdr/src/main/java/org/dcache/xdr/GrizzlyXdrTransport.java +++ b/modules/xdr/src/main/java/org/dcache/xdr/GrizzlyXdrTransport.java @@ -21,10 +21,7 @@ import java.io.IOException; import java.net.InetSocketAddress; import org.glassfish.grizzly.Buffer; import org.glassfish.grizzly.Connection; -import org.glassfish.grizzly.asyncqueue.PushBackContext; import org.glassfish.grizzly.filterchain.FilterChainContext; -import org.glassfish.grizzly.asyncqueue.PushBackHandler; -import org.glassfish.grizzly.asyncqueue.WritableMessage; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -32,7 +29,6 @@ import org.slf4j.LoggerFactory; public class GrizzlyXdrTransport implements XdrTransport { private final FilterChainContext _context; - private static final PushBackHandler RERTY_ON_PUSHBACK = new RetryPushBackHandler(); private final static Logger _log = LoggerFactory.getLogger(GrizzlyXdrTransport.class); @@ -41,13 +37,13 @@ public class GrizzlyXdrTransport impleme } @Override - public void send(Xdr xdr) + public void send(Xdr xdr) throws IOException { Buffer buffer = xdr.body(); buffer.allowBufferDispose(true); // pass destination address to handle UDP connections as well - _context.write(_context.getAddress(), buffer, null, RERTY_ON_PUSHBACK); + _context.write(_context.getAddress(), buffer, null); } @Override @@ -64,23 +60,4 @@ public class GrizzlyXdrTransport impleme public ReplyQueue getReplyQueue() { return null; } - - /** - * An implementation of {@link PushBackHandler}, which will enforce Grizzly's - * {@link org.glassfish.grizzly.Writer} to retry when possible if - * message can not be neither written nor added to write queue due - * to I/O or memory limitations. - */ - private static class RetryPushBackHandler implements PushBackHandler { - - @Override - public void onAccept(Connection connection, WritableMessage message) { - // NOP - } - - @Override - public void onPushBack(Connection connection, WritableMessage message, PushBackContext pushBackContext) { - pushBackContext.retryWhenPossible(); - } - } } diff -r acd677795920 modules/xdr/src/main/java/org/dcache/xdr/OncRpcSvc.java --- a/modules/xdr/src/main/java/org/dcache/xdr/OncRpcSvc.java +++ b/modules/xdr/src/main/java/org/dcache/xdr/OncRpcSvc.java @@ -139,7 +139,6 @@ public class OncRpcSvc { TCPNIOTransportBuilder.newInstance() .setReuseAddress(true) .setIOStrategy(grizzlyIoStrategy) - .setMaxAsyncWriteQueueSizeInBytes(4*1024*1024) .build(); _transports.add(tcpTransport); } diff -r acd677795920 pom.xml --- a/pom.xml +++ b/pom.xml @@ -292,7 +292,7 @@ org.glassfish.grizzly grizzly-framework - 2.3-SNAPSHOT + 2.1.11 com.sleepycat