You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-issues@hadoop.apache.org by "Todd Lipcon (Updated) (JIRA)" <ji...@apache.org> on 2012/02/29 00:52:54 UTC
[jira] [Updated] (HDFS-3025) Automatic log sync shouldn't happen
inside logEdit path
[ https://issues.apache.org/jira/browse/HDFS-3025?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Todd Lipcon updated HDFS-3025:
------------------------------
Attachment: hdfs-3025.txt
Fairly simple patch.
I tested this out on a 100-node cluster running the HA branch with HA off -- a workload which causes a lot of non-synced log edits. I could see the logsyncs happening on the correct thread using jstack, and verified that performance was improved, with fewer threads blocked.
> Automatic log sync shouldn't happen inside logEdit path
> -------------------------------------------------------
>
> Key: HDFS-3025
> URL: https://issues.apache.org/jira/browse/HDFS-3025
> Project: Hadoop HDFS
> Issue Type: Improvement
> Components: name-node, performance
> Affects Versions: 0.23.3
> Reporter: Todd Lipcon
> Assignee: Todd Lipcon
> Attachments: hdfs-3025.txt
>
>
> HDFS-3020 fixes the "automatic log sync" functionality so that, when logEdits is called without log sync, it eventually triggers a sync. That sync ends up being inline, though, which means the FSN lock is usually held during it. This causes a bunch of threads to pile up.
> Instead, we should have it just set a "syncNeeded" flag and trigger a sync from another thread which isn't holding the lock (or from the same thread using a "logSyncIfNeeded" call).
> (credit to the FB branch for this idea)
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira