[
https://issues.apache.org/jira/browse/IGNITE-11330?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16769181#comment-16769181
]
Andrew Mashenkov commented on IGNITE-11330:
-------------------------------------------
Also, I've found we update metrics of all caches in group instead of the one
that entry belongs to.
Updating metrics of certain cache will broke
CacheGroupsMetricsRebalanceTest.testRebalance().
Why we go this way? Is the test correct?
> Partition demander should skip entries for invalid partition.
> -------------------------------------------------------------
>
> Key: IGNITE-11330
> URL: https://issues.apache.org/jira/browse/IGNITE-11330
> Project: Ignite
> Issue Type: Bug
> Components: cache
> Reporter: Andrew Mashenkov
> Priority: Major
> Labels: performance, rebalance
> Fix For: 2.8
>
>
> For now Partition demander tries to process all entries for invalid partition
> instead of switching to the next partition.
> Looks like, this was introduced with a fix IGNITE-8955 to make checkpoint
> locks fine-grained.
> A "for" loop under checkpoint readlock in
> GridDhtPartitionDemander.handleSupplyMessage() causes the issue. A flow can
> breaks inner "for" loop in case of invalid partition, but seems an outer
> "while" loop expected.
>
> To resolve this we can e.g. move CacheEntryInfo collection processing into
> separate method and just exit from it if invalid partition is detected.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)