Author: adulceanu
Date: Thu Aug 15 12:21:54 2019
New Revision: 1865218
URL: http://svn.apache.org/viewvc?rev=1865218&view=rev
Log:
OAK-8531 - Reading Azure Journal File while it's modified fails
Modified:
jackrabbit/oak/trunk/oak-segment-azure/src/main/java/org/apache/jackrabbit/oak/segment/azure/ReverseFileReader.java
Modified:
jackrabbit/oak/trunk/oak-segment-azure/src/main/java/org/apache/jackrabbit/oak/segment/azure/ReverseFileReader.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment-azure/src/main/java/org/apache/jackrabbit/oak/segment/azure/ReverseFileReader.java?rev=1865218&r1=1865217&r2=1865218&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-segment-azure/src/main/java/org/apache/jackrabbit/oak/segment/azure/ReverseFileReader.java
(original)
+++
jackrabbit/oak/trunk/oak-segment-azure/src/main/java/org/apache/jackrabbit/oak/segment/azure/ReverseFileReader.java
Thu Aug 15 12:21:54 2019
@@ -16,6 +16,7 @@
*/
package org.apache.jackrabbit.oak.segment.azure;
+import com.microsoft.azure.storage.OperationContext;
import com.microsoft.azure.storage.StorageException;
import com.microsoft.azure.storage.blob.CloudBlob;
@@ -23,6 +24,7 @@ import java.io.IOException;
import java.nio.charset.Charset;
import java.util.ArrayList;
import java.util.Collections;
+import java.util.HashMap;
import java.util.List;
import static java.lang.Math.min;
@@ -65,7 +67,11 @@ public class ReverseFileReader {
if (buffer.length > 0) {
fileOffset -= buffer.length;
try {
- blob.downloadRangeToByteArray(fileOffset,
Long.valueOf(buffer.length), buffer, 0);
+ OperationContext opContext = new OperationContext();
+ HashMap<String, String> userHeaders = new HashMap<>();
+ userHeaders.put("If-Match", "*");
+ opContext.setUserHeaders(userHeaders);
+ blob.downloadRangeToByteArray(fileOffset,
Long.valueOf(buffer.length), buffer, 0, null, null, opContext);
} catch (StorageException e) {
throw new IOException(e);
}