I've been experimenting with Chronicle Queue 4.5.27. We are running some tests on a Windows 7x64 VM (Java x64) and sometimes it seems like Chronicle Queue will not ever release the first file that it creates.
We are configured with MINUTELY roll cycles. 1-3 threads can write and there is a single consumer processing on the other end. I register a StoreFileListener
to listen for the onReleased
event and I groom the file from there (on Windows it tries a few times because of the known issue with mmap files).
The issue is that I never get a notification about the first file the queue creates and a heap dump shows that someone is holding on to the MappedByteBuffer; otherwise the Queue is working as expected. Is there any reason this might happen?
E.g. I'll see something like this on disk after a while:
20170705-2000.cq4
20170705-2008.cq4
20170705-2009.cq4
Thanks!
( I think ) This is now fixed in the latest version.