Как активировать контрольную точку зажигания перед выключением? - PullRequest
0 голосов
/ 12 октября 2018

У меня есть встроенный экземпляр Ignite в моем java-приложении.

Когда я закрываю свое приложение, Ignite корректно закрывается:

@PreDestroy
public void preDestroy() {
    log.info("Ignite Destroying...");
    ignite.close();
}

Я ожидаю, что во время операции "Ignite.close"все wal-файлы сбрасываются.Но этого не происходит, и когда я запускаю свое приложение, я вижу следующее:

Applying lost cache updates since last checkpoint record [lastMarked=FileWALPointer [idx=255, fileOff=52006828, len=99257], lastCheckpointId=ff637138-fb4f-4012-bce6-1728e6bf5162]

И мне нужно дождаться завершения этой операции.

Как вручную запустить контрольную точку walзакрытие приложения?

1 Ответ

0 голосов
/ 12 октября 2018

Вы можете использовать Ignition.stop(false), чтобы избежать остановки текущей контрольной точки.

К сожалению, единственный путь к force контрольной точке - деактивировать ваш кластер.

См. --deactivate control.sh команда.Вы также можете сделать это с кодом .

UPD: Я думаю, что другим способом принудительной установки контрольной точки является включение WAL в кеше, где она ранее была отключена, удобно.для процесса загрузки данных.

...