[erlang-bugs] Wrong EXIT status when shell startup fails
Thomas Lange
thomas@REDACTED
Thu Dec 8 15:14:16 CET 2011
There is a bug that occurs when Erlang is started with shell activated
but shell cannot be launched. When this happens, erlang terminates
with exit status 0, which is incorrect behavior.
A typical example is when Erlang is started via a cron job.
How to trigger bug:
* Put both attached files in /tmp
* update crontest with path to your otp release
* compile crontest.erl
* run /tmp/crontest via cron
* cronjob should fail
Example on system running debian squeeze and otp git HEAD:
------------------------------------------
k4:/tmp$ chmod +x crontest
k4:/tmp$ /u1/otp/bin/erlc crontest.erl
k4:/tmp$ ls -l crontest*
-rwxr-xr-x 1 tle tle 681 Dec 8 14:42 crontest
-rw-r--r-- 1 tle tle 536 Dec 8 14:45 crontest.beam
-rw-r--r-- 1 tle tle 83 Dec 8 14:42 crontest.erl
k4:/tmp$ ./crontest
Erlang R15B (erts-5.9) [source] [64-bit] [smp:8:8] [async-threads:0] [hipe] [kernel-poll:false]
Eshell V5.9 (abort with ^G)
1> Erlang exit status 100. Normal result when everything is started ok.
k4:/tmp$ crontab -e
crontab: installing new crontab
k4:/tmp$ crontab -l
# m h dom mon dow command
47 14 * * * /tmp/crontest
Syslog:
Dec 8 14:47:02 k4 /USR/SBIN/CRON[27923]: (CRON) error (grandchild #27924 failed with exit status 1)
Cron daemon error mail contains:
----------------
Eshell V5.9 (abort with ^G)
1> *** Terminating erlang (nonode@REDACTED)
Erlang exit status 0. Should never happen!
----------------
/Thomas
-------------- next part --------------
A non-text attachment was scrubbed...
Name: crontest.erl
Type: text/x-erlang
Size: 83 bytes
Desc: not available
URL: <http://erlang.org/pipermail/erlang-bugs/attachments/20111208/6beb77d2/attachment.bin>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: crontest
URL: <http://erlang.org/pipermail/erlang-bugs/attachments/20111208/6beb77d2/attachment.ksh>
More information about the erlang-bugs
mailing list