{"action":"created","issue":{"url":"https://api.github.com/repos/tendermint/tendermint/issues/2316","repository_url":"https://api.github.com/repos/tendermint/tendermint","labels_url":"https://api.github.com/repos/tendermint/tendermint/issues/2316/labels{/name}","comments_url":"https://api.github.com/repos/tendermint/tendermint/issues/2316/comments","events_url":"https://api.github.com/repos/tendermint/tendermint/issues/2316/events","html_url":"https://github.com/tendermint/tendermint/pull/2316","id":356357602,"node_id":"MDExOlB1bGxSZXF1ZXN0MjEyNjQwMjgy","number":2316,"title":"Skip timeout commit fix","user":{"login":"bradyjoestar","id":29145722,"node_id":"MDQ6VXNlcjI5MTQ1NzIy","avatar_url":"https://avatars1.githubusercontent.com/u/29145722?v=4","gravatar_id":"","url":"https://api.github.com/users/bradyjoestar","html_url":"https://github.com/bradyjoestar","followers_url":"https://api.github.com/users/bradyjoestar/followers","following_url":"https://api.github.com/users/bradyjoestar/following{/other_user}","gists_url":"https://api.github.com/users/bradyjoestar/gists{/gist_id}","starred_url":"https://api.github.com/users/bradyjoestar/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bradyjoestar/subscriptions","organizations_url":"https://api.github.com/users/bradyjoestar/orgs","repos_url":"https://api.github.com/users/bradyjoestar/repos","events_url":"https://api.github.com/users/bradyjoestar/events{/privacy}","received_events_url":"https://api.github.com/users/bradyjoestar/received_events","type":"User","site_admin":false},"labels":[{"id":795907908,"node_id":"MDU6TGFiZWw3OTU5MDc5MDg=","url":"https://api.github.com/repos/tendermint/tendermint/labels/consensus","name":"consensus","color":"fafad2","default":false}],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2018-09-03T04:53:03Z","updated_at":"2018-09-04T20:56:56Z","closed_at":"2018-09-04T20:56:56Z","author_association":"NONE","pull_request":{"url":"https://api.github.com/repos/tendermint/tendermint/pulls/2316","html_url":"https://github.com/tendermint/tendermint/pull/2316","diff_url":"https://github.com/tendermint/tendermint/pull/2316.diff","patch_url":"https://github.com/tendermint/tendermint/pull/2316.patch"},"body":"currently  we get the +2/3 precommit msg , if we use `SkipTimeoutCommit` in config, it will skip the `timeoutCommit` of next Height.\r\nHowever , `enterCommit` will fail when we don't have the whole block partset.\r\n```\r\ncase types.VoteTypePrecommit:\r\n\t\tprecommits := cs.Votes.Precommits(vote.Round)\r\n\t\tcs.Logger.Info(\"Added to precommit\", \"vote\", vote, \"precommits\", precommits.StringShort())\r\n\t\tblockID, ok := precommits.TwoThirdsMajority()\r\n\t\tif ok {\r\n\t\t\tif len(blockID.Hash) == 0 {\r\n\t\t\t\tcs.enterNewRound(height, vote.Round+1)\r\n\t\t\t} else {\r\n\t\t\t\tcs.enterNewRound(height, vote.Round)\r\n\t\t\t\tcs.enterPrecommit(height, vote.Round)\r\n\t\t\t\tcs.enterCommit(height, vote.Round)\r\n\r\n\t\t\t\tif cs.config.SkipTimeoutCommit && precommits.HasAll()  {\r\n\t\t\t\t\t// if we have all the votes now,\r\n\t\t\t\t\t// go straight to new round (skip timeout commit)\r\n\t\t\t\t\t// cs.scheduleTimeout(time.Duration(0), cs.Height, 0, cstypes.RoundStepNewHeight)\r\n\t\t\t\t\tcs.enterNewRound(cs.Height, 0)\r\n\t\t\t\t}\r\n\r\n\t\t\t}\r\n\t\t} else if cs.Round <= vote.Round && precommits.HasTwoThirdsAny() {\r\n\t\t\t...\r\n\t\t}\r\n```\r\n\r\nI add the following judge case\r\n```\r\n&& cs.Height != height\r\n```\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/tendermint/tendermint/issues/comments/418515151","html_url":"https://github.com/tendermint/tendermint/pull/2316#issuecomment-418515151","issue_url":"https://api.github.com/repos/tendermint/tendermint/issues/2316","id":418515151,"node_id":"MDEyOklzc3VlQ29tbWVudDQxODUxNTE1MQ==","user":{"login":"ebuchman","id":2300911,"node_id":"MDQ6VXNlcjIzMDA5MTE=","avatar_url":"https://avatars3.githubusercontent.com/u/2300911?v=4","gravatar_id":"","url":"https://api.github.com/users/ebuchman","html_url":"https://github.com/ebuchman","followers_url":"https://api.github.com/users/ebuchman/followers","following_url":"https://api.github.com/users/ebuchman/following{/other_user}","gists_url":"https://api.github.com/users/ebuchman/gists{/gist_id}","starred_url":"https://api.github.com/users/ebuchman/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ebuchman/subscriptions","organizations_url":"https://api.github.com/users/ebuchman/orgs","repos_url":"https://api.github.com/users/ebuchman/repos","events_url":"https://api.github.com/users/ebuchman/events{/privacy}","received_events_url":"https://api.github.com/users/ebuchman/received_events","type":"User","site_admin":false},"created_at":"2018-09-04T20:56:56Z","updated_at":"2018-09-04T20:56:56Z","author_association":"CONTRIBUTOR","body":"Not totally sure I follow here.  Can you please open an issue first with some more detail before creating the PR? \r\n\r\nAre you saying it's somehow possible to go to height H+1 before we have the whole block from height H?"}}
{"actor":{"display_login":"ebuchman"}}