Details
-
Improvement
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
-
None
-
Docs Required, Release Notes Required
Description
Motivation
In IEP-131 we introduce
new field in zone descriptor called consistencyMode.
/** * Specifies the consistency mode of the zone, determining how the system balances data consistency and availability. * * <p> * Possible values are: * <ul> * <li><b>STRONG_CONSISTENCY</b>: Ensures strong consistency by requiring a majority of nodes for operations. * Partitions become unavailable if the majority of assigned nodes are lost.</li> * <li><b>HIGH_AVAILABILITY</b>: Prioritizes availability over strict consistency, allowing partitions to remain * available for read-write operations even when the majority of assigned nodes are offline. The system * reconfigures the RAFT group to include only the available nodes without changing the assignments.</li> * </ul> * </p> */ private final ConsistencyMode consistencyMode;
STRONG_CONSISTENCY is the current behaviour of zones/partitions in AI3.
We must forbid to change this flag, so it must be immutable and must be configured only on a zone creation.
It must be possible to set this filed through the SQL
CREATE ZONE IF NOT EXISTS exampleZone WITH CONSISTENCY_MODE='HIGH_AVAILABILITY'
Implementation notes
DdlSqlToCommandConverter must be expanded with CONSISTENCY_MODE option along with IgniteCatalogSqlImpl.
Definition of Done
- New field in zone descriptor called consistencyMode is introduced.
- It must be STRONG_CONSISTENCY or HIGH_AVAILABILITY
- This field must be immutable and it must be possible set it only on a zone creation.
Attachments
Issue Links
- links to