{"action":"created","issue":{"url":"https://api.github.com/repos/golang/go/issues/11784","labels_url":"https://api.github.com/repos/golang/go/issues/11784/labels{/name}","comments_url":"https://api.github.com/repos/golang/go/issues/11784/comments","events_url":"https://api.github.com/repos/golang/go/issues/11784/events","html_url":"https://github.com/golang/go/issues/11784","id":95859815,"number":11784,"title":"internal/singleflight: test flake","user":{"login":"bradfitz","id":2621,"avatar_url":"https://avatars.githubusercontent.com/u/2621?v=3","gravatar_id":"","url":"https://api.github.com/users/bradfitz","html_url":"https://github.com/bradfitz","followers_url":"https://api.github.com/users/bradfitz/followers","following_url":"https://api.github.com/users/bradfitz/following{/other_user}","gists_url":"https://api.github.com/users/bradfitz/gists{/gist_id}","starred_url":"https://api.github.com/users/bradfitz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bradfitz/subscriptions","organizations_url":"https://api.github.com/users/bradfitz/orgs","repos_url":"https://api.github.com/users/bradfitz/repos","events_url":"https://api.github.com/users/bradfitz/events{/privacy}","received_events_url":"https://api.github.com/users/bradfitz/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":{"login":"bradfitz","id":2621,"avatar_url":"https://avatars.githubusercontent.com/u/2621?v=3","gravatar_id":"","url":"https://api.github.com/users/bradfitz","html_url":"https://github.com/bradfitz","followers_url":"https://api.github.com/users/bradfitz/followers","following_url":"https://api.github.com/users/bradfitz/following{/other_user}","gists_url":"https://api.github.com/users/bradfitz/gists{/gist_id}","starred_url":"https://api.github.com/users/bradfitz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bradfitz/subscriptions","organizations_url":"https://api.github.com/users/bradfitz/orgs","repos_url":"https://api.github.com/users/bradfitz/repos","events_url":"https://api.github.com/users/bradfitz/events{/privacy}","received_events_url":"https://api.github.com/users/bradfitz/received_events","type":"User","site_admin":false},"milestone":{"url":"https://api.github.com/repos/golang/go/milestones/2","html_url":"https://github.com/golang/go/milestones/Go1.5Maybe","labels_url":"https://api.github.com/repos/golang/go/milestones/2/labels","id":905114,"number":2,"title":"Go1.5Maybe","description":"Things that might make Go 1.5, but aren't critical.\r\n","creator":{"login":"bradfitz","id":2621,"avatar_url":"https://avatars.githubusercontent.com/u/2621?v=3","gravatar_id":"","url":"https://api.github.com/users/bradfitz","html_url":"https://github.com/bradfitz","followers_url":"https://api.github.com/users/bradfitz/followers","following_url":"https://api.github.com/users/bradfitz/following{/other_user}","gists_url":"https://api.github.com/users/bradfitz/gists{/gist_id}","starred_url":"https://api.github.com/users/bradfitz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bradfitz/subscriptions","organizations_url":"https://api.github.com/users/bradfitz/orgs","repos_url":"https://api.github.com/users/bradfitz/repos","events_url":"https://api.github.com/users/bradfitz/events{/privacy}","received_events_url":"https://api.github.com/users/bradfitz/received_events","type":"User","site_admin":false},"open_issues":11,"closed_issues":43,"state":"open","created_at":"2014-12-16T02:39:13Z","updated_at":"2015-07-26T16:43:48Z","due_on":"2015-07-31T04:00:00Z","closed_at":null},"comments":3,"created_at":"2015-07-18T21:06:32Z","updated_at":"2015-07-26T16:51:54Z","closed_at":null,"body":"https://storage.googleapis.com/go-build-log/2d6a1955/windows-amd64-gce_21f24cce.log\r\n\r\n```\r\n...\r\n--- FAIL: TestDoDupSuppress (0.01s)\r\n\tsingleflight_test.go:74: number of calls = 10; want over 0 and less than n\r\nFAIL\r\nFAIL\tinternal/singleflight\t0.076s\r\n...\r\n```\r\n"},"comment":{"url":"https://api.github.com/repos/golang/go/issues/comments/125016338","html_url":"https://github.com/golang/go/issues/11784#issuecomment-125016338","issue_url":"https://api.github.com/repos/golang/go/issues/11784","id":125016338,"user":{"login":"aclements","id":2688315,"avatar_url":"https://avatars.githubusercontent.com/u/2688315?v=3","gravatar_id":"","url":"https://api.github.com/users/aclements","html_url":"https://github.com/aclements","followers_url":"https://api.github.com/users/aclements/followers","following_url":"https://api.github.com/users/aclements/following{/other_user}","gists_url":"https://api.github.com/users/aclements/gists{/gist_id}","starred_url":"https://api.github.com/users/aclements/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aclements/subscriptions","organizations_url":"https://api.github.com/users/aclements/orgs","repos_url":"https://api.github.com/users/aclements/repos","events_url":"https://api.github.com/users/aclements/events{/privacy}","received_events_url":"https://api.github.com/users/aclements/received_events","type":"User","site_admin":false},"created_at":"2015-07-26T16:51:54Z","updated_at":"2015-07-26T16:51:54Z","body":"I've been running run.bash in a loop on my linux/amd64 workstation for the past few days and I've gotten this failure at least once. I think Rick has run in to it, too.\r\n\r\nThis test seems broken to me. If the goroutines started in the loop run sequentially, calls will be 10. I'm not sure we can fix this without relying on timing in some way, but what if instead of the outer goroutine doing the delay, the first call to fn sent to the channel and then slept for a bit? That would ensure at least one of them was in the Do and that duplicate suppression was active for the duration of the sleep."}}