hadoop-hdfs-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Xiaoyu Yao (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (HDFS-7291) Persist in-memory replicas with appropriate unbuffered copy API on POSIX and Windows
Date Mon, 27 Oct 2014 21:51:36 GMT

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

Xiaoyu Yao updated HDFS-7291:
-----------------------------
    Description: 
HDFS-7090 changes to persist in-memory replicas using unbuffered IO on Linux and Windows.
On Linux distribution, it relies on the sendfile() API between two file descriptors to achieve
unbuffered IO copy. According to Linux document at http://man7.org/linux/man-pages/man2/sendfile.2.html,
this is only supported on Linux kernel 2.6.33+. 

As pointed by Haowei in the discussion below, FileChannel#transferTo already has support for
native unbuffered IO on POSIX platform. On Windows, JDK 6/7/8 has not implemented native unbuffered
IO yet. We change to use FileChannel#transfer for POSIX and our own native wrapper of CopyFileEx
on Windows for unbuffered copy.  

  was:
HDFS-7090 changes to persist in-memory replicas using unbuffered IO on Linux and Windows.
On Linux distribution, it relies on the sendfile() API between two file descriptors to achieve
unbuffered IO copy. According to Linux document at http://man7.org/linux/man-pages/man2/sendfile.2.html,
this is only supported on Linux kernel 2.6.33+. 

As pointed by 


> Persist in-memory replicas with appropriate unbuffered copy API on POSIX and Windows
> ------------------------------------------------------------------------------------
>
>                 Key: HDFS-7291
>                 URL: https://issues.apache.org/jira/browse/HDFS-7291
>             Project: Hadoop HDFS
>          Issue Type: Sub-task
>          Components: datanode
>    Affects Versions: 2.6.0
>            Reporter: Xiaoyu Yao
>            Assignee: Xiaoyu Yao
>         Attachments: HDFS-7291.0.patch, HDFS-7291.1.patch, HDFS-7291.2.patch
>
>
> HDFS-7090 changes to persist in-memory replicas using unbuffered IO on Linux and Windows.
On Linux distribution, it relies on the sendfile() API between two file descriptors to achieve
unbuffered IO copy. According to Linux document at http://man7.org/linux/man-pages/man2/sendfile.2.html,
this is only supported on Linux kernel 2.6.33+. 
> As pointed by Haowei in the discussion below, FileChannel#transferTo already has support
for native unbuffered IO on POSIX platform. On Windows, JDK 6/7/8 has not implemented native
unbuffered IO yet. We change to use FileChannel#transfer for POSIX and our own native wrapper
of CopyFileEx on Windows for unbuffered copy.  



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message