[ https://issues.apache.org/jira/browse/IGNITE-5816?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Alexey Goncharuk updated IGNITE-5816: ------------------------------------- Description: In current flushOrWait() code we acquire writtenBytes before we try to flush. If flush fails, we wait for written be equal to expWritten. When a segment is being closed, this leads to one thread returning from flushOrWait early because written is updated, but expWritten does not match the last record position. > Race in WAL segment leading to ClosedChannelException > ----------------------------------------------------- > > Key: IGNITE-5816 > URL: https://issues.apache.org/jira/browse/IGNITE-5816 > Project: Ignite > Issue Type: Bug > Components: cache > Affects Versions: 2.1 > Reporter: Alexey Goncharuk > Assignee: Alexey Goncharuk > Fix For: 2.2 > > > In current flushOrWait() code we acquire writtenBytes before we try to flush. > If flush fails, we wait for written be equal to expWritten. > When a segment is being closed, this leads to one thread returning from > flushOrWait early because written is updated, but expWritten does not match > the last record position. -- This message was sent by Atlassian JIRA (v6.4.14#64029)