I have a playlist with request.dynamic under an mksafe, when the external 
process return is empty it keeps running in silence until it returns a file. It 
works as expected, but now for some reason in our production servers liquidsoap 
is freezing with no apparent reason and the only debug message I have is the 
liquidsoap log and gdb trace:

    2018/07/24 13:26:12 [request.dynamic_6626:5] Queue is empty!
    2018/07/24 13:26:12 [request.dynamic_6626:5] Failed to prepare track: no 
file.
    2018/07/24 13:26:12 [request.dynamic_6626:5] Queue is empty!
    2018/07/24 13:26:12 [request.dynamic_6626:5] Failed to prepare track: no 
file.
    2018/07/24 13:26:12 [request.dynamic_6626:5] Queue is empty!
    2018/07/24 13:26:12 [request.dynamic_6626:5] Failed to prepare track: no 
file.
    2018/07/24 13:26:12 [request.dynamic_6626:5] Queue is empty!
    2018/07/24 13:26:12 [request.dynamic_6626:5] Failed to prepare track: no 
file.
    2018/07/24 13:26:12 [request.dynamic_6626:5] Queue is empty!
    2018/07/24 13:26:12 [request.dynamic_6626:5] Failed to prepare track: no 
file.
    2018/07/24 13:26:12 [request.dynamic_6626:5] Queue is empty!
    2018/07/24 13:26:12 [request.dynamic_6626:5] Failed to prepare track: no 
file.
    2018/07/24 13:26:12 [request.dynamic_6626:5] Queue is empty!
    2018/07/24 13:26:12 [request.dynamic_6626:5] Failed to prepare track: no 
file.
    2018/07/24 13:26:12 [request.dynamic_6626:5] Queue is empty!
    2018/07/24 13:26:12 [request.dynamic_6626:5] Failed to prepare track: no 
file.

If I run the process which is used in the request.dynamic manually everything 
work as expected. I've also checked any process that perhaps could be locking 
liquidsoap... like the next-file process above.

The is the GDB trace:

    Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
    __lll_lock_wait () at ../sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:135
    135     ../sysdeps/unix/sysv/linux/x86_64/lowlevellock.S: No such file or 
directory.
    (gdb) thread apply all bt
    
    Thread 8 (Thread 0x7f22aa75d700 (LWP 15224)):
    #0  __lll_lock_wait () at 
../sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:135
    #1  0x00007f22b19a7dbd in __GI___pthread_mutex_lock (mutex=0x2b88ee0) at 
../nptl/pthread_mutex_lock.c:80
    #2  0x0000000000731b8d in caml_mutex_lock ()
    #3  0x00000000006540f7 in camlDtools__mutexify_1424 () at dtools.ml:766
    #4  0x000000000074a77e in caml_start_program ()
    #5  0x000000000073b48b in caml_minor_collection ()
    #6  0x00000000007393e9 in caml_garbage_collection ()
    #7  0x000000000074a59c in caml_call_gc ()
    #8  0x00000000006d9d04 in camlCamlinternalFormat__make_string_padding_62303 
()
    #9  0x0000000000650c4e in camlDtools__do_file_1436 () at dtools.ml:787
    #10 0x00000000006542c2 in camlDtools__print_1428 () at dtools.ml:791
    #11 0x000000000065414c in camlDtools__mutexify_1424 () at dtools.ml:768
    #12 0x00000000005ab625 in camlRequest_source__fun_1652 () at 
sources/request_source.ml:407
    #13 0x00000000005aac41 in camlRequest_source__fun_1487 () at 
sources/request_source.ml:81
    #14 0x00000000005aab1d in camlRequest_source__fun_1526 () at 
sources/request_source.ml:120
    #15 0x00000000006bd406 in camlList__find_1196 ()
    #16 0x000000000056ad56 in camlSwitch__fun_1919 () at operators/switch.ml:388
    #17 0x000000000056a876 in camlSwitch__fun_1702 () at operators/switch.ml:77
    #18 0x0000000000569654 in camlSwitch__reselect_1107 () at 
operators/switch.ml:131
    #19 0x00000000005e6a66 in camlSource__fun_1996 () at source.ml:524
    #20 0x0000000000588464 in camlAudio_to_stereo__fun_1136 () at 
