Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Clarifications from discuss thread

...

./kafka-features.sh downgrade [--release RELEASE] [--feature FEATURE --version VERSION] [--unsafe, --dry-run]

Send an UpdateFeaturesRequest to the controller for the given feature FEATURE to downgrade its version to VERSION. Alternatively, the RELEASE flag can be given to downgrade to the default versions of the specified release. Only apply this downgrade if it is considered “safe” by the controller, or the --unsafe flag is given. Details on unsafe downgrades are detailed in the "Downgrades" section below.

...

  • Operator performs rolling restart of cluster with a new software version
  • Operator increases metadata.version feature flag using kafka-features.sh tool
    • UpdateFeaturesRequest is sent to the active controller
    • The controller validates that the cluster can be upgraded to this version
    • FeatureLevelRecord is written to the metadata log
    • Components Broker components (e.g., ReplicaManager) reload their state with new version

...

  • Operator decreases metadata.version feature flag using kafka-features.sh tool
    • UpdateFeaturesRequest is sent to the active controller
    • The controller validates that the cluster can be safely downgraded to this version (override with --forceunsafe)
    • FeatureLevelRecord is written to the metadata log
    • Controller generates new snapshot and components reload their state with it (this snapshot may be lossy!)
    • Broker replicates FeatureLevelRecord for downgrade
    • Broker generates new snapshot and components reload their state with it (this snapshot may be lossy!)
  • Operator performs rolling restart of cluster with downgraded software version

...