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

Can't remove failing cache without disabling cachix #606

Open
l0b0 opened this issue Dec 4, 2023 · 5 comments
Open

Can't remove failing cache without disabling cachix #606

l0b0 opened this issue Dec 4, 2023 · 5 comments

Comments

@l0b0
Copy link

l0b0 commented Dec 4, 2023

The geonix cache is currently only returning HTTP 522:

sudo nixos-rebuild boot --show-trace --upgrade-all # update install
unpacking channels...
unpacking channels...
warning: error: unable to download 'https://geonix.cachix.org/d3qda808yhlkqwaffvq34i4ks2c5lmxc.narinfo': HTTP error 522; retrying in 263 ms
warning: error: unable to download 'https://geonix.cachix.org/d3qda808yhlkqwaffvq34i4ks2c5lmxc.narinfo': HTTP error 522; retrying in 694 ms
warning: error: unable to download 'https://geonix.cachix.org/d3qda808yhlkqwaffvq34i4ks2c5lmxc.narinfo': HTTP error 522; retrying in 1158 ms
warning: error: unable to download 'https://geonix.cachix.org/d3qda808yhlkqwaffvq34i4ks2c5lmxc.narinfo': HTTP error 522; retrying in 2289 ms
error: unable to download 'https://geonix.cachix.org/d3qda808yhlkqwaffvq34i4ks2c5lmxc.narinfo': HTTP error 522
error: program '/nix/store/jqvvkhzkm9irdqdqmb8m1jxahnh2j2yl-nix-2.18.1/bin/nix-env' failed with exit code 1

However, I can't remove the cache:

sudo cachix remove geonix
Removing binary caches is only supported for nix.conf

Removing the /etc/nixos/cachix.nix import did nothing.

I tried to see if cachix use NAME would maybe restore sanity, but that's also broken:

