[Docs][Core] Add Javadoc to TaskExecutionService inner classes - #10691
Conversation
There was a problem hiding this comment.
Pull request overview
Adds comprehensive Javadoc to TaskExecutionService (SeaTunnel Engine server) to clarify task deployment, lifecycle management, and the cooperative vs. blocking execution model, as part of issue #10546.
Changes:
- Expanded class-level documentation describing responsibilities and execution modes.
- Added/updated Javadoc on key fields and public/private methods.
- Added detailed Javadoc for inner classes involved in cooperative and blocking execution.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
DanielLeens
left a comment
There was a problem hiding this comment.
I pulled the diff locally and did not find a blocking issue here.
This stays in the documentation/Javadoc layer, and the added descriptions are aligned with the current execution structure in TaskExecutionService rather than changing behavior. From my side this looks fine to merge.
# Conflicts: # seatunnel-engine/seatunnel-engine-server/src/main/java/org/apache/seatunnel/engine/server/TaskExecutionService.java
davidzollo
left a comment
There was a problem hiding this comment.
I pulled the updated branch locally, resolved the dev merge conflict, and re-checked the final diff against the current base.\n\nThe PR still stays in the Javadoc/documentation layer for TaskExecutionService, and the added descriptions match the current execution structure rather than changing runtime behavior. I did not find a remaining blocking issue on the code path covered by this PR.
Fixes: #10546
Purpose of this pull request
This pull request adds comprehensive Javadoc documentation to
TaskExecutionServiceclass, which is part of issue #10546 (sub-task of #10533) to add Javadoc to key lifecycle, checkpoint, and multi-table related classes.The Javadoc improvements include:
1. Class-level Javadoc:
<ul>lists detailing the service responsibilities@seereferences to related internal classes (CooperativeTaskWorker,BlockingWorker,TaskGroupExecutionTracker)2. Field Javadoc:
hzInstanceName,nodeEngine,classLoaderService,executorService,executionContexts,finishedExecutionContexts, etc.3. Method Javadoc:
start(),shutdown(),getExecutionContext(),getActiveExecutionContext(),deployTask(),deployLocalTask(),getTask(),cancelTaskGroup(),asyncExecuteFunction(),notifyCleanTaskGroupContext(),reportEvent(),getSeaTunnelConfig(),getServerConnectorPackageClient(),printTaskExecutionRuntimeInfo()submitThreadShareTask(),submitBlockingTask(),notifyTaskStatusToMaster()4. Inner Class Javadoc:
CooperativeTaskWorker- improved class documentationCooperativeTaskWorker.run()- added detailed execution flow with<ol>listRunBusWorkSupplier- improved class and method documentationBlockingWorker.run()- added detailed execution flow with<ol>listTaskGroupExecutionTracker.taskDone()- added completion handling documentationTaskGroupExecutionTracker.exception()- added exception recording documentationBlockingTaskThreadFactory- added thread naming pattern documentationNamedTaskWrapper- added documentationDoes this PR introduce any user-facing change?
No. This is a documentation-only change that adds Javadoc comments to improve code readability and maintainability. No user-facing behavior is changed.
How was this patch tested?
./mvnw spotless:applypassed (formatting verified)Check list
New License Guide
incompatible-changes.mdto describe the incompatibility caused by this PR.