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

lizhimins pushed a commit to branch rocketmq-studio
in repository https://gitbox.apache.org/repos/asf/rocketmq-dashboard.git


The following commit(s) were added to refs/heads/rocketmq-studio by this push:
     new 8d6b21c7 fix(metrics): normalize backend types with root locale (#1487)
8d6b21c7 is described below

commit 8d6b21c7293d38c211f57f3dc518656727c84831
Author: yyqdbngt <[email protected]>
AuthorDate: Tue Aug 11 17:49:14 2026 +0800

    fix(metrics): normalize backend types with root locale (#1487)
    
    Co-authored-by: yyqdbngt <[email protected]>
---
 .../studio/cluster/metrics/MetricsBackendType.java      |  4 +++-
 .../studio/cluster/metrics/MetricsBackendTypeTest.java  | 17 +++++++++++++++++
 2 files changed, 20 insertions(+), 1 deletion(-)

diff --git 
a/server/src/main/java/org/apache/rocketmq/studio/cluster/metrics/MetricsBackendType.java
 
b/server/src/main/java/org/apache/rocketmq/studio/cluster/metrics/MetricsBackendType.java
index 147a78c8..ac5e256e 100644
--- 
a/server/src/main/java/org/apache/rocketmq/studio/cluster/metrics/MetricsBackendType.java
+++ 
b/server/src/main/java/org/apache/rocketmq/studio/cluster/metrics/MetricsBackendType.java
@@ -16,6 +16,8 @@
  */
 package org.apache.rocketmq.studio.cluster.metrics;
 
+import java.util.Locale;
+
 /**
  * Prometheus-compatible metrics backend types supported by RocketMQ Studio.
  * <p>
@@ -53,7 +55,7 @@ public enum MetricsBackendType {
         if (providerType == null) {
             return PROMETHEUS;
         }
-        return switch (providerType.trim().toUpperCase()) {
+        return switch (providerType.trim().toUpperCase(Locale.ROOT)) {
             case "PROMETHEUS" -> PROMETHEUS;
             case "VICTORIAMETRICS", "VICTORIA_METRICS", "VICTORIA" -> 
VICTORIA_METRICS;
             case "THANOS" -> THANOS;
diff --git 
a/server/src/test/java/org/apache/rocketmq/studio/cluster/metrics/MetricsBackendTypeTest.java
 
b/server/src/test/java/org/apache/rocketmq/studio/cluster/metrics/MetricsBackendTypeTest.java
index 02defc44..f47aa601 100644
--- 
a/server/src/test/java/org/apache/rocketmq/studio/cluster/metrics/MetricsBackendTypeTest.java
+++ 
b/server/src/test/java/org/apache/rocketmq/studio/cluster/metrics/MetricsBackendTypeTest.java
@@ -18,6 +18,8 @@ package org.apache.rocketmq.studio.cluster.metrics;
 
 import org.junit.jupiter.api.Test;
 
+import java.util.Locale;
+
 import static org.assertj.core.api.Assertions.assertThat;
 
 class MetricsBackendTypeTest {
@@ -43,6 +45,21 @@ class MetricsBackendTypeTest {
         
assertThat(MetricsBackendType.fromProviderType("unknown-backend")).isEqualTo(MetricsBackendType.PROMETHEUS);
     }
 
+    @Test
+    void shouldResolveProviderTypeIndependentlyOfDefaultLocale() {
+        Locale originalLocale = Locale.getDefault();
+
+        MetricsBackendType backendType;
+        try {
+            Locale.setDefault(Locale.forLanguageTag("tr-TR"));
+            backendType = MetricsBackendType.fromProviderType("mimir");
+        } finally {
+            Locale.setDefault(originalLocale);
+        }
+
+        assertThat(backendType).isEqualTo(MetricsBackendType.MIMIR);
+    }
+
     @Test
     void shouldExposeDistinctQueryPathsForBackends() {
         
assertThat(MetricsBackendType.PROMETHEUS.getQueryPath()).isEqualTo("/api/v1/query_range");

Reply via email to