pulsar icon indicating copy to clipboard operation
pulsar copied to clipboard

[improve][pip] PIP-317: Add `bookkeeperDeleted` field to show whether a ledger is deleted from the bookie while using tiered storage

Open dragonls opened this issue 2 years ago • 6 comments

Releted PR/issue: #20833

  • [ ] doc
  • [ ] doc-required
  • [x] doc-not-needed
  • [ ] doc-complete

dragonls avatar Nov 06 '23 09:11 dragonls

Should I start a vote for this PIP?

dragonls avatar Nov 14 '23 08:11 dragonls

Yeah. Please go ahead.

zymap avatar Nov 15 '23 02:11 zymap

  • Mailing List discussion thread: https://lists.apache.org/thread/9kjgg06oj384myxqls73dwn840thtrrc
  • Mailing List voting thread: https://lists.apache.org/thread/5nfm3qkbwqylk1zp77zn9tfokhy212tb

dragonls avatar Nov 15 '23 08:11 dragonls

It will be important to add tests about rolling back to the previous version of Pulsar and/or clusters with mixed versions of the brokers (during rolling upgrades). The old version should not complain about the new field added.

eolivelli avatar Nov 16 '23 04:11 eolivelli

It will be important to add tests about rolling back to the previous version of Pulsar and/or clusters with mixed versions of the brokers (during rolling upgrades). The old version should not complain about the new field added.

Do you mean adding test cases or updrading cluster including this feature?

The change of this feature is mainly to add a field bookkeeperDeleted in org.apache.pulsar.common.policies.data.ManagedLedgerInternalStats.LedgerInfo. The main scope of influence here is the result returned by the external interface for obtaining status, which will not affect the storage of ledger original data on zk.

This feature has been running on our online cluster for over half a year. No problems were found during the initial rolling upgrade process.

dragonls avatar Nov 20 '23 02:11 dragonls

It will be important to add tests about rolling back to the previous version of Pulsar and/or clusters with mixed versions of the brokers (during rolling upgrades). The old version should not complain about the new field added.

Do you mean adding test cases or updrading cluster including this feature?

The change of this feature is mainly to add a field bookkeeperDeleted in org.apache.pulsar.common.policies.data.ManagedLedgerInternalStats.LedgerInfo. The main scope of influence here is the result returned by the external interface for obtaining status, which will not affect the storage of ledger original data on zk.

This feature has been running on our online cluster for over half a year. No problems were found during the initial rolling upgrade process.

@dragonls Thanks for driving this improvement. I have one concern about the compatibility the same with Enrico. The proposal adds one field in the ManagedLedgerInternalStats, which is located on the common package. Can we ensure compatibility when the server upgrades to the new version but the client stays on the old version? It happens in two cases:

  • During upgrade and some broker in new version but others in old version
  • Pulsar client in old version which doesn't has the new field.

hangc0276 avatar Nov 20 '23 04:11 hangc0276