the zookeeper_init document needs to be clarified on two points:
1) that when it returns the client may/maynot have an active session on the server. init call is asyncronous - notification comes back through the watcher when the session is established.
2) this section seems to be wrong. If a client id is invalid (say you pass clientid 1 on a new zk instance) a new session is not created, rather the client's zk handle (when later used) complains that the session is expired.
* \param clientid the id of a previously established session that this
* client will be reconnecting to. Pass 0 if not reconnecting to a previous
* session. If the session timed out or the id is invalid, a new
* session will be automatically generated. Clients should check the actual
* session id by calling \ref zoo_client_id.
Notice that the server message (console) is also misleading - it seems to indicate that the session was reestablished, but in reality is has not. A more clear log message on the server would help here.
Log in to post a comment.