artanis
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Error From "art work" on Vanilla Artanis Project


From: Nala Ginrut
Subject: Re: Error From "art work" on Vanilla Artanis Project
Date: Fri, 21 Feb 2020 16:23:08 +0800
User-agent: mu4e 1.3.5; emacs 26.1

Jaft writes:

> artanis/server/epoll.scm:211:12: In procedure epoll-ctl:Throw to key
> `artanis-err' with args `(500 #<procedure epoll-ctl (epfd op fd event
> #:key check-exists?)> "~a: ~a" (15 2 0 #f "Bad file descriptor")
> (9))'.

Wait, why file descriptor 0 appeared here?
0 is stdin, obviously it can not be any connecting socket. It shouldn't
even be added into epoll event set in Artanis.

Now I'm suspecting it's not an Artanis bug.
But anyway, please do as my last mail described, and attach the debug
log please. Thanks!

Best regards.



> Jonathan
>     On Thursday, February 20, 2020, 2:59:53 AM CST, Nala Ginrut 
> <address@hidden> wrote:
>
>
> Have you seen my other mails, I've obsoleted the patch that I gave you,
> and resubmit a new one in the same branch name. So you have to delete
> the old one and checkout the new one from the remote.
>
> https://gitlab.com/NalaGinrut/artanis/-/commit/08b87717ade40ad0d8fbe0a6c62620cdc30e6f56
>
>
>
> Jaft writes:
>
>>  From the fix/epoll-exists-check branch?
>> That's the one I pulled and built; the errors look similar but, if you look 
>> at the very end of the error messages, the first one says 
>> "artanis/server/epoll.scm:220:4: In procedure exists-in-epoll?:" while my 
>> most recent error say "artanis/server/epoll.scm:211:12: In procedure 
>> epoll-ctl:".
>> Jonathan
>>    On Thursday, February 20, 2020, 1:42:49 AM CST, Nala Ginrut 
>> <address@hidden> wrote:
>>
>>
>> Could you try the refix version?
>>
>> Best regards.
>>
>> Jaft writes:
>>
>>>  Hey, Nala.
>>> Unfortunately, no luck; I pulled the branch you mentioned and, after 
>>> building it, I see the changes you made installed but get the below error:
>>> ;;; note: source file /usr/bin/art;;;      newer than compiled 
>>> /home/pi/.cache/guile/ccache/2.2-LE-4-3.A/usr/bin/art.go;;; note: 
>>> auto-compilation is enabled, set GUILE_AUTO_COMPILE=0;;;      or pass the 
>>> --no-auto-compile argument to disable.;;; compiling /usr/bin/art;;; 
>>> compiled /home/pi/.cache/guile/ccache/2.2-LE-4-3.A/usr/bin/art.goLoading 
>>> conf/artanis.conf...done.Session with SIMPLE backend init done!Loading 
>>> models...Loading controllers...Loading restful API...Regenerating route 
>>> cache ...Server core: ragnarokhttp://127.0.0.1:1234Anytime you want to quit 
>>> just try Ctrl+C, thanks!Backtrace:          11 (apply-smob/1 
>>> #<catch-closure 4dcdf0>)In ice-9/boot-9.scm:    705:2 10 (call-with-prompt 
>>> _ _ #<procedure default-prompt-handle…>)In ice-9/eval.scm:    619:8  9 (_ 
>>> #(#(#<directory (guile-user) 4f6910>)))In /usr/bin/art:    42:12  8 (_ _ 
>>> _)In artanis/commands/work.scm:    144:8  7 (work . _)In 
>>> artanis/server/ragnarok.scm:  630:10  6 (establish-http-gateway _)  450:27  
>>> 5 (ragnarok-http-gateway-run _)    420:6  4 (get-one-request-from-clients 
>>> #<r6rs:record:ragnarok-p…> …)    218:4  3 (fill-ready-queue-from-service _ 
>>> #<r6rs:record:ragnarok…>)In ice-9/boot-9.scm:  260:13  2 (for-each 
>>> #<procedure 65c2d0 at artanis/server/ragnaro…> …)In 
>>> artanis/server/ragnarok.scm:  245:16  1 (_ (0 . 1))In 
>>> artanis/server/epoll.scm:  211:12  0 (epoll-ctl 15 _ 0 _ #:check-exists? _)
>>> artanis/server/epoll.scm:211:12: In procedure epoll-ctl:Throw to key 
>>> `artanis-err' with args `(500 #<procedure epoll-ctl (epfd op fd event #:key 
>>> check-exists?)> "~a: ~a" (15 2 0 #f "Bad file descriptor") (9))'.
>>> Jonathan
>>>    On Wednesday, February 19, 2020, 4:12:15 AM CST, Nala Ginrut 
>>> <address@hidden> wrote:
>>>
>>>
>>> Hi Jaft!
>>> I found there's illogical bug in epoll module, please try 
>>> fix/epoll-exists-check branch:
>>> https://gitlab.com/NalaGinrut/artanis/-/commit/9d2338401cf422f7e22c4b5686d77e77a8a95fb4
>>>
>>> If it works then I'll merge ASAP.
>>>
>>> To someone who wants to learn about this bug, here's a brief
>>> description.
>>>
>>> When a new connection event comes in, the server core (Ragnarok) will
>>> check if it's already in epoll event set:
>>> - yes: Then there should be a existing task and we restore it. But if no 
>>> task, then we
>>> just drop it. This is the part which raised the error by illogical checking.
>>> - no: Create a new task for this connection.
>>>
>>> Thanks for the report!
>>>
>>> Best regards.
>>>
>>> Jaft writes:
>>>
>>>>  Hey, Nala!
>>>> I've actually been running that each time, just to be safe.
>>>> But it's not an old codebase I'm trying out; I downloaded the most recent 
>>>> version of Artanis. ran "art create test", then ran "cd test", and then 
>>>> ran "art work --refresh" and keep having this exact behavior.
>>>> I didn't think this could be a cause of anything but, in case it's 
>>>> helpful, I am running it off of a Raspberry Pi, this time.
>>>> Jonathan    On Monday, February 17, 2020, 6:02:10 AM EST, Nala Ginrut 
>>>> <address@hidden> wrote:
>>>>
>>>>
>>>> Hi Jaft!
>>>> If you upgrade Artanis then please run `art work --refresh` at least
>>>> once to make sure all your webapp code been recompiled with the latest
>>>> Artanis.
>>>>
>>>> You may take a look at the NOTE in the manual:
>>>> https://www.gnu.org/software/artanis/manual/manual.html#orga8bda39
>>>>
>>>> Best regards.
>>>>
>>>>
>>>> Jaft writes:
>>>>
>>>>>  Actually, it looks like the first call just hangs (sometimes, until it 
>>>>> eventually times out) and a second call is what produces the error.
>>>>> I know, in older versions, just generating a project and running it would 
>>>>> produce a page that says an index file should be provided but that 
>>>>> Artanis was up and running but I don't know if things have changed, on 
>>>>> that front, since last I tried out Artanis and I now need to provide 
>>>>> initial files for things to work out of the gate.
>>>>> Jonathan
>>>>>    On Saturday, February 15, 2020, 2:45:45 PM CST, Jaft <address@hidden> 
>>>>> wrote:
>>>>>
>>>>>  I had recently downloaded the most recent release of Artanis and was 
>>>>> just trying to get a generated project to run (no additional edits – 
>>>>> other than changing the port –, like enabling database usage or the like).
>>>>> However, trying to hit the running project results in this error:
>>>>>
>>>>> Loading conf/artanis.conf...done.Session with SIMPLE backend init 
>>>>> done!Loading models...Loading controllers...Loading restful 
>>>>> API...Regenerating route cache ...Server core: 
>>>>> ragnarokhttp://127.0.0.1:1234Anytime you want to quit just try Ctrl+C, 
>>>>> thanks!Backtrace:          11 (apply-smob/1 #<catch-closure ff83d0>)In 
>>>>> ice-9/boot-9.scm:    705:2 10 (call-with-prompt _ _ #<procedure 
>>>>> default-prompt-handle…>)In ice-9/eval.scm:    619:8  9 (_ #(#(#<directory 
>>>>> (guile-user) 1052910>)))In /usr/bin/art:    42:12  8 (_ _ _)In 
>>>>> artanis/commands/work.scm:    144:8  7 (work . _)In 
>>>>> artanis/server/ragnarok.scm:  630:10  6 (establish-http-gateway _)  
>>>>> 450:27  5 (ragnarok-http-gateway-run _)    420:6  4 
>>>>> (get-one-request-from-clients #<r6rs:record:ragnarok-p…> …)    218:4  3 
>>>>> (fill-ready-queue-from-service _ #<r6rs:record:ragnarok…>)In 
>>>>> ice-9/boot-9.scm:  260:13  2 (for-each #<procedure 12f0060 at 
>>>>> artanis/server/ragnar…> …)In artanis/server/ragnarok.scm:  245:16  1 (_ 
>>>>> (0 . 1))In artanis/server/epoll.scm:    220:4  0 (exists-in-epoll? 15 0)
>>>>> artanis/server/epoll.scm:220:4: In procedure exists-in-epoll?:Throw to 
>>>>> key `artanis-err' with args `(500 #<procedure epoll-ctl (epfd op fd event 
>>>>> #:key check-exists?)> "~a: ~a" (15 2 0 #f "Bad file descriptor") (9))'.
>>>>>
>>>>> I can't make out the cause so I thought I'd ask.
>>>>> Thank you for any help!
>>>>> Jonathan


--
GNU Powered it
GPL Protected it
GOD Blessed it
HFG - NalaGinrut
Fingerprint F53B 4C56 95B5 E4D5 6093 4324 8469 6772 846A 0058

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]