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


##########
fe/fe-common/src/main/java/org/apache/doris/qe/GlobalVariable.java:
##########
@@ -92,60 +91,60 @@ 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 = 
java.util.TimeZone.getDefault().getID();

Review Comment:
   **Bug: Behavioral regression in timezone resolution.**
   
   The original code used `TimeUtils.getSystemTimeZone().getID()` which applies 
Doris's custom timezone alias map. That map intentionally remaps `CST` to 
`Asia/Shanghai` (UTC+8) instead of Java's default `America/Chicago` (UTC-6). 
See `TimeUtils.java` lines 106-116 and 150-152.
   
   The new code `java.util.TimeZone.getDefault().getID()` bypasses this 
remapping entirely. On systems where the JVM reports `CST` as the default 
timezone, this introduces a **14-hour timezone difference** — a silent 
correctness regression.
   
   Suggested fix: Either keep a dependency on `TimeUtils` (if feasible in 
fe-common), or replicate the CST remapping logic locally:
   ```java
   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;
   }
   
   public static String systemTimeZone = resolveSystemTimeZone();
   ```



-- 
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