First key in newEnsembleFromRecovery doesn't have to exist in the read metadata. For example, if a bookie fails during the recovery process.
I would exit screaming if there is any ensemble in newEnsembleFromRecovery before lastEnsembleKey. That would mean that, during the recovery process, something updated the last ensemble in ledger, yet didn't close the ledger. The only thing that can do that is a writing client. A writing client should *never* do this, as they should see that they are being fenced, and bail out. I'll add more sanity checks here though. [ Full content available at: https://github.com/apache/bookkeeper/pull/1621 ] This message was relayed via gitbox.apache.org for [email protected]
