Author: mduerig
Date: Wed Apr 20 10:05:26 2016
New Revision: 1740100
URL: http://svn.apache.org/viewvc?rev=1740100&view=rev
Log:
OAK-4147: TarReader#loadGraph wrongly detects segment graph as corrupt
Modified:
jackrabbit/oak/trunk/oak-segment-next/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/TarReader.java
Modified:
jackrabbit/oak/trunk/oak-segment-next/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/TarReader.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment-next/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/TarReader.java?rev=1740100&r1=1740099&r2=1740100&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-segment-next/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/TarReader.java
(original)
+++
jackrabbit/oak/trunk/oak-segment-next/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/TarReader.java
Wed Apr 20 10:05:26 2016
@@ -900,7 +900,7 @@ class TarReader implements Closeable {
*/
private ByteBuffer loadGraph() throws IOException {
// read the graph metadata just before the tar index entry
- int pos = access.length() - 2 * BLOCK_SIZE -
getEntrySize(index.remaining());
+ int pos = access.length() - 2 * BLOCK_SIZE -
getEntrySize(index.remaining() + 16);
ByteBuffer meta = access.read(pos - 16, 16);
int crc32 = meta.getInt();
int count = meta.getInt();