...
- Provide ability to change arg, result classes in compatible way.
- Possible approach is to reuse communication serdes framework.
- Other possibility is to migrate on BinaryObject as a arguments and results.
- PR checks for
Messages ancestor change with the some warning, labels, etc. that can draw reviewer attention to the possible compatibility issues.
Phase 6 - Testing
- ducktests to check upgrade procedure.
unit tests mode that start some nodes of previous version.
Phase 7 - Development process changes
Any change in public API MUST be in the form of IEP.
Any change in public API MUST be voted by two(three?) committers.
Alternative designs
- subsystem API versions (like in REST API)
- runtime component(IgniteProcessor, IgniteManager) upgrade with the dynamic class loading.
...
{"serverDuration": 104, "requestCorrelationId": "5c281b690a3f3c25"}