{"action":"created","issue":{"url":"https://api.github.com/repos/cockroachdb/cockroach/issues/10875","repository_url":"https://api.github.com/repos/cockroachdb/cockroach","labels_url":"https://api.github.com/repos/cockroachdb/cockroach/issues/10875/labels{/name}","comments_url":"https://api.github.com/repos/cockroachdb/cockroach/issues/10875/comments","events_url":"https://api.github.com/repos/cockroachdb/cockroach/issues/10875/events","html_url":"https://github.com/cockroachdb/cockroach/pull/10875","id":190602165,"number":10875,"title":"storage: avoid erroneous invocation of Replica.CloseOutSnap","user":{"login":"petermattis","id":6201335,"avatar_url":"https://avatars.githubusercontent.com/u/6201335?v=3","gravatar_id":"","url":"https://api.github.com/users/petermattis","html_url":"https://github.com/petermattis","followers_url":"https://api.github.com/users/petermattis/followers","following_url":"https://api.github.com/users/petermattis/following{/other_user}","gists_url":"https://api.github.com/users/petermattis/gists{/gist_id}","starred_url":"https://api.github.com/users/petermattis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/petermattis/subscriptions","organizations_url":"https://api.github.com/users/petermattis/orgs","repos_url":"https://api.github.com/users/petermattis/repos","events_url":"https://api.github.com/users/petermattis/events{/privacy}","received_events_url":"https://api.github.com/users/petermattis/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":{"login":"jordanlewis","id":43821,"avatar_url":"https://avatars.githubusercontent.com/u/43821?v=3","gravatar_id":"","url":"https://api.github.com/users/jordanlewis","html_url":"https://github.com/jordanlewis","followers_url":"https://api.github.com/users/jordanlewis/followers","following_url":"https://api.github.com/users/jordanlewis/following{/other_user}","gists_url":"https://api.github.com/users/jordanlewis/gists{/gist_id}","starred_url":"https://api.github.com/users/jordanlewis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jordanlewis/subscriptions","organizations_url":"https://api.github.com/users/jordanlewis/orgs","repos_url":"https://api.github.com/users/jordanlewis/repos","events_url":"https://api.github.com/users/jordanlewis/events{/privacy}","received_events_url":"https://api.github.com/users/jordanlewis/received_events","type":"User","site_admin":false},"assignees":[{"login":"jordanlewis","id":43821,"avatar_url":"https://avatars.githubusercontent.com/u/43821?v=3","gravatar_id":"","url":"https://api.github.com/users/jordanlewis","html_url":"https://github.com/jordanlewis","followers_url":"https://api.github.com/users/jordanlewis/followers","following_url":"https://api.github.com/users/jordanlewis/following{/other_user}","gists_url":"https://api.github.com/users/jordanlewis/gists{/gist_id}","starred_url":"https://api.github.com/users/jordanlewis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jordanlewis/subscriptions","organizations_url":"https://api.github.com/users/jordanlewis/orgs","repos_url":"https://api.github.com/users/jordanlewis/repos","events_url":"https://api.github.com/users/jordanlewis/events{/privacy}","received_events_url":"https://api.github.com/users/jordanlewis/received_events","type":"User","site_admin":false}],"milestone":null,"comments":3,"created_at":"2016-11-21T01:59:34Z","updated_at":"2016-11-21T13:56:04Z","closed_at":"2016-11-21T13:50:09Z","pull_request":{"url":"https://api.github.com/repos/cockroachdb/cockroach/pulls/10875","html_url":"https://github.com/cockroachdb/cockroach/pull/10875","diff_url":"https://github.com/cockroachdb/cockroach/pull/10875.diff","patch_url":"https://github.com/cockroachdb/cockroach/pull/10875.patch"},"body":"Replica.handleRaftReadyRaftMuLocked was invoking\nReplica.maybeAbandonSnapshot whenever it saw a non-empty snapshot during\na call to Replica.sendRaftMessage. But Replica.sendRaftMessage was\nalready ensuring such snapshots were released. The result was that\nReplica.maybeAbandonSnapshot was being invoked unnecessarily which could\nthen race with a preemptive snapshot.\n\nImprove the logging when generating snapshots: we know if they are being\ngenerated by Raft or preemptively.\n\nFixes #10864\n\n<!-- Reviewable:start -->\n---\nThis change is [<img src=\"https://reviewable.io/review_button.svg\" height=\"34\" align=\"absmiddle\" alt=\"Reviewable\"/>](https://reviewable.io/reviews/cockroachdb/cockroach/10875)\n<!-- Reviewable:end -->\n"},"comment":{"url":"https://api.github.com/repos/cockroachdb/cockroach/issues/comments/261944538","html_url":"https://github.com/cockroachdb/cockroach/pull/10875#issuecomment-261944538","issue_url":"https://api.github.com/repos/cockroachdb/cockroach/issues/10875","id":261944538,"user":{"login":"jordanlewis","id":43821,"avatar_url":"https://avatars.githubusercontent.com/u/43821?v=3","gravatar_id":"","url":"https://api.github.com/users/jordanlewis","html_url":"https://github.com/jordanlewis","followers_url":"https://api.github.com/users/jordanlewis/followers","following_url":"https://api.github.com/users/jordanlewis/following{/other_user}","gists_url":"https://api.github.com/users/jordanlewis/gists{/gist_id}","starred_url":"https://api.github.com/users/jordanlewis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jordanlewis/subscriptions","organizations_url":"https://api.github.com/users/jordanlewis/orgs","repos_url":"https://api.github.com/users/jordanlewis/repos","events_url":"https://api.github.com/users/jordanlewis/events{/privacy}","received_events_url":"https://api.github.com/users/jordanlewis/received_events","type":"User","site_admin":false},"created_at":"2016-11-21T13:56:04Z","updated_at":"2016-11-21T13:56:04Z","body":"LGTM. This bit of defensive programming seems to have badly backfired."}}
{"actor":{"display_login":"jordanlewis"}}