[SRU] ovsdb-server.service needs a depedency on local-fs.target
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
openvswitch (Ubuntu) |
Fix Released
|
Undecided
|
Chris MacNaughton | ||
Focal |
Fix Released
|
Undecided
|
Unassigned | ||
Groovy |
Fix Released
|
Undecided
|
Chris MacNaughton |
Bug Description
[Impact]
When /var is on a separate filesystem (ZFS), ovsdb-server crashes on start if it is triggered before that filesystem is ready.
I recently just did a from-scratch install of Ubuntu 20.04 server edition and ran into issues with Open vSwitch and ZFS. I attempted to use ZFS for all of /var only to find that ovsdb-server pre-empted my ZFS /var mount which caused it to crash when trying to read its configuration DB at/var/
I then found a blog post on Open Cloud Blog (https:/
The "After" line /lib/systemd/
[Unit]
Description
After=
Before=
PartOf=
DefaultDepe
[Service]
LimitNOFILE
Type=forking
Restart=
Environment
ExecStart=
start $OPTIONS
ExecStop=
ExecReload=
RuntimeDire
RuntimeDire
[Test Case]
Install ZFS on a machine, configure /var to be mounted on ZFS, install Open vSwitch, restart the server. The OpenvSwitch process should wait on the ZFS mount to start.
[Regression Potential]
Low. The only change in this is to defer the ovsdb-server startup until after the local-fs Systemd target has started. The only risk I can forsee is if the local-fs target didn't come up.
[racb] Service dependency and thus ordering is being adjusted, so if there is a regression it might manifest in users with unusual or different service installations from the norm, or in users with customised service configurations. There might also be unrelated latent issues or race conditions revealed as a result of changing the order of service startups.
[Discussion]
Related branches
- James Page: Approve
-
Diff: 28 lines (+9/-1)2 files modifieddebian/changelog (+8/-0)
debian/openvswitch-switch.ovsdb-server.service (+1/-1)
- James Page: Pending requested
-
Diff: 32 lines (+8/-2)2 files modifieddebian/changelog (+7/-1)
debian/openvswitch-switch.ovsdb-server.service (+1/-1)
Changed in openvswitch (Ubuntu): | |
status: | New → In Progress |
assignee: | nobody → Chris MacNaughton (chris.macnaughton) |
summary: |
- ovsdb-server.service needs a depedency on local-fs.target + [SRU] ovsdb-server.service needs a depedency on local-fs.target |
description: | updated |
description: | updated |
tags: |
added: verification-done removed: verification-needed |
We are affected by this bug, too.
A more stable workaround than modifying /lib/systemd/ system/ ovsdb-server. service might be adding an overrides file (so that the fix will survive package upgrades).
On our affected systems, we added a file /etc/systemd/ system/ ovsdb-server. service. d/after- local-fs. conf with the following content:
[Unit] fs.target
After=local-