GitHub PullRequestEvent at 2014-04-17 20:15:27
Repository: rethinkdb
Actor: coffeemug
Payload: {"action":"closed","number":2262,"pull_request":{"url":"https://api.github.com/repos/rethinkdb/rethinkdb/pulls/2262","id":14815309,"html_url":"https://github.com/rethinkdb/rethinkdb/pull/2262","diff_url":"https://github.com/rethinkdb/rethinkdb/pull/2262.diff","patch_url":"https://github.com/rethinkdb/rethinkdb/pull/2262.patch","issue_url":"https://api.github.com/repos/rethinkdb/rethinkdb/issues/2262","number":2262,"state":"closed","title":"btree: metainfo: avoid unnecessary write","user":{"login":"Aleaxander","id":77907,"avatar_url":"https://avatars.githubusercontent.com/u/77907?","gravatar_id":"dfca88a7a988be2c2e13b63b217b03ce","url":"https://api.github.com/users/Aleaxander","html_url":"https://github.com/Aleaxander","followers_url":"https://api.github.com/users/Aleaxander/followers","following_url":"https://api.github.com/users/Aleaxander/following{/other_user}","gists_url":"https://api.github.com/users/Aleaxander/gists{/gist_id}","starred_url":"https://api.github.com/users/Aleaxander/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Aleaxander/subscriptions","organizations_url":"https://api.github.com/users/Aleaxander/orgs","repos_url":"https://api.github.com/users/Aleaxander/repos","events_url":"https://api.github.com/users/Aleaxander/events{/privacy}","received_events_url":"https://api.github.com/users/Aleaxander/received_events","type":"User","site_admin":false},"body":"We might come to 2 cases when we set superblock metainfo:\r\n- key is already exist\r\n- key is not exist\r\n\r\nFor the first case, we might simply read all metainfo out into a buffer,\r\nand modify to update new value, and then write the modified buffer back.\r\n\r\nHowever, for the second case, there is no need to write whole buffer\r\nback; instead, we can just append new <key, value> at tail to avoid\r\nunnecessary write.\r\n\r\nSigned-off-by: Liu Aleaxander <Aleaxander@gmail.com>","created_at":"2014-04-16T10:14:46Z","updated_at":"2014-04-17T20:15:27Z","closed_at":"2014-04-17T20:15:27Z","merged_at":null,"merge_commit_sha":"de9cfe72b070a3c20441dc182d5f952ab9f19ac7","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/rethinkdb/rethinkdb/pulls/2262/commits","review_comments_url":"https://api.github.com/repos/rethinkdb/rethinkdb/pulls/2262/comments","review_comment_url":"https://api.github.com/repos/rethinkdb/rethinkdb/pulls/comments/{number}","comments_url":"https://api.github.com/repos/rethinkdb/rethinkdb/issues/2262/comments","statuses_url":"https://api.github.com/repos/rethinkdb/rethinkdb/statuses/2ac2c0cb582b922147c84224f4cbb77a682925d3","head":{"label":"Aleaxander:yliu-btree","ref":"yliu-btree","sha":"2ac2c0cb582b922147c84224f4cbb77a682925d3","user":{"login":"Aleaxander","id":77907,"avatar_url":"https://avatars.githubusercontent.com/u/77907?","gravatar_id":"dfca88a7a988be2c2e13b63b217b03ce","url":"https://api.github.com/users/Aleaxander","html_url":"https://github.com/Aleaxander","followers_url":"https://api.github.com/users/Aleaxander/followers","following_url":"https://api.github.com/users/Aleaxander/following{/other_user}","gists_url":"https://api.github.com/users/Aleaxander/gists{/gist_id}","starred_url":"https://api.github.com/users/Aleaxander/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Aleaxander/subscriptions","organizations_url":"https://api.github.com/users/Aleaxander/orgs","repos_url":"https://api.github.com/users/Aleaxander/repos","events_url":"https://api.github.com/users/Aleaxander/events{/privacy}","received_events_url":"https://api.github.com/users/Aleaxander/received_events","type":"User","site_admin":false},"repo":{"id":17738210,"name":"rethinkdb","full_name":"Aleaxander/rethinkdb","owner":{"login":"Aleaxander","id":77907,"avatar_url":"https://avatars.githubusercontent.com/u/77907?","gravatar_id":"dfca88a7a988be2c2e13b63b217b03ce","url":"https://api.github.com/users/Aleaxander","html_url":"https://github.com/Aleaxander","followers_url":"https://api.github.com/users/Aleaxander/followers","following_url":"https://api.github.com/users/Aleaxander/following{/other_user}","gists_url":"https://api.github.com/users/Aleaxander/gists{/gist_id}","starred_url":"https://api.github.com/users/Aleaxander/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Aleaxander/subscriptions","organizations_url":"https://api.github.com/users/Aleaxander/orgs","repos_url":"https://api.github.com/users/Aleaxander/repos","events_url":"https://api.github.com/users/Aleaxander/events{/privacy}","received_events_url":"https://api.github.com/users/Aleaxander/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/Aleaxander/rethinkdb","description":"An open-source distributed JSON document database with a pleasant and powerful query language.","fork":true,"url":"https://api.github.com/repos/Aleaxander/rethinkdb","forks_url":"https://api.github.com/repos/Aleaxander/rethinkdb/forks","keys_url":"https://api.github.com/repos/Aleaxander/rethinkdb/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Aleaxander/rethinkdb/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Aleaxander/rethinkdb/teams","hooks_url":"https://api.github.com/repos/Aleaxander/rethinkdb/hooks","issue_events_url":"https://api.github.com/repos/Aleaxander/rethinkdb/issues/events{/number}","events_url":"https://api.github.com/repos/Aleaxander/rethinkdb/events","assignees_url":"https://api.github.com/repos/Aleaxander/rethinkdb/assignees{/user}","branches_url":"https://api.github.com/repos/Aleaxander/rethinkdb/branches{/branch}","tags_url":"https://api.github.com/repos/Aleaxander/rethinkdb/tags","blobs_url":"https://api.github.com/repos/Aleaxander/rethinkdb/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Aleaxander/rethinkdb/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Aleaxander/rethinkdb/git/refs{/sha}","trees_url":"https://api.github.com/repos/Aleaxander/rethinkdb/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Aleaxander/rethinkdb/statuses/{sha}","languages_url":"https://api.github.com/repos/Aleaxander/rethinkdb/languages","stargazers_url":"https://api.github.com/repos/Aleaxander/rethinkdb/stargazers","contributors_url":"https://api.github.com/repos/Aleaxander/rethinkdb/contributors","subscribers_url":"https://api.github.com/repos/Aleaxander/rethinkdb/subscribers","subscription_url":"https://api.github.com/repos/Aleaxander/rethinkdb/subscription","commits_url":"https://api.github.com/repos/Aleaxander/rethinkdb/commits{/sha}","git_commits_url":"https://api.github.com/repos/Aleaxander/rethinkdb/git/commits{/sha}","comments_url":"https://api.github.com/repos/Aleaxander/rethinkdb/comments{/number}","issue_comment_url":"https://api.github.com/repos/Aleaxander/rethinkdb/issues/comments/{number}","contents_url":"https://api.github.com/repos/Aleaxander/rethinkdb/contents/{+path}","compare_url":"https://api.github.com/repos/Aleaxander/rethinkdb/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Aleaxander/rethinkdb/merges","archive_url":"https://api.github.com/repos/Aleaxander/rethinkdb/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Aleaxander/rethinkdb/downloads","issues_url":"https://api.github.com/repos/Aleaxander/rethinkdb/issues{/number}","pulls_url":"https://api.github.com/repos/Aleaxander/rethinkdb/pulls{/number}","milestones_url":"https://api.github.com/repos/Aleaxander/rethinkdb/milestones{/number}","notifications_url":"https://api.github.com/repos/Aleaxander/rethinkdb/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Aleaxander/rethinkdb/labels{/name}","releases_url":"https://api.github.com/repos/Aleaxander/rethinkdb/releases{/id}","created_at":"2014-03-14T07:09:57Z","updated_at":"2014-04-17T20:15:27Z","pushed_at":"2014-04-17T09:51:37Z","git_url":"git://github.com/Aleaxander/rethinkdb.git","ssh_url":"git@github.com:Aleaxander/rethinkdb.git","clone_url":"https://github.com/Aleaxander/rethinkdb.git","svn_url":"https://github.com/Aleaxander/rethinkdb","homepage":"http://www.rethinkdb.com","size":69624,"stargazers_count":0,"watchers_count":0,"language":"C++","has_issues":false,"has_downloads":true,"has_wiki":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"next"}},"base":{"label":"rethinkdb:next","ref":"next","sha":"bbfb01f205836f4f90963ff4871912f2f5f0ca1b","user":{"login":"rethinkdb","id":1229647,"avatar_url":"https://avatars.githubusercontent.com/u/1229647?","gravatar_id":"b4798a61c236f351d7fb4076b242ec7b","url":"https://api.github.com/users/rethinkdb","html_url":"https://github.com/rethinkdb","followers_url":"https://api.github.com/users/rethinkdb/followers","following_url":"https://api.github.com/users/rethinkdb/following{/other_user}","gists_url":"https://api.github.com/users/rethinkdb/gists{/gist_id}","starred_url":"https://api.github.com/users/rethinkdb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rethinkdb/subscriptions","organizations_url":"https://api.github.com/users/rethinkdb/orgs","repos_url":"https://api.github.com/users/rethinkdb/repos","events_url":"https://api.github.com/users/rethinkdb/events{/privacy}","received_events_url":"https://api.github.com/users/rethinkdb/received_events","type":"Organization","site_admin":false},"repo":{"id":6452529,"name":"rethinkdb","full_name":"rethinkdb/rethinkdb","owner":{"login":"rethinkdb","id":1229647,"avatar_url":"https://avatars.githubusercontent.com/u/1229647?","gravatar_id":"b4798a61c236f351d7fb4076b242ec7b","url":"https://api.github.com/users/rethinkdb","html_url":"https://github.com/rethinkdb","followers_url":"https://api.github.com/users/rethinkdb/followers","following_url":"https://api.github.com/users/rethinkdb/following{/other_user}","gists_url":"https://api.github.com/users/rethinkdb/gists{/gist_id}","starred_url":"https://api.github.com/users/rethinkdb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rethinkdb/subscriptions","organizations_url":"https://api.github.com/users/rethinkdb/orgs","repos_url":"https://api.github.com/users/rethinkdb/repos","events_url":"https://api.github.com/users/rethinkdb/events{/privacy}","received_events_url":"https://api.github.com/users/rethinkdb/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/rethinkdb/rethinkdb","description":"An open-source distributed JSON document database with a pleasant and powerful query language.","fork":false,"url":"https://api.github.com/repos/rethinkdb/rethinkdb","forks_url":"https://api.github.com/repos/rethinkdb/rethinkdb/forks","keys_url":"https://api.github.com/repos/rethinkdb/rethinkdb/keys{/key_id}","collaborators_url":"https://api.github.com/repos/rethinkdb/rethinkdb/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/rethinkdb/rethinkdb/teams","hooks_url":"https://api.github.com/repos/rethinkdb/rethinkdb/hooks","issue_events_url":"https://api.github.com/repos/rethinkdb/rethinkdb/issues/events{/number}","events_url":"https://api.github.com/repos/rethinkdb/rethinkdb/events","assignees_url":"https://api.github.com/repos/rethinkdb/rethinkdb/assignees{/user}","branches_url":"https://api.github.com/repos/rethinkdb/rethinkdb/branches{/branch}","tags_url":"https://api.github.com/repos/rethinkdb/rethinkdb/tags","blobs_url":"https://api.github.com/repos/rethinkdb/rethinkdb/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/rethinkdb/rethinkdb/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/rethinkdb/rethinkdb/git/refs{/sha}","trees_url":"https://api.github.com/repos/rethinkdb/rethinkdb/git/trees{/sha}","statuses_url":"https://api.github.com/repos/rethinkdb/rethinkdb/statuses/{sha}","languages_url":"https://api.github.com/repos/rethinkdb/rethinkdb/languages","stargazers_url":"https://api.github.com/repos/rethinkdb/rethinkdb/stargazers","contributors_url":"https://api.github.com/repos/rethinkdb/rethinkdb/contributors","subscribers_url":"https://api.github.com/repos/rethinkdb/rethinkdb/subscribers","subscription_url":"https://api.github.com/repos/rethinkdb/rethinkdb/subscription","commits_url":"https://api.github.com/repos/rethinkdb/rethinkdb/commits{/sha}","git_commits_url":"https://api.github.com/repos/rethinkdb/rethinkdb/git/commits{/sha}","comments_url":"https://api.github.com/repos/rethinkdb/rethinkdb/comments{/number}","issue_comment_url":"https://api.github.com/repos/rethinkdb/rethinkdb/issues/comments/{number}","contents_url":"https://api.github.com/repos/rethinkdb/rethinkdb/contents/{+path}","compare_url":"https://api.github.com/repos/rethinkdb/rethinkdb/compare/{base}...{head}","merges_url":"https://api.github.com/repos/rethinkdb/rethinkdb/merges","archive_url":"https://api.github.com/repos/rethinkdb/rethinkdb/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/rethinkdb/rethinkdb/downloads","issues_url":"https://api.github.com/repos/rethinkdb/rethinkdb/issues{/number}","pulls_url":"https://api.github.com/repos/rethinkdb/rethinkdb/pulls{/number}","milestones_url":"https://api.github.com/repos/rethinkdb/rethinkdb/milestones{/number}","notifications_url":"https://api.github.com/repos/rethinkdb/rethinkdb/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/rethinkdb/rethinkdb/labels{/name}","releases_url":"https://api.github.com/repos/rethinkdb/rethinkdb/releases{/id}","created_at":"2012-10-30T05:37:47Z","updated_at":"2014-04-17T18:19:51Z","pushed_at":"2014-04-17T18:19:54Z","git_url":"git://github.com/rethinkdb/rethinkdb.git","ssh_url":"git@github.com:rethinkdb/rethinkdb.git","clone_url":"https://github.com/rethinkdb/rethinkdb.git","svn_url":"https://github.com/rethinkdb/rethinkdb","homepage":"http://www.rethinkdb.com","size":363353,"stargazers_count":6637,"watchers_count":6637,"language":"C++","has_issues":true,"has_downloads":true,"has_wiki":false,"forks_count":580,"mirror_url":null,"open_issues_count":573,"forks":580,"open_issues":573,"watchers":6637,"default_branch":"next"}},"_links":{"self":{"href":"https://api.github.com/repos/rethinkdb/rethinkdb/pulls/2262"},"html":{"href":"https://github.com/rethinkdb/rethinkdb/pull/2262"},"issue":{"href":"https://api.github.com/repos/rethinkdb/rethinkdb/issues/2262"},"comments":{"href":"https://api.github.com/repos/rethinkdb/rethinkdb/issues/2262/comments"},"review_comments":{"href":"https://api.github.com/repos/rethinkdb/rethinkdb/pulls/2262/comments"},"review_comment":{"href":"https://api.github.com/repos/rethinkdb/rethinkdb/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/rethinkdb/rethinkdb/pulls/2262/commits"},"statuses":{"href":"https://api.github.com/repos/rethinkdb/rethinkdb/statuses/2ac2c0cb582b922147c84224f4cbb77a682925d3"}},"merged":false,"mergeable":true,"mergeable_state":"clean","merged_by":null,"comments":3,"review_comments":0,"commits":1,"additions":17,"deletions":8,"changed_files":1}}