Are there any couchbase errors that would require the app to call bucket disconnect and reconnect (openBucket) or will couchbase client handles all the re-connection attempt (due to couchbase error) after a successful initial openBucket?
Also, it looks like that couchbase client is not calling bucket operation callback for outstanding couchbase request when bucket disconnect is called. Is that a bug or expected behavior?
The client should deal with nearly all kinds of errors on its own without any need to disconnect and reconnect. The only event I can think of where this might not be the case is if every node fails, and you restart the cluster in a new place (though this barely counts as a real scenario).
The client should be dispatching callbacks for operations which are cancelled due to disconnecting the bucket. This can take a short period of time in some cases due to scheduling within the core, but should definitely be happening. Feel free to file an issue if you are encountering any troubles with this behaviour.
Thanks @brett19 for the confirmation. It looks like that outstanding connection did not get callback on bucket disconnect. I will fill a defect on that.