Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
IDIEP-132
Author
Sponsor
Created

28.11.2024

Status

Status
colourBlue
titleIN PROGRESS


Table of Contents

Motivation

...

Implementation phases

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.
  •  MessageFactory.

...

  •  IgniteDataTransferObject
  •  

    EXCHANGE_PROTOCOL_2_SINCE and related code

  •  

    IgniteProductVersion.fromString - usages

Jira
serverASF JIRA
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
maximumIssues20
jqlQueryissue = IGNITE-27674
serverId5aa69414-a9e9-3523-82ec-879b028fb15b

BinaryMarshaller modularization

  •  modularize BinaryMarshaller.

...

  •  create small jar for ignite thin client

...

  •  provide clear API for binary objects inside ignite-code and other modules.

Jira
serverASF JIRA
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
maximumIssues20
jqlQueryissue = IGNITE-27675
serverId5aa69414-a9e9-3523-82ec-879b028fb15b

Communication SPI Compatibility

  •  Communication MessageWriter and MessageReader are aware of peers version, and then schema of a message.

...

  •  Distinguish serdes generation from POJO

Jira
serverASF JIRA
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
maximumIssues20
jqlQueryissue = IGNITE-25881
serverId5aa69414-a9e9-3523-82ec-879b028fb15b

Discovery SPI Compatibility

  •  (question) Serdes changes to provide compatibility? (current approach with JDK serialization provides some compatibility (13).
    Is it enough for long-term compatibility support?

...

  •  (question) Serdes changes to restrict classes that can be sent over SPI.

...

  •  PR checks for Messages  ancestor change with the some warning, labels, etc. that can draw reviewer attention to the possible compatibility issues.

Jira
serverASF JIRA
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
maximumIssues20
jqlQueryissue = IGNITE-25883
serverId5aa69414-a9e9-3523-82ec-879b028fb15b

...