sudo cachix use big
cachix: FailureResponse (Request {requestPath = (BaseUrl {baseUrlScheme = Https, baseUrlHost = "cachix.org", baseUrlPort = 443, baseUrlPath = ""},"/api/v1/cache/big"), requestQueryString = fromList [], requestBody = Nothing, requestAccept = fromList [application/json;charset=utf-8,application/json], requestHeaders = fromList [("Authorization","<REDACTED>")], requestHttpVersion = HTTP/1.1, requestMethod = "GET"}) (Response {responseStatusCode = Status {statusCode = 522, statusMessage = ""}, responseHeaders = fromList [("Date","Mon, 04 Dec 2023 20:03:33 GMT"),("Content-Type","text/html; charset=UTF-8"),("Content-Length","7051"),("Connection","keep-alive"),("Report-To","{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=8sr42E3NWfPvhRz%2BgvmWBdSuUw9cByE7Eg0Lshay2Rx21xZ9teTVd6OZy8cp7QBln7IrFatEHGYCNvDk6pj8PWwn%2B68WUikal3hKYNajQGkaCXH0BH8goYU8cQU%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"),("NEL","{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"),("Vary","Accept-Encoding"),("X-Frame-Options","SAMEORIGIN"),("Referrer-Policy","same-origin"),("Cache-Control","private, max-age=0, no-store, no-cache, must-revalidate, post-check=0, pre-check=0"),("Expires","Thu, 01 Jan 1970 00:00:01 GMT"),("Server","cloudflare"),("CF-RAY","8306a6e66ce1573e-SYD")], responseHttpVersion = HTTP/1.1, responseBody = "<!DOCTYPE html>\n<!--[if lt IE 7]> <html class=\"no-js ie6 oldie\" lang=\"en-US\"> <![endif]-->\n<!--[if IE 7]>    <html class=\"no-js ie7 oldie\" lang=\"en-US\"> <![endif]-->\n<!--[if IE 8]>    <html class=\"no-js ie8 oldie\" lang=\"en-US\"> <![endif]-->\n<!--[if gt IE 8]><!--> <html class=\"no-js\" lang=\"en-US\"> <!--<![endif]-->\n<head>\n\n\n<title>cachix.org | 522: Connection timed out</title>\n<meta charset=\"UTF-8\" />\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />\n<meta http-equiv=\"X-UA-Compatible\" content=\"IE=Edge\" />\n<meta name=\"robots\" content=\"noindex, nofollow\" />\n<meta name=\"viewport\" content=\"width=device-width,initial-scale=1\" />\n<link rel=\"stylesheet\" id=\"cf_styles-css\" href=\"/cdn-cgi/styles/main.css\" />\n\n\n</head>\n<body>\n<div id=\"cf-wrapper\">\n    <div id=\"cf-error-details\" class=\"p-0\">\n        <header class=\"mx-auto pt-10 lg:pt-6 lg:px-8 w-240 lg:w-full mb-8\">\n            <h1 class=\"inline-block sm:block sm:mb-2 font-light text-60 lg:text-4xl text-black-dark leading-tight mr-2\">\n              <span class=\"inline-block\">Connection timed out</span>\n              <span class=\"code-label\">Error code 522</span>\n            </h1>\n            <div>\n               Visit <a href=\"https://www.cloudflare.com/5xx-error-landing?utm_source=errorcode_522&utm_campaign=cachix.org\" target=\"_blank\" rel=\"noopener noreferrer\">cloudflare.com</a> for more information.\n            </div>\n            <div class=\"mt-3\">2023-12-04 20:03:33 UTC</div>\n        </header>\n        <div class=\"my-8 bg-gradient-gray\">\n            <div class=\"w-240 lg:w-full mx-auto\">\n                <div class=\"clearfix md:px-8\">\n                  \n<div id=\"cf-browser-status\" class=\" relative w-1/3 md:w-full py-15 md:p-0 md:py-8 md:text-left md:border-solid md:border-0 md:border-b md:border-gray-400 overflow-hidden float-left md:float-none text-center\">\n  <div class=\"relative mb-10 md:m-0\">\n    \n    <span class=\"cf-icon-browser block md:hidden h-20 bg-center bg-no-repeat\"></span>\n    <span class=\"cf-icon-ok w-12 h-12 absolute left-1/2 md:left-auto md:right-0 md:top-0 -ml-6 -bottom-4\"></span>\n    \n  </div>\n  <span class=\"md:block w-full truncate\">You</span>\n  <h3 class=\"md:inline-block mt-3 md:mt-0 text-2xl text-gray-600 font-light leading-1.3\">\n    \n    Browser\n    \n  </h3>\n  <span class=\"leading-1.3 text-2xl text-green-success\">Working</span>\n</div>\n\n<div id=\"cf-cloudflare-status\" class=\" relative w-1/3 md:w-full py-15 md:p-0 md:py-8 md:text-left md:border-solid md:border-0 md:border-b md:border-gray-400 overflow-hidden float-left md:float-none text-center\">\n  <div class=\"relative mb-10 md:m-0\">\n    <a href=\"https://www.cloudflare.com/5xx-error-landing?utm_source=errorcode_522&utm_campaign=cachix.org\" target=\"_blank\" rel=\"noopener noreferrer\">\n    <span class=\"cf-icon-cloud block md:hidden h-20 bg-center bg-no-repeat\"></span>\n    <span class=\"cf-icon-ok w-12 h-12 absolute left-1/2 md:left-auto md:right-0 md:top-0 -ml-6 -bottom-4\"></span>\n    </a>\n  </div>\n  <span class=\"md:block w-full truncate\">Sydney</span>\n  <h3 class=\"md:inline-block mt-3 md:mt-0 text-2xl text-gray-600 font-light leading-1.3\">\n    <a href=\"https://www.cloudflare.com/5xx-error-landing?utm_source=errorcode_522&utm_campaign=cachix.org\" target=\"_blank\" rel=\"noopener noreferrer\">\n    Cloudflare\n    </a>\n  </h3>\n  <span class=\"leading-1.3 text-2xl text-green-success\">Working</span>\n</div>\n\n<div id=\"cf-host-status\" class=\"cf-error-source relative w-1/3 md:w-full py-15 md:p-0 md:py-8 md:text-left md:border-solid md:border-0 md:border-b md:border-gray-400 overflow-hidden float-left md:float-none text-center\">\n  <div class=\"relative mb-10 md:m-0\">\n    \n    <span class=\"cf-icon-server block md:hidden h-20 bg-center bg-no-repeat\"></span>\n    <span class=\"cf-icon-error w-12 h-12 absolute left-1/2 md:left-auto md:right-0 md:top-0 -ml-6 -bottom-4\"></span>\n    \n  </div>\n  <span class=\"md:block w-full truncate\">cachix.org</span>\n  <h3 class=\"md:inline-block mt-3 md:mt-0 text-2xl text-gray-600 font-light leading-1.3\">\n    \n    Host\n    \n  </h3>\n  <span class=\"leading-1.3 text-2xl text-red-error\">Error</span>\n</div>\n\n                </div>\n            </div>\n        </div>\n\n        <div class=\"w-240 lg:w-full mx-auto mb-8 lg:px-8\">\n            <div class=\"clearfix\">\n                <div class=\"w-1/2 md:w-full float-left pr-6 md:pb-10 md:pr-0 leading-relaxed\">\n                    <h2 class=\"text-3xl font-normal leading-1.3 mb-4\">What happened?</h2>\n                    <p>The initial connection between Cloudflare's network and the origin web server timed out. As a result, the web page can not be displayed.</p>\n                </div>\n                <div class=\"w-1/2 md:w-full float-left leading-relaxed\">\n                    <h2 class=\"text-3xl font-normal leading-1.3 mb-4\">What can I do?</h2>\n                          <h3 class=\"text-15 font-semibold mb-2\">If you're a visitor of this website:</h3>\n      <p class=\"mb-6\">Please try again in a few minutes.</p>\n\n      <h3 class=\"text-15 font-semibold mb-2\">If you're the owner of this website:</h3>\n      <p><span>Contact your hosting provider letting them know your web server is not completing requests. An Error 522 means that the request was able to connect to your web server, but that the request didn't finish. The most likely cause is that something on your server is hogging resources.</span> <a rel=\"noopener noreferrer\" href=\"https://support.cloudflare.com/hc/en-us/articles/200171906-Error-522\">Additional troubleshooting information here.</a></p>\n                </div>\n            </div>\n        </div>\n\n        <div class=\"cf-error-footer cf-wrapper w-240 lg:w-full py-10 sm:py-4 sm:px-8 mx-auto text-center sm:text-left border-solid border-0 border-t border-gray-300\">\n  <p class=\"text-13\">\n    <span class=\"cf-footer-item sm:block sm:mb-1\">Cloudflare Ray ID: <strong class=\"font-semibold\">8306a6e66ce1573e</strong></span>\n    <span class=\"cf-footer-separator sm:hidden\">&bull;</span>\n    <span id=\"cf-footer-item-ip\" class=\"cf-footer-item hidden sm:block sm:mb-1\">\n      Your IP:\n      <button type=\"button\" id=\"cf-footer-ip-reveal\" class=\"cf-footer-ip-reveal-btn\">Click to reveal</button>\n      <span class=\"hidden\" id=\"cf-footer-ip\">144.66.99.214</span>\n      <span class=\"cf-footer-separator sm:hidden\">&bull;</span>\n    </span>\n    <span class=\"cf-footer-item sm:block sm:mb-1\"><span>Performance &amp; security by</span> <a rel=\"noopener noreferrer\" href=\"https://www.cloudflare.com/5xx-error-landing?utm_source=errorcode_522&utm_campaign=cachix.org\" id=\"brand_link\" target=\"_blank\">Cloudflare</a></span>\n    \n  </p>\n  <script>(function(){function d(){var b=a.getElementById(\"cf-footer-item-ip\"),c=a.getElementById(\"cf-footer-ip-reveal\");b&&\"classList\"in b&&(b.classList.remove(\"hidden\"),c.addEventListener(\"click\",function(){c.classList.add(\"hidden\");a.getElementById(\"cf-footer-ip\").classList.remove(\"hidden\")}))}var a=document;document.addEventListener&&a.addEventListener(\"DOMContentLoaded\",d)})();</script>\n</div><!-- /.error-footer -->\n\n\n    </div>\n</div>\n</body>\n</html>\n"})

Finally, the only thing that worked was to nuke the cachix configuration: sudo rm -r /etc/nixos/cachix*.

How do I

  1. disable a single cache,
  2. disable cachix completely without removing the entire configuration, and
  3. deal with a broken cache in general?
@domenkozar
Copy link
Member

See NixOS/nix#6901 (comment)

@l0b0
Copy link
Author

l0b0 commented Dec 6, 2023

Do you mean the solution is to set nixpkgs.config.fallback = true? That seems strange - Nix already builds from source if a binary substitute fails - it's one of the big strengths. So what does this option actually do?

@domenkozar
Copy link
Member

I mean that this yet has to be properly implemented in Nix.

@l0b0
Copy link
Author

l0b0 commented Dec 9, 2023

Not sure I understand. Do you mean this can't be fixed in cachix?

@domenkozar
Copy link
Member

If Cachix is down, Nix should be able to recover from that.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants