github-actions[bot] commented on code in PR #61918:
URL: https://github.com/apache/doris/pull/61918#discussion_r3019441434


##########
fe/fe-common/src/main/java/org/apache/doris/qe/GlobalVariable.java:
##########
@@ -92,60 +91,69 @@ public final class GlobalVariable {
     public static final String ENABLE_NEW_TYPE_COERCION_BEHAVIOR
             = "enable_new_type_coercion_behavior";
 
-    @VariableMgr.VarAttr(name = VARIABLE_VERSION, flag = VariableMgr.INVISIBLE
-            | VariableMgr.READ_ONLY | VariableMgr.GLOBAL)
+    @VarAttrDef.VarAttr(name = VARIABLE_VERSION, flag = VarAttrDef.INVISIBLE
+            | VarAttrDef.READ_ONLY | VarAttrDef.GLOBAL)
     public static int variableVersion = CURRENT_VARIABLE_VERSION;
 
-    @VariableMgr.VarAttr(name = VERSION_COMMENT, flag = VariableMgr.READ_ONLY)
+    @VarAttrDef.VarAttr(name = VERSION_COMMENT, flag = VarAttrDef.READ_ONLY)
     public static String versionComment = Version.DORIS_BUILD_VERSION_PREFIX + 
" version "
             + Version.DORIS_BUILD_VERSION + "-" + 
Version.DORIS_BUILD_SHORT_HASH
             + (Config.isCloudMode() ? " (Cloud Mode)" : "");
 
-    @VariableMgr.VarAttr(name = VERSION)
+    @VarAttrDef.VarAttr(name = VERSION)
     public static String version = DEFAULT_SERVER_VERSION;
 
     // 0: table names are stored as specified and comparisons are case 
sensitive.
     // 1: table names are stored in lowercase on disk and comparisons are not 
case sensitive.
     // 2: table names are stored as given but compared in lowercase.
-    @VariableMgr.VarAttr(name = LOWER_CASE_TABLE_NAMES, flag = 
VariableMgr.READ_ONLY | VariableMgr.GLOBAL)
+    @VarAttrDef.VarAttr(name = LOWER_CASE_TABLE_NAMES, flag = 
VarAttrDef.READ_ONLY | VarAttrDef.GLOBAL)
     public static int lowerCaseTableNames = 0;
 
-    @VariableMgr.VarAttr(name = LICENSE, flag = VariableMgr.READ_ONLY)
+    @VarAttrDef.VarAttr(name = LICENSE, flag = VarAttrDef.READ_ONLY)
     public static String license = "Apache License, Version 2.0";
 
-    @VariableMgr.VarAttr(name = LANGUAGE, flag = VariableMgr.READ_ONLY)
+    @VarAttrDef.VarAttr(name = LANGUAGE, flag = VarAttrDef.READ_ONLY)
     public static String language = "/palo/share/english/";
 
     // A string to be executed by the server for each client that connects
-    @VariableMgr.VarAttr(name = INIT_CONNECT, flag = VariableMgr.GLOBAL)
+    @VarAttrDef.VarAttr(name = INIT_CONNECT, flag = VarAttrDef.GLOBAL)
     public static volatile String initConnect = "";
 
     // A string to be executed by the server for each client that connects
-    @VariableMgr.VarAttr(name = SYSTEM_TIME_ZONE, flag = VariableMgr.READ_ONLY)
-    public static String systemTimeZone = 
TimeUtils.getSystemTimeZone().getID();
+    @VarAttrDef.VarAttr(name = SYSTEM_TIME_ZONE, flag = VarAttrDef.READ_ONLY)
+    public static String systemTimeZone = resolveSystemTimeZone();
+
+    private static String resolveSystemTimeZone() {
+        String id = java.util.TimeZone.getDefault().getID();
+        // Doris convention: CST means China Standard Time (UTC+8), not US 
Central
+        if ("CST".equalsIgnoreCase(id)) {
+            return "Asia/Shanghai";
+        }
+        return id;
+    }
 

Review Comment:
   `systemTimeZone` used to come from `TimeUtils.getSystemTimeZone().getID()`, 
which applies Doris's timezone alias map (`CST` -> `Asia/Shanghai`, `PRC` -> 
`Asia/Shanghai`, plus `ZoneId.SHORT_IDS`). After this refactor it comes from 
`TimeZone.getDefault().getID()` with only a `CST` special-case, so aliases like 
`PRC` now surface directly instead of being normalized the same way as before. 
That makes this visible variable change behavior even though the PR is 
described as a refactor. Please preserve the old Doris alias normalization 
here, or move the shared alias-resolution helper into a lower-level module 
before switching this initialization path.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to