cmccabe opened a new pull request, #12207:
URL: https://github.com/apache/kafka/pull/12207

   This PR fixes a bug where FeatureControlManager#replay(FeatureLevelRecord) 
was throwing an
   exception if not all controllers in the quorum supported the feature being 
applied. While we do
   want to validate this, it needs to be validated earlier, before the record 
is committed to the log.
   Once the record has been committed to the log it should always be applied if 
the current controller
   supports it.
   
   Fix another bug where removing a feature was not supported once it had been 
configured. Note that
   because we reserve feature level 0 for "feature not enabled", we don't need 
to use
   Optional<VersionRange>; we can just return a range of 0-0 when the feature 
is not supported.
   
   Allow the metadata version to be downgraded when 
UpgradeType.UNSAFE_DOWNGRADE has been set.
   Previously we were unconditionally denying this even when this was set.
   
   Add a builder for FeatureControlManager, so that we can easily add new 
parameters to the
   constructor in the future. This will also be useful for creating 
FeatureControlManagers that are
   initialized to a specific MetadataVersion.


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

To unsubscribe, e-mail: jira-unsubscr...@kafka.apache.org

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

Reply via email to