Repository: activemq
Updated Branches:
  refs/heads/master 4e63ee7cc -> 9de3fff1f


Fixes AMQ-5404: LevelDB files not being released after deletion

Project: http://git-wip-us.apache.org/repos/asf/activemq/repo
Commit: http://git-wip-us.apache.org/repos/asf/activemq/commit/9de3fff1
Tree: http://git-wip-us.apache.org/repos/asf/activemq/tree/9de3fff1
Diff: http://git-wip-us.apache.org/repos/asf/activemq/diff/9de3fff1

Branch: refs/heads/master
Commit: 9de3fff1f5c7741e8b22d821aadc4225cd3500a4
Parents: 4e63ee7
Author: Hiram Chirino <[email protected]>
Authored: Mon Dec 21 11:18:08 2015 -0500
Committer: Hiram Chirino <[email protected]>
Committed: Mon Dec 21 11:18:08 2015 -0500

----------------------------------------------------------------------
 .../src/main/scala/org/apache/activemq/leveldb/RecordLog.scala | 6 ++++++
 1 file changed, 6 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/activemq/blob/9de3fff1/activemq-leveldb-store/src/main/scala/org/apache/activemq/leveldb/RecordLog.scala
----------------------------------------------------------------------
diff --git 
a/activemq-leveldb-store/src/main/scala/org/apache/activemq/leveldb/RecordLog.scala
 
b/activemq-leveldb-store/src/main/scala/org/apache/activemq/leveldb/RecordLog.scala
index 1ab66ce..c9b7916 100644
--- 
a/activemq-leveldb-store/src/main/scala/org/apache/activemq/leveldb/RecordLog.scala
+++ 
b/activemq-leveldb-store/src/main/scala/org/apache/activemq/leveldb/RecordLog.scala
@@ -155,6 +155,12 @@ case class RecordLog(directory: File, logSuffix:String) {
           onDelete(info.file)
           onDelete(id)
           log_infos.remove(id)
+          reader_cache.synchronized {
+            val reader = reader_cache.remove(info.file);
+            if( reader!=null ) {
+              reader.release();
+            }
+          }
         }
       }
     }

Reply via email to