branch-2.1: [fix](Export) Clone SessionVariable for each ExportTaskExecutor #48239 (#48255)

Cherry-picked from #48239

Co-authored-by: Tiewei Fang <fangtiewei@selectdb.com>
This commit is contained in:
github-actions[bot]
2025-02-25 09:27:05 +08:00
committed by GitHub
parent f5de8b0742
commit 47a1315cee

View File

@ -34,6 +34,7 @@ import org.apache.doris.qe.AutoCloseConnectContext;
import org.apache.doris.qe.ConnectContext;
import org.apache.doris.qe.QueryState.MysqlStateType;
import org.apache.doris.qe.StmtExecutor;
import org.apache.doris.qe.VariableMgr;
import org.apache.doris.scheduler.exception.JobException;
import org.apache.doris.scheduler.executor.TransientTaskExecutor;
import org.apache.doris.thrift.TUniqueId;
@ -169,7 +170,7 @@ public class ExportTaskExecutor implements TransientTaskExecutor {
private AutoCloseConnectContext buildConnectContext() {
ConnectContext connectContext = new ConnectContext();
exportJob.getSessionVariables().setQueryTimeoutS(exportJob.getTimeoutSecond());
connectContext.setSessionVariable(exportJob.getSessionVariables());
connectContext.setSessionVariable(VariableMgr.cloneSessionVariable(exportJob.getSessionVariables()));
// The rollback to the old optimizer is prohibited
// Since originStmt is empty, reverting to the old optimizer when the new optimizer is enabled is meaningless.
connectContext.getSessionVariable().enableFallbackToOriginalPlanner = false;