You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Issue:
The user attempts a group delete of task executions and the server responds with a 500 error stating that a deadlock has occurred.
Cause:
A CTR definition that contains both boot3 and boot2 applications has been launched multiple times and has been restarted due to failures by a child task. When the user attempts to do a group delete of the task executions, it passes in a list of task executions to be removed without the associated schema type. This causes deadlock issues when task execution and job execution data is being deleted.
Create a list of the child task executions(task executions with a parent id)
a. Group the child task execution ids by schemaTarget and invoke destroy with multiple ids for the schemaTarget
Create a list of the parent task executions(task executions without a parent id)
a. Group by schemaTarget collect ids and invoke destroy with multiple ids for schemaTarget
Steps to reproduce:
Creates a composed task runner like taskBoot2 && taskBoot3Fail && taskBoot3 as foo. (TaskBoot3Fail should fail)
Launch Foo
Once foo completes in a state of failed. Go to the job execution page and restart.
Update taskBoot3Fail so that it will no longer fail. And compile to create a new binary or image
Go to the job execution page and restart
Upon its successful completion
Go to Task Execution Page and do a group delete all task executions.
If you have any questions feel free to reach out to me or @corneil
The text was updated successfully, but these errors were encountered:
Issue:
The user attempts a group delete of task executions and the server responds with a 500 error stating that a deadlock has occurred.
Cause:
A CTR definition that contains both boot3 and boot2 applications has been launched multiple times and has been restarted due to failures by a child task. When the user attempts to do a group delete of the task executions, it passes in a list of task executions to be removed without the associated schema type. This causes deadlock issues when task execution and job execution data is being deleted.
Resolution:
Currently, the code https://github.com/spring-cloud/spring-cloud-dataflow-ui/blob/main/ui/src/app/shared/api/task.service.ts#L76-L78 Deletes all ids in one request.
The solution to the issue is change the above implementation to one that does the following:
a. Group the child task execution ids by schemaTarget and invoke destroy with multiple ids for the schemaTarget
a. Group by schemaTarget collect ids and invoke destroy with multiple ids for schemaTarget
Steps to reproduce:
taskBoot2 && taskBoot3Fail && taskBoot3
as foo. (TaskBoot3Fail should fail)If you have any questions feel free to reach out to me or @corneil
The text was updated successfully, but these errors were encountered: