[erlang-questions] os:cmd hang on OTP 18
Wed Jul 26 21:34:16 CEST 2017
Is it something lbzip2 related?
Did you try normal single-thread bzip2? (-j flag or --bzip2)
What is you use gzip? (-z or --gzip)
2017-07-26 21:27 GMT+02:00 Dániel Szoboszlay <dszoboszlay@REDACTED>:
> I've encountered a strange problem with os:cmd when running tar and
> lbzip2. Steps to reproduce:
> # create some lbzip2 compressed data
> dd if=/dev/urandom of=/tmp/testfile count=10
> tar -cf - -C /tmp testfile | lbzip2 -6 -n 4 | dd of=/tmp/tartest status=none
> # try to extract the archive from Erlang with os:cmd
> erl -noinput -eval 'os:cmd("tar -C /tmp/ -xf /tmp/tartest --use-compress-program=lbzip2"), init:stop().'
> This worked fine with OTP 184.108.40.206, but with OTP 220.127.116.11 the command
> hangs: lbzip2 just sits in a rt_sigsuspend syscall waiting for a USR2, PIPE
> or XFSZ signal. And its parent, the tar process waits in a wait4 syscall
> for lbzip2 to terminate.
> I don't have at the moment any newer OTP version installed, I'm not sure
> how OTP 19 or 20 would behave.
> I tried to strace the processes, but there's too much noise, I couldn't
> yet figure out anything interesting there.
> I also tried to diff OTP 17 & 18, but os:cmd/1 and friends didn't change.
> I'm not sure about the port code, but at least the release notes didn't
> mention anything major. Or did I miss something? Does anyone have an idea
> what may have changed between these OTP versions?
> erlang-questions mailing list
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the erlang-questions