-
Notifications
You must be signed in to change notification settings - Fork 103
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
StaticDisplayConfig: unrecognized content
prevents Mir starting up
#3628
Comments
Small note: When the YAML file is empty, we don't write anything to it, we just throw |
OK looks like |
Should we? That is contrary to our established strategy of reporting configuration errors noisily so that they get fixed. The effect of this would be that setting an invalid display configuration gives unclear feedback: it leaves the system in an apparently working state. It may not be obvious that something is wrong. |
I can get convinced that we should only treat empty as if the file wasn't there… OTOH, there are cases where starting up with a, possibly, not optimal configuration can be considered better than not starting at all (any kind of kiosk / point of sale / digital signage comes to mind). If we report an error, it's then up to the operator to monitor the logs for problems. We could also use the diagnostic feature to (for a time?) signify a problem to whoever's at the display. |
That I like (for Frame). That could be generalised to any startup/initialization error reporting: we would just need to reexec with a "safe" config and error text.
Me too, but I'd like to know how we get to that condition |
After a bit of discussion elsewhere I have a theory about what is happening. It sounds like an error in the configuration reloading code. I found and fixed this in the The problem is that Mir attempts to read a file when it is created, not when closed after write. At that point the file will appear empty. |
In the case this issue stemmed from, the file did indeed end up empty somewhere between the equivalent of
|
While I'm thinking about it: Here's the fix I mention: |
Closing in favour of #3637 |
When the display file is not a valid yaml, or does not have the right contents, we should still start up with the default configs.
Not rewrite the file, like we do when empty - but still start up.
The text was updated successfully, but these errors were encountered: