[jira] [Updated] (IGNITE-7606) Write evicted dirty page during eviction without holding segment write lock
[ https://issues.apache.org/jira/browse/IGNITE-7606?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Dmitriy Pavlov updated IGNITE-7606: --- Attachment: chart_notHoldingLock2.png > Write evicted dirty page during eviction without holding segment write lock > --- > > Key: IGNITE-7606 > URL: https://issues.apache.org/jira/browse/IGNITE-7606 > Project: Ignite > Issue Type: Improvement > Components: persistence >Reporter: Dmitriy Pavlov >Assignee: Dmitriy Pavlov >Priority: Major > Fix For: 2.5 > > Attachments: chart_holdingLock.png, chart_notHoldingLock.png, > chart_notHoldingLock2.png, putdumpAt17second.txt > > > If a dirty page under the checkpoint is found, following is suggested > - copy it to the local thread buffer, > - and then after performing all actions in region for evicting the page > - finish execution allocatePage()/acquirePage() > - unlock segment to allow other workers to operate > - perform the pwrite() call based on the data from local buffer > Now if page eviction started there is possible drops to 0 put/seconds in case > a lot of threads are watiting for same segment lock. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (IGNITE-7606) Write evicted dirty page during eviction without holding segment write lock
[ https://issues.apache.org/jira/browse/IGNITE-7606?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Dmitriy Pavlov updated IGNITE-7606: --- Attachment: chart_notHoldingLock.png chart_holdingLock.png > Write evicted dirty page during eviction without holding segment write lock > --- > > Key: IGNITE-7606 > URL: https://issues.apache.org/jira/browse/IGNITE-7606 > Project: Ignite > Issue Type: Improvement > Components: persistence >Reporter: Dmitriy Pavlov >Assignee: Dmitriy Pavlov >Priority: Major > Fix For: 2.5 > > Attachments: chart_holdingLock.png, chart_notHoldingLock.png, > putdumpAt17second.txt > > > If a dirty page under the checkpoint is found, following is suggested > - copy it to the local thread buffer, > - and then after performing all actions in region for evicting the page > - finish execution allocatePage()/acquirePage() > - unlock segment to allow other workers to operate > - perform the pwrite() call based on the data from local buffer > Now if page eviction started there is possible drops to 0 put/seconds in case > a lot of threads are watiting for same segment lock. -- This message was sent by Atlassian JIRA (v7.6.3#76005)