IRC channel logs

2022-05-10.log

back to list of logs

***civodul` is now known as civodul
<avp>Hello, Guilers! Guile-ICS 0.2.1 released: https://lists.gnu.org/archive/html/guile-user/2022-05/msg00008.html
<avp>I've also sent Guix patch that updates Guile-ICS to 0.2.1 to the Guix ML.
<rekado_>daviid: thank you! I did try join-thread before but must have made a mistake and got an unexpected return value (1024); it works fine now.
<nckx>Is dsmith on holiday?
<civodul>hi avp, congrats!
***Guest1495 is now known as chrislck
<chrislck>sneek: botsnack
<sneek>:)
<stis>Heya guilers!
<rekado_>I’m getting an error when I use (web client)’s http-head inside the handler of a fiberized web server
<rekado_>“Attempt to suspend fiber within continuation barrier”
<rekado_>can you suggest a way around this?
<stis>it's possible to inhibit fiber suspension. If the issue is scheme code that is executed from C, this can perhaps help.
<stis>for example if you are useing a for-each that is dispatching via C, rewrite the for-each in scheme can help (not sure it is a for-each.
<stis>maybe i's in a custim port defined by http.scm
<stis>Ahhh, the python dictionaries in python-on-guile now uses stis hashtables, much much nicer code. I'm very pleased
<rekado_>stis: how would I inhibit fiber suspension?
<stis>all-with-blocked-asyncs
<stis>is my guess
<stis>rekado_: ^^
<stis>call-with-blocked-asyncs
<stis> https://www.gnu.org/software/guile/manual/html_node/Asyncs.html#index-call_002dwith_002dblocked_002dasyncs
<rekado_>stis: thanks, I’ll give this a try!
<rekado_>unfortunately, this didn’t help
<stis>darn
<stis>do you know at what code point it want's to schedule a new thread?
<stis>e.g. where the barrier is located
***rgherdt_ is now known as rgherdt
<rekado_>no, I don’t know
<stis>no stack trace?
<rekado_>it reliably happens when I run http-head within a handler of the fibers web server, but I have no stack trace
<rekado_>In fibers/web/server.scm:
<rekado_> 159:28 1 (_)
<rekado_>
<rekado_>that’s all there is
<rekado_>or rather: ice-9/boot-9.scm:1685:16: In procedure raise-exception:
<stis>no threading or dispatch outside of the fiber env?
<rekado_>no
<rekado_>I’ll try to reduce the problem and get a better stack trace
<stis>yes, I would use tons of pk's to trace it down
<stis>do you know if it uses a soft port, I think that soft ports execute scheme code via C and probably has a barrier
<stis>see make-chunked-output-port in http.scm
<stis>yep soft ports executes scheme via C
<stis>rekado_: ^^
<rekado_>now I have a good backtrace: https://elephly.net/paste/1652219840.html