Я экспериментировал с Chronicle Queue 4.5.27. Мы проводим некоторые тесты на виртуальной машине Windows 7x64 (Java x64), и иногда кажется, что Chronicle Queue никогда не выпустит первый созданный файл.
Мы настроены на МИНУТНЫЕ циклы рулона. 1-3 потока могут писать, а на другом конце находится один потребитель. Я регистрирую StoreFileListener
для прослушивания события onReleased
и обрабатываю файл оттуда (в Windows он пытается несколько раз из-за известной проблемы с файлами mmap).
Проблема в том, что я никогда не получаю уведомления о первом файле, созданном очередью, а дамп кучи показывает, что кто-то держит MappedByteBuffer; в противном случае очередь работает должным образом. Есть ли причина, по которой это может произойти?
Например. Через некоторое время я увижу что-то подобное на диске:
20170705-2000.cq4
20170705-2008.cq4
20170705-2009.cq4
Спасибо!