{"action":"created","issue":{"url":"https://api.github.com/repos/containerd/containerd/issues/1095","repository_url":"https://api.github.com/repos/containerd/containerd","labels_url":"https://api.github.com/repos/containerd/containerd/issues/1095/labels{/name}","comments_url":"https://api.github.com/repos/containerd/containerd/issues/1095/comments","events_url":"https://api.github.com/repos/containerd/containerd/issues/1095/events","html_url":"https://github.com/containerd/containerd/pull/1095","id":238567025,"number":1095,"title":"Avoid race during startup in Task.Wait()","user":{"login":"ijc","id":12985729,"avatar_url":"https://avatars0.githubusercontent.com/u/12985729?v=4","gravatar_id":"","url":"https://api.github.com/users/ijc","html_url":"https://github.com/ijc","followers_url":"https://api.github.com/users/ijc/followers","following_url":"https://api.github.com/users/ijc/following{/other_user}","gists_url":"https://api.github.com/users/ijc/gists{/gist_id}","starred_url":"https://api.github.com/users/ijc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ijc/subscriptions","organizations_url":"https://api.github.com/users/ijc/orgs","repos_url":"https://api.github.com/users/ijc/repos","events_url":"https://api.github.com/users/ijc/events{/privacy}","received_events_url":"https://api.github.com/users/ijc/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":11,"created_at":"2017-06-26T14:46:18Z","updated_at":"2017-08-03T10:43:08Z","closed_at":"2017-08-03T10:43:08Z","pull_request":{"url":"https://api.github.com/repos/containerd/containerd/pulls/1095","html_url":"https://github.com/containerd/containerd/pull/1095","diff_url":"https://github.com/containerd/containerd/pull/1095.diff","patch_url":"https://github.com/containerd/containerd/pull/1095.patch"},"body":"If the task went away between our caller doing whatever checks it did and\r\nWait() starting the event stream then we may never see the exit event.\r\n\r\nAvoid this by checking that the task is (still) running after starting the\r\nevent stream, but before starting to process events.\r\n\r\nSigned-off-by: Ian Campbell <ian.campbell@docker.com>\r\n\r\nFull disclosure: I've never triggered this issue in practice, the PR is purely based on code inspection."},"comment":{"url":"https://api.github.com/repos/containerd/containerd/issues/comments/319934380","html_url":"https://github.com/containerd/containerd/pull/1095#issuecomment-319934380","issue_url":"https://api.github.com/repos/containerd/containerd/issues/1095","id":319934380,"user":{"login":"ijc","id":12985729,"avatar_url":"https://avatars0.githubusercontent.com/u/12985729?v=4","gravatar_id":"","url":"https://api.github.com/users/ijc","html_url":"https://github.com/ijc","followers_url":"https://api.github.com/users/ijc/followers","following_url":"https://api.github.com/users/ijc/following{/other_user}","gists_url":"https://api.github.com/users/ijc/gists{/gist_id}","starred_url":"https://api.github.com/users/ijc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ijc/subscriptions","organizations_url":"https://api.github.com/users/ijc/orgs","repos_url":"https://api.github.com/users/ijc/repos","events_url":"https://api.github.com/users/ijc/events{/privacy}","received_events_url":"https://api.github.com/users/ijc/received_events","type":"User","site_admin":false},"created_at":"2017-08-03T10:43:08Z","updated_at":"2017-08-03T10:43:08Z","body":"I think doing the wait in a goroutine will be fine, thanks."}}
{"actor":{"display_login":"ijc"}}