You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "Yun Gao (JIRA)" <ji...@apache.org> on 2018/10/01 09:14:00 UTC
[jira] [Assigned] (FLINK-10469) FileChannel may not write the whole
buffer in a single call to FileChannel.write(Buffer buffer)
[ https://issues.apache.org/jira/browse/FLINK-10469?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Yun Gao reassigned FLINK-10469:
-------------------------------
Assignee: Yun Gao
> 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.4.1, 1.4.2, 1.5.3, 1.6.0, 1.6.1, 1.7.0, 1.5.4, 1.6.2
> Reporter: Yun Gao
> Assignee: Yun Gao
> Priority: Major
>
> 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)