[libvirt] ruby-libvirt issue

Daniel P. Berrange berrange at redhat.com
Thu Aug 5 11:35:03 UTC 2010


On Thu, Jul 29, 2010 at 02:32:06PM -0400, Chris Lalancette wrote:
> On 07/29/10 - 07:41:26PM, Jaromír Červenka wrote:
> > Hi,
> > 
> > i think that I know where is the problem. My "messages" log says:
> > 
> > Jul 29 19:36:41 divinus libvirtd: 19:36:41.032: error :
> > qemudDispatchServer:1315 : Too many active clients (100), dropping
> > connection
> > 
> > It looks like that ruby-libvirt doesn't closing connection, when it's
> > running under passenger/rails/apache. The "100" is my defined number in
> > /etc/libvirt/libvirtd.conf
> 
> Ah, OK.  So then the question becomes whether the problem is in the ruby
> bindings not releasing the object in certain circumstances, or in rails
> holding onto the object too long.  Unfortunately I'm not really that familiar
> with rails or passenger, so I'm not entirely sure how to figure out where the
> problem is.
> 
> I'll see if I can do a bit of testing and look at object lifetimes from the
> point-of-view of ruby-libvirt to try and eliminate that from the equation.

Does ruby-libvirt rely on garbage collection to close the
connection, or is there an explicit 'close' method on the
virConnect binding. It is generally not workable to rely
on garbage collection for closing connections because of
the unpredictability of  when that may run.

Daniel
-- 
|: Red Hat, Engineering, London    -o-   http://people.redhat.com/berrange/ :|
|: http://libvirt.org -o- http://virt-manager.org -o- http://deltacloud.org :|
|: http://autobuild.org        -o-         http://search.cpan.org/~danberr/ :|
|: GnuPG: 7D3B9505  -o-   F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|




More information about the libvir-list mailing list