contribution guidelines about wire compatibility (#26619)
This commit is contained in:
parent
7d58a1a2b5
commit
777173f988
1 changed files with 16 additions and 0 deletions
|
|
@ -222,6 +222,22 @@ Situations when it may be fine to ignore a MiMa issued warning include:
|
||||||
|
|
||||||
The binary compatibility of the current changes can be checked by running `sbt +mimaReportBinaryIssues`.
|
The binary compatibility of the current changes can be checked by running `sbt +mimaReportBinaryIssues`.
|
||||||
|
|
||||||
|
## Wire compatibility
|
||||||
|
|
||||||
|
Changes to the binary protocol of remoting, cluster and the cluster tools require great care so that it is possible
|
||||||
|
to do rolling upgrades. Note that this may include older nodes communicating with a newer node so compatibility
|
||||||
|
may have to be both ways.
|
||||||
|
|
||||||
|
Since during a rolling upgrade nodes producing the 'new' format and nodes producing the 'old' format coexist, a change can require a two-release process:
|
||||||
|
the first change is to add a new binary format but still use the old. A second step then starts actually emitting the
|
||||||
|
new wire format. This ensures users can complete a rolling upgrade first to the intermediate version and then another
|
||||||
|
rolling upgrade to the next version.
|
||||||
|
|
||||||
|
All wire protocol changes that may concern rolling upgrades should be documented in the
|
||||||
|
[Rolling Update Changelog](https://doc.akka.io/docs/akka/current/project/rolling-update.html#change-log)
|
||||||
|
(found in akka-docs/src/main/paradox/project/rolling-update.md)
|
||||||
|
|
||||||
|
|
||||||
## Pull request requirements
|
## Pull request requirements
|
||||||
|
|
||||||
For a pull request to be considered at all it has to meet these requirements:
|
For a pull request to be considered at all it has to meet these requirements:
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue