Commit Graph

12 Commits

Author SHA1 Message Date
f656fa0f49 add missing copyright headers
Signed-off-by: Andrew Sims <andrew.cameron.sims@gmail.com>
2022-11-23 19:13:43 +11:00
2b178fdd96 server: Handle cluster version equal downgrade version
Signed-off-by: Marek Siarkowicz <siarkowicz@google.com>
2022-10-17 12:05:57 +02:00
5f8cd5bd39 Replace all etcd versions with the centralized definitions
We have already defined all the constant etcd versions in the
centralized place api/version/version.go. So we should replace all
the versions with the centralized definitions.
2022-06-13 14:08:39 +08:00
9d47a97b0b server: Remove lock from adapter to avoid deadlock 2021-10-29 12:47:19 +02:00
335dc98c8d server: Use server version to decide if to downgrade has finished 2021-10-29 12:47:19 +02:00
758fc0f8ad server: Depend only on cluster version to detect downgrade
Problem with old code was that during downgrade only members with
downgrade target version were allowed to join. This is unrealistic as
it doesn't handle any members to disconnect/rejoin.
2021-10-29 12:47:17 +02:00
e47c3c22d2 server: Move downgrade API logic into version package 2021-10-08 12:01:51 +02:00
1e5e57f268 server: Move downgrade detection code to version package 2021-10-08 10:41:37 +02:00
378159af30 server: Refactor cluster version decision code 2021-10-08 10:41:37 +02:00
2de36c0596 server: Cover monitor with upgrade unit tests 2021-10-08 10:41:35 +02:00
ff3729c4d5 server: Implement storage schema migration to follow cluster version change and panic if unknown storage version is found
Storage version should follow cluster version. During upgrades this
should be immidiate as storage version can be always upgraded as storage
is backward compatible. During downgrades it will be delayed and will
require time for incompatible changes to be snapshotted.

As storage version change can happen long after cluster is running, we
need to add a step during bootstrap to validate if loaded data can be
understood by migrator.
2021-09-10 10:16:48 +02:00
823f85dfc9 etcdserver: Move version monitor logic to separate module 2021-06-23 19:27:29 +02:00