[
https://issues.apache.org/jira/browse/IGNITE-21285?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Maksim Timonin updated IGNITE-21285:
------------------------------------
Description:
In case ExpirePolicy is used, than in CacheVersionConflictResolverImpl#resolve
used the Merge strategy to set TTL and EXPIRE for the conflicted entry.
If the entry received from other dataCenter it marked as merged and later its
original version is ignored.
See IgniteTxLocalAdapter#userCommit:672L:
# It replace explicitVer (set to original version) with local transaction
version `explicitVer = writeVersion()`
# Later its set as conflict version {{txEntry.conflictVersion(explicitVer)}}
# `GridCacheVersionEx#addConflictVersion` return the tx version as it now
equals to the conflict version
was:
In case ExpirePolicy is used, than in CacheVersionConflictResolverImpl#resolve
used the Merge strategy to set TTL and EXPIRE for the conflicted entry.
If the entry received from other dataCenter it marked as merged and later its
original version is ignored.
See IgniteTxLocalAdapter#userCommit:672L:
# It replace explicitVer (set to original version) with local transaction
version `explicitVer = writeVersion()`
2. Later its set as conflict version {{txEntry.conflictVersion(explicitVer);}}
{{3. GridCacheVersionEx#addConflictVersion return tx version as it }}equals to
conflict version
> Data entries looped in CDC if ExpirePolicy is set
> --------------------------------------------------
>
> Key: IGNITE-21285
> URL: https://issues.apache.org/jira/browse/IGNITE-21285
> Project: Ignite
> Issue Type: Bug
> Reporter: Maksim Timonin
> Priority: Major
> Labels: ise
>
> In case ExpirePolicy is used, than in
> CacheVersionConflictResolverImpl#resolve used the Merge strategy to set TTL
> and EXPIRE for the conflicted entry.
> If the entry received from other dataCenter it marked as merged and later its
> original version is ignored.
> See IgniteTxLocalAdapter#userCommit:672L:
> # It replace explicitVer (set to original version) with local transaction
> version `explicitVer = writeVersion()`
> # Later its set as conflict version {{txEntry.conflictVersion(explicitVer)}}
> # `GridCacheVersionEx#addConflictVersion` return the tx version as it now
> equals to the conflict version
--
This message was sent by Atlassian Jira
(v8.20.10#820010)