osdir.com

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[jira] [Created] (FLINK-10469) FileChannel may not write the whole buffer in a single call to FileChannel.write(Buffer buffer)


Yun Gao created FLINK-10469:
-------------------------------

             Summary: FileChannel may not write the whole buffer in a single call to FileChannel.write(Buffer buffer)
                 Key: FLINK-10469
                 URL: https://issues.apache.org/jira/browse/FLINK-10469
             Project: Flink
          Issue Type: Bug
          Components: Core
    Affects Versions: 1.5.4, 1.6.1, 1.6.0, 1.5.3, 1.4.2, 1.4.1, 1.7.0, 1.6.2
            Reporter: Yun Gao


Currently all the calls to _FileChannel.write(ByteBuffer src)_ assumes that this method will not return before the whole buffer is written, like the one in _AsynchronousFileIOChannel.write()._

 

However, this assumption may not be right for all the environments. We have encountered the case that only part of a buffer was written on a cluster with a high IO load, and the target file got messy. 

 

To fix this issue, I think we should add a utility method in the org.apache.flink.util.IOUtils to ensure the whole buffer is written with a loop,and replace all the calls to _FileChannel.write(ByteBuffer)_ with this new method. 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)