You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-issues@hadoop.apache.org by "Ted Yu (JIRA)" <ji...@apache.org> on 2015/01/29 02:10:35 UTC
[jira] [Updated] (HADOOP-11494) Lock acquisition on
WrappedInputStream#unwrappedRpcBuffer may race with another thread
[ https://issues.apache.org/jira/browse/HADOOP-11494?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ted Yu updated HADOOP-11494:
----------------------------
Attachment: hadoop-11494-001.patch
Please take a look at patch v1 which synchronizes on an Object instead of the ByteBuffer
> Lock acquisition on WrappedInputStream#unwrappedRpcBuffer may race with another thread
> --------------------------------------------------------------------------------------
>
> Key: HADOOP-11494
> URL: https://issues.apache.org/jira/browse/HADOOP-11494
> Project: Hadoop Common
> Issue Type: Bug
> Reporter: Ted Yu
> Priority: Minor
> Attachments: hadoop-11494-001.patch
>
>
> In SaslRpcClient, starting at line 576:
> {code}
> public int read(byte[] buf, int off, int len) throws IOException {
> synchronized(unwrappedRpcBuffer) {
> // fill the buffer with the next RPC message
> if (unwrappedRpcBuffer.remaining() == 0) {
> readNextRpcPacket();
> }
> {code}
> readNextRpcPacket() may assign another ByteBuffer to unwrappedRpcBuffer, making the lock on previous ByteBuffer not useful.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)