Stanislav Lukyanov created IGNITE-10041:
-------------------------------------------
Summary: Partition loss policies work incorrectly with BLT
Key: IGNITE-10041
URL: https://issues.apache.org/jira/browse/IGNITE-10041
Project: Ignite
Issue Type: Bug
Reporter: Stanislav Lukyanov
Current partition loss handling (initially designed before persistence and BLT
were introduced) aligns poorly with BLT semantics. The general problem is that
partition loss handling assumes that rebalancing always happens on topology
change - which is not the case with BLT.
The features with semantics conflicting with BLT are:
- PartitionLossPolicy.READ_ONLY_ALL and PartitionLossPolicy.READ_WRITE_ALL
READ_*_ALL policies assume that there is "some" partition created in the
cluster which we could read or write, even though it is marked as LOST. With
BLT the LOST partition only exists on an offline node, so there is no place to
route the requests to.
- PartitionLossPolicy.IGNORE
Somewhat similar to the READ_*_ALL, but IGNORE also expects that the lost
partition is immediately recreated on another node - which is impossible
without changing affinity, i.e. without resetting BLT.
- IgniteCache::withPartitionRecover
withPartitionRecover is supposed to ignore partition loss policies and allow
all operations, but when a partition is lost in a BLT cluster it's actually
unavailable, there is straightforward way to ignore it.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)