{"action":"created","issue":{"url":"https://api.github.com/repos/apache/spark/issues/8544","labels_url":"https://api.github.com/repos/apache/spark/issues/8544/labels{/name}","comments_url":"https://api.github.com/repos/apache/spark/issues/8544/comments","events_url":"https://api.github.com/repos/apache/spark/issues/8544/events","html_url":"https://github.com/apache/spark/pull/8544","id":104166602,"number":8544,"title":"[SPARK-10381] Fix mixup of taskAttemptNumber & attemptId in OutputCommitCoordinator","user":{"login":"JoshRosen","id":50748,"avatar_url":"https://avatars.githubusercontent.com/u/50748?v=3","gravatar_id":"","url":"https://api.github.com/users/JoshRosen","html_url":"https://github.com/JoshRosen","followers_url":"https://api.github.com/users/JoshRosen/followers","following_url":"https://api.github.com/users/JoshRosen/following{/other_user}","gists_url":"https://api.github.com/users/JoshRosen/gists{/gist_id}","starred_url":"https://api.github.com/users/JoshRosen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/JoshRosen/subscriptions","organizations_url":"https://api.github.com/users/JoshRosen/orgs","repos_url":"https://api.github.com/users/JoshRosen/repos","events_url":"https://api.github.com/users/JoshRosen/events{/privacy}","received_events_url":"https://api.github.com/users/JoshRosen/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":12,"created_at":"2015-09-01T01:44:56Z","updated_at":"2015-09-15T02:42:13Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/apache/spark/pulls/8544","html_url":"https://github.com/apache/spark/pull/8544","diff_url":"https://github.com/apache/spark/pull/8544.diff","patch_url":"https://github.com/apache/spark/pull/8544.patch"},"body":"When speculative execution is enabled, consider a scenario where the authorized committer of a particular output partition fails during the OutputCommitter.commitTask() call. In this case, the OutputCommitCoordinator is supposed to release that committer's exclusive lock on committing once that task fails. However, due to a unit mismatch (we used task attempt number in one place and task attempt id in another) the lock will not be released, causing Spark to go into an infinite retry loop.\r\n\r\nThis bug was masked by the fact that the OutputCommitCoordinator does not have enough end-to-end tests (the current tests use many mocks). Other factors contributing to this bug are the fact that we have many similarly-named identifiers that have different semantics but the same data types (e.g. attemptNumber and taskAttemptId, with inconsistent variable naming which makes them difficult to distinguish).\r\n\r\nThis patch adds a regression test and fixes this bug by always using task attempt numbers throughout this code."},"comment":{"url":"https://api.github.com/repos/apache/spark/issues/comments/140260740","html_url":"https://github.com/apache/spark/pull/8544#issuecomment-140260740","issue_url":"https://api.github.com/repos/apache/spark/issues/8544","id":140260740,"user":{"login":"AmplabJenkins","id":4031291,"avatar_url":"https://avatars.githubusercontent.com/u/4031291?v=3","gravatar_id":"","url":"https://api.github.com/users/AmplabJenkins","html_url":"https://github.com/AmplabJenkins","followers_url":"https://api.github.com/users/AmplabJenkins/followers","following_url":"https://api.github.com/users/AmplabJenkins/following{/other_user}","gists_url":"https://api.github.com/users/AmplabJenkins/gists{/gist_id}","starred_url":"https://api.github.com/users/AmplabJenkins/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/AmplabJenkins/subscriptions","organizations_url":"https://api.github.com/users/AmplabJenkins/orgs","repos_url":"https://api.github.com/users/AmplabJenkins/repos","events_url":"https://api.github.com/users/AmplabJenkins/events{/privacy}","received_events_url":"https://api.github.com/users/AmplabJenkins/received_events","type":"User","site_admin":false},"created_at":"2015-09-15T02:42:13Z","updated_at":"2015-09-15T02:42:13Z","body":" Merged build triggered."}}