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


##########
fe/fe-core/src/main/java/org/apache/doris/nereids/NereidsPlanner.java:
##########
@@ -143,6 +143,7 @@ public NereidsPlanner(StatementContext statementContext) {
 
     @Override
     public void plan(StatementBase queryStmt, 
org.apache.doris.thrift.TQueryOptions queryOptions) throws UserException {
+        
statementContext.initializeBeExecVersion(queryOptions.getBeExecVersion());

Review Comment:
   [P2] Reuse the pinned version when replanning the same statement
   
   Automatic cloud replanning reuses the same StatementContext: 
StmtExecutor.executeWithReplanRetries clears the planner/coordinator, and 
parseByNereids returns for the retained parsedStmt. Each new planner.plan call 
nevertheless receives SessionVariable.toThrift(), which samples the mutable 
Config.be_exec_version again. If an attempt pins 13, receives a retryable E-230 
error, and an operator raises the setting to 16 before the retry, this call 
throws "already pinned to 13, cannot change it to 16" before analysis, even 
with all BEs able to execute both versions. Reuse the statement's pinned value 
in the retry's TQueryOptions so feature admission and dispatch retain that 
snapshot.



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