Closed gAlleb closed 1 month ago
Aha! I got it. It happens only when I make a network for containers and use networks:
for LS container (and http://omfmapi:9999
endpoint in the script). LS restarts with 0 or 139 code.
services:
omfmapi:
build:
context: ./
dockerfile: ./docker/omfmapi/Dockerfile
# depends_on:
# - centrifugo
environment:
- "TZ=Europe/Moscow"
user: node:node
volumes:
- ./docker/omfmapi/app/playlist:/home/node/app/playlist
- ./docker/omfmapi/app/db:/home/node/app/db
restart: always
# network_mode: "host"
ports:
- 9999:9999
networks:
- omfm-network
logging:
driver: "json-file"
options:
max-size: "1m"
max-file: "3"
centrifugo:
container_name: centrifugo
restart: always
image: centrifugo/centrifugo:latest
volumes:
- ./config.json:/centrifugo/config.json
command: centrifugo -c config.json
ports:
- 9998:9998
networks:
- omfm-network
ulimits:
nofile:
soft: 65535
hard: 65535
logging:
driver: "json-file"
options:
max-size: "1m"
max-file: "3"
liquidsoap:
build:
context: ./
dockerfile: ./docker/liquidsoap/Dockerfile
args:
- "USER_UID=${USER_UID:-1000}"
- "USER_GID=${USER_GID:-1000}"
user: 1000:1000
environment:
- "TZ=Europe/Moscow"
command:
- /home/radio/liquidsoap/omfm/index.liq
volumes:
- /mnt/GoogleDrive:/mnt/GoogleDrive:ro
networks:
- omfm-network
#network_mode: "host"
# depends_on:
# - omfmapi
restart: always
logging:
driver: "json-file"
options:
max-size: "1m"
max-file: "3"
networks:
omfm-network:
driver: bridge
If I change LS container to network_mode: "host"
and use http://localhost:9999
endpoint for API - then everything works allright! Could somebody explain?
@vitoyucepi, Hi! Can I do anything with it? Thanks!
Do you have any log?
Nothing special in the logs. It happens like this.
liquidsoap-1 | 2024/08/01 17:29:18 [decoder.ffmpeg:3] Requested content-type for "/mnt/GoogleDrive/music/Meditative/Anugama/15 - 1995 - Shamanic Dream/02. Chakra-Journey.mp3": {audio=pcm(stereo)}
liquidsoap-1 | 2024/08/01 17:29:18 [decoder.ffmpeg:3] FFmpeg recognizes "/mnt/GoogleDrive/music/Meditative/Anugama/15 - 1995 - Shamanic Dream/02. Chakra-Journey.mp3" as audio: {codec: mp3, 44100Hz, 2 channel(s)}, video: {codec: mjpeg, 358x350, yuvj420p}
liquidsoap-1 | 2024/08/01 17:29:18 [decoder.ffmpeg:3] Decoded content-type for "/mnt/GoogleDrive/music/Meditative/Anugama/15 - 1995 - Shamanic Dream/02. Chakra-Journey.mp3": {audio=pcm(stereo)}
liquidsoap-1 exited with code 139
liquidsoap-1 | 2024/08/01 17:29:31 >>> LOG START
liquidsoap-1 | 2024/08/01 17:29:25 [ffmpeg.filter.bitstream:3] No valid mode found for filter pgs_frame_merge!
liquidsoap-1 | 2024/08/01 17:29:25 [main:3] Liquidsoap 2.3.0+git@10453cf85
or
liquidsoap-1 | 2024/08/01 12:07:30 [decoder.ffmpeg:3] Requested content-type for "/mnt/GoogleDrive/radio/music/OMFM/mantra-night/13_Ravindra_Sathe_-_Om_www_oum_ru.mp3": {audio=pcm(stereo)}
liquidsoap-1 | 2024/08/01 12:07:30 [decoder.ffmpeg:3] FFmpeg recognizes "/mnt/GoogleDrive/radio/music/OMFM/mantra-night/13_Ravindra_Sathe_-_Om_www_oum_ru.mp3" as audio: {codec: mp3, 44100Hz, 2 channel(s)}
liquidsoap-1 | 2024/08/01 12:07:30 [decoder.ffmpeg:3] Decoded content-type for "/mnt/GoogleDrive/radio/music/OMFM/mantra-night/13_Ravindra_Sathe_-_Om_www_oum_ru.mp3": {audio=pcm(stereo)}
liquidsoap-1 exited with code 0
liquidsoap-1 | 2024/08/01 12:08:23 >>> LOG START
liquidsoap-1 | 2024/08/01 12:08:22 [ffmpeg.filter.bitstream:3] No valid mode found for filter pgs_frame_merge!
liquidsoap-1 | 2024/08/01 12:08:22 [main:3] Liquidsoap 2.3.0+git@10453cf85
If I change LS container to network_mode: "host"
and use http://localhost:9999 endpoint for API in the script - then everything works all right.
Hi @gAlleb,
It may sound rough from my side, but would you kindly fill out the form as requested? The liquidsoap --version
and liquidsoap --build-config
exist for a reason. They will allow me to determine the opam version, ocaml modules, and basic system info.
I noticed you're using dockerfile: ./docker/liquidsoap/Dockerfile
. Pasting it will help a lot.
Thanks, Vito. My bad.
Build config:
* Liquidsoap version : 2.3.0+git@10453cf85
* Compilation options
- Release build : false
- Git SHA : 10453cf85
- OCaml version : 4.14.2
- OS type : Unix
- Libs versions : alsa=0.3.0 angstrom=0.16.0 ao=0.2.4 asetmap=0.8.1 asn1-combinators=0.2.6 astring=0.8.5 base=v0.16.3 base.base_internalhash_types=v0.16.3 base.caml=v0.16.3 base.shadow_stdlib=v0.16.3 base64=3.5.1 bigarray=[distributed with Ocaml] bigarray-compat=1.1.0 bigstringaf=0.9.1 bjack=0.1.6 bos=0.2.1 bytes=[distributed with OCaml 4.02 or above] ca-certs=v0.2.3 camlp-streams camomile.lib=2.0 cohttp=5.3.1 cohttp-lwt=5.3.0 cohttp-lwt-unix=5.3.0 conduit=6.2.2 conduit-lwt=6.2.2 conduit-lwt-unix=6.2.2 cry=1.0.3 cstruct=6.2.0 ctypes=0.22.0 ctypes-foreign=0.22.0 ctypes.stubs=0.22.0 curl=0.9.2 domain-name=0.4.0 domain_shims dssi=0.1.5 dtools=0.4.5 dune-build-info=3.15.3 dune-private-libs.dune-section=3.15.3 dune-site=3.15.3 dune-site.private=3.15.3 duppy=0.9.4 eqaf=0.9 eqaf.bigstring=0.9 eqaf.cstruct=0.9 faad=0.5.2 fdkaac=0.3.3 ffmpeg-av=1.2.0 ffmpeg-avcodec=1.2.0 ffmpeg-avdevice=1.2.0 ffmpeg-avfilter=1.2.0 ffmpeg-avutil=1.2.0 ffmpeg-swresample=1.2.0 ffmpeg-swscale=1.2.0 fileutils=0.6.4 flac=0.5.1 flac.decoder=0.5.1 flac.ogg=0.5.1 fmt=0.9.0 fpath=0.7.3 frei0r=0.1.2 gen=1.1 gmap=0.3.0 hkdf=1.0.4 inotify=2.0-62-g5e58536 integers ipaddr=5.6.0 ipaddr-sexp=5.6.0 ipaddr.unix=5.6.0 irc-client irc-client-unix ladspa=0.2.2 lame=0.3.7 lastfm=0.3.4 lilv=0.2.0 liquidsoap-lang=2.3.0 liquidsoap-lang.console=2.3.0 liquidsoap_alsa=c721555-dirty liquidsoap_ao=c721555-dirty liquidsoap_bjack=c721555-dirty liquidsoap_builtins=c721555-dirty liquidsoap_core=c721555-dirty liquidsoap_dssi=c721555-dirty liquidsoap_faad=c721555-dirty liquidsoap_fdkaac=c721555-dirty liquidsoap_ffmpeg=c721555-dirty liquidsoap_flac=c721555-dirty liquidsoap_frei0r=c721555-dirty liquidsoap_irc=c721555-dirty liquidsoap_ladspa=c721555-dirty liquidsoap_lame=c721555-dirty liquidsoap_lastfm=c721555-dirty liquidsoap_lilv=c721555-dirty liquidsoap_lo=c721555-dirty liquidsoap_mad=c721555-dirty liquidsoap_ogg=c721555-dirty liquidsoap_ogg_flac=c721555-dirty liquidsoap_optionals=c721555-dirty liquidsoap_opus=c721555-dirty liquidsoap_osc=c721555-dirty liquidsoap_oss=c721555-dirty liquidsoap_portaudio=c721555-dirty liquidsoap_posix_time=c721555-dirty liquidsoap_prometheus=c721555-dirty liquidsoap_pulseaudio=c721555-dirty liquidsoap_runtime=c721555-dirty liquidsoap_samplerate=c721555-dirty liquidsoap_sdl=c721555-dirty liquidsoap_sdl_log_level=c721555-dirty liquidsoap_shine=c721555-dirty liquidsoap_soundtouch=c721555-dirty liquidsoap_speex=c721555-dirty liquidsoap_sqlite=c721555-dirty liquidsoap_srt=c721555-dirty liquidsoap_ssl=c721555-dirty liquidsoap_stdlib=c721555-dirty liquidsoap_stereotool=c721555-dirty liquidsoap_taglib=c721555-dirty liquidsoap_theora=c721555-dirty liquidsoap_tls=c721555-dirty liquidsoap_vorbis=c721555-dirty liquidsoap_xmlplaylist=c721555-dirty liquidsoap_yaml=c721555-dirty lo=0.2.0 logs=0.7.0 logs.fmt=0.7.0 logs.lwt=0.7.0 lwt=5.7.0 lwt.unix=5.7.0 macaddr=5.6.0 mad=0.5.3 magic-mime=1.3.1 mem_usage=0.1.1 memtrace=0.2.3 menhirLib=20231231 metadata=0.3.0 mirage-crypto=0.11.3 mirage-crypto-ec=0.11.3 mirage-crypto-pk=0.11.3 mirage-crypto-rng=0.11.3 mirage-crypto-rng.unix=0.11.3 mm=0.8.5 mm.audio=0.8.5 mm.base=0.8.5 mm.image=0.8.5 mm.midi=0.8.5 mm.video=0.8.5 ocplib-endian ocplib-endian.bigstring ogg=0.7.4 ogg.decoder=0.7.4 opus=0.2.3 opus.decoder=0.2.3 osc osc-unix parsexp=v0.16.0 pbkdf portaudio=0.2.3 posix-base=5a7f328 posix-socket=5a7f328 posix-socket.constants=5a7f328 posix-socket.stubs=5a7f328 posix-socket.types=5a7f328 posix-time2=5a7f328 posix-time2.constants=5a7f328 posix-time2.stubs=5a7f328 posix-time2.types=5a7f328 posix-types=5a7f328 posix-types.constants=5a7f328 ppx_compare.runtime-lib=v0.16.0 ppx_hash.runtime-lib=v0.16.0 ppx_sexp_conv.runtime-lib=v0.16.0 prometheus=1.2 prometheus-app=1.2 ptime=1.1.0 ptime.clock.os=1.1.0 pulseaudio=0.1.6 re=1.11.0 result=1.5 rresult=0.7.0 samplerate=0.1.7 saturn_lockfree=0.4.1 sedlex=3.2 seq=[distributed with OCaml 4.07 or above] sexplib=v0.16.0 sexplib0=v0.16.0 shine=0.2.3 soundtouch=0.1.9 speex=0.4.2 speex.decoder=0.4.2 sqlite3=5.1.0 srt=0.3.1 srt.constants=0.3.1 srt.stubs=0.3.1 srt.stubs.locked=0.3.1 srt.types=0.3.1 ssl=0.7.0 stdlib-shims=0.3.0 stereotool=c721555-dirty str=[distributed with Ocaml] stringext=1.6.0 taglib=0.3.10 theora=0.4.1 theora.decoder=0.4.1 threads=[distributed with Ocaml] threads.posix=[internal] tls=0.17.4 tsdl=v1.0.0 tsdl-image=0.5 tsdl-ttf=0.6 unix=[distributed with Ocaml] unix-errno=52c6ecb unix-errno.errno_bindings=52c6ecb unix-errno.errno_types=52c6ecb unix-errno.errno_types_detected=52c6ecb unix-errno.unix=52c6ecb uri=4.4.0 uri-sexp=4.4.0 uri.services=4.4.0 vorbis=0.8.1 vorbis.decoder=0.8.1 x509=0.16.5 xmlm=1.4.0 xmlplaylist=0.1.5 yaml=3.2.0 yaml.bindings=3.2.0 yaml.bindings.types=3.2.0 yaml.c=3.2.0 yaml.ffi=3.2.0 yaml.types=3.2.0 zarith=1.13
- architecture : amd64
- host : x86_64-pc-linux-musl
- target : x86_64-pc-linux-musl
- system : linux
- ocamlopt_cflags : -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC
- native_c_compiler : gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64
- native_c_libraries : -lm
* Configured paths
- mode : posix
- standard library : /usr/share/liquidsoap/libs
- scripted binaries : /usr/share/liquidsoap/bin
- rundir : /var/run/liquidsoap
- logdir : /var/log/liquidsoap
- user cache : $HOME/.cache/liquidsoap (override with $LIQ_CACHE_USER_DIR)
- system cache : /var/cache/liquidsoap (override with $LIQ_CACHE_SYSTEM_DIR)
- camomile files : /usr/share/liquidsoap/camomile
* Supported input formats
- MP3 : yes
- AAC : yes
- Ffmpeg : yes
- Flac (native) : yes
- Flac (ogg) : yes
- Opus : yes
- Speex : yes
- Theora : yes
- Vorbis : yes
* Supported output formats
- FDK-AAC : yes
- Ffmpeg : yes
- MP3 : yes
- MP3 (fixed-point) : yes
- Flac (native) : yes
- Flac (ogg) : yes
- Opus : yes
- Speex : yes
- Theora : yes
- Vorbis : yes
* Tags
- Taglib (ID3 tags) : yes
- Vorbis : yes
* Input / output
- ALSA : yes
- AO : yes
- FFmpeg : yes
- JACK : yes
- OSS : yes
- Portaudio : yes
- Pulseaudio : yes
- SRT : yes
* Audio manipulation
- FFmpeg : yes
- LADSPA : yes
- Lilv : yes
- Samplerate : yes
- SoundTouch : yes
- StereoTool : yes
* Video manipulation
- camlimages : no (requires camlimages)
- FFmpeg : yes
- frei0r : yes
- ImageLib : no (requires imagelib)
- SDL : yes
* MIDI manipulation
- DSSI : yes
* Visualization
- GD : no (requires gd)
- Graphics : no (requires graphics)
- SDL : yes
* Additional libraries
- FFmpeg filters : yes
- FFmpeg devices : yes
- inotify : yes
- irc : yes
- jemalloc : no (requires jemalloc)
- lastfm : yes
- lo : yes
- memtrace : no (requires memtrace)
- osc : yes
- ssl : yes
- sqlite3 : yes
- tls : yes
- posix-time2 : yes
- windows service : no (requires winsvc)
- YAML support : yes
- XML playlists : yes
* Monitoring
- Prometheus : yes
Version: Liquidsoap 2.3.0+git@10453cf85
Dockerfile:
FROM savonet/liquidsoap-alpine:rolling-release-v2.3.x
ARG USER_UID
ARG USER_GID
USER root
ENV TZ=UTC
RUN addgroup -g "${USER_GID}" radio && adduser -u "${USER_UID}" -G radio -S radio
RUN apk add --no-cache --allow-untrusted \
ffmpeg \
python3 \
py3-mutagen \
tzdata \
curl \
bash \
;
COPY ./docker/liquidsoap/rootfs /
RUN chown -R radio:radio /home/radio
USER radio
# Your alpine entrypoint
ENTRYPOINT [ "entrypoint" ]
Thing is this happens with the above image, also with just an official Alpine image and with official Alpine image with 2.3.0+git@383d1d8
release only when creating network within docker-compose.yaml and sending payload to http:omfmapi:9999
. If I change LS container to network_mode: "host" and use http://localhost:9999/ endpoint for API in the script - then everything works all right.
I've figured out how to collect the trace.
index.js
const express = require('express')
const app = express()
const port = 3000
app.post('/', (req, res) => {
res.send('Hello World!')
})
app.listen(port, () => {
console.log(`Example app listening on port ${port}`)
})
npm init
npm install express
build/Dockerfile
FROM savonet/liquidsoap-alpine:rolling-release-v2.3.x
USER root
RUN apk add gdb
USER liquidsoap
ENTRYPOINT [ "gdb" ]
CMD [ "-ex", "run /tmp/test/main.liq", "-ex", "thread apply all bt", "-ex", "quit", "liquidsoap" ]
main.liq
s = playlist("/tmp/test/music")
thread.run({ignore(http.post("http://omfmapi:3000/"))}, every=0.01, fast=false)
output.dummy(s, fallible=true)
compose.yaml
services:
omfmapi:
image: node:20-alpine
command: node /tmp/test
volumes:
- ./:/tmp/test
liquidsoap:
build:
context: ./build
dockerfile: Dockerfile
volumes:
- ./:/tmp/test
mkdir music
for i in $(seq 1 3);do ffmpeg -f lavfi -i "sine=frequency=${i}000:duration=1" -c:a libmp3lame -b:a 128k -metadata title=music_$i -y music/$i.mp3;done
docker compose up --build
Oh, nice. Thanks, Vito!
So what does it mean? Any ideas?
Should we stick with network_mode: "host"
for now?
So what does it mean? Any ideas?
It could be alpine:edge or ffmpeg.
While I was trying to collect the trace - bumped 3 times into https://github.com/savonet/liquidsoap/issues/4068 issue again.
Got the trace:
liquidsoap-1 |
liquidsoap-1 | Thread 4 "liquidsoap" received signal SIGSEGV, Segmentation fault.
liquidsoap-1 | [Switching to LWP 25]
liquidsoap-1 | get_meta (p=p@entry=0x761530f85500 "\200\226\241,\025v")
liquidsoap-1 | at src/malloc/mallocng/meta.h:141
liquidsoap-1 | warning: 141 src/malloc/mallocng/meta.h: No such file or directory
liquidsoap-1 |
liquidsoap-1 | Thread 8 (LWP 29 "liquidsoap"):
liquidsoap-1 | #0 __cp_end () at src/thread/x86_64/syscall_cp.s:29
liquidsoap-1 | #1 0x00007615362e9617 in __syscall_cp_c (nr=7, u=<optimized out>, v=<optimized out>, w=<optimized out>, x=<optimized out>, y=<optimized out>, z=0) at src/thread/pthread_cancel.c:33
liquidsoap-1 | #2 0x00007615362db4dc in poll (fds=<optimized out>, n=<optimized out>, timeout=<optimized out>) at src/select/poll.c:9
liquidsoap-1 | #3 0x0000625b8f89d061 in caml_poll ()
liquidsoap-1 | #4 0x0000625b8f69ef00 in camlDuppy__poll_590 ()
liquidsoap-1 | #5 0x0000625b8f6a00a0 in camlDuppy__f_1033 ()
liquidsoap-1 | #6 0x0000625b8f69fc9c in camlDuppy__process_1023 ()
liquidsoap-1 | #7 0x0000625b8f6a0a8d in camlDuppy__f_1158 ()
liquidsoap-1 | #8 0x0000625b8f6a07d1 in camlDuppy__queue_inner_3044 ()
liquidsoap-1 | #9 0x0000625b8f2a0ac3 in camlTutils__process_1199 ()
liquidsoap-1 | #10 0x0000625b8f6cbf25 in camlThread__fun_850 ()
liquidsoap-1 | #11 0x0000625b8f8d4ecd in caml_start_program ()
liquidsoap-1 | #12 0x0000625b8f8caf6d in caml_callback_exn ()
liquidsoap-1 | #13 0x0000625b8f89e3b0 in ?? ()
liquidsoap-1 | #14 0x00007615362ea349 in start (p=0x761526dff620) at src/thread/pthread_create.c:207
liquidsoap-1 | #15 0x00007615362ec95f in __clone () at src/thread/x86_64/clone.s:22
liquidsoap-1 | Backtrace stopped: frame did not save the PC
liquidsoap-1 |
liquidsoap-1 | Thread 7 (LWP 28 "liquidsoap"):
liquidsoap-1 | #0 __cp_end () at src/thread/x86_64/syscall_cp.s:29
liquidsoap-1 | #1 0x00007615362e9617 in __syscall_cp_c (nr=202, u=<optimized out>, v=<optimized out>, w=<optimized out>, x=<optimized out>, y=<optimized out>, z=0) at src/thread/pthread_cancel.c:33
liquidsoap-1 | #2 0x00007615362e8b49 in __futex4_cp (to=<optimized out>, val=2, op=128, addr=0x7615281ff2a4) at src/thread/__timedwait.c:24
liquidsoap-1 | #3 __timedwait_cp (addr=addr@entry=0x7615281ff2a4, val=val@entry=2, clk=clk@entry=0, at=at@entry=0x0, priv=128, priv@entry=1) at src/thread/__timedwait.c:52
liquidsoap-1 | #4 0x00007615362e99af in __pthread_cond_timedwait (c=0x76152ca23a80, m=0x761530624f50, ts=0x0) at src/thread/pthread_cond_timedwait.c:100
liquidsoap-1 | #5 0x0000625b8f89eec4 in caml_condition_wait ()
liquidsoap-1 | #6 0x0000625b8f6a0bb1 in camlDuppy__f_1158 ()
liquidsoap-1 | #7 0x0000625b8f6a07d1 in camlDuppy__queue_inner_3044 ()
liquidsoap-1 | #8 0x0000625b8f2a0ac3 in camlTutils__process_1199 ()
liquidsoap-1 | #9 0x0000625b8f6cbf25 in camlThread__fun_850 ()
liquidsoap-1 | #10 0x0000625b8f8d4ecd in caml_start_program ()
liquidsoap-1 | #11 0x0000625b8f8caf6d in caml_callback_exn ()
liquidsoap-1 | #12 0x0000625b8f89e3b0 in ?? ()
liquidsoap-1 | #13 0x00007615362ea349 in start (p=0x7615281ff620) at src/thread/pthread_create.c:207
liquidsoap-1 | #14 0x00007615362ec95f in __clone () at src/thread/x86_64/clone.s:22
liquidsoap-1 | Backtrace stopped: frame did not save the PC
liquidsoap-1 |
liquidsoap-1 | Thread 6 (LWP 27 "liquidsoap"):
liquidsoap-1 | #0 __cp_end () at src/thread/x86_64/syscall_cp.s:29
liquidsoap-1 | #1 0x00007615362e9617 in __syscall_cp_c (nr=202, u=<optimized out>, v=<optimized out>, w=<optimized out>, x=<optimized out>, y=<optimized out>, z=0) at src/thread/pthread_cancel.c:33
liquidsoap-1 | #2 0x00007615362e8b49 in __futex4_cp (to=<optimized out>, val=2, op=128, addr=0x7615291ff2a4) at src/thread/__timedwait.c:24
liquidsoap-1 | #3 __timedwait_cp (addr=addr@entry=0x7615291ff2a4, val=val@entry=2, clk=clk@entry=0, at=at@entry=0x0, priv=128, priv@entry=1) at src/thread/__timedwait.c:52
liquidsoap-1 | #4 0x00007615362e99af in __pthread_cond_timedwait (c=0x76152ca23a40, m=0x761530624f50, ts=0x0) at src/thread/pthread_cond_timedwait.c:100
liquidsoap-1 | #5 0x0000625b8f89eec4 in caml_condition_wait ()
liquidsoap-1 | #6 0x0000625b8f6a0bb1 in camlDuppy__f_1158 ()
liquidsoap-1 | #7 0x0000625b8f6a07d1 in camlDuppy__queue_inner_3044 ()
liquidsoap-1 | #8 0x0000625b8f2a0ac3 in camlTutils__process_1199 ()
liquidsoap-1 | #9 0x0000625b8f6cbf25 in camlThread__fun_850 ()
liquidsoap-1 | #10 0x0000625b8f8d4ecd in caml_start_program ()
liquidsoap-1 | #11 0x0000625b8f8caf6d in caml_callback_exn ()
liquidsoap-1 | #12 0x0000625b8f89e3b0 in ?? ()
liquidsoap-1 | #13 0x00007615362ea349 in start (p=0x7615291ff620) at src/thread/pthread_create.c:207
liquidsoap-1 | #14 0x00007615362ec95f in __clone () at src/thread/x86_64/clone.s:22
liquidsoap-1 | Backtrace stopped: frame did not save the PC
liquidsoap-1 |
liquidsoap-1 | Thread 5 (LWP 26 "liquidsoap"):
liquidsoap-1 | #0 __cp_end () at src/thread/x86_64/syscall_cp.s:29
liquidsoap-1 | #1 0x00007615362e9617 in __syscall_cp_c (nr=202, u=<optimized out>, v=<optimized out>, w=<optimized out>, x=<optimized out>, y=<optimized out>, z=0) at src/thread/pthread_cancel.c:33
liquidsoap-1 | #2 0x00007615362e8b49 in __futex4_cp (to=<optimized out>, val=2, op=128, addr=0x761529dff2a4) at src/thread/__timedwait.c:24
liquidsoap-1 | #3 __timedwait_cp (addr=addr@entry=0x761529dff2a4, val=val@entry=2, clk=clk@entry=0, at=at@entry=0x0, priv=128, priv@entry=1) at src/thread/__timedwait.c:52
liquidsoap-1 | #4 0x00007615362e99af in __pthread_cond_timedwait (c=0x76152ca23880, m=0x761530624f50, ts=0x0) at src/thread/pthread_cond_timedwait.c:100
liquidsoap-1 | #5 0x0000625b8f89eec4 in caml_condition_wait ()
liquidsoap-1 | #6 0x0000625b8f6a0bb1 in camlDuppy__f_1158 ()
liquidsoap-1 | #7 0x0000625b8f6a07d1 in camlDuppy__queue_inner_3044 ()
liquidsoap-1 | #8 0x0000625b8f2a0ac3 in camlTutils__process_1199 ()
liquidsoap-1 | #9 0x0000625b8f6cbf25 in camlThread__fun_850 ()
liquidsoap-1 | #10 0x0000625b8f8d4ecd in caml_start_program ()
liquidsoap-1 | #11 0x0000625b8f8caf6d in caml_callback_exn ()
liquidsoap-1 | #12 0x0000625b8f89e3b0 in ?? ()
liquidsoap-1 | #13 0x00007615362ea349 in start (p=0x761529dff620) at src/thread/pthread_create.c:207
liquidsoap-1 | #14 0x00007615362ec95f in __clone () at src/thread/x86_64/clone.s:22
liquidsoap-1 | Backtrace stopped: frame did not save the PC
liquidsoap-1 |
liquidsoap-1 | Thread 4 (LWP 25 "liquidsoap"):
liquidsoap-1 | #0 get_meta (p=p@entry=0x761530f85500 "\200\226\241,\025v") at src/malloc/mallocng/meta.h:141
liquidsoap-1 | #1 0x00007615362b2db3 in __libc_free (p=0x761530f85500) at src/malloc/mallocng/free.c:105
liquidsoap-1 | #2 0x0000761533c46f7a in av_channel_layout_uninit () from /usr/lib/libavutil.so.58
liquidsoap-1 | #3 0x0000761533c4ac52 in av_channel_layout_copy () from /usr/lib/libavutil.so.58
liquidsoap-1 | #4 0x0000625b8f879966 in value_of_channel_layout ()
liquidsoap-1 | #5 0x0000625b8f879f56 in ocaml_avutil_get_default_channel_layout ()
liquidsoap-1 | #6 0x0000625b8f26c363 in camlAvutil__fun_1729 ()
liquidsoap-1 | #7 0x0000625b8f23e816 in camlFfmpeg_internal_decoder__fun_2320 ()
liquidsoap-1 | #8 0x0000625b8f2420ce in camlFfmpeg_decoder__f_2913 ()
liquidsoap-1 | #9 0x0000625b8f2ac789 in camlDecoder__fread_2334 ()
liquidsoap-1 | #10 0x0000625b8f2c64cd in camlRequest__fread_1914 ()
liquidsoap-1 | #11 0x0000625b8f308ae4 in camlRequest_dynamic__fun_3022 ()
liquidsoap-1 | #12 0x0000625b8f308a4a in camlRequest_dynamic__fun_3029 ()
liquidsoap-1 | #13 0x0000625b8f30704d in camlRequest_dynamic__fun_3066 ()
liquidsoap-1 | #14 0x0000625b8f308c70 in camlRequest_dynamic__fill_1726 ()
liquidsoap-1 | #15 0x0000625b8f306f5c in camlRequest_dynamic__fun_3069 ()
liquidsoap-1 | #16 0x0000625b8f2b4e43 in camlSource__fun_4443 ()
liquidsoap-1 | #17 0x0000625b8f2bae55 in camlSource__fun_4236 ()
liquidsoap-1 | #18 0x0000625b8f2b5ed3 in camlSource__fun_4278 ()
liquidsoap-1 | #19 0x0000625b8f2b5df3 in camlSource__fun_4283 ()
liquidsoap-1 | #20 0x0000625b8f2b75a7 in camlSource__fun_4700 ()
liquidsoap-1 | #21 0x0000625b8f2b4e43 in camlSource__fun_4443 ()
liquidsoap-1 | #22 0x0000625b8f2bae55 in camlSource__fun_4236 ()
liquidsoap-1 | #23 0x0000625b8f2b5ed3 in camlSource__fun_4278 ()
liquidsoap-1 | #24 0x0000625b8f2b5df3 in camlSource__fun_4283 ()
liquidsoap-1 | #25 0x0000625b8f31b602 in camlOn_track__fun_1412 ()
liquidsoap-1 | #26 0x0000625b8f2b4e43 in camlSource__fun_4443 ()
liquidsoap-1 | #27 0x0000625b8f2bae55 in camlSource__fun_4236 ()
liquidsoap-1 | #28 0x0000625b8f2b5ed3 in camlSource__fun_4278 ()
liquidsoap-1 | #29 0x0000625b8f2b5df3 in camlSource__fun_4283 ()
liquidsoap-1 | #30 0x0000625b8f2b75a7 in camlSource__fun_4700 ()
liquidsoap-1 | #31 0x0000625b8f2b4e43 in camlSource__fun_4443 ()
liquidsoap-1 | #32 0x0000625b8f2bae55 in camlSource__fun_4236 ()
liquidsoap-1 | #33 0x0000625b8f2b5ed3 in camlSource__fun_4278 ()
liquidsoap-1 | #34 0x0000625b8f2b5df3 in camlSource__fun_4283 ()
liquidsoap-1 | #35 0x0000625b8f2b75a7 in camlSource__fun_4700 ()
liquidsoap-1 | #36 0x0000625b8f2b4e43 in camlSource__fun_4443 ()
liquidsoap-1 | #37 0x0000625b8f2bae55 in camlSource__fun_4236 ()
liquidsoap-1 | #38 0x0000625b8f2b5ed3 in camlSource__fun_4278 ()
liquidsoap-1 | #39 0x0000625b8f2b5df3 in camlSource__fun_4283 ()
liquidsoap-1 | #40 0x0000625b8f2b75a7 in camlSource__fun_4700 ()
liquidsoap-1 | #41 0x0000625b8f2b4e43 in camlSource__fun_4443 ()
liquidsoap-1 | #42 0x0000625b8f2bae55 in camlSource__fun_4236 ()
liquidsoap-1 | #43 0x0000625b8f2b5ed3 in camlSource__fun_4278 ()
liquidsoap-1 | #44 0x0000625b8f2b5df3 in camlSource__fun_4283 ()
liquidsoap-1 | #45 0x0000625b8f2b75a7 in camlSource__fun_4700 ()
liquidsoap-1 | #46 0x0000625b8f2b4e43 in camlSource__fun_4443 ()
liquidsoap-1 | #47 0x0000625b8f2bae55 in camlSource__fun_4236 ()
liquidsoap-1 | #48 0x0000625b8f2b5ed3 in camlSource__fun_4278 ()
liquidsoap-1 | #49 0x0000625b8f2b5df3 in camlSource__fun_4283 ()
liquidsoap-1 | #50 0x0000625b8f2f0ddf in camlMuxer__fun_2385 ()
liquidsoap-1 | #51 0x0000625b8f70bb14 in camlStdlib__List__fold_left_521 ()
liquidsoap-1 | #52 0x0000625b8f2f0436 in camlMuxer__fun_2371 ()
liquidsoap-1 | #53 0x0000625b8f2b4e43 in camlSource__fun_4443 ()
liquidsoap-1 | #54 0x0000625b8f2bae55 in camlSource__fun_4236 ()
liquidsoap-1 | #55 0x0000625b8f2b5ed3 in camlSource__fun_4278 ()
liquidsoap-1 | #56 0x0000625b8f2b5df3 in camlSource__fun_4283 ()
liquidsoap-1 | #57 0x0000625b8f2f0ddf in camlMuxer__fun_2385 ()
liquidsoap-1 | #58 0x0000625b8f70bb14 in camlStdlib__List__fold_left_521 ()
liquidsoap-1 | #59 0x0000625b8f2f0436 in camlMuxer__fun_2371 ()
liquidsoap-1 | #60 0x0000625b8f2b4e43 in camlSource__fun_4443 ()
liquidsoap-1 | #61 0x0000625b8f2bae55 in camlSource__fun_4236 ()
liquidsoap-1 | #62 0x0000625b8f2b5ed3 in camlSource__fun_4278 ()
liquidsoap-1 | #63 0x0000625b8f2b5df3 in camlSource__fun_4283 ()
liquidsoap-1 | #64 0x0000625b8f38939b in camlCross__fun_2793 ()
liquidsoap-1 | #65 0x0000625b8f5b7854 in camlLiquidsoap_lang__Queues__f_378 ()
liquidsoap-1 | #66 0x0000625b8f2a44ce in camlClock___tick_1227 ()
liquidsoap-1 | #67 0x0000625b8f38714d in camlCross__fun_2781 ()
liquidsoap-1 | #68 0x0000625b8f38625d in camlCross__fun_2874 ()
liquidsoap-1 | #69 0x0000625b8f38661b in camlCross__fun_2871 ()
liquidsoap-1 | #70 0x0000625b8f2b78e8 in camlSource__fun_4681 ()
liquidsoap-1 | #71 0x0000625b8f2b6150 in camlSource__fun_4200 ()
liquidsoap-1 | #72 0x0000625b8f2b638e in camlSource__fun_4189 ()
liquidsoap-1 | #73 0x0000625b8f2b6150 in camlSource__fun_4200 ()
liquidsoap-1 | #74 0x0000625b8f2b638e in camlSource__fun_4189 ()
liquidsoap-1 | #75 0x0000625b8f70bee0 in camlStdlib__List__for_all_581 ()
liquidsoap-1 | #76 0x0000625b8f2b6150 in camlSource__fun_4200 ()
liquidsoap-1 | #77 0x0000625b8f2b638e in camlSource__fun_4189 ()
liquidsoap-1 | #78 0x0000625b8f2b778c in camlSource__fun_4689 ()
liquidsoap-1 | #79 0x0000625b8f2fb789 in camlSwitch__fun_2603 ()
liquidsoap-1 | #80 0x0000625b8f2b78e8 in camlSource__fun_4681 ()
liquidsoap-1 | #81 0x0000625b8f2b6150 in camlSource__fun_4200 ()
liquidsoap-1 | #82 0x0000625b8f2b638e in camlSource__fun_4189 ()
liquidsoap-1 | #83 0x0000625b8f2b6150 in camlSource__fun_4200 ()
liquidsoap-1 | #84 0x0000625b8f2b638e in camlSource__fun_4189 ()
liquidsoap-1 | #85 0x0000625b8f29f8fd in camlClock_base__fun_1675 ()
liquidsoap-1 | #86 0x0000625b8f70bb14 in camlStdlib__List__fold_left_521 ()
liquidsoap-1 | #87 0x0000625b8f29f6f2 in camlClock_base__fun_1668 ()
liquidsoap-1 | #88 0x0000625b8f2fb678 in camlSwitch__fun_2614 ()
liquidsoap-1 | #89 0x0000625b8f2a3c3d in camlClock__fun_2098 ()
liquidsoap-1 | #90 0x0000625b8f70bb14 in camlStdlib__List__fold_left_521 ()
liquidsoap-1 | #91 0x0000625b8f2a3b25 in camlClock___self_sync_1009 ()
liquidsoap-1 | #92 0x0000625b8f2a3f0f in camlClock___after_tick_1209 ()
liquidsoap-1 | #93 0x0000625b8f2a4577 in camlClock___tick_1227 ()
liquidsoap-1 | #94 0x0000625b8f2a4cbb in camlClock__fun_2265 ()
liquidsoap-1 | #95 0x0000625b8f2a0ac3 in camlTutils__process_1199 ()
liquidsoap-1 | #96 0x0000625b8f6cbf25 in camlThread__fun_850 ()
liquidsoap-1 | #97 0x0000625b8f8d4ecd in caml_start_program ()
liquidsoap-1 | #98 0x0000625b8f8caf6d in caml_callback_exn ()
liquidsoap-1 | #99 0x0000625b8f89e3b0 in ?? ()
liquidsoap-1 | #100 0x00007615362ea349 in start (p=0x76152a3ff620) at src/thread/pthread_create.c:207
liquidsoap-1 | #101 0x00007615362ec95f in __clone () at src/thread/x86_64/clone.s:22
liquidsoap-1 | Backtrace stopped: frame did not save the PC
liquidsoap-1 |
liquidsoap-1 | Thread 3 (LWP 24 "liquidsoap"):
liquidsoap-1 | #0 __cp_end () at src/thread/x86_64/syscall_cp.s:29
liquidsoap-1 | #1 0x00007615362e9617 in __syscall_cp_c (nr=23, u=<optimized out>, v=<optimized out>, w=<optimized out>, x=<optimized out>, y=<optimized out>, z=0) at src/thread/pthread_cancel.c:33
liquidsoap-1 | #2 0x00007615362db605 in select (n=<optimized out>, rfds=<optimized out>, wfds=<optimized out>, efds=<optimized out>, tv=<optimized out>) at src/select/select.c:39
liquidsoap-1 | #3 0x0000625b8f89d6f4 in ?? ()
liquidsoap-1 | #4 0x00007615362ea349 in start (p=0x76152afff620) at src/thread/pthread_create.c:207
liquidsoap-1 | #5 0x00007615362ec95f in __clone () at src/thread/x86_64/clone.s:22
liquidsoap-1 | Backtrace stopped: frame did not save the PC
liquidsoap-1 |
liquidsoap-1 | Thread 2 (LWP 23 "liquidsoap"):
liquidsoap-1 | #0 __cp_end () at src/thread/x86_64/syscall_cp.s:29
liquidsoap-1 | #1 0x00007615362e9617 in __syscall_cp_c (nr=202, u=<optimized out>, v=<optimized out>, w=<optimized out>, x=<optimized out>, y=<optimized out>, z=0) at src/thread/pthread_cancel.c:33
liquidsoap-1 | #2 0x00007615362e8b49 in __futex4_cp (to=<optimized out>, val=2, op=128, addr=0x76152b379314) at src/thread/__timedwait.c:24
liquidsoap-1 | #3 __timedwait_cp (addr=addr@entry=0x76152b379314, val=val@entry=2, clk=clk@entry=0, at=at@entry=0x0, priv=128, priv@entry=1) at src/thread/__timedwait.c:52
liquidsoap-1 | #4 0x00007615362e99af in __pthread_cond_timedwait (c=0x761536330f90, m=0x761530da8d80, ts=0x0) at src/thread/pthread_cond_timedwait.c:100
liquidsoap-1 | #5 0x0000625b8f89eec4 in caml_condition_wait ()
liquidsoap-1 | #6 0x0000625b8f6c58e2 in camlDtools__Dtools_impl__fun_2862 ()
liquidsoap-1 | #7 0x0000625b8f6c577b in camlDtools__Dtools_impl__mutexify_1631 ()
liquidsoap-1 | #8 0x0000625b8f6c5874 in camlDtools__Dtools_impl__f_1643 ()
liquidsoap-1 | #9 0x0000625b8f6cbf25 in camlThread__fun_850 ()
liquidsoap-1 | #10 0x0000625b8f8d4ecd in caml_start_program ()
liquidsoap-1 | #11 0x0000625b8f8caf6d in caml_callback_exn ()
liquidsoap-1 | #12 0x0000625b8f89e3b0 in ?? ()
liquidsoap-1 | #13 0x00007615362ea349 in start (p=0x76152b379620) at src/thread/pthread_create.c:207
liquidsoap-1 | #14 0x00007615362ec95f in __clone () at src/thread/x86_64/clone.s:22
liquidsoap-1 | Backtrace stopped: frame did not save the PC
liquidsoap-1 |
liquidsoap-1 | Thread 1 (LWP 9 "liquidsoap"):
liquidsoap-1 | #0 __cp_end () at src/thread/x86_64/syscall_cp.s:29
liquidsoap-1 | #1 0x00007615362e9617 in __syscall_cp_c (nr=7, u=<optimized out>, v=<optimized out>, w=<optimized out>, x=<optimized out>, y=<optimized out>, z=0) at src/thread/pthread_cancel.c:33
liquidsoap-1 | #2 0x00007615362db4dc in poll (fds=<optimized out>, n=<optimized out>, timeout=<optimized out>) at src/select/poll.c:9
liquidsoap-1 | #3 0x0000625b8f89d061 in caml_poll ()
liquidsoap-1 | #4 0x0000625b8f69ef00 in camlDuppy__poll_590 ()
liquidsoap-1 | #5 0x0000625b8f2a0782 in camlTutils__wait_for_done_1139 ()
liquidsoap-1 | #6 0x0000625b8f2a066e in camlTutils__wait_done_1137 ()
liquidsoap-1 | #7 0x0000625b8f2a1f4f in camlTutils__main_1692 ()
liquidsoap-1 | #8 0x0000625b8f70ba40 in camlStdlib__List__iter_507 ()
liquidsoap-1 | #9 0x0000625b8f289eb8 in camlLifecycle__action_449 ()
liquidsoap-1 | #10 0x0000625b8f70ba40 in camlStdlib__List__iter_507 ()
liquidsoap-1 | #11 0x0000625b8f70ba40 in camlStdlib__List__iter_507 ()
liquidsoap-1 | #12 0x0000625b8f70ba40 in camlStdlib__List__iter_507 ()
liquidsoap-1 | #13 0x0000625b8eef720c in camlDune__exe__Liquidsoap__entry ()
liquidsoap-1 | #14 0x0000625b8eeec609 in caml_program ()
liquidsoap-1 | #15 0x0000625b8f8d4ecd in caml_start_program ()
liquidsoap-1 | #16 0x0000625b8f8b3bdc in caml_startup_common ()
liquidsoap-1 | #17 0x0000625b8f8b3c5b in caml_main ()
liquidsoap-1 | #18 0x0000625b8eee737c in main ()
liquidsoap-1 | A debugging session is active.
liquidsoap-1 |
liquidsoap-1 | Inferior 1 [process 9] will be killed.
Thanks for these reports, they are so useful! I believe I have found the issue with the new channel API in ocaml-ffmpeg
. I've got a fix deploying. I believe that this should take care of all 3 crashes you've reported so far.
Description
When sending data in a way showing below - LS 2.3.x restarts every 30-200 seconds.
Steps to reproduce
Expected behavior
LS shouldn't restart.
Liquidsoap version
Liquidsoap build config
Installation method
From official container image
Additional Info
No response