Skip to content
GitLab
Projects Groups Topics Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Register
  • Sign in
  • engine engine
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributor statistics
    • Graph
    • Compare revisions
  • Issues 27
    • Issues 27
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Container Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • AURAAURA
  • engineengine
  • Issues
  • #76
Closed
Open
Issue created May 05, 2021 by David Trattnig@davidOwner

Disabled Engine heartbeat results in broken pipe

When the Engine heartbeat is disabled i.e. Engine is not requesting the Liquidsoap status once a second, the connection to Liquidsoap gets stale quickly. This results in a BrokenPipeError.

It probably makes sense to fix this as part of the Liquidsoap Client Module Refactoring (#65 (closed) ). This module needs to be refactored soonish, as it's the main Comba leftover.

Meanwhile enabling heartbeat monitoring for all the default configs.

2021-05-04 16:44:58,969:AuraEngine:ERROR - Detected a problem with liquidsoap connection while sending: mixer.status 3
. Reason: [Errno 32] Broken pipe! Trying to reconnect. - [client.py:217-command()]
Exception in thread TIMESLOT:do_end_timeslot:1620139498.5:
Traceback (most recent call last):
  File "/usr/lib/python3.8/threading.py", line 932, in _bootstrap_inner
    self.run()
  File "/usr/lib/python3.8/threading.py", line 1254, in run
    self.function(*self.args, **self.kwargs)
  File "/home/david/Code/aura/engine/src/control.py", line 289, in wrapper_func
    if param: self.func(param,)
  File "/home/david/Code/aura/engine/src/scheduling/scheduler.py", line 448, in do_end_timeslot
    self.engine.player.stop(recent_entry, TransitionType.FADE)
  File "/home/david/Code/aura/engine/src/engine.py", line 364, in stop
    self.mixer.fade_out(entry.channel)
  File "/home/david/Code/aura/engine/src/mixer.py", line 395, in fade_out
    current_volume = self.channel_current_volume(channel)
  File "/home/david/Code/aura/engine/src/mixer.py", line 269, in channel_current_volume
    status = self.channel_status(channel_number)
  File "/home/david/Code/aura/engine/src/mixer.py", line 210, in channel_status
    return self.connector.send_lqc_command(self.mixer_id.value, "mixer_status", channel_number)
  File "/home/david/Code/aura/engine/src/client/connector.py", line 101, in send_lqc_command
    result = func(str(namespace), *args)
  File "/home/david/Code/aura/engine/src/client/playerclient.py", line 69, in mixer_status
    self.command(mixer_id, "status", str(pos))
  File "/home/david/Code/aura/engine/src/client/client.py", line 206, in command
    self.socket.sendall(message.encode())
BrokenPipeError: [Errno 32] Broken pipe
Assignee
Assign to
Time tracking