not_x_content_exception: Compressor detection error / body is not valid content
ElasticsearchЧто это значит?
Elasticsearch не смог распознать тело запроса как корректное структурированное содержимое (XContent, например JSON). Отправленные данные не в ожидаемом формате или повреждены.
Почему возникает?
Тело запроса — некорректный JSON; неверный или отсутствующий заголовок Content-Type (не отправлен application/json); тело случайно отправлено в сжатом/двоичном виде; либо обычный JSON отправлен в конечные точки вроде _bulk, ожидающие JSON с разделением по строкам (NDJSON). Ошибки экранирования/кодировки также вызывают эту ошибку.
Как исправить
Убедитесь, что тело запроса — корректный JSON, и отправляйте заголовок Content-Type: application/json. Для конечной точки _bulk используйте NDJSON, где каждая строка — отдельный объект JSON, а последняя строка завершается символом новой строки (Content-Type: application/x-ndjson). Убедитесь, что клиентская библиотека корректно сериализует тело. Если используете сжатие, отправляйте соответствующий заголовок Content-Encoding.
Ещё по этой СУБД
- index_template_missing_exceptionIndex template is missing
- settings_exceptionInvalid settings
- shard_not_found_exceptionShard not found
- document_source_missing_exceptionDocument source is missing
- node_not_connected_exceptionNode is not connected
- receive_timeout_transport_exceptionRequest timed out waiting for a response from another node
- routing_missing_exceptionRouting value is required for this document