ARTEMIS-3805 producer-window-size default

This commit is contained in:
Clebert Suconic 2022-04-25 09:58:14 -04:00 committed by clebertsuconic
parent 1946351fce
commit 5e6f599f80
4 changed files with 7 additions and 7 deletions

View File

@ -337,7 +337,7 @@ public final class ActiveMQDefaultConfiguration {
private static int DEFAULT_BRIDGE_CONFIRMATION_WINDOW_SIZE = 1024 * 1024 * 10; private static int DEFAULT_BRIDGE_CONFIRMATION_WINDOW_SIZE = 1024 * 1024 * 10;
// Producer flow control // Producer flow control
private static int DEFAULT_BRIDGE_PRODUCER_WINDOW_SIZE = -1; private static int DEFAULT_BRIDGE_PRODUCER_WINDOW_SIZE = 1024 * 1024;
// Upon reconnection this configures the number of time the same node on the topology will be retried before resetting the server locator and using the initial connectors // Upon reconnection this configures the number of time the same node on the topology will be retried before resetting the server locator and using the initial connectors
private static int DEFAULT_BRIDGE_CONNECT_SAME_NODE = 10; private static int DEFAULT_BRIDGE_CONNECT_SAME_NODE = 10;

View File

@ -16,6 +16,7 @@
*/ */
package org.apache.activemq.artemis.core.config; package org.apache.activemq.artemis.core.config;
import org.apache.activemq.artemis.api.config.ActiveMQDefaultConfiguration;
import org.apache.activemq.artemis.core.server.ComponentConfigurationRoutingType; import org.apache.activemq.artemis.core.server.ComponentConfigurationRoutingType;
import org.apache.activemq.artemis.utils.JsonLoader; import org.apache.activemq.artemis.utils.JsonLoader;
import org.junit.Assert; import org.junit.Assert;
@ -98,7 +99,8 @@ public class BridgeConfigurationTest {
Assert.assertEquals("10", jsonObject.get(BridgeConfiguration.RECONNECT_ATTEMPTS_ON_SAME_NODE).toString()); Assert.assertEquals("10", jsonObject.get(BridgeConfiguration.RECONNECT_ATTEMPTS_ON_SAME_NODE).toString());
Assert.assertEquals("true", jsonObject.get(BridgeConfiguration.USE_DUPLICATE_DETECTION).toString()); Assert.assertEquals("true", jsonObject.get(BridgeConfiguration.USE_DUPLICATE_DETECTION).toString());
Assert.assertEquals("10485760", jsonObject.get(BridgeConfiguration.CONFIRMATION_WINDOW_SIZE).toString()); Assert.assertEquals("10485760", jsonObject.get(BridgeConfiguration.CONFIRMATION_WINDOW_SIZE).toString());
Assert.assertEquals("-1", jsonObject.get(BridgeConfiguration.PRODUCER_WINDOW_SIZE).toString()); Assert.assertEquals(Integer.toString(ActiveMQDefaultConfiguration.getDefaultBridgeProducerWindowSize()), jsonObject.get(BridgeConfiguration.PRODUCER_WINDOW_SIZE).toString());
Assert.assertEquals("30000", jsonObject.get(BridgeConfiguration.CLIENT_FAILURE_CHECK_PERIOD).toString()); Assert.assertEquals("30000", jsonObject.get(BridgeConfiguration.CLIENT_FAILURE_CHECK_PERIOD).toString());
Assert.assertEquals("2000", jsonObject.get(BridgeConfiguration.MAX_RETRY_INTERVAL).toString()); Assert.assertEquals("2000", jsonObject.get(BridgeConfiguration.MAX_RETRY_INTERVAL).toString());
Assert.assertEquals("102400", jsonObject.get(BridgeConfiguration.MIN_LARGE_MESSAGE_SIZE).toString()); Assert.assertEquals("102400", jsonObject.get(BridgeConfiguration.MIN_LARGE_MESSAGE_SIZE).toString());

View File

@ -664,8 +664,7 @@ specified. The following shows all the available configuration options
client, default is 1048576. A value of -1 means no window. client, default is 1048576. A value of -1 means no window.
- `producer-window-size`. The size for producer flow control over cluster connection. - `producer-window-size`. The size for producer flow control over cluster connection.
it's by default disabled through the cluster connection bridge but you may want it's by default is 1MB.
to set a value if you are using really large messages in cluster. A value of -1 means no window.
- `call-failover-timeout`. Similar to `call-timeout` but used when a - `call-failover-timeout`. Similar to `call-timeout` but used when a
call is made during a failover attempt. Default is -1 (no timeout). call is made during a failover attempt. Default is -1 (no timeout).

View File

@ -162,10 +162,9 @@ Let's take a look at all the parameters in turn:
> `max-size-bytes` to prevent the flow of messages from ceasing. > `max-size-bytes` to prevent the flow of messages from ceasing.
- `producer-window-size`. This optional parameter determines the producer flow - `producer-window-size`. This optional parameter determines the producer flow
control through the bridge. You usually leave this off unless you are dealing control through the bridge.
with huge large messages.
Default=-1 (disabled) Default = 1048576 (1 Meba Bytes)
- `user`. This optional parameter determines the user name to use when creating - `user`. This optional parameter determines the user name to use when creating
the bridge connection to the remote server. If it is not specified the the bridge connection to the remote server. If it is not specified the