From 4c366e571aa6962755bd9d9470df2ec3fd8e2565 Mon Sep 17 00:00:00 2001
From: Yannick Lecaillez <ylecaillez@forgerock.com>
Date: Wed, 09 Dec 2015 13:42:55 +0000
Subject: [PATCH] OPENDJ-2526: NegativeArraySizeException in OnDiskMergeImporter during OpenAM embedded DJ upgrade (DJ 2.6 -> 3.0)
---
opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/OnDiskMergeImporter.java | 12 ++++++------
1 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/OnDiskMergeImporter.java b/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/OnDiskMergeImporter.java
index 76ff156..ad6f42b 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/OnDiskMergeImporter.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/OnDiskMergeImporter.java
@@ -2656,7 +2656,7 @@
}
/** Buffer used by {@link InMemorySortedChunk} to store and sort data. */
- private interface Buffer extends Closeable
+ interface Buffer extends Closeable
{
void writeInt(int position, int value);
@@ -2764,7 +2764,7 @@
}
/** Off-heap buffer using Unsafe memory access. */
- private final class OffHeapBuffer implements Buffer
+ static final class OffHeapBuffer implements Buffer
{
private final long address;
private final int size;
@@ -2774,7 +2774,7 @@
@Override
public int read() throws IOException
{
- return unsafe.getByte(address + position++);
+ return unsafe.getByte(address + position++) & 0xFF;
}
};
private final OutputStream asOutputStream = new OutputStream()
@@ -2878,7 +2878,7 @@
}
@Override
- public void close() throws IOException
+ public void close()
{
if (!closed)
{
@@ -2888,8 +2888,8 @@
}
}
- /** Off-heap buffer using Unsafe memory access. */
- private final class HeapBuffer implements Buffer
+ /** Heap buffer using ByteBuffer. */
+ static final class HeapBuffer implements Buffer
{
private final ByteBuffer buffer;
private final OutputStream asOutputStream = new OutputStream()
--
Gitblit v1.10.0