Conversation
…avoid adding type to search path
Ensure the search request body sent to Elasticsearch is valid JSON and matches the user-provided search configuration.
Stop appending the legacy type segment into the search path (use /{index}/_search). This avoids incorrect pathing on ES 7+ where types are deprecated and can cause missed hits.
Add useful logging to help debug endpoint, query and failed responses.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Commit description Summary
Motivation
ESKey.getQuery(...)used the configuration object’stoString()(or similar) which did not necessarily produce a valid ES JSON body. As a result, queries that worked with curl (sending raw JSON) returned no results when run through the plugin.typein configuration; adding type to the request path can result in requests to/index/type/_search, which is deprecated and may not route to the expected documents in newer ES versions. Removing type from the path and always using/{index}/_searchmakes behavior consistent with curl and modern ES.Extra logging helps confirm which endpoint is contacted and what JSON payload is being sent, and prints ES response details when a request fails.