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

Aleksey Plekhanov commented on IGNITE-22069:
--------------------------------------------

Benchmark results ({{{}JmhCacheExpireBenchmark{}}}) on my laptop:
Before fix:
{noformat}
Benchmark                                 (persistence)   Mode  Cnt    Score    
  Error   Units
JmhCacheExpireBenchmark.putWithExpire              TRUE  thrpt    3   29,968 ±  
 15,287  ops/ms
{noformat}
After fix:
{noformat}
Benchmark                                 (persistence)   Mode  Cnt     Score   
  Error   Units
JmhCacheExpireBenchmark.putWithExpire              TRUE  thrpt    3   172,777 ± 
 22,737  ops/ms
{noformat}

> Fix contention on expiration for persistent caches
> --------------------------------------------------
>
>                 Key: IGNITE-22069
>                 URL: https://issues.apache.org/jira/browse/IGNITE-22069
>             Project: Ignite
>          Issue Type: Improvement
>            Reporter: Aleksey Plekhanov
>            Assignee: Aleksey Plekhanov
>            Priority: Major
>              Labels: ise
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> We've fixed contention on expiration for in-memory caches by IGNITE-14341 and 
> IGNITE-21929 tickets, but persistent caches use another method to expire 
> entries and this method should be fixed too. Moreover, there are some other 
> optimizations related to expiration we can made:
>  # Use batch pending tree entries removal for persistent caches (already 
> implemented for in-memory)
>  # Randomize iteration over cache data stores during expiration to reduce 
> contention
>  # For each transaction, we try to expire entries for every cache in the 
> cluster. At least we can limit the list of caches to caches related to 
> transaction.   
>  # On cache destroy batch removal from pending entries tree can be used 
> (instead of one-by-one deletion). 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to