[ 
https://issues.apache.org/jira/browse/IGNITE-10740?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16746264#comment-16746264
 ] 

Sergey Antonov commented on IGNITE-10740:
-----------------------------------------

[~Artem Budnikov] DR is a Datacenter Replication. In case of update was got by 
DR (from another DC (datacenter))  and interceptor is non-idempotent we could 
broke users data. So we should disable cache interceptor for this updates.

> Add documentation for IGNITE_DISABLE_TRIGGERING_CACHE_INTERCEPTOR_ON_CONFLICT
> -----------------------------------------------------------------------------
>
>                 Key: IGNITE-10740
>                 URL: https://issues.apache.org/jira/browse/IGNITE-10740
>             Project: Ignite
>          Issue Type: Task
>          Components: documentation
>            Reporter: Sergey Antonov
>            Assignee: Artem Budnikov
>            Priority: Major
>             Fix For: 2.8
>
>
> We should add to documentation 
> IGNITE_DISABLE_TRIGGERING_CACHE_INTERCEPTOR_ON_CONFLICT option.
> As a reference you could get javadoc from skipInterceptor() :
> {{Checks, that cache interceptor should be skipped. It is expects by default 
> behavior that Interceptor methods (\{@link 
> CacheInterceptor#onBeforePut(Cache.Entry, Object)}, \{@link 
> CacheInterceptor#onAfterPut(Cache.Entry)}, \{@link 
> CacheInterceptor#onBeforeRemove(Cache.Entry)} and \{@link 
> CacheInterceptor#onAfterRemove(Cache.Entry)}) will be called, but \{@link 
> CacheInterceptor#onGet(Object, Object)}. This can even make DR-update flow 
> broken in case of non-idempotent Interceptor and force users to call onGet 
> manually as the only workaround. Also, user may want to skip Interceptor to 
> avoid redundant entry transformation for DR updates and exchange with 
> internal data b/w data centres which is a normal case.}}
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to