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

Ilya Shishkov updated IGNITE-25615:
-----------------------------------
    Description: 
With configured CacheStore we get into a situation, when transaction is 
committed in external database, but rolled back in Ignite.

Behavior depends on such conditions:
# Put is performed from primary or backup node.
# Failure occur on primary, backup or both types of nodes.

*Reproducer:*  [^CacheStoreInterceptorFailureTest.patch] 

If put is performed from node, which does not throw an exception in 
{{CacheInterceptor#onBeforePut}}, but other ones does, then the latter will 
fail. 
Eg. put from primary, but exception is thrown on backup nodes, then backups 
will fail with critical error.



  was:
Behavior depends on such conditions:
# Put is performed from primary or backup node.
# Failure occur on primary, backup or both types of nodes.

*Reproducer:*  [^CacheStoreInterceptorFailureTest.patch] 

If put is performed from node, which does not throw an exception in 
{{CacheInterceptor#onBeforePut}}, but other ones does, then the latter will 
fail. 
Eg. put from primary, but exception is thrown on backup nodes, then backups 
will fail with critical error.




> Failure in CacheInterceptor#onBeforePut leads to CacheStore inconsistency and 
> node failures
> -------------------------------------------------------------------------------------------
>
>                 Key: IGNITE-25615
>                 URL: https://issues.apache.org/jira/browse/IGNITE-25615
>             Project: Ignite
>          Issue Type: Bug
>            Reporter: Ilya Shishkov
>            Priority: Major
>              Labels: ise
>         Attachments: CacheStoreInterceptorFailureTest.patch
>
>
> With configured CacheStore we get into a situation, when transaction is 
> committed in external database, but rolled back in Ignite.
> Behavior depends on such conditions:
> # Put is performed from primary or backup node.
> # Failure occur on primary, backup or both types of nodes.
> *Reproducer:*  [^CacheStoreInterceptorFailureTest.patch] 
> If put is performed from node, which does not throw an exception in 
> {{CacheInterceptor#onBeforePut}}, but other ones does, then the latter will 
> fail. 
> Eg. put from primary, but exception is thrown on backup nodes, then backups 
> will fail with critical error.



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

Reply via email to