{"action":"created","comment":{"url":"https://api.github.com/repos/ethereumproject/go-ethereum/pulls/comments/193438381","pull_request_review_id":126410576,"id":193438381,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDE5MzQzODM4MQ==","diff_hunk":"@@ -1215,33 +1249,33 @@ func (self *BlockChain) InsertReceiptChain(blockChain types.Blocks, receiptChain\n \t\t\tblock, receipts := blockChain[index], receiptChain[index]\n \n \t\t\t// Short circuit insertion if shutting down or processing failed\n-\t\t\tif atomic.LoadInt32(&self.procInterrupt) == 1 {\n+\t\t\tif atomic.LoadInt32(&bc.procInterrupt) == 1 {\n \t\t\t\treturn\n \t\t\t}\n \t\t\tif atomic.LoadInt32(&failed) > 0 {\n \t\t\t\treturn\n \t\t\t}\n \t\t\t// Short circuit if the owner header is unknown\n-\t\t\tif !self.HasHeader(block.Hash()) {\n+\t\t\tif !bc.HasHeader(block.Hash()) {\n \t\t\t\terrs[index] = fmt.Errorf(\"containing header #%d [%x…] unknown\", block.Number(), block.Hash().Bytes()[:4])\n \t\t\t\tatomic.AddInt32(&failed, 1)\n \t\t\t\treturn\n \t\t\t}\n \t\t\t// Skip if the entire data is already known\n-\t\t\tif self.HasBlock(block.Hash()) {\n+\t\t\tif bc.HasBlock(block.Hash()) {\n \t\t\t\tatomic.AddInt32(&stats.ignored, 1)\n \t\t\t\tcontinue\n \t\t\t}\n-\t\t\tsigner := self.config.GetSigner(block.Number())\n+\t\t\tsigner := bc.config.GetSigner(block.Number())\n \t\t\t// Compute all the non-consensus fields of the receipts\n \t\t\ttransactions, logIndex := block.Transactions(), uint(0)\n \t\t\tfor j := 0; j < len(receipts); j++ {\n-\t\t\t\t// The transaction hash can be retrieved from the transaction itself\n+\t\t\t\t// The transaction hash can be retrieved from the transaction itbc","path":"core/blockchain.go","position":868,"original_position":868,"commit_id":"714a9be8967c13b01504acf607ab943d11767874","original_commit_id":"714a9be8967c13b01504acf607ab943d11767874","user":{"login":"whilei","id":10228550,"node_id":"MDQ6VXNlcjEwMjI4NTUw","avatar_url":"https://avatars1.githubusercontent.com/u/10228550?v=4","gravatar_id":"","url":"https://api.github.com/users/whilei","html_url":"https://github.com/whilei","followers_url":"https://api.github.com/users/whilei/followers","following_url":"https://api.github.com/users/whilei/following{/other_user}","gists_url":"https://api.github.com/users/whilei/gists{/gist_id}","starred_url":"https://api.github.com/users/whilei/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/whilei/subscriptions","organizations_url":"https://api.github.com/users/whilei/orgs","repos_url":"https://api.github.com/users/whilei/repos","events_url":"https://api.github.com/users/whilei/events{/privacy}","received_events_url":"https://api.github.com/users/whilei/received_events","type":"User","site_admin":false},"body":"TODO(whilei): typo in comment","created_at":"2018-06-06T14:48:55Z","updated_at":"2018-06-06T14:48:55Z","html_url":"https://github.com/ethereumproject/go-ethereum/pull/619#discussion_r193438381","pull_request_url":"https://api.github.com/repos/ethereumproject/go-ethereum/pulls/619","author_association":"CONTRIBUTOR","_links":{"self":{"href":"https://api.github.com/repos/ethereumproject/go-ethereum/pulls/comments/193438381"},"html":{"href":"https://github.com/ethereumproject/go-ethereum/pull/619#discussion_r193438381"},"pull_request":{"href":"https://api.github.com/repos/ethereumproject/go-ethereum/pulls/619"}}},"pull_request":{"url":"https://api.github.com/repos/ethereumproject/go-ethereum/pulls/619","id":192416553,"node_id":"MDExOlB1bGxSZXF1ZXN0MTkyNDE2NTUz","html_url":"https://github.com/ethereumproject/go-ethereum/pull/619","diff_url":"https://github.com/ethereumproject/go-ethereum/pull/619.diff","patch_url":"https://github.com/ethereumproject/go-ethereum/pull/619.patch","issue_url":"https://api.github.com/repos/ethereumproject/go-ethereum/issues/619","number":619,"state":"open","locked":false,"title":"frankenstein2.1: core,eth,p2p","user":{"login":"whilei","id":10228550,"node_id":"MDQ6VXNlcjEwMjI4NTUw","avatar_url":"https://avatars1.githubusercontent.com/u/10228550?v=4","gravatar_id":"","url":"https://api.github.com/users/whilei","html_url":"https://github.com/whilei","followers_url":"https://api.github.com/users/whilei/followers","following_url":"https://api.github.com/users/whilei/following{/other_user}","gists_url":"https://api.github.com/users/whilei/gists{/gist_id}","starred_url":"https://api.github.com/users/whilei/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/whilei/subscriptions","organizations_url":"https://api.github.com/users/whilei/orgs","repos_url":"https://api.github.com/users/whilei/repos","events_url":"https://api.github.com/users/whilei/events{/privacy}","received_events_url":"https://api.github.com/users/whilei/received_events","type":"User","site_admin":false},"body":"🚳 The documentation below is WIP, but maybe useful for first-impressions.\r\n\r\n_Update:_ Comments below are (at this point) copy-pasted from #606, which this PR builds from and goes far beyond.\r\n\r\n> A huge amount of these changes are integrations \"merged\" by hand from ethereum/go-ethereum. Unfortunately, cherry-picking and merging (which would have credited original authors appropriately) was impossible because the code bases have diverged significantly; so, thanks to the fine folks that did the brunt of the heavy lifting. I'll do my best to document and cite primary sources as much as possible.\r\n\r\n- [ ] TODO(whilei): write up this PR.\r\n\r\n----\r\n\r\nRel at least #603, #604, #605.\r\n\r\nA rough (and unfinished) reference of where this Frankenstein comes from:\r\n- https://github.com/ethereum/go-ethereum/commit/62de04cf91d85b6394560ae3fe1e6bfdb0836bd2\r\n- https://github.com/ethereum/go-ethereum/commit/4cf1ece5ba7c28e9ef7edabe0f53e5ae1fe37b76\r\n\r\nAnd a few other other changes I had made earlier that were off-topic, but not worth throwing into their own PRs, IMO.\r\n- ~~52a948f~~: same as https://github.com/ethereum/go-ethereum/pull/15470/files\r\n- ~~c2806e6~~: only nice to have for code style\r\n","created_at":"2018-06-04T13:56:05Z","updated_at":"2018-06-06T14:48:55Z","closed_at":null,"merged_at":null,"merge_commit_sha":"6168adb6e4e1649d9c500ce8325b4f8eea7769ae","assignee":null,"assignees":[],"requested_reviewers":[{"login":"tzdybal","id":1138893,"node_id":"MDQ6VXNlcjExMzg4OTM=","avatar_url":"https://avatars2.githubusercontent.com/u/1138893?v=4","gravatar_id":"","url":"https://api.github.com/users/tzdybal","html_url":"https://github.com/tzdybal","followers_url":"https://api.github.com/users/tzdybal/followers","following_url":"https://api.github.com/users/tzdybal/following{/other_user}","gists_url":"https://api.github.com/users/tzdybal/gists{/gist_id}","starred_url":"https://api.github.com/users/tzdybal/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tzdybal/subscriptions","organizations_url":"https://api.github.com/users/tzdybal/orgs","repos_url":"https://api.github.com/users/tzdybal/repos","events_url":"https://api.github.com/users/tzdybal/events{/privacy}","received_events_url":"https://api.github.com/users/tzdybal/received_events","type":"User","site_admin":false},{"login":"r8d8","id":8018746,"node_id":"MDQ6VXNlcjgwMTg3NDY=","avatar_url":"https://avatars0.githubusercontent.com/u/8018746?v=4","gravatar_id":"","url":"https://api.github.com/users/r8d8","html_url":"https://github.com/r8d8","followers_url":"https://api.github.com/users/r8d8/followers","following_url":"https://api.github.com/users/r8d8/following{/other_user}","gists_url":"https://api.github.com/users/r8d8/gists{/gist_id}","starred_url":"https://api.github.com/users/r8d8/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/r8d8/subscriptions","organizations_url":"https://api.github.com/users/r8d8/orgs","repos_url":"https://api.github.com/users/r8d8/repos","events_url":"https://api.github.com/users/r8d8/events{/privacy}","received_events_url":"https://api.github.com/users/r8d8/received_events","type":"User","site_admin":false}],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/ethereumproject/go-ethereum/pulls/619/commits","review_comments_url":"https://api.github.com/repos/ethereumproject/go-ethereum/pulls/619/comments","review_comment_url":"https://api.github.com/repos/ethereumproject/go-ethereum/pulls/comments{/number}","comments_url":"https://api.github.com/repos/ethereumproject/go-ethereum/issues/619/comments","statuses_url":"https://api.github.com/repos/ethereumproject/go-ethereum/statuses/714a9be8967c13b01504acf607ab943d11767874","head":{"label":"ethereumproject:frankenstein/sync","ref":"frankenstein/sync","sha":"714a9be8967c13b01504acf607ab943d11767874","user":{"login":"ethereumproject","id":20253748,"node_id":"MDEyOk9yZ2FuaXphdGlvbjIwMjUzNzQ4","avatar_url":"https://avatars3.githubusercontent.com/u/20253748?v=4","gravatar_id":"","url":"https://api.github.com/users/ethereumproject","html_url":"https://github.com/ethereumproject","followers_url":"https://api.github.com/users/ethereumproject/followers","following_url":"https://api.github.com/users/ethereumproject/following{/other_user}","gists_url":"https://api.github.com/users/ethereumproject/gists{/gist_id}","starred_url":"https://api.github.com/users/ethereumproject/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ethereumproject/subscriptions","organizations_url":"https://api.github.com/users/ethereumproject/orgs","repos_url":"https://api.github.com/users/ethereumproject/repos","events_url":"https://api.github.com/users/ethereumproject/events{/privacy}","received_events_url":"https://api.github.com/users/ethereumproject/received_events","type":"Organization","site_admin":false},"repo":{"id":63557034,"node_id":"MDEwOlJlcG9zaXRvcnk2MzU1NzAzNA==","name":"go-ethereum","full_name":"ethereumproject/go-ethereum","owner":{"login":"ethereumproject","id":20253748,"node_id":"MDEyOk9yZ2FuaXphdGlvbjIwMjUzNzQ4","avatar_url":"https://avatars3.githubusercontent.com/u/20253748?v=4","gravatar_id":"","url":"https://api.github.com/users/ethereumproject","html_url":"https://github.com/ethereumproject","followers_url":"https://api.github.com/users/ethereumproject/followers","following_url":"https://api.github.com/users/ethereumproject/following{/other_user}","gists_url":"https://api.github.com/users/ethereumproject/gists{/gist_id}","starred_url":"https://api.github.com/users/ethereumproject/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ethereumproject/subscriptions","organizations_url":"https://api.github.com/users/ethereumproject/orgs","repos_url":"https://api.github.com/users/ethereumproject/repos","events_url":"https://api.github.com/users/ethereumproject/events{/privacy}","received_events_url":"https://api.github.com/users/ethereumproject/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/ethereumproject/go-ethereum","description":"Go language implementation of the original/classic design of the Ethereum protocol ","fork":false,"url":"https://api.github.com/repos/ethereumproject/go-ethereum","forks_url":"https://api.github.com/repos/ethereumproject/go-ethereum/forks","keys_url":"https://api.github.com/repos/ethereumproject/go-ethereum/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ethereumproject/go-ethereum/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ethereumproject/go-ethereum/teams","hooks_url":"https://api.github.com/repos/ethereumproject/go-ethereum/hooks","issue_events_url":"https://api.github.com/repos/ethereumproject/go-ethereum/issues/events{/number}","events_url":"https://api.github.com/repos/ethereumproject/go-ethereum/events","assignees_url":"https://api.github.com/repos/ethereumproject/go-ethereum/assignees{/user}","branches_url":"https://api.github.com/repos/ethereumproject/go-ethereum/branches{/branch}","tags_url":"https://api.github.com/repos/ethereumproject/go-ethereum/tags","blobs_url":"https://api.github.com/repos/ethereumproject/go-ethereum/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ethereumproject/go-ethereum/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ethereumproject/go-ethereum/git/refs{/sha}","trees_url":"https://api.github.com/repos/ethereumproject/go-ethereum/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ethereumproject/go-ethereum/statuses/{sha}","languages_url":"https://api.github.com/repos/ethereumproject/go-ethereum/languages","stargazers_url":"https://api.github.com/repos/ethereumproject/go-ethereum/stargazers","contributors_url":"https://api.github.com/repos/ethereumproject/go-ethereum/contributors","subscribers_url":"https://api.github.com/repos/ethereumproject/go-ethereum/subscribers","subscription_url":"https://api.github.com/repos/ethereumproject/go-ethereum/subscription","commits_url":"https://api.github.com/repos/ethereumproject/go-ethereum/commits{/sha}","git_commits_url":"https://api.github.com/repos/ethereumproject/go-ethereum/git/commits{/sha}","comments_url":"https://api.github.com/repos/ethereumproject/go-ethereum/comments{/number}","issue_comment_url":"https://api.github.com/repos/ethereumproject/go-ethereum/issues/comments{/number}","contents_url":"https://api.github.com/repos/ethereumproject/go-ethereum/contents/{+path}","compare_url":"https://api.github.com/repos/ethereumproject/go-ethereum/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ethereumproject/go-ethereum/merges","archive_url":"https://api.github.com/repos/ethereumproject/go-ethereum/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ethereumproject/go-ethereum/downloads","issues_url":"https://api.github.com/repos/ethereumproject/go-ethereum/issues{/number}","pulls_url":"https://api.github.com/repos/ethereumproject/go-ethereum/pulls{/number}","milestones_url":"https://api.github.com/repos/ethereumproject/go-ethereum/milestones{/number}","notifications_url":"https://api.github.com/repos/ethereumproject/go-ethereum/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ethereumproject/go-ethereum/labels{/name}","releases_url":"https://api.github.com/repos/ethereumproject/go-ethereum/releases{/id}","deployments_url":"https://api.github.com/repos/ethereumproject/go-ethereum/deployments","created_at":"2016-07-17T23:29:57Z","updated_at":"2018-06-06T14:34:34Z","pushed_at":"2018-06-06T14:28:24Z","git_url":"git://github.com/ethereumproject/go-ethereum.git","ssh_url":"git@github.com:ethereumproject/go-ethereum.git","clone_url":"https://github.com/ethereumproject/go-ethereum.git","svn_url":"https://github.com/ethereumproject/go-ethereum","homepage":"","size":105713,"stargazers_count":341,"watchers_count":341,"language":"Go","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":135,"mirror_url":null,"archived":false,"open_issues_count":72,"license":{"key":"lgpl-3.0","name":"GNU Lesser General Public License v3.0","spdx_id":"LGPL-3.0","url":"https://api.github.com/licenses/lgpl-3.0","node_id":"MDc6TGljZW5zZTEy"},"forks":135,"open_issues":72,"watchers":341,"default_branch":"master"}},"base":{"label":"ethereumproject:master","ref":"master","sha":"a6ca50ce93fc95b05b055e2b126de0de5536c5ed","user":{"login":"ethereumproject","id":20253748,"node_id":"MDEyOk9yZ2FuaXphdGlvbjIwMjUzNzQ4","avatar_url":"https://avatars3.githubusercontent.com/u/20253748?v=4","gravatar_id":"","url":"https://api.github.com/users/ethereumproject","html_url":"https://github.com/ethereumproject","followers_url":"https://api.github.com/users/ethereumproject/followers","following_url":"https://api.github.com/users/ethereumproject/following{/other_user}","gists_url":"https://api.github.com/users/ethereumproject/gists{/gist_id}","starred_url":"https://api.github.com/users/ethereumproject/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ethereumproject/subscriptions","organizations_url":"https://api.github.com/users/ethereumproject/orgs","repos_url":"https://api.github.com/users/ethereumproject/repos","events_url":"https://api.github.com/users/ethereumproject/events{/privacy}","received_events_url":"https://api.github.com/users/ethereumproject/received_events","type":"Organization","site_admin":false},"repo":{"id":63557034,"node_id":"MDEwOlJlcG9zaXRvcnk2MzU1NzAzNA==","name":"go-ethereum","full_name":"ethereumproject/go-ethereum","owner":{"login":"ethereumproject","id":20253748,"node_id":"MDEyOk9yZ2FuaXphdGlvbjIwMjUzNzQ4","avatar_url":"https://avatars3.githubusercontent.com/u/20253748?v=4","gravatar_id":"","url":"https://api.github.com/users/ethereumproject","html_url":"https://github.com/ethereumproject","followers_url":"https://api.github.com/users/ethereumproject/followers","following_url":"https://api.github.com/users/ethereumproject/following{/other_user}","gists_url":"https://api.github.com/users/ethereumproject/gists{/gist_id}","starred_url":"https://api.github.com/users/ethereumproject/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ethereumproject/subscriptions","organizations_url":"https://api.github.com/users/ethereumproject/orgs","repos_url":"https://api.github.com/users/ethereumproject/repos","events_url":"https://api.github.com/users/ethereumproject/events{/privacy}","received_events_url":"https://api.github.com/users/ethereumproject/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/ethereumproject/go-ethereum","description":"Go language implementation of the original/classic design of the Ethereum protocol ","fork":false,"url":"https://api.github.com/repos/ethereumproject/go-ethereum","forks_url":"https://api.github.com/repos/ethereumproject/go-ethereum/forks","keys_url":"https://api.github.com/repos/ethereumproject/go-ethereum/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ethereumproject/go-ethereum/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ethereumproject/go-ethereum/teams","hooks_url":"https://api.github.com/repos/ethereumproject/go-ethereum/hooks","issue_events_url":"https://api.github.com/repos/ethereumproject/go-ethereum/issues/events{/number}","events_url":"https://api.github.com/repos/ethereumproject/go-ethereum/events","assignees_url":"https://api.github.com/repos/ethereumproject/go-ethereum/assignees{/user}","branches_url":"https://api.github.com/repos/ethereumproject/go-ethereum/branches{/branch}","tags_url":"https://api.github.com/repos/ethereumproject/go-ethereum/tags","blobs_url":"https://api.github.com/repos/ethereumproject/go-ethereum/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ethereumproject/go-ethereum/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ethereumproject/go-ethereum/git/refs{/sha}","trees_url":"https://api.github.com/repos/ethereumproject/go-ethereum/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ethereumproject/go-ethereum/statuses/{sha}","languages_url":"https://api.github.com/repos/ethereumproject/go-ethereum/languages","stargazers_url":"https://api.github.com/repos/ethereumproject/go-ethereum/stargazers","contributors_url":"https://api.github.com/repos/ethereumproject/go-ethereum/contributors","subscribers_url":"https://api.github.com/repos/ethereumproject/go-ethereum/subscribers","subscription_url":"https://api.github.com/repos/ethereumproject/go-ethereum/subscription","commits_url":"https://api.github.com/repos/ethereumproject/go-ethereum/commits{/sha}","git_commits_url":"https://api.github.com/repos/ethereumproject/go-ethereum/git/commits{/sha}","comments_url":"https://api.github.com/repos/ethereumproject/go-ethereum/comments{/number}","issue_comment_url":"https://api.github.com/repos/ethereumproject/go-ethereum/issues/comments{/number}","contents_url":"https://api.github.com/repos/ethereumproject/go-ethereum/contents/{+path}","compare_url":"https://api.github.com/repos/ethereumproject/go-ethereum/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ethereumproject/go-ethereum/merges","archive_url":"https://api.github.com/repos/ethereumproject/go-ethereum/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ethereumproject/go-ethereum/downloads","issues_url":"https://api.github.com/repos/ethereumproject/go-ethereum/issues{/number}","pulls_url":"https://api.github.com/repos/ethereumproject/go-ethereum/pulls{/number}","milestones_url":"https://api.github.com/repos/ethereumproject/go-ethereum/milestones{/number}","notifications_url":"https://api.github.com/repos/ethereumproject/go-ethereum/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ethereumproject/go-ethereum/labels{/name}","releases_url":"https://api.github.com/repos/ethereumproject/go-ethereum/releases{/id}","deployments_url":"https://api.github.com/repos/ethereumproject/go-ethereum/deployments","created_at":"2016-07-17T23:29:57Z","updated_at":"2018-06-06T14:34:34Z","pushed_at":"2018-06-06T14:28:24Z","git_url":"git://github.com/ethereumproject/go-ethereum.git","ssh_url":"git@github.com:ethereumproject/go-ethereum.git","clone_url":"https://github.com/ethereumproject/go-ethereum.git","svn_url":"https://github.com/ethereumproject/go-ethereum","homepage":"","size":105713,"stargazers_count":341,"watchers_count":341,"language":"Go","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":135,"mirror_url":null,"archived":false,"open_issues_count":72,"license":{"key":"lgpl-3.0","name":"GNU Lesser General Public License v3.0","spdx_id":"LGPL-3.0","url":"https://api.github.com/licenses/lgpl-3.0","node_id":"MDc6TGljZW5zZTEy"},"forks":135,"open_issues":72,"watchers":341,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/ethereumproject/go-ethereum/pulls/619"},"html":{"href":"https://github.com/ethereumproject/go-ethereum/pull/619"},"issue":{"href":"https://api.github.com/repos/ethereumproject/go-ethereum/issues/619"},"comments":{"href":"https://api.github.com/repos/ethereumproject/go-ethereum/issues/619/comments"},"review_comments":{"href":"https://api.github.com/repos/ethereumproject/go-ethereum/pulls/619/comments"},"review_comment":{"href":"https://api.github.com/repos/ethereumproject/go-ethereum/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/ethereumproject/go-ethereum/pulls/619/commits"},"statuses":{"href":"https://api.github.com/repos/ethereumproject/go-ethereum/statuses/714a9be8967c13b01504acf607ab943d11767874"}},"author_association":"CONTRIBUTOR"}}
{"actor":{"display_login":"whilei"}}