Hi Matthieu, Looks like you setting up the configuration and adding the instance to Helix when the node starts?. Any reason why instances cannot be added to cluster upfront using Helix cli. This way the only thing needed by participant while connecting is instance id.
If your application does not allow that, then you should able to check for existing instance before creating new one. We are adding new apis to atomically create if not exists cluster, resource and participant. thanks, Kishore G On Wed, Oct 2, 2013 at 1:49 AM, Matthieu Morel <[email protected]> wrote: > Hi, > > For a participant to register with Helix, we setup a configuration, then > add an instance to Helix with "HelixAdmin#addInstance(clusterName, config);" > > When a given participant fails / stops and is restarted, it will reuse the > same Helix configuration that the failed/stopped instance it replaces (it > reads the same config file and runs on the same host etc...). However since > Helix kept the previous instance and configuration, it will reject this one > (throwing a runtime HelixException). > > One way to overcome this issue is to capture the exception, drop the > instance from Helix (HelixAdmin#dropInstance) and add it again. I'm not > sure that's a very appropriate solution though, and was wondering whether > there was a better way? > > Thanks! > > Matthieu > >
