When CuratorFramework's methods start and close shoud be called?

5.3k views Asked by At

According to documentation

CuratorFramework instances are fully thread-safe. You should share one CuratorFramework per ZooKeeper cluster in your application.

It also states that the method start should be called before any other operations can be performed. Should this method be called before every operation or calling it once after initialization is enough?

2

There are 2 answers

2
Randgalt On BEST ANSWER

Call start once after creating the CuratorFramework instance. So, the startup is:

  • Create the CuratorFramework via one of the factory methods
  • Call start() on the instance
  • Run your application using the single CuratorFramework instance as needed
  • At the end of your application, call close() on the instance

NOTE: I'm the main author of Curator

0
jny On

The initial tests showed, that start should be called only once per created client. Calling it multiple times caused IllegalStateException.