Comments (5)
Thank you for reporting.
Can you paste the error message and stack traces here?
For the moment, adding :keep-alive nil
to the arguments might work as a workaround.
EDIT: Originally, I said :keep-alive t
by mistake, but it obviously won't work since it's the default and the connection cache is enabled.
from dexador.
Unfortunately I don't get any stack traces or error messages, beyond SBCL terminating immediately with a return code 141. There is no chance to enter the debugger to poke around and see what's happening. It's like a core dump but no core file. Never seen SBCL do this, and so this may be tickling an underlying SBCL issue too.
The cycle that I found was the first post there were no issues. The second post would not complete (on Linux, not on macOS though) and the whole Lisp image would die. I isolated the point of failure to the finish-output call to to the following line in request:
(when chunkedp (setf (chunga:chunked-stream-output-chunking-p stream) nil)) (finish-output stream))))
At that point, SBCL dies, no questions asked. No debugger, no LDB, no error messages, and no local core file.
MacOS SBCL will not die, but will, after the post calls start to accumulate, will run out of file descriptors and the post will fail, but SBLC lives on.
Will check out :keep-alive nil, but I believe that is the default anyway so I wasn't expressly setting that key argument.
EDIT: forgot to add that the offending line above is in usocket.lisp, line 670 or so.
from dexador.
sbcl 2.0.9 (and not 2.0.8 nor 2.0.10) had a change that made it stop ignoring sigpipe (signal delivered when one writes to a socket that the other end has closed). Receiving sigpipe would cause sbcl to die quietly. If you are still using 2.0.9, consider upgrading, or there is a work around to tell sbcl to ignore the sigpipe.
That doesn't mean there isn't a bug in socket closing here, but just explains why it is hard to debug.
from dexador.
This should be fixed in the current (github) version of dexador. If you have time, could you verify?
from dexador.
Closing as out of date --- this should not happen if you use any SBCL except 2.0.9
from dexador.
Related Issues (20)
- Connection-pool nil problem when using master HOT 6
- Allow content for dex:delete HOT 2
- There is no character with name "NUL" HOT 3
- ERROR 12002: Timeout [Condition of type WINHTTP::WIN-ERROR]
- dex:fetch leaves files open HOT 6
- Potential issue with failing to close connections HOT 12
- The condition #<CHUNGA:INPUT-CHUNKING-UNEXPECTED-END-OF-FILE 4060090DA0> occurred HOT 4
- Is there a problem with the `dex:post` with an s-expression data on the body? HOT 2
- `ignore-and-continue` on `http-request-fail` HOT 3
- Failing when requesting localhost HOT 15
- Dex not restarting with SSL errors.
- Automatic URL parameter encoding for Content-Type: application/x-www-form-urlencoded breaks old code HOT 4
- Calling DEX::MAYBE-CLOSE with optional "close-if T" argument causes a CCL::BAD-SLOT-TYPE HOT 4
- Windows: Content-Type is replaced with "text/plain" when `:content` is present HOT 3
- Dexador started automatically retry bad requests, but previosly didn't HOT 3
- Keep alive stream prematurely EOFs HOT 3
- Retry on typical errors solution
- Specifying content types for parts of a post request HOT 1
- Name Conflict HOT 5
- Copying from KEEP-ALIVE-STREAM: The value NIL is not of type STREAM HOT 7
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dexador.