Hi,
Currently librados blocks all calls when something is not working inside
the Ceph cluster.
This is common practice for fopen(), fread() and fwrite(), but I'm
running into a use-case where I think the rados_connect() should not
block indefinitely.
The use-case here is the RBD storage pool in libvirt. When for whatever
reason libvirt is not able to connect to the Ceph cluster libvirt will
simply block and wait on rados_connect() to complete.
This causes libvirt not being able to report new statistics about the
RBD storage pool, which causes issues again for the applications using it.
Would it be an idea that you can configure librados not to block
indefinitely and return for example ETIMEDOUT?
By default librados could stay blocking like it's now so nothing changes
for existing users.
--
Wido den Hollander
42on B.V.
Phone: +31 (0)20 700 9902
Skype: contact42on
--
To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html