hadoop-common-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sean Busbey (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HADOOP-11708) CryptoOutputStream synchronization differences from DFSOutputStream break HBase
Date Fri, 26 Jun 2015 18:30:06 GMT

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

Sean Busbey commented on HADOOP-11708:
--------------------------------------

This was the ticket that was left open for the thoughtful reworking of synchronization handling
and documentation of thread safety promises for the input and output streams.

If Hadoop is no longer interested in making those updates or if you'd prefer to have them
handled in a different jira, then there's nothing left to do on this ticket. But that's why
HADOOP-11710 was originally made a subtask rather than just done here.

> CryptoOutputStream synchronization differences from DFSOutputStream break HBase
> -------------------------------------------------------------------------------
>
>                 Key: HADOOP-11708
>                 URL: https://issues.apache.org/jira/browse/HADOOP-11708
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: fs
>    Affects Versions: 2.6.0
>            Reporter: Sean Busbey
>            Assignee: Sean Busbey
>            Priority: Critical
>
> For the write-ahead-log, HBase writes to DFS from a single thread and sends sync/flush/hflush
from a configurable number of other threads (default 5).
> FSDataOutputStream does not document anything about being thread safe, and it is not
thread safe for concurrent writes.
> However, DFSOutputStream is thread safe for concurrent writes + syncs. When it is the
stream FSDataOutputStream wraps, the combination is threadsafe for 1 writer and multiple syncs
(the exact behavior HBase relies on).
> When HDFS Transparent Encryption is turned on, CryptoOutputStream is inserted between
FSDataOutputStream and DFSOutputStream. It is proactively labeled as not thread safe, and
this composition is not thread safe for any operations.



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

Mime
View raw message