You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

Status

Current state: Under Discussion 

Discussion thread: here 

JIRA: [ Unable to render Jira issues macro, execution error. ]

Please keep the discussion on the mailing list rather than commenting on the wiki (wiki discussions get unwieldy fast).

Motivation

It seems that naming LogCleaner is somewhat misleading and LogComparator is more appropriate one. So LogCleaner and related classes/methods/configs should be renamed to Comparator instead of Cleaner

Public Interfaces

log.cleaner.enable will be deprecated and eventually, it will be removed from the configuration. Going forward if log.cleanup.policy is set to compact then cleaner will be enabled implicitly.

 

Following old configuration will be deprecated and new renamed configuration will be introduced. 

Existing configurationNew configuration
log.cleaner.backoff.mslog.compactor.backoff.ms
log.cleaner.dedupe.buffer.sizelog.compactor.dedupe.buffer.size
log.cleaner.delete.retention.mslog.compactor.delete.retention.ms
log.cleaner.io.buffer.load.factorlog.compactor.io.buffer.load.factor
log.cleaner.io.buffer.sizelog.compactor.io.buffer.size
log.cleaner.io.max.bytes.per.secondlog.compactor.io.max.bytes.per.second
log.cleaner.min.cleanable.ratiolog.compactor.min.cleanable.ratio
log.cleaner.min.compaction.lag.mslog.compactor.min.compaction.lag.ms
log.cleaner.threadslog.compactor.threads


Proposed Changes

New renamed configuration will be introduced and existing configuration will be deprecated.
As proposed on JIRA, following approach will be considered while taking values.

0. Default value of the new config will be same as the deprecated config
1. If both deprecated and new config values are specified, log a WARN entry will be emitted and the new config value will be chosen.
2. If only one of them is specified, its value will be chosen.
3. If none of them are specified, then the default value, which should be the same, will be used.


Apart from the configuration changes mentioned above, following Classes will be renamed.
Also, all variables, methods and documentation in the classes will be updated to reflect the new name changes.  All related test-cases will be renamed as well.

Existing Class nameNew Class name
LogCleanerLogCompactor
LogCleanerManagerLogCompactorManager
ClenerConfigCompactorConfig
LogCleaningAbortedExceptionLogCompactionAbortedException


Compatibility, Deprecation, and Migration Plan

Existing configuration will be deprecated first and then eventually it will be removed.

Rejected Alternatives

 

  • No labels