[
https://issues.apache.org/jira/browse/IGNITE-23449?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17896165#comment-17896165
]
Vladislav Pyatkov commented on IGNITE-23449:
--------------------------------------------
Merged 75d93a2482463c5461cb095790348791399038ab
> Add support of the new flag HA in zone description
> --------------------------------------------------
>
> Key: IGNITE-23449
> URL: https://issues.apache.org/jira/browse/IGNITE-23449
> Project: Ignite
> Issue Type: Improvement
> Reporter: Mirza Aliev
> Assignee: Kirill Sizov
> Priority: Major
> Labels: ignite-3
> Time Spent: 2h 10m
> Remaining Estimate: 0h
>
> h3. Motivation
> In
> [IEP-131|https://cwiki.apache.org/confluence/display/IGNITE/IEP-131%3A+Partition+Majority+Unavailability+Handling]
> we introduce
> new field in zone descriptor called {{{}consistencyMode{}}}.
> {code:java}
> /**
> * 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;
> {code}
> {{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
> {code:sql}
> CREATE ZONE IF NOT EXISTS exampleZone WITH
> CONSISTENCY_MODE='HIGH_AVAILABILITY'
> {code}
> h3. Implementation notes
> {{DdlSqlToCommandConverter}} must be expanded with {{CONSISTENCY_MODE}}
> option along with {{{}IgniteCatalogSqlImpl{}}}.
> h3. 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.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)