Author: frm
Date: Mon Apr 25 11:52:55 2016
New Revision: 1740818
URL: http://svn.apache.org/viewvc?rev=1740818&view=rev
Log:
OAK-4211 - Close the file and release the memory mapped buffer in
FileAccess.Mapped#close()
Modified:
jackrabbit/oak/trunk/oak-segment-next/src/main/java/org/apache/jackrabbit/oak/segment/file/FileAccess.java
jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/FileAccess.java
Modified:
jackrabbit/oak/trunk/oak-segment-next/src/main/java/org/apache/jackrabbit/oak/segment/file/FileAccess.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment-next/src/main/java/org/apache/jackrabbit/oak/segment/file/FileAccess.java?rev=1740818&r1=1740817&r2=1740818&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-segment-next/src/main/java/org/apache/jackrabbit/oak/segment/file/FileAccess.java
(original)
+++
jackrabbit/oak/trunk/oak-segment-next/src/main/java/org/apache/jackrabbit/oak/segment/file/FileAccess.java
Mon Apr 25 11:52:55 2016
@@ -47,9 +47,12 @@ abstract class FileAccess {
*/
static class Mapped extends FileAccess {
- private final MappedByteBuffer buffer;
+ private final RandomAccessFile file;
+
+ private MappedByteBuffer buffer;
Mapped(RandomAccessFile file) throws IOException {
+ this.file = file;
this.buffer = file.getChannel().map(READ_ONLY, 0, file.length());
}
@@ -72,7 +75,9 @@ abstract class FileAccess {
}
@Override
- public void close() {
+ public void close() throws IOException {
+ buffer = null;
+ file.close();
}
}
Modified:
jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/FileAccess.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/FileAccess.java?rev=1740818&r1=1740817&r2=1740818&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/FileAccess.java
(original)
+++
jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/FileAccess.java
Mon Apr 25 11:52:55 2016
@@ -45,9 +45,12 @@ abstract class FileAccess {
*/
static class Mapped extends FileAccess {
- private final MappedByteBuffer buffer;
+ private final RandomAccessFile file;
+
+ private MappedByteBuffer buffer;
Mapped(RandomAccessFile file) throws IOException {
+ this.file = file;
this.buffer = file.getChannel().map(READ_ONLY, 0, file.length());
}
@@ -70,7 +73,9 @@ abstract class FileAccess {
}
@Override
- public void close() {
+ public void close() throws IOException {
+ buffer = null;
+ file.close();
}
}