<@U078Y59KC3B> What are the possible values for th...
# ask-ai
t
@RunLLM What are the possible values for the configuration option
loadBalancerLoadSheddingStrategy
on the broker?
r
The possible values for the Pulsar broker configuration option loadBalancerLoadSheddingStrategy are: - org.apache.pulsar.broker.loadbalance.impl.ThresholdShedder - org.apache.pulsar.broker.loadbalance.impl.OverloadShedder - org.apache.pulsar.broker.loadbalance.impl.UniformLoadShedder - org.apache.pulsar.broker.loadbalance.impl.AvgShedder (introduced in Pulsar 3.3.0) - org.apache.pulsar.broker.loadbalance.extensions.scheduler.TransferShedder (for extensible load balancer) Each strategy has different load shedding logic and is available in specific load balancer types. For more details, see Pulsar documentation. Would you like more detail on what each strategy does? Sources: - Pulsar documentation: Bundle unloading strategies - Pulsar documentation: OverloadShedder - Pulsar documentation: ThresholdShedder - Pulsar documentation: UniformLoadShedder - Pulsar PR: AvgShedder πŸ‘ 0 button πŸ‘Ž 0 button πŸ’‘ Hint: Mention @runllm in the thread for followups.
t
@RunLLM What are the related configuration options to the strategy using
org.apache.pulsar.broker.loadbalance.impl.AvgShedder
?
r
The main configuration options related to the AvgShedder strategy are: - loadBalancerAvgShedderLowThreshold - loadBalancerAvgShedderHighThreshold - loadBalancerAvgShedderHitCountLowThreshold - loadBalancerAvgShedderHitCountHighThreshold - minUnloadMessage - minUnloadMessageThroughput - maxUnloadPercentage These control thresholds, hit counts, minimums for triggering unload, and the maximum percentage of load to shed. For details, see ServiceConfiguration.java. Would you like more detail on what each option does? Sources: - ServiceConfiguration.java πŸ‘ 0 button πŸ‘Ž 0 button πŸ’‘ Hint: Mention @runllm in the thread for followups.
t
@RunLLM What is the
loadManagerClassName
needed for the
org.apache.pulsar.broker.loadbalance.impl.AvgShedder
strategy?
r
To use the org.apache.pulsar.broker.loadbalance.impl.AvgShedder strategy, set loadManagerClassName to org.apache.pulsar.broker.loadbalance.impl.ModularLoadManagerImpl in your broker configuration. AvgShedder is supported in the modular load manager, not the extensible one. Would you like more detail on how to configure this? Sources: - Pulsar PR: AvgShedder πŸ‘ 0 button πŸ‘Ž 0 button πŸ’‘ Hint: Mention @runllm in the thread for followups.
t
@RunLLM For which loadBalancerLoadSheddingStrategy is
org.apache.pulsar.broker.loadbalance.impl.LeastResourceUsageWithWeight
used for?
r
org.apache.pulsar.broker.loadbalance.impl.LeastResourceUsageWithWeight is not a loadBalancerLoadSheddingStrategy; it is used as a loadBalancerLoadPlacementStrategy. It is commonly paired with ThresholdShedder as the load shedding strategy (i.e., loadBalancerLoadSheddingStrategy=org.apache.pulsar.broker.loadbalance.impl.ThresholdShedder and loadBalancerLoadPlacementStrategy=org.apache.pulsar.broker.loadbalance.impl.LeastResourceUsageWithWeight). Would you like more detail on how these strategies interact? Sources: - Pulsar PR: PIP-364: AvgShedder - Pulsar PR: PIP-182: LeastResourceUsageWithWeight πŸ‘ 0 button πŸ‘Ž 0 button πŸ’‘ Hint: Mention @runllm in the thread for followups.
t
@RunLLM Can you explain why only one broker is the owner of all the topics when using the loadBalancerLoadSheddingStrategy
org.apache.pulsar.broker.loadbalance.impl.AvgShedder
?
r
If only one broker is the owner of all topics when using org.apache.pulsar.broker.loadbalance.impl.AvgShedder, it is likely due to initial topic assignment or misconfiguration, not the AvgShedder algorithm itself. AvgShedder is designed to balance load by moving bundles from overloaded to underloaded brokers, but it only triggers after load imbalance is detected and certain thresholds are metβ€”so if no load or imbalance is present, rebalancing may not occur immediately. Check your cluster for correct configuration, active load, and ensure that load balancing is enabled and thresholds are set appropriately. For more, see PIP-364: AvgShedder. Would you like troubleshooting steps or a deeper explanation of AvgShedder’s behavior? Sources: - PIP-364: AvgShedder πŸ‘ 0 button πŸ‘Ž 0 button πŸ’‘ Hint: Mention @runllm in the thread for followups.
t
@RunLLM What are the possible values for the configuration option
topicBundleAssignmentStrategy
?
r
Possible values for the topicBundleAssignmentStrategy configuration option are fully qualified class names implementing the TopicBundleAssignmentStrategy interface. The default is org.apache.pulsar.common.naming.ConsistentHashingTopicBundleAssigner, but you can specify custom strategies by providing the class name of your implementation. For example, you could use a custom class like org.apache.pulsar.common.naming.RoundRobinBundleAssigner if implemented. Would you like more detail on how to implement or configure a custom strategy? Sources: - https://github.com/apache/pulsar/issues/19806 πŸ‘ 0 button πŸ‘Ž 0 button πŸ’‘ Hint: Mention @runllm in the thread for followups.
t
@RunLLM is
maxUnloadPercentage
a valid configuration option in the broker?
r
Yes, maxUnloadPercentage is a valid broker configuration option. It controls the maximum unload ratio for load shedding strategies like UniformLoadShedder and AvgShedder, determining how much load can be moved during a single unload operation. See ServiceConfiguration.java. Would you like more detail on how to use this option? Sources: - ServiceConfiguration.java πŸ‘ 0 button πŸ‘Ž 0 button πŸ’‘ Hint: Mention @runllm in the thread for followups.
t
@RunLLM is
minUnloadMessageThroughput
a valid configuration option in the broker?
r
Yes, minUnloadMessageThroughput is a valid broker configuration option. It sets the minimum throughput that triggers unload in load shedding strategies such as UniformLoadShedder and AvgShedder. See ServiceConfiguration.java. Would you like more detail on how this option affects load shedding? Sources: - ServiceConfiguration.java πŸ‘ 0 button πŸ‘Ž 0 button πŸ’‘ Hint: Mention @runllm in the thread for followups.
t
@RunLLM What does the
loadBalancerAvgShedderLowThreshold
configuration option represent?
r
The loadBalancerAvgShedderLowThreshold configuration option sets the low threshold for the difference between the highest and lowest loaded brokers in the AvgShedder load shedding strategy. When the load difference exceeds this value, it may trigger bundle unloading to balance the load. See ServiceConfiguration.java. Would you like more detail on how this threshold is used in practice? Sources: - ServiceConfiguration.java πŸ‘ 0 button πŸ‘Ž 0 button πŸ’‘ Hint: Mention @runllm in the thread for followups.