Я пытаюсь перевести нашу реализацию поиска в режиме гибернации с файловых индексов lucene наasticsearch, но не совсем понимаю документацию. В частности, для стратегии управления схемой индекса NONE:
Индекс, его отображения и определения анализатора не будут созданы, удалены или изменены. Hibernate Search даже не проверит, что индекс уже существует.
Мы хотим удалить зависание при запуске поиска в режиме гибернации (чтобы при запуске он не пытался запрашивать эластичный поиск). Чтение стратегий управления схемами указывает на то, что NONE должен это делать.
Однако, глядя на реализацию кода, я вижу, что он все еще явно проверяет, существует ли индекс:
if (this.schemaManagementStrategy == IndexSchemaManagementStrategy.NONE) {
this.schemaCreator.checkIndexExists(this.actualIndexName, this.schemaManagementExecutionOptions);
return false;
}
Я бы ожидал, что этого не произойдет. Когда я ввел заведомо неверный хост для подключения, при запуске сервера все равно происходит сбой:
Request:
========
Operation: IndicesExists
URI: registryreference
Data:
null
Response:
=========
null
at org.hibernate.search.elasticsearch.client.impl.JestClient.executeRequest(JestClient.java:188) ~[hibernate-search-elasticsearch-5.6.5.Final.jar:5.6.5.Final]
... (omitted rest of stack)
Caused by: java.net.ConnectException: Connection refused: connect
Мы используем hibernate-поиск 5.6.5 иasticsearch 2.4.6.