firefly icon indicating copy to clipboard operation
firefly copied to clipboard

Firefly crashes when the configured connector is not available on start up but not when running

Open Chengxuan opened this issue 1 year ago • 2 comments

There are two aspects of this:

  1. we should have consistent behaviour between start-up time and running time. And preferably, firefly shouldn't crash due to one dependency throwing an error as other things could be in a usable state
  2. better error surfacing for the errors

Chengxuan avatar Apr 17 '23 23:04 Chengxuan

Firefly crashes when the configured connector is not available on start up but not when running

This is true, and is working as designed. Now, we may want to change that design. The intention was that if FireFly wasn't configured correctly it would not start, forcing someone to intervene and reconfigure it correctly. As opposed to, if it was configured correctly and had been running for some time, but the connector suddenly became unavailable, it should not crash, but simply wait until it comes back. On startup, there is no way to know the difference between an improper config, or a connector that just isn't there temporarily, so we've taken the "fail fast" approach for now.

nguyer avatar Apr 18 '23 12:04 nguyer

Thanks for providing the background. It does make sense for users to be aware of faulty configuration at an early stage so they can act on it.

I'm not sure whether multi-namespace support and dynamic configuration reload were factored in for this design. It feels the additions of those two critical features are worth us rethinking on that decision so that we have better isolations logic between namespaces (e.g. I don't have to fix all namespaces just to start Firefly UI to use the only one I care).

Chengxuan avatar Apr 18 '23 12:04 Chengxuan