1
我一直在試驗編年史隊列4.5.27。我們在Windows 7x64 VM(Java x64)上運行一些測試,有時候Chronicle Queue似乎永遠不會釋放它創建的第一個文件。編年史隊列不釋放第一個文件
我們配置了MINUTELY滾動循環。 1-3線程可以寫入,另一端有單個消費者處理。我註冊了一個StoreFileListener
來監聽onReleased
事件,並從那裏修改文件(在Windows上,由於mmap文件已知問題,它會嘗試幾次)。
問題是我從來沒有收到有關隊列創建的第一個文件的通知,堆轉儲顯示有人正在持有MappedByteBuffer;否則隊列按預期工作。這有可能發生嗎?
E.g.過了一段時間我會看到像這樣的盤:
20170705-2000.cq4
20170705-2008.cq4
20170705-2009.cq4
謝謝!
所以這是一個已知的問題?還有其他情況下文件可能不會被釋放,如果是的話,他們修復了最新版本? – akagixxer
@akagixxer有一些ThreadLocal引用持有這些文件。這在github中提供的版本中已修復。 –
哪個是固定的版本號? – Krishas