wuzhanpeng opened a new pull request #7111:
URL: https://github.com/apache/pulsar/pull/7111


   ### Motivation
   This pull request implements a monitor thread to check if the current topic 
ledger meets the constraint of `managedLedgerMaxLedgerRolloverTimeMinutes` and 
trigger a rollover to make the configuration take effect. Another important 
idea here is, if we trigger a rollover, we can close the current ledger so that 
we can release the storage of current ledger btw. Because for some less 
commonly used topics, the current ledger data is likely to have expired, and 
the current rollover logic will only be triggered when adding a new entry. 
Obviously, this will result in a waste of disk space.
   
   ### Expected behaviors
   The monitor thread will be scheduled at fix time interval and the interval 
is set to `managedLedgerMaxLedgerRolloverTimeMinutes`. Each inspection will 
make two judgments at the same time, i.e. `currentLedgerEntries > 0` and 
`currentLedgerIsFull()`. When the number of current entry is equal to 0, it 
will not trigger a new rollover and we use this to reduce the ledger's creation.
   
   ### Modifications
   - The main modification took place in `ManagedLedgerImpl`
   - In addition, a check thread was added in the `BrokerService`
   
   maybe related to #6935 


----------------------------------------------------------------
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.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Reply via email to