nickva opened a new pull request, #5552:
URL: https://github.com/apache/couchdb/pull/5552
Improve cluster startup behavior as three separate commits:
* Sometimes if `mem3` is not initialized yet but `rexi` could start calling
us, and so we have to handle `mem3_shards` ets tables not being created yet.
Previously, we handled the case of missing ets tables by catching
`error:badarg` in places like `for_db/2`, but then forgot to handle it the
lower level `maybe_spawn_shard_writer/3` function, so call was still crashing
and making a mess in the logs. This is more apparent on startup with nodes
being upgraded in a busy cluster.
* Improve mem3 supervisor. There was a question there left from years back
if order is important, it turns out it is. So fix the order. See the reasoning
in the commit message. Also since order is important we want to use a
[rest_for_one]( https://www.erlang.org/doc/system/sup_princ.html#rest_for_one)
supervisor not a `one_for_one`.
* Cleanup node startup logging a bit. We were emitting duplicate logs and
also at level that's a bit higher than needed.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]