I repro'd on a checkout from when this was reported, and it looks like a legit bug and potentially serious. However, I haven't been able to get a direct repro on master, though it looks like the bug still exists.
The bug occurs as follows: - A managed ledger, with current ledger as 3 - The managed ledger attempts to write two entries to 3 - First entry write to 3 fails, 3 is closed, deleted, and replaced by 5 in the managed ledger, the writes are retried - Second entry write fails, 3 is closed, deleted from the ledger list (it's not there) and ledger 6 is created and added to the ledger list. The solution should be to make sure the ledgerClosed() checks whether the passed in ledger is the current ledger and only try to add a new one if so. However, I would like a reliable test for this first, but we'll need to modify the mocks first. (cc @merlimat ) [ Full content available at: https://github.com/apache/incubator-pulsar/issues/240 ] This message was relayed via gitbox.apache.org for [email protected]
