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


##########
fe/fe-core/src/main/java/org/apache/doris/qe/VariableMgr.java:
##########
@@ -392,6 +398,11 @@ private static void setVarInternal(SessionVariable 
sessionVariable, SetVar setVa
             }
         }
         setValue(sessionVariable, sessionVariableField, value);
+        if (SessionVariable.ENABLE_COMMON_EXPR_PUSHDOWN.equals(attr.name())) {
+            VarContext segmentPushdownCtx =
+                    
getVarContext(SessionVariable.ENABLE_SEGMENT_FILTER_AND_LIMIT_PUSHDOWN);
+            setValue(sessionVariable, new 
SessionVariableField(segmentPushdownCtx.getField()), value);
+        }

Review Comment:
   This alias update also needs to participate in the statement-scoped 
`SET_VAR` revert path. When `sessionVariable.getIsSingleSetVar()` is true, this 
method records only the original value for `enable_common_expr_pushdown` before 
line 400. The new `enable_segment_filter_and_limit_pushdown` field is then 
changed here without adding its original value to `sessionOriginValue`, so 
`VariableMgr.revertSessionValue()` restores only the legacy field after the 
statement. A query hint such as `SELECT /*+ 
SET_VAR(enable_common_expr_pushdown=false) */ ...` leaves 
`enable_segment_filter_and_limit_pushdown` false for the session after the 
query finishes, which is a behavior leak from a statement-local setting. Please 
record and restore the propagated field too, and add a SET_VAR regression/unit 
test for the alias.



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