Merge pull request #5974 from claudiubelu/hanging-task-delete-fix

task delete: Closes task IO before waiting
This commit is contained in:
Phil Estes 2021-09-15 11:30:23 -04:00 committed by GitHub
commit d081457ba4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 5 additions and 0 deletions

View File

@ -50,6 +50,10 @@ func openPipe(ctx context.Context, fn string, flag int, perm os.FileMode) (io.Re
}
p.con = c
}()
go func() {
<-ctx.Done()
p.Close()
}()
return p, nil
}

View File

@ -315,6 +315,7 @@ func (t *task) Delete(ctx context.Context, opts ...ProcessDeleteOpts) (*ExitStat
return nil, errors.Wrapf(errdefs.ErrFailedPrecondition, "task must be stopped before deletion: %s", status.Status)
}
if t.io != nil {
t.io.Close()
t.io.Cancel()
t.io.Wait()
}