There are a few problems with the current librados api (at least the C bindings). The main one is that there is an implicit assumption that you can only interact with a single cluster from the same process. rados_initalize() takes argc/argv, allowing you to pass in configuration options and/or a config file location, and it is assume that is the cluster that is referenced when you open up a pool. Beyond that, there are some cosmetic issues with function naming, argument ordering, and so forth. If we're going to fix the main problem and break compatibility, we should take the opportunity to clean up the rest. And make the change sooner rather than later to minimize the pain. See http://tracker.newdream.net/issues/801 and the librados_api branch in ceph.git. In order to make it really work the way it looks, though, we need to identiy and eliminate as many remaining instances of common static variables. Currently, for example, the configuration state is static (in this case, shared between clusters). For things like debugging/logging, that's fine, but for other options it can be problematic. Are there other problems that people have run into? How important are these issues? At the very lease we can stick this stuff on the long term roadmap. sage -- 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