You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Alexander Lapin (Jira)" <ji...@apache.org> on 2022/12/06 07:37:00 UTC

[jira] [Updated] (IGNITE-17938) Implement thread-safe enlisting of a primary node into a transaction

     [ https://issues.apache.org/jira/browse/IGNITE-17938?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Alexander Lapin updated IGNITE-17938:
-------------------------------------
    Summary: Implement thread-safe enlisting of a primary node into a transaction  (was: Different primary nodes can be enlisted in one transaction for the same replication group)

> Implement thread-safe enlisting of a primary node into a transaction
> --------------------------------------------------------------------
>
>                 Key: IGNITE-17938
>                 URL: https://issues.apache.org/jira/browse/IGNITE-17938
>             Project: Ignite
>          Issue Type: Bug
>            Reporter: Vladislav Pyatkov
>            Priority: Major
>              Labels: ignite-3
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> Before to send a replica request, we try to determine a primary node. If the replication group is not used before, primary replica is choosing as a current leader for the replication group and will be enlisted only when the request is sent and handled.
> If several replica requests are handled simultaneously, in the same circumstances (primary is not enlisted for the replication group), a coordinator node can try to enlist several different primaries for the group.
> Before, we do nothing to resolve this situation, so last primary replaces previous one.
> But the right solution do not allow situation where we have several primaries for the group in one transaction. Required to check that the primary node is the same for all requests and throw an exception if this is not right.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)