[libvirt] [PATCH 3/5] network: read status from old location and move to new

Daniel P. Berrange berrange at redhat.com
Tue Apr 15 14:35:07 UTC 2014


On Tue, Apr 15, 2014 at 05:31:17PM +0300, Laine Stump wrote:
> On 04/15/2014 03:27 PM, John Ferlan wrote:
> >
> > On 04/10/2014 09:19 AM, Laine Stump wrote:
> >> This eliminates problems with upgrading from older libvirt that stores
> >> network status in /var/lib/libvirt/network to newer libvirt that
> >> stores it in /var/run/libvirt/network, by also reading any status
> >> files from the old location, saving them to the new location, and
> >> removing them from the old location.
> >>
> >> This will not help those trying to downgrade, but in practice this
> >> will only be problematic in two cases
> >>
> >> 1) If there are networks with network-wide bandwidth limits configured
> >>    and in use by a guest during a downgrade to "old" libvirt. In this
> >>    case, the class ID's used for that network's tc rules, as well as
> >>    the currently in-use bandwidth "floor" will be forgotten
> >>
> >> 2) If someone does this: 1) upgrade, 2) downgrade, 3) modify running
> >>    state of network (e.g. add a static dhcp host, etc), 4) upgrade. In
> >>    this case, the modifications to the running network will be lost
> >>    (but not any persistent changes to the network's config).
> >>
> >> I have an idea of how to make these cases work properly as well
> >> (involving symlinks in /var/lib pointing to /var/run) but want to
> >> avoid keeping such an ugly legacy around (forever) unlesss others
> >> think it is absolutely necessary to support flawless downgrades across
> >> this line *while remaining in service*.
> > I would have to believe/think the downgrade issue has happened before
> > with some other change to config or status file locations.
> 
> 
> Thinking about it, there was one similar situation - when sessionmode
> libvirtd switched from using gnome2 config directories to gnome3. I
> don't recall if anything special was done in that case, or if it was
> just considered not important because ... session mode.

We migrated the locations - see migrateProfile() in daemon/libvirtd.c


Regards,
Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|




More information about the libvir-list mailing list