[ https://issues.apache.org/jira/browse/IGNITE-9244?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16576344#comment-16576344 ]
Alexey Goncharuk commented on IGNITE-9244: ------------------------------------------ A few comments: * Use {{Long.compare}} instead of {{(p1, p2) -> p1.part.fullSize() > p2.part.fullSize() ? -1 : 1}} * Method {{calculateBucket(PartitionEvictionTask)}} has an unused argument - either a bug, or the argument should be removed * For safety, make sure that {{threads}} does not get {{0}} value after {{sysPoolSize / 4}} > Partition eviction may use all threads in sys pool, it leads to hangs send a > message via sys pool > -------------------------------------------------------------------------------------------------- > > Key: IGNITE-9244 > URL: https://issues.apache.org/jira/browse/IGNITE-9244 > Project: Ignite > Issue Type: Bug > Reporter: Dmitriy Govorukhin > Assignee: Dmitriy Govorukhin > Priority: Major > Fix For: 2.7 > > > In the current implementation, GridDhtPartitionsEvictor reset partition to > evict one by one. > GridDhtPartitionsEvictor is created for each cache group, if we try to evict > too many groups as sys pool size, group evictors will take all available > threads in sys pool. It leads to hangs send a message via sys pool. As a fix, > I suggest to limit concurrent execution via sys pool or use another pool for > this purpose. -- This message was sent by Atlassian JIRA (v7.6.3#76005)