DanielLeens commented on issue #11755:
URL: https://github.com/apache/seatunnel/issues/11755#issuecomment-5247866767
Thanks for separating the underlying race from the client-visible symptom in
#11679.
I checked the execution path in the current Zeta server code, and this does
look like a real bug rather than a test artifact. `TaskExecutionService` still
treats `TaskGroupLocation` as the identity of the active context, while
`TaskGroupExecutionTracker.taskDone()` removes the entry by that key alone when
the worker finishes. With restore generations reusing the same `{jobId,
pipelineId, taskGroupId}` location, a late `taskDone()` from the previous
generation can indeed evict the context that a newer `deployLocalTask()` has
just installed.
So the current split makes sense:
- #11727 / #11757 harden the failure path so the missing context fails
loudly instead of hanging the pipeline and client;
- this issue tracks the root cause, which is generation-unsafe context
eviction.
The most useful fix direction is exactly what you outlined: make the removal
conditional on the expected context identity (or an explicit generation/epoch),
then add a regression that proves an older worker cannot clear a newer
generation's context for the same task-group location.
You marked that you are willing to submit the fix. I tried to assign the
issue accordingly, but GitHub did not accept the assignee update from my side,
so please continue on the PR path and we can keep tracking progress here.
--
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]