You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-dev@hadoop.apache.org by "Liang Xie (JIRA)" <ji...@apache.org> on 2014/03/17 10:44:42 UTC

[jira] [Created] (HDFS-6109) let sync_file_range() system call run in backgroud

Liang Xie created HDFS-6109:
-------------------------------

             Summary: let sync_file_range() system call run in backgroud
                 Key: HDFS-6109
                 URL: https://issues.apache.org/jira/browse/HDFS-6109
             Project: Hadoop HDFS
          Issue Type: Improvement
          Components: datanode
    Affects Versions: 2.3.0, 3.0.0
            Reporter: Liang Xie
            Assignee: Liang Xie


Through we passed SYNC_FILE_RANGE_WRITE to sync_file_range, to make it as asynchronous as possible, it still could be blocked, e.g. the os io request queue is full.
Since we use sync_file_range just as a page cache advisor role:) it doesn't decide or guarantee the real durability, it would be nice if we could run it in  backgroud. At least my test log showed, a few sync_file_range calls still cost tens of ms or more, due to the happened location is in the critical write path(BlockReceiver class), from a upper view, like HBase application, will "hung" tens of ms as well during Hlog syncing.
Generally speaking, the patch could not improve too much, but, better than before, right ? :)



--
This message was sent by Atlassian JIRA
(v6.2#6252)