[ 
https://issues.apache.org/jira/browse/HDFS-5182?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13891042#comment-13891042
 ] 

Haohui Mai commented on HDFS-5182:
----------------------------------

It looks like to me that passing the file descriptor is a cleaner design:

# If the data is shared through mmap(), an I/O error will trigger a SIGBUS on 
the client side.
# It requires taking up the virtual memory space for the client, it could be 
problematic if the client is running in a container.
# From a portability prospective, {{DuplicateHandle}} on Windows can easily 
pass file descriptors around.

I might have missed something. [~cmccabe], can you please elaborate why you 
prefer choice #1 instead of #2? Thanks.

> BlockReaderLocal must allow zero-copy  reads only when the DN believes it's 
> valid
> ---------------------------------------------------------------------------------
>
>                 Key: HDFS-5182
>                 URL: https://issues.apache.org/jira/browse/HDFS-5182
>             Project: Hadoop HDFS
>          Issue Type: Improvement
>          Components: hdfs-client
>    Affects Versions: 3.0.0
>            Reporter: Colin Patrick McCabe
>            Assignee: Colin Patrick McCabe
>
> BlockReaderLocal must allow zero-copy reads only when the DN believes it's 
> valid.  This implies adding a new field to the response to 
> REQUEST_SHORT_CIRCUIT_FDS.  We also need some kind of heartbeat from the 
> client to the DN, so that the DN can inform the client when the mapped region 
> is no longer locked into memory.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to