Skip to content

MsgFlo coordinator crashes if ignored participant doesn't send discovery message #133

Description

@bergie

With MsgFlo coordinator we have two ways to have processes appear in the graph:

  • Started by MsgFlo coordinator itself
  • --ignored and assumed to be running somewhere and sending its own discovery messages

At start-up MsgFlo waits until each participant has been discovered and its connections set up correctly. Like with #94 if one participant doesn't send a discovery message in this behavior, MsgFlo coordinator fails with an error:

May 12 01:42:30 c-flo node[6216]: Error: Waiting for participant siri timed out
May 12 01:42:30 c-flo node[6216]:     at Timeout._onTimeout (/opt/c-flo/node_modules/msgflo/src/coordinator.coffee:74:21)
May 12 01:42:30 c-flo node[6216]:     at ontimeout (timers.js:380:14)

Instead, MsgFlo should be aware of what nodes/edges in the graph are "real", and what are "pending", and allow itself to start promptly, and then bind queues as participants appear (#127).

This is especially critical for setups like c-flo where many participants do get shut down at night.

Initially reported at c-base/mqttwebview#2

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions