[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: |
Sun, 23 Feb 2020 16:32:39 +0800 |
User-agent: |
mu4e 1.3.5; emacs 26.1 |
BTW, could you tell me the git commit number before you upgrade?
Jaft writes:
> Alright; and here's the output of lscpu for Ubuntu on the same Raspberry Pi:
> Architecture: aarch64Byte Order: Little EndianCPU(s):
> 4On-line CPU(s) list: 0-3Thread(s) per core: 1Core(s) per socket:
> 4Socket(s): 1Vendor ID: ARMModel: 3Model
> name: Cortex-A72Stepping: r0p3CPU max MHz:
> 1500.0000CPU min MHz: 600.0000BogoMIPS: 108.00Flags:
> fp asimd evtstrm crc32 cpuid
> And with the logs from the same branch as before attached; unfortunately, it
> looked like the same error.
> Jonathan On Saturday, February 22, 2020, 3:11:50 PM CST, Jaft
> <address@hidden> wrote:
>
> Sure thing, Nala. Here's the entire output of lscpu for Raspbian:
> Architecture: armv7lByte Order: Little EndianCPU(s):
> 4On-line CPU(s) list: 0-3Thread(s) per core: 1Core(s) per socket:
> 4Socket(s): 1Vendor ID: ARMModel: 3Model
> name: Cortex-A72Stepping: r0p3CPU max MHz:
> 1500.0000CPU min MHz: 600.0000BogoMIPS: 108.00Flags:
> half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32
> lpae evtstrm crc32
> I'm gonna attempt to install Ubuntu, now, and see what happens.
> Jonathan On Saturday, February 22, 2020, 3:38:39 AM CST, Nala Ginrut
> <address@hidden> wrote:
>
>
> BTW, please use `lscpu' the check if the endianess is little endian. I
> think most of ARM system use little by default. And the epoll of Artanis
> does assume it's little endian which should be fixed in the future.
>
> Best regards.
>
> Jaft writes:
>
>> Of course! I'd wanted to be able to web development with Guile for the
>> longest time and was delighted when I found Artanis; I'm happy to help in
>> whatever way I can.
>> I don't have a separate ARM device but I could write a different distro to
>> my microSD and try that on the same Pi?
>> Would Ubuntu be alright to try next? I'm most familiar with debian-based
>> ones (so others might take me longer to get everything setup, again) but,
>> given the two are related, I could understand wanting to try a completely
>> different distro (I'm currently running off of Raspbian Lite).
>> Jonathan
>>
>> Sent from Yahoo Mail on Android
>>
>> On Sat, Feb 22, 2020 at 1:28 AM, Nala Ginrut<address@hidden> wrote:
>> Thanks for spending your time Jaft!
>> The log showed weird things, it seems always get 0 as the socket fd.
>> To my understand, 0 is OK to be a valid socket fd, but it means the
>> program has closed stdin somewhere. I don't remember I did such
>> operation.
>>
>> The event-loop always get 0 from epoll_wait (three times in your
>> attached log), and close it each time. So it does nothing serving work.
>>
>> In the very beginning with the simplest test, the expected log to show
>> "Checking event" should be "Checking event (16 . 1)", and 16 is the
>> listenning socket in your log.
>> There's no way to check other event before getting any valid socket fd from
>> accepting the listenning socket. So the first checking should be the
>> listenning socket 16 according to your log.
>>
>> Do you have other distro on ARM to test? I suspect it's a wrong result
>> return from epoll_wait.
>>
>> Best regards.
>>
>>
>> Jaft writes:
>>
>>> *it's the last thing put out before languishing. After things time out,
>>> the rest of what's in the logs appear. Just wanted to mark when in the logs
>>> things hang in case that info. is useful, any.
>>> Jonathan
>>> On Friday, February 21, 2020, 7:45:56 PM CST, Jaft <address@hidden>
>>> wrote:
>>>
>>> No worries! I thought I was, as well, so perhaps I need to double check
>>> that…
>>> I honestly wouldn't know. I didn't mess with any settings or the like other
>>> than the port number.
>>> Though things do work on my local machine and not the pi so, perhaps,
>>> there's a Raspberry Pi setting screwing things up I'm not aware of?
>>> In any case, I've attached the result of "art work --debug"; after hitting
>>> Artanis, the last thing put out by art is "The client (0 . 1) is ready to
>>> shutdown" and then things languish before eventually timing out.
>>> Jonathan On Friday, February 21, 2020, 2:23:31 AM CST, Nala Ginrut
>>> <address@hidden> wrote:
>>>
>>>
>>> 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
signature.asc
Description: PGP signature
- Re: Error From "art work" on Vanilla Artanis Project, (continued)
- Re: Error From "art work" on Vanilla Artanis Project, Nala Ginrut, 2020/02/21
- Re: Error From "art work" on Vanilla Artanis Project, Jaft, 2020/02/21
- Re: Error From "art work" on Vanilla Artanis Project, Jaft, 2020/02/21
- Re: Error From "art work" on Vanilla Artanis Project, Nala Ginrut, 2020/02/22
- Re: Error From "art work" on Vanilla Artanis Project, Jaft, 2020/02/22
- Re: Error From "art work" on Vanilla Artanis Project, Nala Ginrut, 2020/02/22
- Re: Error From "art work" on Vanilla Artanis Project, Nala Ginrut, 2020/02/22
- Re: Error From "art work" on Vanilla Artanis Project, Jaft, 2020/02/22
- Re: Error From "art work" on Vanilla Artanis Project, Jaft, 2020/02/23
- Re: Error From "art work" on Vanilla Artanis Project, Nala Ginrut, 2020/02/23
- Re: Error From "art work" on Vanilla Artanis Project,
Nala Ginrut <=
- Re: Error From "art work" on Vanilla Artanis Project, Jaft, 2020/02/23
- Re: Error From "art work" on Vanilla Artanis Project, Nala Ginrut, 2020/02/23
- Re: Error From "art work" on Vanilla Artanis Project, Jaft, 2020/02/23
- Re: Error From "art work" on Vanilla Artanis Project, Nala Ginrut, 2020/02/23