You're just not satisfying me


  • ♿ (Parody)

    RangeNotSatisfiableError: Range Not Satisfiable
        at SendStream.error (/usr/src/app/node_modules/send/index.js:270:31)
        at SendStream.send (/usr/src/app/node_modules/send/index.js:671:19)
        at onstat (/usr/src/app/node_modules/send/index.js:730:10)
        at /usr/src/app/node_modules/async-listener/glue.js:188:31
        at /usr/src/app/node_modules/graceful-fs/polyfills.js:285:20
        at FSReqWrap.oncomplete (fs.js:153:5)
    

    I like the error name, at least. Spotted this in the logs after I got some 502s trying to get to unread (this error wasn't that).



  • FWIW, that error name is coming from the HTTP standard itself:

    Most likely, a client browser said "give me bytes 69 through 420 of a resource called whatever.dat"
    And the server went, "hey, that resource only has 400 bytes! No data for you, but here's an error code 🖕"

    As with all 4xx range codes, this is not a server bug. Either the client browser is an idiot or your files changed in the middle of their chunked download.

    Fun fact: many years ago, there was a CVE issued for Apache due to a problem in its handling of nasty Range headers: https://lwn.net/Articles/456723/ . Maybe some idiot bot is still crawling the web probing for it?


Log in to reply