Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

proxy.golang.org: HTTP/2 Stream error when using GOPROXY="https://proxy.golang.org,direct" #41429

Closed
buro9 opened this issue Sep 16, 2020 · 5 comments
Labels
FrozenDueToAge WaitingForInfo Issue is not actionable because of missing required information, which needs to be provided.

Comments

@buro9
Copy link

buro9 commented Sep 16, 2020

What version of Go are you using (go version)?

1.15.2

Does this issue reproduce with the latest release?

Yes

What operating system and processor architecture are you using (go env)?

Mac OSX Catalina

What did you do?

GOPROXY="https://proxy.golang.org,direct"

And then:

% go get -u github.com/microcosm-cc/bluemonday
go: downloading github.com/microcosm-cc/bluemonday v1.0.4
go get: github.com/microcosm-cc/bluemonday@v1.0.4: stream error: stream ID 3; NO_ERROR

What did you expect to see?

Success

What did you see instead?

What appears to be a terminated HTTP stream? NO_ERROR - but no success.

This bug relates to microcosm-cc/bluemonday#104 where the root cause was initially non-obvious.

@heschi
Copy link
Contributor

heschi commented Sep 16, 2020

proxy.golang.org is served by the same Google-wide serving infrastructure as all Google sites, so whatever's going on here is not specific to proxy.golang.org.

#29125 looks vaguely related. I'm not a net/http expert, but my best guess is that @darsenault has some kind of middlebox that's messing with the connection.

@heschi heschi added the WaitingForInfo Issue is not actionable because of missing required information, which needs to be provided. label Sep 16, 2020
@darsenault
Copy link

@darsenault here to add a bit of context.

  • Problem was present when all potential middleboxes and AV were bypassed and suspended, respectively.

  • Problem was still present when attached to a alternate wide open network (phone hotspot tether).

  • Problem resolved upon removal of proxy.golang.org fro GOPROXY, keeping all else constant including potential middleboxes and AV.

  • All other libraries attempted via go get worked flawlessly, including several dozen from the Benthos (benthos.dev) build process and random packages selected from Awesome Go. The only package impacted was github.com/microcosm-cc/bluemonday when GOPROXY contained proxy.golang.org

@heschi
Copy link
Contributor

heschi commented Sep 16, 2020

Sorry, I have no idea what could be going wrong. HTTP/2-level concerns are handled by Google-wide serving infrastructure, which is completely oblivious to what module you're requesting. As far as I know it should be literally impossible for proxy.golang.org to cause this problem. And we've never had a report like this before.

It seems like you checked all the right things, but it still sounds more like something interfering with the connection than a server-side bug. If you want to debug further, I'd suggest getting a pcap.

@heschi
Copy link
Contributor

heschi commented Sep 16, 2020

Or maybe GODEBUG=http2debug=2, from the bug I linked.

@gopherbot
Copy link

Timed out in state WaitingForInfo. Closing.

(I am just a bot, though. Please speak up if this is a mistake or you have the requested information.)

@golang golang locked and limited conversation to collaborators Oct 16, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
FrozenDueToAge WaitingForInfo Issue is not actionable because of missing required information, which needs to be provided.
Projects
None yet
Development

No branches or pull requests

4 participants