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 "Thomas (JIRA)" <ji...@apache.org> on 2017/06/19 22:13:00 UTC

[jira] [Updated] (HADOOP-14546) [WASB] Concurrent I/O does not work when secure.mode is enabled.

     [ https://issues.apache.org/jira/browse/HADOOP-14546?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Thomas updated HADOOP-14546:
----------------------------
    Attachment: HADOOP-14546.001.patch

Attaching patch "HADOOP-14546.001.patch".

> [WASB] Concurrent I/O does not work when secure.mode is enabled.
> ----------------------------------------------------------------
>
>                 Key: HADOOP-14546
>                 URL: https://issues.apache.org/jira/browse/HADOOP-14546
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: fs/azure
>    Affects Versions: 2.9.0, 3.0.0-alpha4
>            Reporter: Thomas
>            Assignee: Thomas
>             Fix For: 2.9.0, 3.0.0-alpha4
>
>         Attachments: HADOOP-14546.001.patch
>
>
> This change allows the concurrent I/O feature (fs.azure.io.read.tolerate.concurrent.append = true) to work when secure mode is enabled (fs.azure.secure.mode = true).
>     
> While running the test TestAzureConcurrentOutOfBandIo.testReadOOBWrites, I discovered that it fails when fs.azure.secure.mode = true with the error below:
>     
> com.microsoft.azure.storage.StorageException: The condition specified using HTTP conditional header(s) is not met. 
>   at com.microsoft.azure.storage.core.Utility.initIOException(Utility.java:733)
>   at com.microsoft.azure.storage.blob.BlobInputStream.dispatchRead(BlobInputStream.java:264)
>   at com.microsoft.azure.storage.blob.BlobInputStream.readInternal(BlobInputStream.java:448)
>   at com.microsoft.azure.storage.blob.BlobInputStream.read(BlobInputStream.java:420)
>   at java.io.BufferedInputStream.read1(BufferedInputStream.java:284)
>   at java.io.BufferedInputStream.read(BufferedInputStream.java:345)
>   at java.io.DataInputStream.read(DataInputStream.java:149)
>   at org.apache.hadoop.fs.azure.TestAzureConcurrentOutOfBandIo.testReadOOBWrites(TestAzureConcurrentOutOfBandIo.java:167)
>     
> There were a couple problems causing this failure:
>     
> 1) AzureNativeFileSystemStore.connectToAzureStorageInSecureMode was disabling concurrent I/O by setting fs.azure.io.read.tolerate.concurrent.append to false.
> 2) SendRequestIntercept was unnecessarily updating the SAS for the request.  Since this intercept only sets the request header "If-Match: *" to override the existing recondition, it is not necessary to update the SAS.
>     
> The above issues have been fixed and a new test case has been added so that testReadOOBWrites now runs both with and without secure mode enabled.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

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