conversions/audio_to_stereo.ml:47
    #21 0x00000000005e6a66 in camlSource__fun_1996 () at source.ml:524
    #22 0x000000000056714f in camlFade__fun_1472 () at operators/fade.ml:84
    #23 0x00000000005e6a66 in camlSource__fun_1996 () at source.ml:524
    #24 0x0000000000567863 in camlFade__fun_1511 () at operators/fade.ml:160
    #25 0x00000000005e6a66 in camlSource__fun_1996 () at source.ml:524
    #26 0x0000000000564bb2 in camlAdd__fun_1424 () at operators/add.ml:123
    #27 0x00000000006bcc64 in camlList__fold_left_1073 ()
    #28 0x000000000056568d in camlAdd__fun_1383 () at operators/add.ml:109
    #29 0x00000000005e6a66 in camlSource__fun_1996 () at source.ml:524
    #30 0x000000000056177c in camlCross__fun_1442 () at operators/cross.ml:237
    #31 0x00000000005e6a66 in camlSource__fun_1996 () at source.ml:524
    #32 0x0000000000547a23 in camlSetvol__fun_1252 () at operators/setvol.ml:38
    #33 0x00000000005e6a66 in camlSource__fun_1996 () at source.ml:524
    #34 0x0000000000581125 in camlOutput__fun_1551 () at outputs/output.ml:174
    #35 0x00000000005e2b51 in camlClock__fun_1739 () at clock.ml:160
    #36 0x00000000006bcc64 in camlList__fold_left_1073 ()
    #37 0x00000000005e38e1 in camlClock__fun_1704 () at clock.ml:158
    #38 0x00000000005e3301 in camlClock__loop_1359 () at clock.ml:374
    #39 0x00000000005e4182 in camlClock__fun_1855 () at clock.ml:377
    #40 0x00000000006067ce in camlTutils__fun_1485 () at tools/tutils.ml:136
    #41 0x00000000006af009 in camlThread__fun_1084 () at thread.ml:37
    #42 0x000000000074a77e in caml_start_program ()
    #43 0x00007f229801c570 in ?? ()
    #44 0x0000000000000000 in ?? ()
    
    Thread 7 (Thread 0x7f22ab195700 (LWP 15208)):
    #0  pthread_cond_wait@@GLIBC_2.3.2 () at 
../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
    #1  0x0000000000731d04 in caml_condition_wait ()
    #2  0x000000000060718a in camlTutils__fun_1602 () at tools/tutils.ml:314
    #3  0x000000000060758c in camlTutils__mutexify_1115 () at tools/tutils.ml:80
    #4  0x0000000000650b4d in camlDtools__thread_1319 () at dtools.ml:556
    #5  0x00000000006af009 in camlThread__fun_1084 () at thread.ml:37
    #6  0x000000000074a77e in caml_start_program ()
    #7  0x0000000002b14aa0 in ?? ()
    #8  0x0000000000000000 in ?? ()
    
    ---Type <return> to continue, or q <return> to quit---
    Thread 6 (Thread 0x7f22ab996700 (LWP 15207)):
    #0  __lll_lock_wait () at 
../sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:135
    #1  0x00007f22b19a7dbd in __GI___pthread_mutex_lock (mutex=0x2b88ee0) at 
../nptl/pthread_mutex_lock.c:80
    #2  0x0000000000731b8d in caml_mutex_lock ()
    #3  0x00000000006540f7 in camlDtools__mutexify_1424 () at dtools.ml:766
    #4  0x00000000005eaebc in camlServer__incoming_1417 () at 
tools/server.ml:362
    #5  0x000000000064935c in camlDuppy__fun_1968 () at duppy.ml:131
    #6  0x000000000064d535 in camlDuppy__exec_1107 () at duppy.ml:253
    #7  0x000000000064d751 in camlDuppy__queue_1113 () at duppy.ml:280
    #8  0x0000000000606e3f in camlTutils__queue_1261 () at tools/tutils.ml:215
    #9  0x00000000006067ce in camlTutils__fun_1485 () at tools/tutils.ml:136
    #10 0x00000000006af009 in camlThread__fun_1084 () at thread.ml:37
    #11 0x000000000074a77e in caml_start_program ()
    #12 0x0000000002b14860 in ?? ()
    #13 0x0000000000000000 in ?? ()
    
    Thread 5 (Thread 0x7f22ac197700 (LWP 15206)):
    #0  pthread_cond_wait@@GLIBC_2.3.2 () at 
../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
    #1  0x0000000000731d04 in caml_condition_wait ()
    #2  0x000000000064d88e in camlDuppy__queue_1113 () at duppy.ml:298
    #3  0x0000000000606e3f in camlTutils__queue_1261 () at tools/tutils.ml:215
    #4  0x00000000006067ce in camlTutils__fun_1485 () at tools/tutils.ml:136
    #5  0x00000000006af009 in camlThread__fun_1084 () at thread.ml:37
    #6  0x000000000074a77e in caml_start_program ()
    #7  0x0000000002b14620 in ?? ()
    #8  0x0000000000000000 in ?? ()
    
    Thread 4 (Thread 0x7f22ac998700 (LWP 15205)):
    #0  __lll_lock_wait () at 
../sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:135
    #1  0x00007f22b19a7dbd in __GI___pthread_mutex_lock (mutex=0x2bac9b0) at 
