Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Is there any primitives, building blocks to provide compatibility?
  • Difficulties for day by day coding.
  • Compatibility testing.
    • explicit tests.
    • ability to run tests with random node versions
  • New feature implementation, enabling.
  • patterns for implementing commons cases: new version of algorithmes, testing against new versions.

Code cleanup

  • remove DirectByteBufferStreamImpl  V1-V3, keep V4, only.
  • remove all items from IgniteFeatures  and corresponding checks.
  • remove all code and checks for GridContinuousProcessor#discoProtoVer
  • TcpDiscoverySpi#setForceServerMode
  • All old version of classes - keep only max from V2, V3, etc. versions. StartRequestV2 that belongs to internal communication.
    Classes releated to thin client, jdbc, odbc interaction must stay.
    • StartRequest must be deleted. Rename StartRequestV2 → StartRequest.
    • CacheMetricsSnapshot must be deleted. Rename CacheMetricsSnapshotV2 → CacheMetricsSnapshot.

Additional materials

Many distributed open source systems has rolling upgrade feature, already.
We must study implemented approaches to gain some insights from them.

...