I'm guessing that the reason for this lock is to prevent write completion events from contending on the LedgerHandle object with write initiation? Is that contention really enough of a problem for this to be a measurable win? If so, I think that the state protected by this lock (changingEnsemble, delayedWriteFailedBookies) should be moved into an actual object with descriptive methods. As it is, it's a bit tough to infer the update rules.
[ Full content available at: https://github.com/apache/bookkeeper/pull/1646 ] This message was relayed via gitbox.apache.org for [email protected]
