Что произойдет, если создание индекса происходит, и я отправлю запрос на эластичный? - PullRequest
0 голосов
/ 20 февраля 2019

Я использую эластичный поиск 6.4 в AWS.

Библиотека: RestHighLevelClient

Создание индекса / отображения может занять несколько секунд / минут. doc говорит нам, что когда мы отправляем PutMappingRequest запрос, AcknowledgedResponse указывает, завершена ли операция до истечения времени ожидания ( true ) или может занятьэффект в ближайшее время ( false )

CreateIndexRequest request = new CreateIndexRequest("name");
request.mapping("type", JSON,  XContentType.JSON);
CreateIndexResponse response = client.indices().create(request, RequestOptions.DEFAULT);
boolean result = response.isAcknowledged();

Мой вопрос:

1) если isAcknowledged является false ,это означает, что индекс еще не создан.Так что же произойдет, если я отправлю JSON на эластик?Будет ли упругое использование моего сопоставления, которое "в процессе" ( из-за того, что AcknowledgedResponse был ложным ), или оно будет создано динамически?

Map dataMap = convertValue(jsn, Map.class);
IndexRequest indexRequest = new IndexRequest(indexName, docType).id(key).source(dataMap);
client.index(indexRequest, DEFAULT);

2)способ выяснить, является ли мой индекс "в процессе" или нет? (без запроса на отображение, просто чтобы узнать статус создания моего индекса) .A

3) Когда я отправляю create IndexRequest (когда я отправляю документ JSON в эластичный файл для его сохранения), не могу ли я передать сопоставление этому запросу?Просто не создавать динамическое отображение?

...