Github user enixon commented on the issue:
https://github.com/apache/zookeeper/pull/120
@eribeiro Thanks for checking the diff!
The `initialize` file will not be required for standard restarts. The
expected pattern is to create one on each host just before ensemble creation
(when the file system is trusted to be the most stable) and ZooKeeper will
clean it up once the server has inspected the file system and found no data.
Restarting servers should see the data already present and not require the file
(or not see the data and require _not_ seeing the file). New servers expanding
an existing ensemble probably shouldn't be granted voting privileges until they
get a copy of the data. Admins should have scripts available to handle ensemble
creation and this represents a minimal extension of that.
I would be hesitant to rely on the existence of any file to provide
guarantees during regular execution and that precludes the use of `recover`
file pattern. The category of events that motivate this pull request
necessarily include those that would remove any pre-staged `recover` file. I'm
imagining a scenario where your server dies and file system gets wiped then
automated restart scripts spring into action to bring the server back up.
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---