{"action":"created","comment":{"url":"https://api.github.com/repos/docker/docker/pulls/comments/48367777","id":48367777,"diff_hunk":"@@ -14,30 +14,33 @@ import (\n \t\"github.com/vbatts/tar-split/tar/storage\"\n )\n \n-func (ls *layerStore) MountByGraphID(name string, graphID string, parent ChainID) (l RWLayer, err error) {\n+// MountByGraphID creates a RWLayer in the layer store using\n+// the provided name with the given graphID. To get the RWLayer\n+// after migration the layer may be retrieved by the given name.\n+func (ls *layerStore) MountByGraphID(name string, graphID string, parent ChainID) (err error) {","path":"layer/migration.go","position":8,"original_position":8,"commit_id":"4735e0de0a2bb6fb23f448cf168db39a84df006b","original_commit_id":"4735e0de0a2bb6fb23f448cf168db39a84df006b","user":{"login":"tonistiigi","id":585223,"avatar_url":"https://avatars.githubusercontent.com/u/585223?v=3","gravatar_id":"","url":"https://api.github.com/users/tonistiigi","html_url":"https://github.com/tonistiigi","followers_url":"https://api.github.com/users/tonistiigi/followers","following_url":"https://api.github.com/users/tonistiigi/following{/other_user}","gists_url":"https://api.github.com/users/tonistiigi/gists{/gist_id}","starred_url":"https://api.github.com/users/tonistiigi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tonistiigi/subscriptions","organizations_url":"https://api.github.com/users/tonistiigi/orgs","repos_url":"https://api.github.com/users/tonistiigi/repos","events_url":"https://api.github.com/users/tonistiigi/events{/privacy}","received_events_url":"https://api.github.com/users/tonistiigi/received_events","type":"User","site_admin":false},"body":"As this doesn't mount any more, maybe we should call it `CreateRWLayerByGraphID`","created_at":"2015-12-23T18:20:28Z","updated_at":"2015-12-23T18:20:28Z","html_url":"https://github.com/docker/docker/pull/18834#discussion_r48367777","pull_request_url":"https://api.github.com/repos/docker/docker/pulls/18834","_links":{"self":{"href":"https://api.github.com/repos/docker/docker/pulls/comments/48367777"},"html":{"href":"https://github.com/docker/docker/pull/18834#discussion_r48367777"},"pull_request":{"href":"https://api.github.com/repos/docker/docker/pulls/18834"}}},"pull_request":{"url":"https://api.github.com/repos/docker/docker/pulls/18834","id":54306429,"html_url":"https://github.com/docker/docker/pull/18834","diff_url":"https://github.com/docker/docker/pull/18834.diff","patch_url":"https://github.com/docker/docker/pull/18834.patch","issue_url":"https://api.github.com/repos/docker/docker/issues/18834","number":18834,"state":"open","locked":false,"title":"Layerstore refactor rw layer","user":{"login":"dmcgowan","id":169601,"avatar_url":"https://avatars.githubusercontent.com/u/169601?v=3","gravatar_id":"","url":"https://api.github.com/users/dmcgowan","html_url":"https://github.com/dmcgowan","followers_url":"https://api.github.com/users/dmcgowan/followers","following_url":"https://api.github.com/users/dmcgowan/following{/other_user}","gists_url":"https://api.github.com/users/dmcgowan/gists{/gist_id}","starred_url":"https://api.github.com/users/dmcgowan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dmcgowan/subscriptions","organizations_url":"https://api.github.com/users/dmcgowan/orgs","repos_url":"https://api.github.com/users/dmcgowan/repos","events_url":"https://api.github.com/users/dmcgowan/events{/privacy}","received_events_url":"https://api.github.com/users/dmcgowan/received_events","type":"User","site_admin":false},"body":"Updates the layer interface to have a RW layer with a more complete interface. RW layer objects are now more powerful and individually reference counted. This change allows for separating the creation of the RW layer from when it is mounted. Container will now always have a reference to the RW layerr.\r\n\r\nFixes race between creating a writable layer and registering a container.\r\n\r\nFixes #18753 \r\n\r\nAdditional refactoring should be done the container create process. Currently ordering is ambiguous and there are still periods of time between a container being visible, fully setup, and saved to disk that make the process prone to races.\r\n\r\nping @tonistiigi @LK4D4 ","created_at":"2015-12-21T21:42:04Z","updated_at":"2015-12-23T18:20:28Z","closed_at":null,"merged_at":null,"merge_commit_sha":"9470f3ba0482fde9d821437aa50c33d1bf2ed8d3","assignee":null,"milestone":{"url":"https://api.github.com/repos/docker/docker/milestones/44","html_url":"https://github.com/docker/docker/milestones/1.10","labels_url":"https://api.github.com/repos/docker/docker/milestones/44/labels","id":1351533,"number":44,"title":"1.10","description":"","creator":{"login":"thaJeztah","id":1804568,"avatar_url":"https://avatars.githubusercontent.com/u/1804568?v=3","gravatar_id":"","url":"https://api.github.com/users/thaJeztah","html_url":"https://github.com/thaJeztah","followers_url":"https://api.github.com/users/thaJeztah/followers","following_url":"https://api.github.com/users/thaJeztah/following{/other_user}","gists_url":"https://api.github.com/users/thaJeztah/gists{/gist_id}","starred_url":"https://api.github.com/users/thaJeztah/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/thaJeztah/subscriptions","organizations_url":"https://api.github.com/users/thaJeztah/orgs","repos_url":"https://api.github.com/users/thaJeztah/repos","events_url":"https://api.github.com/users/thaJeztah/events{/privacy}","received_events_url":"https://api.github.com/users/thaJeztah/received_events","type":"User","site_admin":false},"open_issues":31,"closed_issues":51,"state":"open","created_at":"2015-10-12T18:21:55Z","updated_at":"2015-12-23T18:01:39Z","due_on":null,"closed_at":null},"commits_url":"https://api.github.com/repos/docker/docker/pulls/18834/commits","review_comments_url":"https://api.github.com/repos/docker/docker/pulls/18834/comments","review_comment_url":"https://api.github.com/repos/docker/docker/pulls/comments{/number}","comments_url":"https://api.github.com/repos/docker/docker/issues/18834/comments","statuses_url":"https://api.github.com/repos/docker/docker/statuses/4735e0de0a2bb6fb23f448cf168db39a84df006b","head":{"label":"dmcgowan:layerstore-refactor-rw-layer","ref":"layerstore-refactor-rw-layer","sha":"4735e0de0a2bb6fb23f448cf168db39a84df006b","user":{"login":"dmcgowan","id":169601,"avatar_url":"https://avatars.githubusercontent.com/u/169601?v=3","gravatar_id":"","url":"https://api.github.com/users/dmcgowan","html_url":"https://github.com/dmcgowan","followers_url":"https://api.github.com/users/dmcgowan/followers","following_url":"https://api.github.com/users/dmcgowan/following{/other_user}","gists_url":"https://api.github.com/users/dmcgowan/gists{/gist_id}","starred_url":"https://api.github.com/users/dmcgowan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dmcgowan/subscriptions","organizations_url":"https://api.github.com/users/dmcgowan/orgs","repos_url":"https://api.github.com/users/dmcgowan/repos","events_url":"https://api.github.com/users/dmcgowan/events{/privacy}","received_events_url":"https://api.github.com/users/dmcgowan/received_events","type":"User","site_admin":false},"repo":{"id":22739098,"name":"docker","full_name":"dmcgowan/docker","owner":{"login":"dmcgowan","id":169601,"avatar_url":"https://avatars.githubusercontent.com/u/169601?v=3","gravatar_id":"","url":"https://api.github.com/users/dmcgowan","html_url":"https://github.com/dmcgowan","followers_url":"https://api.github.com/users/dmcgowan/followers","following_url":"https://api.github.com/users/dmcgowan/following{/other_user}","gists_url":"https://api.github.com/users/dmcgowan/gists{/gist_id}","starred_url":"https://api.github.com/users/dmcgowan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dmcgowan/subscriptions","organizations_url":"https://api.github.com/users/dmcgowan/orgs","repos_url":"https://api.github.com/users/dmcgowan/repos","events_url":"https://api.github.com/users/dmcgowan/events{/privacy}","received_events_url":"https://api.github.com/users/dmcgowan/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/dmcgowan/docker","description":"Docker - the open-source application container engine","fork":true,"url":"https://api.github.com/repos/dmcgowan/docker","forks_url":"https://api.github.com/repos/dmcgowan/docker/forks","keys_url":"https://api.github.com/repos/dmcgowan/docker/keys{/key_id}","collaborators_url":"https://api.github.com/repos/dmcgowan/docker/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/dmcgowan/docker/teams","hooks_url":"https://api.github.com/repos/dmcgowan/docker/hooks","issue_events_url":"https://api.github.com/repos/dmcgowan/docker/issues/events{/number}","events_url":"https://api.github.com/repos/dmcgowan/docker/events","assignees_url":"https://api.github.com/repos/dmcgowan/docker/assignees{/user}","branches_url":"https://api.github.com/repos/dmcgowan/docker/branches{/branch}","tags_url":"https://api.github.com/repos/dmcgowan/docker/tags","blobs_url":"https://api.github.com/repos/dmcgowan/docker/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/dmcgowan/docker/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/dmcgowan/docker/git/refs{/sha}","trees_url":"https://api.github.com/repos/dmcgowan/docker/git/trees{/sha}","statuses_url":"https://api.github.com/repos/dmcgowan/docker/statuses/{sha}","languages_url":"https://api.github.com/repos/dmcgowan/docker/languages","stargazers_url":"https://api.github.com/repos/dmcgowan/docker/stargazers","contributors_url":"https://api.github.com/repos/dmcgowan/docker/contributors","subscribers_url":"https://api.github.com/repos/dmcgowan/docker/subscribers","subscription_url":"https://api.github.com/repos/dmcgowan/docker/subscription","commits_url":"https://api.github.com/repos/dmcgowan/docker/commits{/sha}","git_commits_url":"https://api.github.com/repos/dmcgowan/docker/git/commits{/sha}","comments_url":"https://api.github.com/repos/dmcgowan/docker/comments{/number}","issue_comment_url":"https://api.github.com/repos/dmcgowan/docker/issues/comments{/number}","contents_url":"https://api.github.com/repos/dmcgowan/docker/contents/{+path}","compare_url":"https://api.github.com/repos/dmcgowan/docker/compare/{base}...{head}","merges_url":"https://api.github.com/repos/dmcgowan/docker/merges","archive_url":"https://api.github.com/repos/dmcgowan/docker/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/dmcgowan/docker/downloads","issues_url":"https://api.github.com/repos/dmcgowan/docker/issues{/number}","pulls_url":"https://api.github.com/repos/dmcgowan/docker/pulls{/number}","milestones_url":"https://api.github.com/repos/dmcgowan/docker/milestones{/number}","notifications_url":"https://api.github.com/repos/dmcgowan/docker/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/dmcgowan/docker/labels{/name}","releases_url":"https://api.github.com/repos/dmcgowan/docker/releases{/id}","created_at":"2014-08-07T22:58:18Z","updated_at":"2015-03-16T21:29:55Z","pushed_at":"2015-12-22T19:14:49Z","git_url":"git://github.com/dmcgowan/docker.git","ssh_url":"git@github.com:dmcgowan/docker.git","clone_url":"https://github.com/dmcgowan/docker.git","svn_url":"https://github.com/dmcgowan/docker","homepage":"http://www.docker.com","size":79949,"stargazers_count":0,"watchers_count":0,"language":"Go","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":7,"forks":1,"open_issues":7,"watchers":0,"default_branch":"master"}},"base":{"label":"docker:master","ref":"master","sha":"81c8e4d4c8937980f16ef7ac95d1710b5122aa46","user":{"login":"docker","id":5429470,"avatar_url":"https://avatars.githubusercontent.com/u/5429470?v=3","gravatar_id":"","url":"https://api.github.com/users/docker","html_url":"https://github.com/docker","followers_url":"https://api.github.com/users/docker/followers","following_url":"https://api.github.com/users/docker/following{/other_user}","gists_url":"https://api.github.com/users/docker/gists{/gist_id}","starred_url":"https://api.github.com/users/docker/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/docker/subscriptions","organizations_url":"https://api.github.com/users/docker/orgs","repos_url":"https://api.github.com/users/docker/repos","events_url":"https://api.github.com/users/docker/events{/privacy}","received_events_url":"https://api.github.com/users/docker/received_events","type":"Organization","site_admin":false},"repo":{"id":7691631,"name":"docker","full_name":"docker/docker","owner":{"login":"docker","id":5429470,"avatar_url":"https://avatars.githubusercontent.com/u/5429470?v=3","gravatar_id":"","url":"https://api.github.com/users/docker","html_url":"https://github.com/docker","followers_url":"https://api.github.com/users/docker/followers","following_url":"https://api.github.com/users/docker/following{/other_user}","gists_url":"https://api.github.com/users/docker/gists{/gist_id}","starred_url":"https://api.github.com/users/docker/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/docker/subscriptions","organizations_url":"https://api.github.com/users/docker/orgs","repos_url":"https://api.github.com/users/docker/repos","events_url":"https://api.github.com/users/docker/events{/privacy}","received_events_url":"https://api.github.com/users/docker/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/docker/docker","description":"Docker - the open-source application container engine","fork":false,"url":"https://api.github.com/repos/docker/docker","forks_url":"https://api.github.com/repos/docker/docker/forks","keys_url":"https://api.github.com/repos/docker/docker/keys{/key_id}","collaborators_url":"https://api.github.com/repos/docker/docker/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/docker/docker/teams","hooks_url":"https://api.github.com/repos/docker/docker/hooks","issue_events_url":"https://api.github.com/repos/docker/docker/issues/events{/number}","events_url":"https://api.github.com/repos/docker/docker/events","assignees_url":"https://api.github.com/repos/docker/docker/assignees{/user}","branches_url":"https://api.github.com/repos/docker/docker/branches{/branch}","tags_url":"https://api.github.com/repos/docker/docker/tags","blobs_url":"https://api.github.com/repos/docker/docker/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/docker/docker/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/docker/docker/git/refs{/sha}","trees_url":"https://api.github.com/repos/docker/docker/git/trees{/sha}","statuses_url":"https://api.github.com/repos/docker/docker/statuses/{sha}","languages_url":"https://api.github.com/repos/docker/docker/languages","stargazers_url":"https://api.github.com/repos/docker/docker/stargazers","contributors_url":"https://api.github.com/repos/docker/docker/contributors","subscribers_url":"https://api.github.com/repos/docker/docker/subscribers","subscription_url":"https://api.github.com/repos/docker/docker/subscription","commits_url":"https://api.github.com/repos/docker/docker/commits{/sha}","git_commits_url":"https://api.github.com/repos/docker/docker/git/commits{/sha}","comments_url":"https://api.github.com/repos/docker/docker/comments{/number}","issue_comment_url":"https://api.github.com/repos/docker/docker/issues/comments{/number}","contents_url":"https://api.github.com/repos/docker/docker/contents/{+path}","compare_url":"https://api.github.com/repos/docker/docker/compare/{base}...{head}","merges_url":"https://api.github.com/repos/docker/docker/merges","archive_url":"https://api.github.com/repos/docker/docker/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/docker/docker/downloads","issues_url":"https://api.github.com/repos/docker/docker/issues{/number}","pulls_url":"https://api.github.com/repos/docker/docker/pulls{/number}","milestones_url":"https://api.github.com/repos/docker/docker/milestones{/number}","notifications_url":"https://api.github.com/repos/docker/docker/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/docker/docker/labels{/name}","releases_url":"https://api.github.com/repos/docker/docker/releases{/id}","created_at":"2013-01-18T18:10:57Z","updated_at":"2015-12-23T16:45:13Z","pushed_at":"2015-12-23T18:02:26Z","git_url":"git://github.com/docker/docker.git","ssh_url":"git@github.com:docker/docker.git","clone_url":"https://github.com/docker/docker.git","svn_url":"https://github.com/docker/docker","homepage":"http://www.docker.com","size":121380,"stargazers_count":27233,"watchers_count":27233,"language":"Go","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":7456,"mirror_url":null,"open_issues_count":1263,"forks":7456,"open_issues":1263,"watchers":27233,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/docker/docker/pulls/18834"},"html":{"href":"https://github.com/docker/docker/pull/18834"},"issue":{"href":"https://api.github.com/repos/docker/docker/issues/18834"},"comments":{"href":"https://api.github.com/repos/docker/docker/issues/18834/comments"},"review_comments":{"href":"https://api.github.com/repos/docker/docker/pulls/18834/comments"},"review_comment":{"href":"https://api.github.com/repos/docker/docker/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/docker/docker/pulls/18834/commits"},"statuses":{"href":"https://api.github.com/repos/docker/docker/statuses/4735e0de0a2bb6fb23f448cf168db39a84df006b"}}}}