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: slow to update with latest version information #42449
Comments
The main issue I see arising from the aforementioned discontinuity is that despite the proxy being "aware" of a later version, if it doesn't report that latest version via the versions endpoint, then module retraction will appear not to work as expected, until the versions endpoint does update. cc @jayconrod |
Indeed this is most evident when a later version issues a retraction that includes that later version (the scenario here is when you want to retract an accidental |
@myitcv how much is the delay ("some time") you observed? |
I would say anywhere between 15-40 seconds. But as you can see from the following log, it takes some time for that to become a consistent answer, and in the intervening time the answer can "revert" to the previous state. And this is, I think, the behaviour I have observed in #42451. The scenario leading up to the following log is that The log below is the output from repeated calls to
|
The list query response from proxy.golang.org uses ~1min TTL for HTTP caching purpose (+ a small delay to reflect the change in our distributed database). I thought this HTTP caching effect was discussed previously. cc @katiehockman @heschik |
From proxy.golang.org:
|
Thanks for reconfirming.
Yes indeed it has been, and is clearly documented on the proxy.golang.org website. The confusing aspect of this issue and #42451 (to me at least) has been the inconsistent results during that ~1 minute+ that follows a From a documentation perspective, should I therefore say "now wait 2 minutes for proxy.golang.org to update"? |
@heschik told me that cache coherency is not guaranteed. I think you're seeing different requests hitting different instances. The |
Thanks everyone for your responses. I'm going to close this issue on the basis things are working as expected and documented. My confusion was indeed an incorrect expectation of cache coherency. |
What version of Go are you using (
go version
)?Does this issue reproduce with the latest release?
Yes
What operating system and processor architecture are you using (
go env
)?go env
OutputWhat did you do?
What did you expect to see?
The call to
go list -m -versions
reflect the version we have just pulled through the proxyWhat did you see instead?
Only the previous version. Indeed I need to wait "some time" before the call to
go list
"updates".Discovered whilst trying out module retraction in tip (although I don't believe it is anything to do with module retraction)
The discontinuity between the fact that I can
go get
that version but can'tgo list
it, makes for harder explanation to the user.cc @katiehockman @heschik
The text was updated successfully, but these errors were encountered: