On Tue, Feb 18, 2014 at 04:13:19PM -0700, Eric Blake wrote: > On 02/18/2014 07:02 AM, Pasquale Dir wrote: > > I am using the java api bindings. > > > > I'd like to set a connection timeout on the Connect class as sometimes it > > takes just too long. > > Which particular API takes too long? There are some APIs like migration > that take a long time, but where you can use another thread on the same > connection object (or even a separate connection object) to track the > status of it. Newer APIs such as block-pull were designed to start an > asynchronous job and return immediately, where you can then track job > status and/or abort the job early via separate API calls. We already > need to enhance our job control APIs to support parallel jobs (qemu just > added the concept of a block-backup for image fleecing, and there is > some desire to be able to fleece images from multiple points in time > which would require multiple jobs) - as part of enhancing job support > there, we might also be able to enhance migration to have a asynchronous > mode instead of blocking for the entire operation. We also want to add > job control for various storage volume operations, which are currently > long-running but can't be interrupted easily. > > Most APIs return as fast as possible after taking effect (although on a > heavily loaded machine, that can take a while). Depending on the > command, aborting early because of a timeout may actually be worse than > using a different thread to track progress, unless the command is > already associated with job control. FWIW, for the initial 'virConnectOpen' API I think it probably would be worthwhile us supporting a standardized "timeout" URI parameter. That way if the remote service doesn't respond at all for some reason users can have fine control. That's a sufficiently targetted use case that it'd be easy to do, compared to timeouts for arbitrary APIs. 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 :| -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list