This is an automated email from the ASF dual-hosted git repository.

lhotari pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/pulsar.git


The following commit(s) were added to refs/heads/master by this push:
     new fc2e314c356 [fix] Fixed implicit conversions from long -> int (#22055)
fc2e314c356 is described below

commit fc2e314c3560eb5011ab3e5e3ebf66fa0b9e6d4e
Author: Matteo Merli <[email protected]>
AuthorDate: Thu Feb 15 01:35:29 2024 -0800

    [fix] Fixed implicit conversions from long -> int (#22055)
---
 .../extensions/data/BrokerLoadData.java            |  8 ++---
 .../filter/BrokerMaxTopicCountFilter.java          |  2 +-
 .../impl/PulsarResourceDescription.java            |  2 +-
 .../loadbalance/impl/WRRPlacementStrategy.java     |  2 +-
 .../pulsar/broker/resourcegroup/ResourceGroup.java |  4 +--
 .../broker/resourcegroup/ResourceGroupService.java | 36 +++++++++++-----------
 .../pulsar/broker/service/BrokerService.java       |  4 +--
 .../apache/pulsar/broker/stats/BrokerStats.java    |  4 +--
 .../apache/pulsar/broker/stats/NamespaceStats.java |  2 +-
 .../RGUsageMTAggrWaitForAllMsgsTest.java           | 16 +++-------
 .../data/loadbalancer/LoadManagerReport.java       |  2 +-
 .../policies/data/loadbalancer/LoadReport.java     |  4 +--
 .../data/loadbalancer/LocalBrokerData.java         |  2 +-
 13 files changed, 41 insertions(+), 47 deletions(-)

diff --git 
a/pulsar-broker/src/main/java/org/apache/pulsar/broker/loadbalance/extensions/data/BrokerLoadData.java
 
b/pulsar-broker/src/main/java/org/apache/pulsar/broker/loadbalance/extensions/data/BrokerLoadData.java
index 48665d39a0d..a8cb9e08294 100644
--- 
a/pulsar-broker/src/main/java/org/apache/pulsar/broker/loadbalance/extensions/data/BrokerLoadData.java
+++ 
b/pulsar-broker/src/main/java/org/apache/pulsar/broker/loadbalance/extensions/data/BrokerLoadData.java
@@ -56,8 +56,8 @@ public class BrokerLoadData {
     private double msgThroughputOut;  // bytes/sec
     private double msgRateIn; // messages/sec
     private double msgRateOut; // messages/sec
-    private int bundleCount;
-    private int topics;
+    private long bundleCount;
+    private long topics;
 
     // Load data features computed from the above resources.
     private double maxResourceUsage; // max of resource usages
@@ -115,8 +115,8 @@ public class BrokerLoadData {
                        double msgThroughputOut,
                        double msgRateIn,
                        double msgRateOut,
-                       int bundleCount,
-                       int topics,
+                       long bundleCount,
+                       long topics,
                        ServiceConfiguration conf) {
         updateSystemResourceUsage(usage.cpu, usage.memory, usage.directMemory, 
usage.bandwidthIn, usage.bandwidthOut);
         this.msgThroughputIn = msgThroughputIn;
diff --git 
a/pulsar-broker/src/main/java/org/apache/pulsar/broker/loadbalance/extensions/filter/BrokerMaxTopicCountFilter.java
 
b/pulsar-broker/src/main/java/org/apache/pulsar/broker/loadbalance/extensions/filter/BrokerMaxTopicCountFilter.java
index 472cabf1566..48213c18e63 100644
--- 
a/pulsar-broker/src/main/java/org/apache/pulsar/broker/loadbalance/extensions/filter/BrokerMaxTopicCountFilter.java
+++ 
b/pulsar-broker/src/main/java/org/apache/pulsar/broker/loadbalance/extensions/filter/BrokerMaxTopicCountFilter.java
@@ -42,7 +42,7 @@ public class BrokerMaxTopicCountFilter implements 
BrokerFilter {
         int loadBalancerBrokerMaxTopics = 
context.brokerConfiguration().getLoadBalancerBrokerMaxTopics();
         brokers.keySet().removeIf(broker -> {
             Optional<BrokerLoadData> brokerLoadDataOpt = 
context.brokerLoadDataStore().get(broker);
-            long topics = 
brokerLoadDataOpt.map(BrokerLoadData::getTopics).orElse(0);
+            long topics = 
brokerLoadDataOpt.map(BrokerLoadData::getTopics).orElse(0L);
             // TODO: The broker load data might be delayed, so the max topic 
check might not accurate.
             return topics >= loadBalancerBrokerMaxTopics;
         });
diff --git 
a/pulsar-broker/src/main/java/org/apache/pulsar/broker/loadbalance/impl/PulsarResourceDescription.java
 
b/pulsar-broker/src/main/java/org/apache/pulsar/broker/loadbalance/impl/PulsarResourceDescription.java
index 1f87dac8ec0..f64c559038a 100644
--- 
a/pulsar-broker/src/main/java/org/apache/pulsar/broker/loadbalance/impl/PulsarResourceDescription.java
+++ 
b/pulsar-broker/src/main/java/org/apache/pulsar/broker/loadbalance/impl/PulsarResourceDescription.java
@@ -110,7 +110,7 @@ public class PulsarResourceDescription extends 
ResourceDescription {
                 percentageUsage = (entry.getValue().usage / 
entry.getValue().limit) * 100;
             }
             // give equal weight to each resource
-            double resourceWeight = weight * percentageUsage;
+            int resourceWeight = (int) (weight * percentageUsage);
             // any resource usage over 75% doubles the whole weight per 
resource
             if (percentageUsage > throttle) {
                 final int i = resourcesWithHighUsage++;
diff --git 
a/pulsar-broker/src/main/java/org/apache/pulsar/broker/loadbalance/impl/WRRPlacementStrategy.java
 
b/pulsar-broker/src/main/java/org/apache/pulsar/broker/loadbalance/impl/WRRPlacementStrategy.java
index bee9ae6d5f0..93b21028eb7 100644
--- 
a/pulsar-broker/src/main/java/org/apache/pulsar/broker/loadbalance/impl/WRRPlacementStrategy.java
+++ 
b/pulsar-broker/src/main/java/org/apache/pulsar/broker/loadbalance/impl/WRRPlacementStrategy.java
@@ -76,7 +76,7 @@ public class WRRPlacementStrategy implements 
PlacementStrategy {
         }
         int weightedSelector = rand.nextInt(totalAvailability);
         log.debug("Generated Weighted Selector Number - [{}] ", 
weightedSelector);
-        int weightRangeSoFar = 0;
+        long weightRangeSoFar = 0;
         for (Map.Entry<Long, ResourceUnit> candidateOwner : 
finalCandidates.entries()) {
             weightRangeSoFar += candidateOwner.getKey();
             if (weightedSelector < weightRangeSoFar) {
diff --git 
a/pulsar-broker/src/main/java/org/apache/pulsar/broker/resourcegroup/ResourceGroup.java
 
b/pulsar-broker/src/main/java/org/apache/pulsar/broker/resourcegroup/ResourceGroup.java
index a4f5c852921..effb6568a53 100644
--- 
a/pulsar-broker/src/main/java/org/apache/pulsar/broker/resourcegroup/ResourceGroup.java
+++ 
b/pulsar-broker/src/main/java/org/apache/pulsar/broker/resourcegroup/ResourceGroup.java
@@ -408,8 +408,8 @@ public class ResourceGroup {
     }
 
     // Visibility for unit testing
-    protected static double getRgUsageReportedCount (String rgName, String 
monClassName) {
-        return rgLocalUsageReportCount.labels(rgName, monClassName).get();
+    protected static long getRgUsageReportedCount (String rgName, String 
monClassName) {
+        return (long) rgLocalUsageReportCount.labels(rgName, 
monClassName).get();
     }
 
     // Visibility for unit testing
diff --git 
a/pulsar-broker/src/main/java/org/apache/pulsar/broker/resourcegroup/ResourceGroupService.java
 
b/pulsar-broker/src/main/java/org/apache/pulsar/broker/resourcegroup/ResourceGroupService.java
index 48419d7c451..e228c35cc11 100644
--- 
a/pulsar-broker/src/main/java/org/apache/pulsar/broker/resourcegroup/ResourceGroupService.java
+++ 
b/pulsar-broker/src/main/java/org/apache/pulsar/broker/resourcegroup/ResourceGroupService.java
@@ -483,48 +483,48 @@ public class ResourceGroupService implements 
AutoCloseable{
     }
 
     // Visibility for testing.
-    protected static double getRgQuotaByteCount (String rgName, String 
monClassName) {
-        return rgCalculatedQuotaBytes.labels(rgName, monClassName).get();
+    protected static long getRgQuotaByteCount (String rgName, String 
monClassName) {
+        return (long) rgCalculatedQuotaBytes.labels(rgName, 
monClassName).get();
     }
 
     // Visibility for testing.
-    protected static double getRgQuotaMessageCount (String rgName, String 
monClassName) {
-        return rgCalculatedQuotaMessages.labels(rgName, monClassName).get();
+    protected static long getRgQuotaMessageCount (String rgName, String 
monClassName) {
+        return (long) rgCalculatedQuotaMessages.labels(rgName, 
monClassName).get();
     }
 
     // Visibility for testing.
-    protected static double getRgLocalUsageByteCount (String rgName, String 
monClassName) {
-        return rgLocalUsageBytes.labels(rgName, monClassName).get();
+    protected static long getRgLocalUsageByteCount (String rgName, String 
monClassName) {
+        return (long) rgLocalUsageBytes.labels(rgName, monClassName).get();
     }
 
     // Visibility for testing.
-    protected static double getRgLocalUsageMessageCount (String rgName, String 
monClassName) {
-        return rgLocalUsageMessages.labels(rgName, monClassName).get();
+    protected static long getRgLocalUsageMessageCount (String rgName, String 
monClassName) {
+        return (long) rgLocalUsageMessages.labels(rgName, monClassName).get();
     }
 
     // Visibility for testing.
-    protected static double getRgUpdatesCount (String rgName) {
-        return rgUpdates.labels(rgName).get();
+    protected static long getRgUpdatesCount (String rgName) {
+        return (long) rgUpdates.labels(rgName).get();
     }
 
     // Visibility for testing.
-    protected static double getRgTenantRegistersCount (String rgName) {
-        return rgTenantRegisters.labels(rgName).get();
+    protected static long getRgTenantRegistersCount (String rgName) {
+        return (long) rgTenantRegisters.labels(rgName).get();
     }
 
     // Visibility for testing.
-    protected static double getRgTenantUnRegistersCount (String rgName) {
-        return rgTenantUnRegisters.labels(rgName).get();
+    protected static long getRgTenantUnRegistersCount (String rgName) {
+        return (long) rgTenantUnRegisters.labels(rgName).get();
     }
 
     // Visibility for testing.
-    protected static double getRgNamespaceRegistersCount (String rgName) {
-        return rgNamespaceRegisters.labels(rgName).get();
+    protected static long getRgNamespaceRegistersCount (String rgName) {
+        return (long) rgNamespaceRegisters.labels(rgName).get();
     }
 
     // Visibility for testing.
-    protected static double getRgNamespaceUnRegistersCount (String rgName) {
-        return rgNamespaceUnRegisters.labels(rgName).get();
+    protected static long getRgNamespaceUnRegistersCount (String rgName) {
+        return (long) rgNamespaceUnRegisters.labels(rgName).get();
     }
 
     // Visibility for testing.
diff --git 
a/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/BrokerService.java
 
b/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/BrokerService.java
index 5d75f8b917f..614de104737 100644
--- 
a/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/BrokerService.java
+++ 
b/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/BrokerService.java
@@ -220,7 +220,7 @@ public class BrokerService implements Closeable {
     // Keep track of topics and partitions served by this broker for fast 
lookup.
     @Getter
     private final ConcurrentOpenHashMap<String, 
ConcurrentOpenHashSet<Integer>> owningTopics;
-    private int numberOfNamespaceBundles = 0;
+    private long numberOfNamespaceBundles = 0;
 
     private final EventLoopGroup acceptorGroup;
     private final EventLoopGroup workerGroup;
@@ -2309,7 +2309,7 @@ public class BrokerService implements Closeable {
         topicEventsDispatcher.notify(topic, TopicEvent.UNLOAD, 
EventStage.SUCCESS);
     }
 
-    public int getNumberOfNamespaceBundles() {
+    public long getNumberOfNamespaceBundles() {
         this.numberOfNamespaceBundles = 0;
         this.multiLayerTopicsMap.forEach((namespaceName, bundles) -> {
             this.numberOfNamespaceBundles += bundles.size();
diff --git 
a/pulsar-broker/src/main/java/org/apache/pulsar/broker/stats/BrokerStats.java 
b/pulsar-broker/src/main/java/org/apache/pulsar/broker/stats/BrokerStats.java
index 84d5432fb9e..04926b6cf1c 100644
--- 
a/pulsar-broker/src/main/java/org/apache/pulsar/broker/stats/BrokerStats.java
+++ 
b/pulsar-broker/src/main/java/org/apache/pulsar/broker/stats/BrokerStats.java
@@ -20,8 +20,8 @@ package org.apache.pulsar.broker.stats;
 
 public class BrokerStats extends NamespaceStats {
 
-    public int bundleCount;
-    public int topics;
+    public long bundleCount;
+    public long topics;
     public BrokerStats(int ratePeriodInSeconds) {
         super(ratePeriodInSeconds);
     }
diff --git 
a/pulsar-broker/src/main/java/org/apache/pulsar/broker/stats/NamespaceStats.java
 
b/pulsar-broker/src/main/java/org/apache/pulsar/broker/stats/NamespaceStats.java
index e531139d421..afff2ec15eb 100644
--- 
a/pulsar-broker/src/main/java/org/apache/pulsar/broker/stats/NamespaceStats.java
+++ 
b/pulsar-broker/src/main/java/org/apache/pulsar/broker/stats/NamespaceStats.java
@@ -37,7 +37,7 @@ public class NamespaceStats {
     public int consumerCount;
     public int producerCount;
     public int replicatorCount;
-    public int subsCount;
+    public long subsCount;
     public static final String BRK_ADD_ENTRY_LATENCY_PREFIX = 
"brk_AddEntryLatencyBuckets";
     public long[] addLatencyBucket = new 
long[ENTRY_LATENCY_BUCKETS_USEC.length + 1];
     public static final String[] ADD_LATENCY_BUCKET_KEYS = new 
String[ENTRY_LATENCY_BUCKETS_USEC.length + 1];
diff --git 
a/pulsar-broker/src/test/java/org/apache/pulsar/broker/resourcegroup/RGUsageMTAggrWaitForAllMsgsTest.java
 
b/pulsar-broker/src/test/java/org/apache/pulsar/broker/resourcegroup/RGUsageMTAggrWaitForAllMsgsTest.java
index 9bf7e3c5325..9aec93cf1ff 100644
--- 
a/pulsar-broker/src/test/java/org/apache/pulsar/broker/resourcegroup/RGUsageMTAggrWaitForAllMsgsTest.java
+++ 
b/pulsar-broker/src/test/java/org/apache/pulsar/broker/resourcegroup/RGUsageMTAggrWaitForAllMsgsTest.java
@@ -682,17 +682,11 @@ public class RGUsageMTAggrWaitForAllMsgsTest extends 
ProducerConsumerBase {
             for (ResourceGroupMonitoringClass mc : 
ResourceGroupMonitoringClass.values()) {
                 String mcName = mc.name();
                 int mcIndex = mc.ordinal();
-                double quotaBytes = 
ResourceGroupService.getRgQuotaByteCount(rgName, mcName);
-                totalQuotaBytes[mcIndex] += quotaBytes;
-                double quotaMesgs = 
ResourceGroupService.getRgQuotaMessageCount(rgName, mcName);
-                totalQuotaMessages[mcIndex] += quotaMesgs;
-                double usedBytes = 
ResourceGroupService.getRgLocalUsageByteCount(rgName, mcName);
-                totalUsedBytes[mcIndex] += usedBytes;
-                double usedMesgs = 
ResourceGroupService.getRgLocalUsageMessageCount(rgName, mcName);
-                totalUsedMessages[mcIndex] += usedMesgs;
-
-                double usageReportedCount = 
ResourceGroup.getRgUsageReportedCount(rgName, mcName);
-                totalUsageReportCounts[mcIndex] += usageReportedCount;
+                totalQuotaBytes[mcIndex] += 
ResourceGroupService.getRgQuotaByteCount(rgName, mcName);
+                totalQuotaMessages[mcIndex] += 
ResourceGroupService.getRgQuotaMessageCount(rgName, mcName);
+                totalUsedBytes[mcIndex] += 
ResourceGroupService.getRgLocalUsageByteCount(rgName, mcName);
+                totalUsedMessages[mcIndex] += 
ResourceGroupService.getRgLocalUsageMessageCount(rgName, mcName);
+                totalUsageReportCounts[mcIndex] += 
ResourceGroup.getRgUsageReportedCount(rgName, mcName);
             }
 
             totalTenantRegisters += 
ResourceGroupService.getRgTenantRegistersCount(rgName);
diff --git 
a/pulsar-client-admin-api/src/main/java/org/apache/pulsar/policies/data/loadbalancer/LoadManagerReport.java
 
b/pulsar-client-admin-api/src/main/java/org/apache/pulsar/policies/data/loadbalancer/LoadManagerReport.java
index bf7371e6dd0..7e170e1d537 100644
--- 
a/pulsar-client-admin-api/src/main/java/org/apache/pulsar/policies/data/loadbalancer/LoadManagerReport.java
+++ 
b/pulsar-client-admin-api/src/main/java/org/apache/pulsar/policies/data/loadbalancer/LoadManagerReport.java
@@ -39,7 +39,7 @@ public interface LoadManagerReport extends ServiceLookupData {
 
     Map<String, NamespaceBundleStats> getBundleStats();
 
-    int getNumTopics();
+    long getNumTopics();
 
     int getNumBundles();
 
diff --git 
a/pulsar-common/src/main/java/org/apache/pulsar/policies/data/loadbalancer/LoadReport.java
 
b/pulsar-common/src/main/java/org/apache/pulsar/policies/data/loadbalancer/LoadReport.java
index 6e519a3f073..e6459e051bf 100644
--- 
a/pulsar-common/src/main/java/org/apache/pulsar/policies/data/loadbalancer/LoadReport.java
+++ 
b/pulsar-common/src/main/java/org/apache/pulsar/policies/data/loadbalancer/LoadReport.java
@@ -50,7 +50,7 @@ public class LoadReport implements LoadManagerReport {
     private long timestamp;
     private double msgRateIn;
     private double msgRateOut;
-    private int numTopics;
+    private long numTopics;
     private int numConsumers;
     private int numProducers;
     private int numBundles;
@@ -205,7 +205,7 @@ public class LoadReport implements LoadManagerReport {
     }
 
     @Override
-    public int getNumTopics() {
+    public long getNumTopics() {
         numTopics = 0;
         if (this.bundleStats != null) {
             this.bundleStats.forEach((bundle, stats) -> {
diff --git 
a/pulsar-common/src/main/java/org/apache/pulsar/policies/data/loadbalancer/LocalBrokerData.java
 
b/pulsar-common/src/main/java/org/apache/pulsar/policies/data/loadbalancer/LocalBrokerData.java
index df85a4d989f..60ade64e688 100644
--- 
a/pulsar-common/src/main/java/org/apache/pulsar/policies/data/loadbalancer/LocalBrokerData.java
+++ 
b/pulsar-common/src/main/java/org/apache/pulsar/policies/data/loadbalancer/LocalBrokerData.java
@@ -389,7 +389,7 @@ public class LocalBrokerData implements LoadManagerReport {
     }
 
     @Override
-    public int getNumTopics() {
+    public long getNumTopics() {
         return numTopics;
     }
 

Reply via email to