• @Artyom@lemm.ee
    link
    fedilink
    131 month ago

    Step 1. I’m certain it’s caching

    Step 2. After evaluating all the caches, it’s definitely not caching.

    Step 3. oooohhh, it’s not ram caching, it’s file caching

    Step 4. I checked all those files, they’re definitely not caching anything unsafe.

    Step 5. Oh, it’s the other files that are caching.

  • slazer2au
    link
    fedilink
    English
    121 month ago

    As long as you aren’t blaming “the network” or “the firewall” without cause.

  • Björn Tantau
    link
    fedilink
    461 month ago

    I once had a problem that wasn’t caused by chaching.

    It was caused by cache invalidation.

    • @thejml@lemm.ee
      link
      fedilink
      English
      361 month ago

      There are two hard problems in computing, naming things, cache invalidation, and off by one errors.

    • I once had a problem that wasn’t caused by caching. It was caused by Accounts Payable forgetting to pay the internet bill, and the ISP cutting our service halfway through a network test. So the beginning of the test cached that the network had internet access, but then the end of the- wait fuck it was caused by caching

  • unalivejoy
    link
    fedilink
    English
    631 month ago

    I checked the headers. This answer is cached.

    age: 72
    cache-control: max-age=600
    x-cache: HIT
    x-cache-hits: 2
    
  • @lorty@lemmy.ml
    link
    fedilink
    271 month ago

    I can’t be the only one who has wasted half an hour wondering why something wasn’t working before realising the response was cached.

  • Ephera
    link
    fedilink
    English
    41 month ago

    I’m currently at the other end of this, in that I’m trying to implement caching for a build tool. And yeah, I do expect to be in for a world of pain.

    Biggest problem is that you cannot do caching correctly, unless you know all the inputs upfront. If the user decides they’ll use the CPU temperature while building their distribution artifact without telling you about it, you’re fucked.
    Or well, the user is fucked. Because their CPU temp will not update and they’ll never be told about it.

    So, the user needs to tell you about every single input, which makes it extremely verbose. I guess, that’s why so many build tools have their own custom APIs rather than using file APIs from the stdlib, because it allows you to register e.g. paths as an input, wherever they’re created…