[ 
https://issues.apache.org/jira/browse/GEODE-2472?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Anthony Baker closed GEODE-2472.
--------------------------------

> Oplog.flush method doesn't verify that the entry gets written
> -------------------------------------------------------------
>
>                 Key: GEODE-2472
>                 URL: https://issues.apache.org/jira/browse/GEODE-2472
>             Project: Geode
>          Issue Type: Improvement
>          Components: persistence
>            Reporter: Kenneth Howe
>            Assignee: Anilkumar Gingade
>             Fix For: 1.2.0
>
>
> The Oplog.flush(OplogFile olf, ByteBuffer b1, ByteBuffer b2) method doesn't 
> check the results of the channel.write() call. The other Oplog.flush() method 
> that performs a channel write wraps the write() call in the loop
> {code}
> do {
>     ...
> } while (hasRemaining);
> {code}
> to make sure the Oplog entry is written to the OplogFile.
> This method is implemented without the check loop, making the assumption that 
> the write() completely writes everything from both buffers. Defensive 
> programming would suggest that the results of lower level calls are checked.
> Failure to recognize a partial write to the OplogFile can result in a corrupt 
> oplog that isn't found until the persistent disk store is recovered.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to