{"action":"created","issue":{"url":"https://api.github.com/repos/maidsafe/safe_vault/issues/545","repository_url":"https://api.github.com/repos/maidsafe/safe_vault","labels_url":"https://api.github.com/repos/maidsafe/safe_vault/issues/545/labels{/name}","comments_url":"https://api.github.com/repos/maidsafe/safe_vault/issues/545/comments","events_url":"https://api.github.com/repos/maidsafe/safe_vault/issues/545/events","html_url":"https://github.com/maidsafe/safe_vault/pull/545","id":175059446,"number":545,"title":"fix/data_manager: fix Put and Post handling in data manager","user":{"login":"afck","id":7894725,"avatar_url":"https://avatars.githubusercontent.com/u/7894725?v=3","gravatar_id":"","url":"https://api.github.com/users/afck","html_url":"https://github.com/afck","followers_url":"https://api.github.com/users/afck/followers","following_url":"https://api.github.com/users/afck/following{/other_user}","gists_url":"https://api.github.com/users/afck/gists{/gist_id}","starred_url":"https://api.github.com/users/afck/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/afck/subscriptions","organizations_url":"https://api.github.com/users/afck/orgs","repos_url":"https://api.github.com/users/afck/repos","events_url":"https://api.github.com/users/afck/events{/privacy}","received_events_url":"https://api.github.com/users/afck/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":{"login":"Fraser999","id":190532,"avatar_url":"https://avatars.githubusercontent.com/u/190532?v=3","gravatar_id":"","url":"https://api.github.com/users/Fraser999","html_url":"https://github.com/Fraser999","followers_url":"https://api.github.com/users/Fraser999/followers","following_url":"https://api.github.com/users/Fraser999/following{/other_user}","gists_url":"https://api.github.com/users/Fraser999/gists{/gist_id}","starred_url":"https://api.github.com/users/Fraser999/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Fraser999/subscriptions","organizations_url":"https://api.github.com/users/Fraser999/orgs","repos_url":"https://api.github.com/users/Fraser999/repos","events_url":"https://api.github.com/users/Fraser999/events{/privacy}","received_events_url":"https://api.github.com/users/Fraser999/received_events","type":"User","site_admin":false},"assignees":[{"login":"Fraser999","id":190532,"avatar_url":"https://avatars.githubusercontent.com/u/190532?v=3","gravatar_id":"","url":"https://api.github.com/users/Fraser999","html_url":"https://github.com/Fraser999","followers_url":"https://api.github.com/users/Fraser999/followers","following_url":"https://api.github.com/users/Fraser999/following{/other_user}","gists_url":"https://api.github.com/users/Fraser999/gists{/gist_id}","starred_url":"https://api.github.com/users/Fraser999/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Fraser999/subscriptions","organizations_url":"https://api.github.com/users/Fraser999/orgs","repos_url":"https://api.github.com/users/Fraser999/repos","events_url":"https://api.github.com/users/Fraser999/events{/privacy}","received_events_url":"https://api.github.com/users/Fraser999/received_events","type":"User","site_admin":false}],"milestone":null,"comments":13,"created_at":"2016-09-05T12:17:06Z","updated_at":"2016-09-06T16:22:36Z","closed_at":"2016-09-05T20:29:07Z","pull_request":{"url":"https://api.github.com/repos/maidsafe/safe_vault/pulls/545","html_url":"https://github.com/maidsafe/safe_vault/pull/545","diff_url":"https://github.com/maidsafe/safe_vault/pull/545.diff","patch_url":"https://github.com/maidsafe/safe_vault/pull/545.patch"},"body":"This prevents a group from going out of sync in the rare case where\r\nhalf of the nodes receive one Put/Post request first, and the other\r\nhalf receive a different Put/Post request for the same data chunk first.\r\nPreviously, every node would handle and put in the chunk store the data\r\nit got first. With the new approach, this situation would simply lead to\r\nboth requests being refused, leaving the data intact and in its previous\r\nstate:\r\n\r\nWhen the nodes receive a request, they don't immediately write to the\r\nchunk store, and instead cache the request in memory. Each node sends,\r\nas a message from the group to itself, the _first_ version of the\r\ndata that it received. Only if that message accumulates, i.e. if a\r\nquorum of nodes agrees on which request to choose, they write it to\r\ndisk.\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/maidsafe/safe_vault/545)\n<!-- Reviewable:end -->\n"},"comment":{"url":"https://api.github.com/repos/maidsafe/safe_vault/issues/comments/245006213","html_url":"https://github.com/maidsafe/safe_vault/pull/545#issuecomment-245006213","issue_url":"https://api.github.com/repos/maidsafe/safe_vault/issues/545","id":245006213,"user":{"login":"vtnerd","id":6564514,"avatar_url":"https://avatars.githubusercontent.com/u/6564514?v=3","gravatar_id":"","url":"https://api.github.com/users/vtnerd","html_url":"https://github.com/vtnerd","followers_url":"https://api.github.com/users/vtnerd/followers","following_url":"https://api.github.com/users/vtnerd/following{/other_user}","gists_url":"https://api.github.com/users/vtnerd/gists{/gist_id}","starred_url":"https://api.github.com/users/vtnerd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vtnerd/subscriptions","organizations_url":"https://api.github.com/users/vtnerd/orgs","repos_url":"https://api.github.com/users/vtnerd/repos","events_url":"https://api.github.com/users/vtnerd/events{/privacy}","received_events_url":"https://api.github.com/users/vtnerd/received_events","type":"User","site_admin":false},"created_at":"2016-09-06T16:22:36Z","updated_at":"2016-09-06T16:22:36Z","body":"I don't know why I was hesitant before, the group count isn't locked during this stage, so this is certainly possible. Its just a matter of getting to happen on command. "}}
{"actor":{"display_login":"vtnerd"}}