On 09/06/2015 17:33, John Ferlan wrote:
I still think I need a tweak on what I posted as an update - the
libvirtd restart path is always a bit tricky. The 'pooltype' isn't
filled in at XML processing time and virStorageTranslateDiskSourcePool
is only called after XML processing (sigh), so relying on it won't
work.
Working to figure out something generic and will repost my patch.
John,
I got stuck on this and would appreciate some advice to deal with the
restart. With a revised patch it's still impossible to get libvirtd
reconnecting to VMs using RBD source pool, because the network pool
is never active so early.
It goes like this :
+ qemuProcessReconnect
++ virStorageTranslateDiskSourcePool
+++ virStoragePoolIsActive
++++ storagePoolIsActive = 0
++ goto error
++ qemuProcessStop
But seconds after it's seen as active.
Isn't it a bad idea to consider a failure at translating source pool
as an error in this code path? It looks quite dangerous whatever
the pool protocol may be. After all the domain is still happily
running anyway.
Cheers
--
Thibault