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

 Kirill Sizov updated IGNITE-21500:
-----------------------------------
    Description: 
*Motivation* 

Implicit transactions usually are "full" and include just one transactional 
request which can be safely retried in case of the primary replica related 
exceptions (PrimaryReplicaMissException, etc.). So users will never see these 
exceptions in case of primary replica failures.

*Definition of done*

PrimaryReplicaMissException, PrimaryReplicaAwaitException, 
TransactionExceptions with messages like "Failed to get the primary replica", 
"Failed to resolve the primary replica node" are not propagated to the users in 
cases of implicit full transactions. If it is not possible to await for primary 
replica, PrimaryReplicaAwaitException or transaction exception with timeout is 
still possible.

*Implementation detail*
Likely all that is required to do - is to handle the mentioned kinds of 
exceptions in {{InternalTableImpl.wrapReplicationException}} and rethrow an 
exception with the desired message.

  was:
*Motivation* 

Implicit transactions usually are "full" and include just one transactional 
request which can be safely retried in case of the primary replica related 
exceptions (PrimaryReplicaMissException, etc.). So users will never see these 
exceptions in case of primary replica failures.

*Definition of done*

PrimaryReplicaMissException, PrimaryReplicaAwaitException, 
TransactionExceptions with messages like "Failed to get the primary replica", 
"Failed to resolve the primary replica node" are not propagated to the users in 
cases of implicit full transactions. If it is not possible to await for primary 
replica, PrimaryReplicaAwaitException or transaction exception with timeout is 
still possible,


> Retry implicit full transactions in case of exceptions related to primary 
> replica failure or move
> -------------------------------------------------------------------------------------------------
>
>                 Key: IGNITE-21500
>                 URL: https://issues.apache.org/jira/browse/IGNITE-21500
>             Project: Ignite
>          Issue Type: Improvement
>            Reporter: Denis Chudov
>            Priority: Major
>              Labels: ignite-3
>
> *Motivation* 
> Implicit transactions usually are "full" and include just one transactional 
> request which can be safely retried in case of the primary replica related 
> exceptions (PrimaryReplicaMissException, etc.). So users will never see these 
> exceptions in case of primary replica failures.
> *Definition of done*
> PrimaryReplicaMissException, PrimaryReplicaAwaitException, 
> TransactionExceptions with messages like "Failed to get the primary replica", 
> "Failed to resolve the primary replica node" are not propagated to the users 
> in cases of implicit full transactions. If it is not possible to await for 
> primary replica, PrimaryReplicaAwaitException or transaction exception with 
> timeout is still possible.
> *Implementation detail*
> Likely all that is required to do - is to handle the mentioned kinds of 
> exceptions in {{InternalTableImpl.wrapReplicationException}} and rethrow an 
> exception with the desired message.



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

Reply via email to