{"action":"created","issue":{"url":"https://api.github.com/repos/savonet/liquidsoap/issues/609","repository_url":"https://api.github.com/repos/savonet/liquidsoap","labels_url":"https://api.github.com/repos/savonet/liquidsoap/issues/609/labels{/name}","comments_url":"https://api.github.com/repos/savonet/liquidsoap/issues/609/comments","events_url":"https://api.github.com/repos/savonet/liquidsoap/issues/609/events","html_url":"https://github.com/savonet/liquidsoap/issues/609","id":352849731,"node_id":"MDU6SXNzdWUzNTI4NDk3MzE=","number":609,"title":"Liquidsoap freezes on a complex script","user":{"login":"gilou","id":2179770,"node_id":"MDQ6VXNlcjIxNzk3NzA=","avatar_url":"https://avatars0.githubusercontent.com/u/2179770?v=4","gravatar_id":"","url":"https://api.github.com/users/gilou","html_url":"https://github.com/gilou","followers_url":"https://api.github.com/users/gilou/followers","following_url":"https://api.github.com/users/gilou/following{/other_user}","gists_url":"https://api.github.com/users/gilou/gists{/gist_id}","starred_url":"https://api.github.com/users/gilou/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gilou/subscriptions","organizations_url":"https://api.github.com/users/gilou/orgs","repos_url":"https://api.github.com/users/gilou/repos","events_url":"https://api.github.com/users/gilou/events{/privacy}","received_events_url":"https://api.github.com/users/gilou/received_events","type":"User","site_admin":false},"labels":[{"id":99524082,"node_id":"MDU6TGFiZWw5OTUyNDA4Mg==","url":"https://api.github.com/repos/savonet/liquidsoap/labels/bug","name":"bug","color":"eb6420","default":true}],"state":"open","locked":false,"assignee":{"login":"toots","id":871060,"node_id":"MDQ6VXNlcjg3MTA2MA==","avatar_url":"https://avatars1.githubusercontent.com/u/871060?v=4","gravatar_id":"","url":"https://api.github.com/users/toots","html_url":"https://github.com/toots","followers_url":"https://api.github.com/users/toots/followers","following_url":"https://api.github.com/users/toots/following{/other_user}","gists_url":"https://api.github.com/users/toots/gists{/gist_id}","starred_url":"https://api.github.com/users/toots/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/toots/subscriptions","organizations_url":"https://api.github.com/users/toots/orgs","repos_url":"https://api.github.com/users/toots/repos","events_url":"https://api.github.com/users/toots/events{/privacy}","received_events_url":"https://api.github.com/users/toots/received_events","type":"User","site_admin":false},"assignees":[{"login":"toots","id":871060,"node_id":"MDQ6VXNlcjg3MTA2MA==","avatar_url":"https://avatars1.githubusercontent.com/u/871060?v=4","gravatar_id":"","url":"https://api.github.com/users/toots","html_url":"https://github.com/toots","followers_url":"https://api.github.com/users/toots/followers","following_url":"https://api.github.com/users/toots/following{/other_user}","gists_url":"https://api.github.com/users/toots/gists{/gist_id}","starred_url":"https://api.github.com/users/toots/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/toots/subscriptions","organizations_url":"https://api.github.com/users/toots/orgs","repos_url":"https://api.github.com/users/toots/repos","events_url":"https://api.github.com/users/toots/events{/privacy}","received_events_url":"https://api.github.com/users/toots/received_events","type":"User","site_admin":false}],"milestone":null,"comments":19,"created_at":"2018-08-22T08:21:40Z","updated_at":"2018-08-28T13:44:18Z","closed_at":null,"author_association":"CONTRIBUTOR","body":"Hi,\r\nSo running most components from master (cry, dtools, duppy, faad, mad, mm). Thing is, that script is quite complex, but if I remove each part, the bug is really hard to reproduce... All parts have been tested stand alone though.\r\n\r\nThe script combines:\r\n\r\n- playlist()s with a custom check_next function to avoid repetitions\r\n- annotate protocol to set liq_replaygain outside of liq (to avoid cpu hogging...)\r\n- amplify\r\n- classical fallback/switch\r\n- smart_crossfade\r\n- on_track to store played tracks \r\n- input.external using cat on a fifo\r\n- output.external using stereotool, itself outputting to the fifo\r\n- insert_metadata to patch metadata through to icecast\r\n- output.icecast using %mp3(bitrate=256)\r\n- a ladspa \"simple\" DSP\r\n\r\nat the moment I had it freeze, it was outputting 3 streams to icecast:\r\n- the \"bypass\", basically the smart_crossfade output\r\n- the same processed by the ladspa processor\r\n- the same processed and piped through stereotool\r\n\r\nThis is really frustrating, and I'm now back to investigating this again, trying to strip all parts... I'm dumping here as a \"reference\" until I can narrow it down.\r\nThe \"freeze\" means stdout is stuck, the server doesn't answer the socket. The process is alive, but seems stuck polling for something, doesn't respond to QUIT/^C.\r\n\r\nScript is run using liquidsoap -v full.liq, and is here with supporting functions.liq: https://gist.github.com/gilou/43133d2619202791e153211471aff6a1\r\n[liq.log](https://github.com/savonet/liquidsoap/files/2309319/liq.log) contains the end of the log, timestamp is hours before I killed it.\r\n\r\n[bt.txt](https://github.com/savonet/liquidsoap/files/2309321/bt.txt) is the backtrace from the core I got using kill -ABORT on it\r\n\r\nIt's running on a cheap VPS, using Ubuntu 18.04 on KVM. On this version it crashes in less than an hour.\r\n\r\n\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/savonet/liquidsoap/issues/comments/416589325","html_url":"https://github.com/savonet/liquidsoap/issues/609#issuecomment-416589325","issue_url":"https://api.github.com/repos/savonet/liquidsoap/issues/609","id":416589325,"node_id":"MDEyOklzc3VlQ29tbWVudDQxNjU4OTMyNQ==","user":{"login":"toots","id":871060,"node_id":"MDQ6VXNlcjg3MTA2MA==","avatar_url":"https://avatars1.githubusercontent.com/u/871060?v=4","gravatar_id":"","url":"https://api.github.com/users/toots","html_url":"https://github.com/toots","followers_url":"https://api.github.com/users/toots/followers","following_url":"https://api.github.com/users/toots/following{/other_user}","gists_url":"https://api.github.com/users/toots/gists{/gist_id}","starred_url":"https://api.github.com/users/toots/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/toots/subscriptions","organizations_url":"https://api.github.com/users/toots/orgs","repos_url":"https://api.github.com/users/toots/repos","events_url":"https://api.github.com/users/toots/events{/privacy}","received_events_url":"https://api.github.com/users/toots/received_events","type":"User","site_admin":false},"created_at":"2018-08-28T13:44:18Z","updated_at":"2018-08-28T13:44:18Z","author_association":"MEMBER","body":"Should be:\r\n```\r\n2018/08/28 08:03:43 [main:3] Liquidsoap 1.3.3+scm (git@github.com:savonet/liquidsoap.git@f9970afe6a89a38924084b1439c65685b6a65062:20180826:143248)\r\n```\r\n;-)"}}
{"actor":{"display_login":"toots"}}