Subject: Re: bug#36838: mcron leaves zombies around

From: Maxim Cournoyer <[email-masked]>
Date: Mon, 23 Aug 2021 23:55:42 -0400

Hello Robert,

Robert Vollmert <[email-masked]> writes:

> It seems that mcron doesn’t clean up after itself. I regularly see
> some zombie processes around, presumably left over by each of my
> two 15-minute cron jobs:
>
> root     21285  0.0  0.3  24124  3248 ?        Ss   11:05   0:00 /gnu/store/mamwayq00mqs85kgs6ibww7xw6dy776s-mcron-1.1.1/bin/mcron /gnu/store/rdi71izz4d16v77hb8h2jks0s3q9zini-mcron-job /gnu/store/k7dn1v7qpi4kz183glmbgsf1c7pj19xx-mcron-job /gnu/store/lfyj23bzhc14y5rqi91g493jql9dphxk-mcron-job /gnu/store/mx9k5n92kmhryn3vh4607hrmnkjb8dl6-mcron-job /gnu/store/l4nxmajr0i5g07fxvrgnaw29zd1jq0qw-mcron-job
> root     26611  0.0  0.0      0     0 ?        Z    17:29   0:00 [mcron] <defunct>
> root     26612  0.0  0.0      0     0 ?        Z    17:29   0:00 [mcron] <defunct>
>
> In case that matters, they’re defined using the following:
>
> (define puzzledb-tweets-pzv-job
>   (let* ((exp
>           (with-imported-modules '((helpers))
>             #~(begin
>                 (use-modules (helpers))
>                 (let ((backend (read-secret "tools.jwt"))
>                       (twitter (read-secret "twitter.token")))
>                   (runl (string-append #$puzzledb-tools "/bin/tweets")
>                         "-backend_token" backend
>                         "-token" twitter
>                         "-deletes")))))
>          (script (program-file "puzzledb-tweets-pzv-job" exp)))
>     #~(job "*/15 * * * *" ; every fifteen minutes
>            #$script)))
>
> where the module helpers contains:
>
> (define-module (helpers)
>   #:use-module (ice-9 textual-ports)
>   #:export (runl read-secret))
>
> (define* (runl prog . args)
>   (apply execl prog prog args))
>
> (define* (read-secret file)
>   (string-trim-both
>     (get-string-all
>       (open-input-file
>         (string-append "/etc/puzzledb/secrets/" file)))))

Thank you for the report.

I don't seem to have any mcron zombies on my system and have one job
running every 5 minutes, another once per day, another every 3 days.

Does the problem still exist for you?

Thanks,

Maxim