{"action":"created","issue":{"url":"https://api.github.com/repos/elastic/elasticsearch/issues/21084","repository_url":"https://api.github.com/repos/elastic/elasticsearch","labels_url":"https://api.github.com/repos/elastic/elasticsearch/issues/21084/labels{/name}","comments_url":"https://api.github.com/repos/elastic/elasticsearch/issues/21084/comments","events_url":"https://api.github.com/repos/elastic/elasticsearch/issues/21084/events","html_url":"https://github.com/elastic/elasticsearch/pull/21084","id":184668517,"number":21084,"title":"Abort snapshots on a node that leaves the cluster","user":{"login":"abeyad","id":1631297,"avatar_url":"https://avatars.githubusercontent.com/u/1631297?v=3","gravatar_id":"","url":"https://api.github.com/users/abeyad","html_url":"https://github.com/abeyad","followers_url":"https://api.github.com/users/abeyad/followers","following_url":"https://api.github.com/users/abeyad/following{/other_user}","gists_url":"https://api.github.com/users/abeyad/gists{/gist_id}","starred_url":"https://api.github.com/users/abeyad/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/abeyad/subscriptions","organizations_url":"https://api.github.com/users/abeyad/orgs","repos_url":"https://api.github.com/users/abeyad/repos","events_url":"https://api.github.com/users/abeyad/events{/privacy}","received_events_url":"https://api.github.com/users/abeyad/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/elastic/elasticsearch/labels/:Snapshot/Restore","name":":Snapshot/Restore","color":"009800"},{"url":"https://api.github.com/repos/elastic/elasticsearch/labels/resiliency","name":"resiliency","color":"009800"},{"url":"https://api.github.com/repos/elastic/elasticsearch/labels/review","name":"review","color":"0052cc"},{"url":"https://api.github.com/repos/elastic/elasticsearch/labels/v5.1.0","name":"v5.1.0","color":"dddddd"},{"url":"https://api.github.com/repos/elastic/elasticsearch/labels/v6.0.0","name":"v6.0.0","color":"dddddd"}],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":4,"created_at":"2016-10-23T03:08:46Z","updated_at":"2016-10-26T14:07:36Z","closed_at":"2016-10-26T14:04:50Z","pull_request":{"url":"https://api.github.com/repos/elastic/elasticsearch/pulls/21084","html_url":"https://github.com/elastic/elasticsearch/pull/21084","diff_url":"https://github.com/elastic/elasticsearch/pull/21084.diff","patch_url":"https://github.com/elastic/elasticsearch/pull/21084.patch"},"body":"Previously, if a node left the cluster (for example, due to a long GC),\r\nduring a snapshot, the master node would mark the snapshot as failed, but\r\nthe node itself could continue snapshotting the data on its shards to the\r\nrepository.  If the node rejoins the cluster, the master may assign it to\r\nhold the replica shard (where it held the primary before getting kicked off\r\nthe cluster).  The initialization of the replica shard would repeatedly fail\r\nwith a ShardLockObtainFailedException until the snapshot thread finally\r\nfinishes and relinquishes the lock on the Store.\r\n\r\nThis commit resolves the situation by ensuring that when a shard is removed\r\nfrom a node (such as when a node rejoins the cluster and realizes it no longer\r\nholds the active shard copy), any snapshotting of the removed shards is aborted.\r\nIn the scenario above, when the node rejoins the cluster, it will see in the cluster \r\nstate that the node no longer holds the primary shard, so `IndicesClusterStateService`\r\nwill remove the shard, thereby causing any snapshots of that shard to be aborted.\r\n\r\nCloses #20876"},"comment":{"url":"https://api.github.com/repos/elastic/elasticsearch/issues/comments/256358251","html_url":"https://github.com/elastic/elasticsearch/pull/21084#issuecomment-256358251","issue_url":"https://api.github.com/repos/elastic/elasticsearch/issues/21084","id":256358251,"user":{"login":"abeyad","id":1631297,"avatar_url":"https://avatars.githubusercontent.com/u/1631297?v=3","gravatar_id":"","url":"https://api.github.com/users/abeyad","html_url":"https://github.com/abeyad","followers_url":"https://api.github.com/users/abeyad/followers","following_url":"https://api.github.com/users/abeyad/following{/other_user}","gists_url":"https://api.github.com/users/abeyad/gists{/gist_id}","starred_url":"https://api.github.com/users/abeyad/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/abeyad/subscriptions","organizations_url":"https://api.github.com/users/abeyad/orgs","repos_url":"https://api.github.com/users/abeyad/repos","events_url":"https://api.github.com/users/abeyad/events{/privacy}","received_events_url":"https://api.github.com/users/abeyad/received_events","type":"User","site_admin":false},"created_at":"2016-10-26T14:07:35Z","updated_at":"2016-10-26T14:07:35Z","body":"5.x commit: 1d278d26f68e9cb9545290dbe00f8ff9cba6e768"}}
{"actor":{"display_login":"abeyad"}}