../nptl/pthread_mutex_lock.c:80
    #2  0x0000000000731b8d in caml_mutex_lock ()
    #3  0x00000000005ab96d in camlRequest_source__fun_1631 () at 
sources/request_source.ml:360
    #4  0x00000000005abc1c in camlRequest_source__fun_1618 () at 
sources/request_source.ml:339
    #5  0x000000000064b264 in camlDuppy__task_1139 () at duppy.ml:351
    #6  0x000000000064935c in camlDuppy__fun_1968 () at duppy.ml:131
    #7  0x000000000064d535 in camlDuppy__exec_1107 () at duppy.ml:253
    #8  0x000000000064d751 in camlDuppy__queue_1113 () at duppy.ml:280
    #9  0x0000000000606e82 in camlTutils__queue_1261 () at tools/tutils.ml:213
    #10 0x00000000006067ce in camlTutils__fun_1485 () at tools/tutils.ml:136
    #11 0x00000000006af009 in camlThread__fun_1084 () at thread.ml:37
    #12 0x000000000074a77e in caml_start_program ()
    #13 0x0000000002b143e0 in ?? ()
    #14 0x0000000000000000 in ?? ()
    
    Thread 3 (Thread 0x7f22ad199700 (LWP 15204)):
    #0  0x00007f22b12b75d3 in select () at ../sysdeps/unix/syscall-template.S:84
    #1  0x00000000007311cf in caml_thread_tick ()
    #2  0x00007f22b19a56ba in start_thread (arg=0x7f22ad199700) at 
pthread_create.c:333
    #3  0x00007f22b12c141d in clone () at 
../sysdeps/unix/sysv/linux/x86_64/clone.S:109
    
    Thread 2 (Thread 0x7f22ad99a700 (LWP 15203)):
    #0  0x00007f22b12b75d3 in select () at ../sysdeps/unix/syscall-template.S:84
    #1  0x0000000000734f52 in unix_select ()
    #2  0x000000000064ae09 in camlDuppy__f_1092 () at duppy.ml:178
    #3  0x000000000064d1b4 in camlDuppy__process_1083 () at duppy.ml:201
    #4  0x000000000064d800 in camlDuppy__queue_1113 () at duppy.ml:295
    #5  0x0000000000606e82 in camlTutils__queue_1261 () at tools/tutils.ml:213
    #6  0x00000000006067ce in camlTutils__fun_1485 () at tools/tutils.ml:136
    #7  0x00000000006af009 in camlThread__fun_1084 () at thread.ml:37
    ---Type <return> to continue, or q <return> to quit---
    #8  0x000000000074a77e in caml_start_program ()
    #9  0x0000000002bad130 in ?? ()
    #10 0x0000000000000000 in ?? ()
    
    Thread 1 (Thread 0x7f22b53b58c0 (LWP 15202)):
    #0  __lll_lock_wait () at 
../sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:135
    #1  0x00007f22b19a7dbd in __GI___pthread_mutex_lock (mutex=0x2b88ee0) at 
../nptl/pthread_mutex_lock.c:80
    #2  0x0000000000731b8d in caml_mutex_lock ()
    #3  0x00000000006540f7 in camlDtools__mutexify_1424 () at dtools.ml:766
    #4  0x00000000004e52d7 in camlMain__cleanup_threads_1297 () at main.ml:575
    #5  0x0000000000650960 in camlDtools__exec_1298 () at dtools.ml:501
    #6  0x00000000006bcbb1 in camlList__iter_1061 ()
    #7  0x0000000000650921 in camlDtools__exec_1298 () at dtools.ml:498
    #8  0x00000000006bcbb1 in camlList__iter_1061 ()
    #9  0x0000000000650921 in camlDtools__exec_1298 () at dtools.ml:498
    #10 0x00000000006bcbb1 in camlList__iter_1061 ()
    #11 0x0000000000650921 in camlDtools__exec_1298 () at dtools.ml:498
    #12 0x000000000065369c in camlDtools__main_1314 () at dtools.ml:570
    #13 0x00000000006537d8 in camlDtools__catch_1325 () at dtools.ml:574
    #14 0x00000000004e720d in camlMain__Make_1320 () at main.ml:636
    #15 0x00000000004e3f97 in camlRunner__entry ()
    #16 0x00000000004dccd9 in caml_program ()
    #17 0x000000000074a77e in caml_start_program ()
    #18 0x000000000074a93d in __libc_csu_init ()
    #19 0x00007f22b11da830 in __libc_start_main (main=0x737ea6 <main>, argc=2, 
argv=0x7fffc15fd858, init=<optimized out>, fini=<optimized out>, 
rtld_fini=<optimized out>, stack_end=0x7fffc15fd848)
        at ../csu/libc-start.c:291
    #20 0x00000000004db639 in _start ()
   

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/savonet/liquidsoap/issues/583
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Savonet-users mailing list
Savonet-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/savonet-users

Reply via email to