{"action":"opened","issue":{"url":"https://api.github.com/repos/mimblewimble/grin/issues/402","repository_url":"https://api.github.com/repos/mimblewimble/grin","labels_url":"https://api.github.com/repos/mimblewimble/grin/issues/402/labels{/name}","comments_url":"https://api.github.com/repos/mimblewimble/grin/issues/402/comments","events_url":"https://api.github.com/repos/mimblewimble/grin/issues/402/events","html_url":"https://github.com/mimblewimble/grin/issues/402","id":277861400,"number":402,"title":"Fix block locator with long forks","user":{"login":"ignopeverell","id":22927561,"avatar_url":"https://avatars1.githubusercontent.com/u/22927561?v=4","gravatar_id":"","url":"https://api.github.com/users/ignopeverell","html_url":"https://github.com/ignopeverell","followers_url":"https://api.github.com/users/ignopeverell/followers","following_url":"https://api.github.com/users/ignopeverell/following{/other_user}","gists_url":"https://api.github.com/users/ignopeverell/gists{/gist_id}","starred_url":"https://api.github.com/users/ignopeverell/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ignopeverell/subscriptions","organizations_url":"https://api.github.com/users/ignopeverell/orgs","repos_url":"https://api.github.com/users/ignopeverell/repos","events_url":"https://api.github.com/users/ignopeverell/events{/privacy}","received_events_url":"https://api.github.com/users/ignopeverell/received_events","type":"User","site_admin":false},"labels":[{"id":465821395,"url":"https://api.github.com/repos/mimblewimble/grin/labels/bug","name":"bug","color":"ee0701","default":true},{"id":465821398,"url":"https://api.github.com/repos/mimblewimble/grin/labels/help%20wanted","name":"help wanted","color":"128A0C","default":true}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2017-11-29T18:35:07Z","updated_at":"2017-11-29T18:35:07Z","closed_at":null,"author_association":"OWNER","body":"We generate our local block locator based on our current chain. A peer that tries to share its longer fork will only send 500 block headers at a time. If a fork is longer, once we receive these 500 blocks, the locator we generate will still be the same, leading to an endless loop of useless locator requests.\r\n\r\nWe need to bridge that gap. The most straightforward way is likely to keep track of the headers we got from a given peer during sync and generate our locator based the latest."}}
{"actor":{"display_login":"ignopeverell"}}