github-actions[bot] commented on code in PR #68281:
URL: https://github.com/apache/doris/pull/68281#discussion_r4084142936
##########
fe/fe-core/src/main/java/org/apache/doris/qe/SessionVariable.java:
##########
@@ -4363,7 +4413,8 @@ public int getParallelExecInstanceNum(String clusterName)
{
int userParallelExecInstanceNum = connectContext.getEnv().getAuth()
.getParallelFragmentExecInstanceNum(connectContext.getQualifiedUser());
if (userParallelExecInstanceNum > 0) {
- return userParallelExecInstanceNum;
+ // User properties restored from older images or journals may
exceed the write-time limit.
+ return Math.min(userParallelExecInstanceNum, 256);
Review Comment:
[P1] Cap the automatic resolved parallelism too
This clamps the historical user-property branch, but the automatic branch
below can still exceed 256 through the unrestricted `max_instance_num`. For
example, when BEs report `pipeline_executor_size=1024`, a user without a
positive property override can run `SET max_instance_num=1024` and `SET
parallel_pipeline_task_num=0`; this method returns 512, which `PlanFragment`
and `toThrift().parallel_instance` pass to execution and a sufficiently
parallel plan can turn into more than 256 instances. Apply the ceiling to the
final resolved value (or bound `max_instance_num` consistently), and cover auto
resolution plus Thrift serialization with a large executor report.
--
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]