hadoop-common-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Chris Nauroth (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HADOOP-13726) Enforce that FileSystem initializes only a single instance of the requested FileSystem.
Date Mon, 10 Apr 2017 21:44:41 GMT

    [ https://issues.apache.org/jira/browse/HADOOP-13726?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15963519#comment-15963519

Chris Nauroth commented on HADOOP-13726:

Thank you, [~manju_hadoop]!  Your last comment looks to me like a good way to go.  Please
feel free to attach a patch file as described in the [HowToContribute|https://wiki.apache.org/hadoop/HowToContribute]
wiki page.

bq. ...if the thread which succeeded in getting the lock throws an exception during FileSystem
initialization, then all other threads waiting for the result will get ExecutionException
and wouldnot retry serially...

It's good that you remapped the {{ExecutionException}} back to {{IOException}} in your example.
 Typical callers are equipped to handle an {{IOException}}.  I think this is acceptable, as
there has never been any stated contract around {{FileSystem#get}} retrying internally.  Calling
code that wants to be resilient against transient failure already must have retry logic of
its own.

> Enforce that FileSystem initializes only a single instance of the requested FileSystem.
> ---------------------------------------------------------------------------------------
>                 Key: HADOOP-13726
>                 URL: https://issues.apache.org/jira/browse/HADOOP-13726
>             Project: Hadoop Common
>          Issue Type: Improvement
>          Components: fs
>            Reporter: Chris Nauroth
>            Assignee: Manjunath Anand
> The {{FileSystem}} cache is intended to guarantee reuse of instances by multiple call
sites or multiple threads.  The current implementation does provide this guarantee, but there
is a brief race condition window during which multiple threads could perform redundant initialization.
 If the file system implementation has expensive initialization logic, then this is wasteful.
 This issue proposes to eliminate that race condition and guarantee initialization of only
a single instance.

This message was sent by Atlassian JIRA

To unsubscribe, e-mail: common-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: common-issues-help@hadoop.apache.org

View raw message