
On Tue, Jul 03, 2007 at 04:14:30PM +0100, Richard W.M. Jones wrote:
I'm not quite sure what the problem is (although the problem is in xm_internal), but when you use xm_internal over remote, it sometimes doesn't initialize its internal cache correctly, so it thinks that there are no inactive domains.
The fix is a one-liner which I hit upon by accident -- I don't really understand why it works:
Very peculiar - the nconnections stuff is incremented / decremented by the xenXMOpen & xenXMClose methods. So the change you show below should be identical to previous behaviour. Is something calling the xenXMClose method too many times maybe ? I guess some judicious use of syslog would show it up
@@ -489,7 +487,7 @@ xenXMOpen (virConnectPtr conn ATTRIBUTE_UNUSED, const char *name ATTRIBUTE_UNUSED, int flags ATTRIBUTE_UNUSED) { - if (nconnections == 0) { + if (configCache == NULL) { configCache = virHashCreate(50); if (!configCache) return (-1);
But the attached patch also adds proper error messages to xenXMConfigCacheRefresh too.
Dan. -- |=- Red Hat, Engineering, Emerging Technologies, Boston. +1 978 392 2496 -=| |=- Perl modules: http://search.cpan.org/~danberr/ -=| |=- Projects: http://freshmeat.net/~danielpb/ -=| |=- GnuPG: 7D3B9505 F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 -=|