payload: {"action":"closed","number":586,"pull_request":{"url":"https://api.github.com/repos/knative/build-pipeline/pulls/586","id":258500204,"node_id":"MDExOlB1bGxSZXF1ZXN0MjU4NTAwMjA0","html_url":"https://github.com/knative/build-pipeline/pull/586","diff_url":"https://github.com/knative/build-pipeline/pull/586.diff","patch_url":"https://github.com/knative/build-pipeline/pull/586.patch","issue_url":"https://api.github.com/repos/knative/build-pipeline/issues/586","number":586,"state":"closed","locked":false,"title":"Update timeout logic of taskrun/pipelinerun to not rely on resync behavior","user":{"login":"shashwathi","id":9938926,"node_id":"MDQ6VXNlcjk5Mzg5MjY=","avatar_url":"https://avatars0.githubusercontent.com/u/9938926?v=4","gravatar_id":"","url":"https://api.github.com/users/shashwathi","html_url":"https://github.com/shashwathi","followers_url":"https://api.github.com/users/shashwathi/followers","following_url":"https://api.github.com/users/shashwathi/following{/other_user}","gists_url":"https://api.github.com/users/shashwathi/gists{/gist_id}","starred_url":"https://api.github.com/users/shashwathi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shashwathi/subscriptions","organizations_url":"https://api.github.com/users/shashwathi/orgs","repos_url":"https://api.github.com/users/shashwathi/repos","events_url":"https://api.github.com/users/shashwathi/events{/privacy}","received_events_url":"https://api.github.com/users/shashwathi/received_events","type":"User","site_admin":false},"body":"# Changes\r\n\r\nAs the number of taskruns and pipelineruns increase the controllers cannot handle the number of reconciliations triggered. One of the solutions to tackle this problems is to increase the resync period to 10h instead of 30sec. This solution manifests a problem for taskrun/pipelinerun timeouts because this implementation relied on the resync behavior to update run status to \"Timeout\".\r\n\r\nIn this PR each new taskrun/pipelinerun starts goroutine that waits for either\r\nstop signal, finish or timeout to occur. When run controllers are restarted new goroutines are being created to track existing timeouts. Mutexes added to safely update statuses.\r\nSame timeout handler is used for pipelinerun / taskrun so mutex has prefix \"TaskRun\" and \"PipelineRun\" to differentiate the keys.\r\n\r\nCredit to @tzununbekov for implementing the original logic in\r\nknative/build\r\n\r\n# Submitter Checklist\r\n\r\nThese are the criteria that every PR should meet, please check them off as you\r\nreview them:\r\n\r\n- [x] Includes [tests](https://github.com/knative/build-pipeline/blob/master/CONTRIBUTING.md#principles) (if functionality changed/added)\r\n- [ ] Includes [docs](https://github.com/knative/build-pipeline/blob/master/CONTRIBUTING.md#principles) (if user facing)\r\n- [x] Commit messages follow [commit message best practices](https://github.com/knative/build-pipeline/blob/master/CONTRIBUTING.md#commit-messages)\r\n\r\n_See [the contribution guide](https://github.com/knative/build-pipeline/blob/master/CONTRIBUTING.md)\r\nfor more details._","created_at":"2019-03-05T21:58:08Z","updated_at":"2019-03-07T18:49:08Z","closed_at":"2019-03-07T18:49:08Z","merged_at":null,"merge_commit_sha":"39f95c7ffce6e6efdff07c8df41a69b60e50b82b","assignee":{"login":"vdemeester","id":6508,"node_id":"MDQ6VXNlcjY1MDg=","avatar_url":"https://avatars0.githubusercontent.com/u/6508?v=4","gravatar_id":"","url":"https://api.github.com/users/vdemeester","html_url":"https://github.com/vdemeester","followers_url":"https://api.github.com/users/vdemeester/followers","following_url":"https://api.github.com/users/vdemeester/following{/other_user}","gists_url":"https://api.github.com/users/vdemeester/gists{/gist_id}","starred_url":"https://api.github.com/users/vdemeester/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vdemeester/subscriptions","organizations_url":"https://api.github.com/users/vdemeester/orgs","repos_url":"https://api.github.com/users/vdemeester/repos","events_url":"https://api.github.com/users/vdemeester/events{/privacy}","received_events_url":"https://api.github.com/users/vdemeester/received_events","type":"User","site_admin":false},"assignees":[{"login":"vdemeester","id":6508,"node_id":"MDQ6VXNlcjY1MDg=","avatar_url":"https://avatars0.githubusercontent.com/u/6508?v=4","gravatar_id":"","url":"https://api.github.com/users/vdemeester","html_url":"https://github.com/vdemeester","followers_url":"https://api.github.com/users/vdemeester/followers","following_url":"https://api.github.com/users/vdemeester/following{/other_user}","gists_url":"https://api.github.com/users/vdemeester/gists{/gist_id}","starred_url":"https://api.github.com/users/vdemeester/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vdemeester/subscriptions","organizations_url":"https://api.github.com/users/vdemeester/orgs","repos_url":"https://api.github.com/users/vdemeester/repos","events_url":"https://api.github.com/users/vdemeester/events{/privacy}","received_events_url":"https://api.github.com/users/vdemeester/received_events","type":"User","site_admin":false}],"requested_reviewers":[{"login":"bobcatfish","id":432502,"node_id":"MDQ6VXNlcjQzMjUwMg==","avatar_url":"https://avatars2.githubusercontent.com/u/432502?v=4","gravatar_id":"","url":"https://api.github.com/users/bobcatfish","html_url":"https://github.com/bobcatfish","followers_url":"https://api.github.com/users/bobcatfish/followers","following_url":"https://api.github.com/users/bobcatfish/following{/other_user}","gists_url":"https://api.github.com/users/bobcatfish/gists{/gist_id}","starred_url":"https://api.github.com/users/bobcatfish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bobcatfish/subscriptions","organizations_url":"https://api.github.com/users/bobcatfish/orgs","repos_url":"https://api.github.com/users/bobcatfish/repos","events_url":"https://api.github.com/users/bobcatfish/events{/privacy}","received_events_url":"https://api.github.com/users/bobcatfish/received_events","type":"User","site_admin":false},{"login":"tejal29","id":1534539,"node_id":"MDQ6VXNlcjE1MzQ1Mzk=","avatar_url":"https://avatars0.githubusercontent.com/u/1534539?v=4","gravatar_id":"","url":"https://api.github.com/users/tejal29","html_url":"https://github.com/tejal29","followers_url":"https://api.github.com/users/tejal29/followers","following_url":"https://api.github.com/users/tejal29/following{/other_user}","gists_url":"https://api.github.com/users/tejal29/gists{/gist_id}","starred_url":"https://api.github.com/users/tejal29/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tejal29/subscriptions","organizations_url":"https://api.github.com/users/tejal29/orgs","repos_url":"https://api.github.com/users/tejal29/repos","events_url":"https://api.github.com/users/tejal29/events{/privacy}","received_events_url":"https://api.github.com/users/tejal29/received_events","type":"User","site_admin":false}],"requested_teams":[],"labels":[{"id":1053663328,"node_id":"MDU6TGFiZWwxMDUzNjYzMzI4","url":"https://api.github.com/repos/knative/build-pipeline/labels/approved","name":"approved","color":"abea59","default":false},{"id":1205639294,"node_id":"MDU6TGFiZWwxMjA1NjM5Mjk0","url":"https://api.github.com/repos/knative/build-pipeline/labels/cla:%20yes","name":"cla: yes","color":"0c6a89","default":false},{"id":1061380224,"node_id":"MDU6TGFiZWwxMDYxMzgwMjI0","url":"https://api.github.com/repos/knative/build-pipeline/labels/size/XXL","name":"size/XXL","color":"ededed","default":false}],"milestone":null,"commits_url":"https://api.github.com/repos/knative/build-pipeline/pulls/586/commits","review_comments_url":"https://api.github.com/repos/knative/build-pipeline/pulls/586/comments","review_comment_url":"https://api.github.com/repos/knative/build-pipeline/pulls/comments{/number}","comments_url":"https://api.github.com/repos/knative/build-pipeline/issues/586/comments","statuses_url":"https://api.github.com/repos/knative/build-pipeline/statuses/7a29b5bafb7c98fcecccee9e54e387d1075152e2","head":{"label":"shashwathi:resync-timeout","ref":"resync-timeout","sha":"7a29b5bafb7c98fcecccee9e54e387d1075152e2","user":{"login":"shashwathi","id":9938926,"node_id":"MDQ6VXNlcjk5Mzg5MjY=","avatar_url":"https://avatars0.githubusercontent.com/u/9938926?v=4","gravatar_id":"","url":"https://api.github.com/users/shashwathi","html_url":"https://github.com/shashwathi","followers_url":"https://api.github.com/users/shashwathi/followers","following_url":"https://api.github.com/users/shashwathi/following{/other_user}","gists_url":"https://api.github.com/users/shashwathi/gists{/gist_id}","starred_url":"https://api.github.com/users/shashwathi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shashwathi/subscriptions","organizations_url":"https://api.github.com/users/shashwathi/orgs","repos_url":"https://api.github.com/users/shashwathi/repos","events_url":"https://api.github.com/users/shashwathi/events{/privacy}","received_events_url":"https://api.github.com/users/shashwathi/received_events","type":"User","site_admin":false},"repo":{"id":149769954,"node_id":"MDEwOlJlcG9zaXRvcnkxNDk3Njk5NTQ=","name":"build-pipeline","full_name":"shashwathi/build-pipeline","private":false,"owner":{"login":"shashwathi","id":9938926,"node_id":"MDQ6VXNlcjk5Mzg5MjY=","avatar_url":"https://avatars0.githubusercontent.com/u/9938926?v=4","gravatar_id":"","url":"https://api.github.com/users/shashwathi","html_url":"https://github.com/shashwathi","followers_url":"https://api.github.com/users/shashwathi/followers","following_url":"https://api.github.com/users/shashwathi/following{/other_user}","gists_url":"https://api.github.com/users/shashwathi/gists{/gist_id}","starred_url":"https://api.github.com/users/shashwathi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shashwathi/subscriptions","organizations_url":"https://api.github.com/users/shashwathi/orgs","repos_url":"https://api.github.com/users/shashwathi/repos","events_url":"https://api.github.com/users/shashwathi/events{/privacy}","received_events_url":"https://api.github.com/users/shashwathi/received_events","type":"User","site_admin":false},"html_url":"https://github.com/shashwathi/build-pipeline","description":"A K8s-native Pipeline resource.","fork":true,"url":"https://api.github.com/repos/shashwathi/build-pipeline","forks_url":"https://api.github.com/repos/shashwathi/build-pipeline/forks","keys_url":"https://api.github.com/repos/shashwathi/build-pipeline/keys{/key_id}","collaborators_url":"https://api.github.com/repos/shashwathi/build-pipeline/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/shashwathi/build-pipeline/teams","hooks_url":"https://api.github.com/repos/shashwathi/build-pipeline/hooks","issue_events_url":"https://api.github.com/repos/shashwathi/build-pipeline/issues/events{/number}","events_url":"https://api.github.com/repos/shashwathi/build-pipeline/events","assignees_url":"https://api.github.com/repos/shashwathi/build-pipeline/assignees{/user}","branches_url":"https://api.github.com/repos/shashwathi/build-pipeline/branches{/branch}","tags_url":"https://api.github.com/repos/shashwathi/build-pipeline/tags","blobs_url":"https://api.github.com/repos/shashwathi/build-pipeline/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/shashwathi/build-pipeline/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/shashwathi/build-pipeline/git/refs{/sha}","trees_url":"https://api.github.com/repos/shashwathi/build-pipeline/git/trees{/sha}","statuses_url":"https://api.github.com/repos/shashwathi/build-pipeline/statuses/{sha}","languages_url":"https://api.github.com/repos/shashwathi/build-pipeline/languages","stargazers_url":"https://api.github.com/repos/shashwathi/build-pipeline/stargazers","contributors_url":"https://api.github.com/repos/shashwathi/build-pipeline/contributors","subscribers_url":"https://api.github.com/repos/shashwathi/build-pipeline/subscribers","subscription_url":"https://api.github.com/repos/shashwathi/build-pipeline/subscription","commits_url":"https://api.github.com/repos/shashwathi/build-pipeline/commits{/sha}","git_commits_url":"https://api.github.com/repos/shashwathi/build-pipeline/git/commits{/sha}","comments_url":"https://api.github.com/repos/shashwathi/build-pipeline/comments{/number}","issue_comment_url":"https://api.github.com/repos/shashwathi/build-pipeline/issues/comments{/number}","contents_url":"https://api.github.com/repos/shashwathi/build-pipeline/contents/{+path}","compare_url":"https://api.github.com/repos/shashwathi/build-pipeline/compare/{base}...{head}","merges_url":"https://api.github.com/repos/shashwathi/build-pipeline/merges","archive_url":"https://api.github.com/repos/shashwathi/build-pipeline/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/shashwathi/build-pipeline/downloads","issues_url":"https://api.github.com/repos/shashwathi/build-pipeline/issues{/number}","pulls_url":"https://api.github.com/repos/shashwathi/build-pipeline/pulls{/number}","milestones_url":"https://api.github.com/repos/shashwathi/build-pipeline/milestones{/number}","notifications_url":"https://api.github.com/repos/shashwathi/build-pipeline/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/shashwathi/build-pipeline/labels{/name}","releases_url":"https://api.github.com/repos/shashwathi/build-pipeline/releases{/id}","deployments_url":"https://api.github.com/repos/shashwathi/build-pipeline/deployments","created_at":"2018-09-21T13:50:22Z","updated_at":"2018-09-21T13:50:24Z","pushed_at":"2019-03-06T17:43:34Z","git_url":"git://github.com/shashwathi/build-pipeline.git","ssh_url":"git@github.com:shashwathi/build-pipeline.git","clone_url":"https://github.com/shashwathi/build-pipeline.git","svn_url":"https://github.com/shashwathi/build-pipeline","homepage":"","size":56604,"stargazers_count":0,"watchers_count":0,"language":"Go","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"knative:master","ref":"master","sha":"3328a04f8c6b1595c6aa49cc51614b692be9bdb6","user":{"login":"knative","id":35583233,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM1NTgzMjMz","avatar_url":"https://avatars2.githubusercontent.com/u/35583233?v=4","gravatar_id":"","url":"https://api.github.com/users/knative","html_url":"https://github.com/knative","followers_url":"https://api.github.com/users/knative/followers","following_url":"https://api.github.com/users/knative/following{/other_user}","gists_url":"https://api.github.com/users/knative/gists{/gist_id}","starred_url":"https://api.github.com/users/knative/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/knative/subscriptions","organizations_url":"https://api.github.com/users/knative/orgs","repos_url":"https://api.github.com/users/knative/repos","events_url":"https://api.github.com/users/knative/events{/privacy}","received_events_url":"https://api.github.com/users/knative/received_events","type":"Organization","site_admin":false},"repo":{"id":146641150,"node_id":"MDEwOlJlcG9zaXRvcnkxNDY2NDExNTA=","name":"build-pipeline","full_name":"knative/build-pipeline","private":false,"owner":{"login":"knative","id":35583233,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM1NTgzMjMz","avatar_url":"https://avatars2.githubusercontent.com/u/35583233?v=4","gravatar_id":"","url":"https://api.github.com/users/knative","html_url":"https://github.com/knative","followers_url":"https://api.github.com/users/knative/followers","following_url":"https://api.github.com/users/knative/following{/other_user}","gists_url":"https://api.github.com/users/knative/gists{/gist_id}","starred_url":"https://api.github.com/users/knative/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/knative/subscriptions","organizations_url":"https://api.github.com/users/knative/orgs","repos_url":"https://api.github.com/users/knative/repos","events_url":"https://api.github.com/users/knative/events{/privacy}","received_events_url":"https://api.github.com/users/knative/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/knative/build-pipeline","description":"A K8s-native Pipeline resource.","fork":false,"url":"https://api.github.com/repos/knative/build-pipeline","forks_url":"https://api.github.com/repos/knative/build-pipeline/forks","keys_url":"https://api.github.com/repos/knative/build-pipeline/keys{/key_id}","collaborators_url":"https://api.github.com/repos/knative/build-pipeline/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/knative/build-pipeline/teams","hooks_url":"https://api.github.com/repos/knative/build-pipeline/hooks","issue_events_url":"https://api.github.com/repos/knative/build-pipeline/issues/events{/number}","events_url":"https://api.github.com/repos/knative/build-pipeline/events","assignees_url":"https://api.github.com/repos/knative/build-pipeline/assignees{/user}","branches_url":"https://api.github.com/repos/knative/build-pipeline/branches{/branch}","tags_url":"https://api.github.com/repos/knative/build-pipeline/tags","blobs_url":"https://api.github.com/repos/knative/build-pipeline/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/knative/build-pipeline/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/knative/build-pipeline/git/refs{/sha}","trees_url":"https://api.github.com/repos/knative/build-pipeline/git/trees{/sha}","statuses_url":"https://api.github.com/repos/knative/build-pipeline/statuses/{sha}","languages_url":"https://api.github.com/repos/knative/build-pipeline/languages","stargazers_url":"https://api.github.com/repos/knative/build-pipeline/stargazers","contributors_url":"https://api.github.com/repos/knative/build-pipeline/contributors","subscribers_url":"https://api.github.com/repos/knative/build-pipeline/subscribers","subscription_url":"https://api.github.com/repos/knative/build-pipeline/subscription","commits_url":"https://api.github.com/repos/knative/build-pipeline/commits{/sha}","git_commits_url":"https://api.github.com/repos/knative/build-pipeline/git/commits{/sha}","comments_url":"https://api.github.com/repos/knative/build-pipeline/comments{/number}","issue_comment_url":"https://api.github.com/repos/knative/build-pipeline/issues/comments{/number}","contents_url":"https://api.github.com/repos/knative/build-pipeline/contents/{+path}","compare_url":"https://api.github.com/repos/knative/build-pipeline/compare/{base}...{head}","merges_url":"https://api.github.com/repos/knative/build-pipeline/merges","archive_url":"https://api.github.com/repos/knative/build-pipeline/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/knative/build-pipeline/downloads","issues_url":"https://api.github.com/repos/knative/build-pipeline/issues{/number}","pulls_url":"https://api.github.com/repos/knative/build-pipeline/pulls{/number}","milestones_url":"https://api.github.com/repos/knative/build-pipeline/milestones{/number}","notifications_url":"https://api.github.com/repos/knative/build-pipeline/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/knative/build-pipeline/labels{/name}","releases_url":"https://api.github.com/repos/knative/build-pipeline/releases{/id}","deployments_url":"https://api.github.com/repos/knative/build-pipeline/deployments","created_at":"2018-08-29T18:21:55Z","updated_at":"2019-03-07T18:35:08Z","pushed_at":"2019-03-07T08:47:13Z","git_url":"git://github.com/knative/build-pipeline.git","ssh_url":"git@github.com:knative/build-pipeline.git","clone_url":"https://github.com/knative/build-pipeline.git","svn_url":"https://github.com/knative/build-pipeline","homepage":"","size":56562,"stargazers_count":330,"watchers_count":330,"language":"Go","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":107,"mirror_url":null,"archived":false,"open_issues_count":69,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"forks":107,"open_issues":69,"watchers":330,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/knative/build-pipeline/pulls/586"},"html":{"href":"https://github.com/knative/build-pipeline/pull/586"},"issue":{"href":"https://api.github.com/repos/knative/build-pipeline/issues/586"},"comments":{"href":"https://api.github.com/repos/knative/build-pipeline/issues/586/comments"},"review_comments":{"href":"https://api.github.com/repos/knative/build-pipeline/pulls/586/comments"},"review_comment":{"href":"https://api.github.com/repos/knative/build-pipeline/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/knative/build-pipeline/pulls/586/commits"},"statuses":{"href":"https://api.github.com/repos/knative/build-pipeline/statuses/7a29b5bafb7c98fcecccee9e54e387d1075152e2"}},"author_association":"CONTRIBUTOR","merged":false,"mergeable":true,"rebaseable":true,"mergeable_state":"unstable","merged_by":null,"comments":6,"review_comments":8,"maintainer_can_modify":false,"commits":1,"additions":1031,"deletions":202,"changed_files":16}}
other: {"actor":{"display_login":"shashwathi"}}