in clients/zk_client/zk_client.go [221:237]
func (zc *ShenYuZkClient) ensureName(name string) error {
path := zc.Zcp.ZkRoot + "/" + name
logger.Infof("ensureName check, path is %v: ->", path)
exists, _, err := zc.ZkClient.Exists(path) //avoid create error
logger.Infof("ensureName check result is %v: ->", exists)
if err != nil {
return err
}
if !exists {
_, err = zc.ZkClient.Create(path, []byte(""), 0, zk.WorldACL(zk.PermAll))
if err != nil && err == zk.ErrNodeExists {
logger.Infof("ensureName inner create success")
return nil
}
}
return nil
}