[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

[Linux-cluster] Changes in libccs behaviour (PLEASE READ!)

Hi guys,

I just landed the last bits in libccs to support both xpath lite and full xpath queries. With this new code, a couple of things need to be checked across all applications using libccs.

Relevant changes:

ccs_connect() used to return only when cluster is quorated.
This is not the case anymore. ccs_connect will return as soon as it can connect to aisexec and init properly (or fail).
You can use cman_is_quorate from libcman for the same feature.

ccs_force_connect() used to take a cluster name in input. The API is still the same, but the cluster name is now ignored (it wasn't in used before either).

in order to use xpath lite or full xpath, set fullxpath (int from ccs.h) to either 0 (xpath lite and default) or 1 (full xpath) before invoking ccs_connect or ccs_force_connect. In order to switch from one mode to another, you have to disconnect and connect again.

WARNING: use full xpath only if you cannot live without. It is slow and it's a memory eating piece of code.

WARNING2: the library is not thread safe (yet?). So far none of our callers really need this feature. Please let me know if i overlooked.

Please review your ccs init calls around and take appropriate actions.

ccs_test(8): not fully completed yet (another email will follow).

Feel free to contact me if you have any questions


PS hint: ccs_force_connect() has a blocking option that will idle loop as long as required and will exit the loop when cman is available for queries. This could replace several hand made loops on ccs_connect i have seen around.

I'm going to make him an offer he can't refuse.

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]