diff options
6 files changed, 13 insertions, 89 deletions
diff --git a/container-messagebus/src/main/java/com/yahoo/container/jdisc/messagebus/SessionCache.java b/container-messagebus/src/main/java/com/yahoo/container/jdisc/messagebus/SessionCache.java index baff0437b5d..16dedd0765d 100644 --- a/container-messagebus/src/main/java/com/yahoo/container/jdisc/messagebus/SessionCache.java +++ b/container-messagebus/src/main/java/com/yahoo/container/jdisc/messagebus/SessionCache.java @@ -5,7 +5,6 @@ import com.yahoo.component.annotation.Inject; import com.yahoo.component.AbstractComponent; import com.yahoo.container.jdisc.ContainerMbusConfig; import com.yahoo.document.DocumentTypeManager; -import com.yahoo.document.DocumentUtil; import com.yahoo.documentapi.messagebus.protocol.DocumentProtocol; import com.yahoo.documentapi.messagebus.protocol.DocumentProtocolPoliciesConfig; import com.yahoo.jdisc.ReferencedResource; @@ -109,33 +108,13 @@ public final class SessionCache extends AbstractComponent { Protocol protocol) { MessageBusParams mbusParams = new MessageBusParams().addProtocol(protocol); - int maxPendingSize = DocumentUtil - .calculateMaxPendingSize(mbusConfig.maxConcurrentFactor(), mbusConfig.documentExpansionFactor(), - mbusConfig.containerCoreMemory()); - logSystemInfo(mbusConfig, maxPendingSize); - mbusParams.setMaxPendingCount(mbusConfig.maxpendingcount()); - mbusParams.setMaxPendingSize(maxPendingSize); MessageBus bus = new MessageBus(net, mbusParams); new ConfigAgent(messagebusConfig, bus); // Configure the wrapped MessageBus with a routing table. return new SharedMessageBus(bus); } - private static void logSystemInfo(ContainerMbusConfig containerMbusConfig, long maxPendingSize) { - log.log(Level.FINE, - "Running with maximum heap size of " + (Runtime.getRuntime().maxMemory() / 1024L / 1024L) + " MB"); - log.log(Level.CONFIG, - "Amount of memory reserved for container core: " + containerMbusConfig.containerCoreMemory() + " MB."); - log.log(Level.CONFIG, - "Running with document expansion factor " + containerMbusConfig.documentExpansionFactor() + ""); - - String msgLimit = - (containerMbusConfig.maxpendingcount() == 0) ? "unlimited" : "" + containerMbusConfig.maxpendingcount(); - log.log(Level.CONFIG, ("Starting message bus with max " + msgLimit + " pending messages and max " + - (((double) (maxPendingSize / 1024L)) / 1024.0d) + " pending megabytes.")); - } - ReferencedResource<SharedIntermediateSession> retainIntermediate(final IntermediateSessionParams p) { return intermediatesCreator.retain(intermediateLock, intermediates, p); } diff --git a/document/src/main/java/com/yahoo/document/DocumentUtil.java b/document/src/main/java/com/yahoo/document/DocumentUtil.java index f1a75f78b09..458c2bdbf6f 100644 --- a/document/src/main/java/com/yahoo/document/DocumentUtil.java +++ b/document/src/main/java/com/yahoo/document/DocumentUtil.java @@ -6,6 +6,7 @@ package com.yahoo.document; * @author Einar M Rosenvinge * @since 5.1.9 */ +@Deprecated(forRemoval = true) public class DocumentUtil { /** * A convenience method that can be used to calculate a max pending queue size given diff --git a/messagebus/src/main/java/com/yahoo/messagebus/MessageBus.java b/messagebus/src/main/java/com/yahoo/messagebus/MessageBus.java index 0c3f3168568..4b911d7c38e 100644 --- a/messagebus/src/main/java/com/yahoo/messagebus/MessageBus.java +++ b/messagebus/src/main/java/com/yahoo/messagebus/MessageBus.java @@ -72,7 +72,6 @@ public class MessageBus implements ConfigHandler, NetworkOwner, MessageHandler, private final Messenger msn; private final Resender resender; private int maxPendingCount; - private int maxPendingSize; private int pendingCount = 0; private int pendingSize = 0; private final Thread careTaker = new Thread(this::sendBlockedMessages); @@ -142,7 +141,6 @@ public class MessageBus implements ConfigHandler, NetworkOwner, MessageHandler, public MessageBus(NetworkMultiplexer net, MessageBusParams params) { // Add all known protocols to the repository. maxPendingCount = params.getMaxPendingCount(); - maxPendingSize = params.getMaxPendingSize(); for (int i = 0, len = params.getNumProtocols(); i < len; ++i) { protocolRepository.putProtocol(params.getProtocol(i)); } @@ -375,7 +373,7 @@ public class MessageBus implements ConfigHandler, NetworkOwner, MessageHandler, } private boolean doAccounting() { - return (maxPendingCount > 0 || maxPendingSize > 0); + return (maxPendingCount > 0); } /** * <p>This method handles choking input data so that message bus does not @@ -392,8 +390,7 @@ public class MessageBus implements ConfigHandler, NetworkOwner, MessageHandler, if (doAccounting()) { synchronized (this) { - busy = ((maxPendingCount > 0 && pendingCount >= maxPendingCount) || - (maxPendingSize > 0 && pendingSize >= maxPendingSize)); + busy = (maxPendingCount > 0 && pendingCount >= maxPendingCount); if (!busy) { pendingCount++; pendingSize += size; @@ -487,7 +484,7 @@ public class MessageBus implements ConfigHandler, NetworkOwner, MessageHandler, * * @return The resender. */ - @Deprecated // Remove on 9 + @Deprecated (forRemoval = true)// Remove on 9 public Resender getResender() { return resender; } @@ -520,7 +517,7 @@ public class MessageBus implements ConfigHandler, NetworkOwner, MessageHandler, * * @param maxCount The max count. */ - @Deprecated // Remove on 9 + @Deprecated(forRemoval = true) // Remove on 9 public void setMaxPendingCount(int maxCount) { maxPendingCount = maxCount; } @@ -529,7 +526,7 @@ public class MessageBus implements ConfigHandler, NetworkOwner, MessageHandler, * Gets maximum number of messages that can be received without being * replied to yet. */ - @Deprecated // Remove on 9 + @Deprecated (forRemoval = true)// Remove on 9 public int getMaxPendingCount() { return maxPendingCount; } @@ -540,18 +537,18 @@ public class MessageBus implements ConfigHandler, NetworkOwner, MessageHandler, * * @param maxSize The max size. */ - @Deprecated // Remove on 9 + @Deprecated (forRemoval = true)// Remove on 9 public void setMaxPendingSize(int maxSize) { - maxPendingSize = maxSize; + } /** * Gets maximum combined size of messages that can be received without * being replied to yet. */ - @Deprecated // Remove on 9 + @Deprecated (forRemoval = true)// Remove on 9 public int getMaxPendingSize() { - return maxPendingSize; + return Integer.MAX_VALUE; } /** diff --git a/messagebus/src/main/java/com/yahoo/messagebus/MessageBusParams.java b/messagebus/src/main/java/com/yahoo/messagebus/MessageBusParams.java index 1b18178d638..198c562e26a 100755 --- a/messagebus/src/main/java/com/yahoo/messagebus/MessageBusParams.java +++ b/messagebus/src/main/java/com/yahoo/messagebus/MessageBusParams.java @@ -18,7 +18,6 @@ public class MessageBusParams { private final List<Protocol> protocols = new ArrayList<>(); private RetryPolicy retryPolicy; private int maxPendingCount; - private int maxPendingSize; private MessagebusConfig config; /** @@ -27,7 +26,6 @@ public class MessageBusParams { public MessageBusParams() { retryPolicy = new RetryTransientErrorsPolicy(); maxPendingCount = 1024; - maxPendingSize = 128 * 1024 * 1024; config = null; } @@ -40,7 +38,6 @@ public class MessageBusParams { protocols.addAll(params.protocols); retryPolicy = params.retryPolicy; maxPendingCount = params.maxPendingCount; - maxPendingSize = params.maxPendingSize; config = params.config; } @@ -132,8 +129,9 @@ public class MessageBusParams { * * @return The size limit. */ + @Deprecated(forRemoval = true) public int getMaxPendingSize() { - return maxPendingSize; + return Integer.MAX_VALUE; } /** @@ -142,8 +140,8 @@ public class MessageBusParams { * @param maxSize The size limit to set. * @return This, to allow chaining. */ + @Deprecated(forRemoval = true) public MessageBusParams setMaxPendingSize(int maxSize) { - this.maxPendingSize = maxSize; return this; } diff --git a/messagebus/src/test/java/com/yahoo/messagebus/ChokeTestCase.java b/messagebus/src/test/java/com/yahoo/messagebus/ChokeTestCase.java index a8a1fc33284..ff9fc099923 100755 --- a/messagebus/src/test/java/com/yahoo/messagebus/ChokeTestCase.java +++ b/messagebus/src/test/java/com/yahoo/messagebus/ChokeTestCase.java @@ -99,56 +99,6 @@ public class ChokeTestCase { assertEquals(0, dstServer.mb.getPendingCount()); } - @Test - @SuppressWarnings("deprecation") - void testMaxSize() { - int size = createMessage("msg").getApproxSize(); - int max = size * 10; - dstServer.mb.setMaxPendingSize(max); - List<Message> lst = new ArrayList<>(); - for (int i = 0; i < max * 2; i += size) { - if (i < max) { - assertEquals(i, dstServer.mb.getPendingSize()); - } else { - assertEquals(max, dstServer.mb.getPendingSize()); - } - assertTrue(srcSession.send(createMessage("msg"), Route.parse("dst/session")).isAccepted()); - if (i < max) { - Message msg = ((Receptor) dstSession.getMessageHandler()).getMessage(60); - assertNotNull(msg); - lst.add(msg); - } else { - Reply reply = ((Receptor) srcSession.getReplyHandler()).getReply(60); - assertNotNull(reply); - assertEquals(1, reply.getNumErrors()); - assertEquals(ErrorCode.SESSION_BUSY, reply.getError(0).getCode()); - } - } - for (int i = 0; i < 5; ++i) { - Message msg = lst.remove(0); - dstSession.acknowledge(msg); - - Reply reply = ((Receptor) srcSession.getReplyHandler()).getReply(60); - assertNotNull(reply); - assertFalse(reply.hasErrors()); - assertNotNull(msg = reply.getMessage()); - assertTrue(srcSession.send(msg, Route.parse("dst/session")).isAccepted()); - - assertNotNull(msg = ((Receptor) dstSession.getMessageHandler()).getMessage(60)); - lst.add(msg); - } - while (!lst.isEmpty()) { - assertEquals(size * lst.size(), dstServer.mb.getPendingSize()); - Message msg = lst.remove(0); - dstSession.acknowledge(msg); - - Reply reply = ((Receptor) srcSession.getReplyHandler()).getReply(60); - assertNotNull(reply); - assertFalse(reply.hasErrors()); - } - assertEquals(0, dstServer.mb.getPendingSize()); - } - private static Message createMessage(String msg) { Message ret = new SimpleMessage(msg); ret.getTrace().setLevel(9); diff --git a/vespaclient-java/src/main/java/com/yahoo/dummyreceiver/DummyReceiver.java b/vespaclient-java/src/main/java/com/yahoo/dummyreceiver/DummyReceiver.java index c2985996bd0..51668a2d7f7 100755 --- a/vespaclient-java/src/main/java/com/yahoo/dummyreceiver/DummyReceiver.java +++ b/vespaclient-java/src/main/java/com/yahoo/dummyreceiver/DummyReceiver.java @@ -71,7 +71,6 @@ public class DummyReceiver implements MessageHandler { params.setRPCNetworkParams(new RPCNetworkParams().setIdentity(new Identity(name))); params.setDocumentManagerConfigId("client"); params.getMessageBusParams().setMaxPendingCount(0); - params.getMessageBusParams().setMaxPendingSize(0); da = new MessageBusDocumentAccess(params); queue = new LinkedBlockingDeque<>(); session = da.getMessageBus().createDestinationSession("default", true, this); |