Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Align feature manager's logical versions with v22.1.5 #5481

Merged
merged 1 commit into from
Jul 21, 2022

Conversation

rystsov
Copy link
Contributor

@rystsov rystsov commented Jul 14, 2022

Cover letter

We use feature manager to postpone activating a feature until all nodes in the cluster are updated to avoid a situation in which a node with a newer version uses an updated version of a protocol to communicate with an older version which doesn't understand it.

We tend to avoid backporting features but there are cases when we need to do it anyway e.g. when a bug fix introduces a protocol change and we need to use the feature manager to perform a non-interruptive upgrade.

When we do it we need to do it very carefully to preserve the feature manager invariant:

the series of versions and the definitions of the features must line up perfectly with the history of versions+features in subsequent releases
https://vectorizedio.atlassian.net/wiki/spaces/CORE/pages/170491930

However if the bugfix is added after we already introduced several feature which we don't backport we need to update the dev branch (future release) to be consistent with the minor "backport" release.

This change updates the dev to be consistent with v22.1.5 release which contains a bug fix gated by rm_stm_kafka_cache feature flag.

Release notes

  • none

We use feature manager to postpone activating a feature until all nodes
in the cluster are updated to avoid a situation in which a node with a
newer version uses an updated version of a protocol to communicate with
an older version which doesn't understand it.

We tend to avoid backporting features but there are cases when we need
to do it anyway e.g. when a bug fix introduces a protocol change and we
need to use the feature manager to perform a non-interruptive upgrade.

When we do it we need to do it very carefully to preserve the feature
manager invariant:

   the series of versions and the definitions of the features must
   line up perfectly with the history of versions+features in subsequent
   releases

   https://vectorizedio.atlassian.net/wiki/spaces/CORE/pages/170491930

However if we the bugfix is added after we already introduced several
feature which we don't backport we need to update the dev branch (future
release) to be consistent with the minor "backport" release.

This change updates the dev to be consistent with v22.1.5 release which
contains a bug fix gated by rm_stm_kafka_cache feature flag.
@rystsov rystsov requested review from dotnwat and bharathv July 14, 2022 23:58
@mmedenjak mmedenjak added the kind/bug Something isn't working label Jul 15, 2022
Copy link
Contributor

@bharathv bharathv left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

changes lgtm, think we should consider writing a upgrade test from 22.1.5 (once out) to 22.2.x just to be sure (or as a part of the release 22.2.1 release checklist).

@rystsov rystsov merged commit 1007d11 into redpanda-data:dev Jul 21, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/redpanda kind/bug Something isn't working
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants