-
Notifications
You must be signed in to change notification settings - Fork 25.7k
Labels
:Search Foundations/SearchCatch all for Search FoundationsCatch all for Search Foundations>bugTeam:Search FoundationsMeta label for the Search Foundations team in ElasticsearchMeta label for the Search Foundations team in Elasticsearch
Description
Elasticsearch Version
main
Installed Plugins
No response
Java Version
bundled
OS Version
irrelevant
Problem Description
For an _msearch request, if the body uses null for index, there's a NPE that's bubbling up. This should be handled in a more user friendly way by rejecting the request with a 400 error message.
Steps to Reproduce
/_msearch request with body content as:
{"index": null}
{"query" : {"match_all" : {}}}
Gives an error
{
"error": {
"root_cause": [
{
"type": "null_pointer_exception",
"reason": "Cannot invoke \"Object.toString()\" because \"node\" is null"
}
],
"type": "null_pointer_exception",
"reason": "Cannot invoke \"Object.toString()\" because \"node\" is null"
},
"status": 500
}
Logs (if relevant)
[WARN ][r.suppressed ] [runTask-0] path: /employees/_msearch, params: {index=employees}, status: 500 java.lang.NullPointerException: Cannot invoke "Object.toString()" because "node" is null
at org.elasticsearch.server@9.1.0-SNAPSHOT/org.elasticsearch.common.xcontent.support.XContentMapValues.nodeStringArrayValue(XContentMapValues.java:571)
at org.elasticsearch.server@9.1.0-SNAPSHOT/org.elasticsearch.action.search.MultiSearchRequest.readMultiLineFormat(MultiSearchRequest.java:249)
at org.elasticsearch.server@9.1.0-SNAPSHOT/org.elasticsearch.rest.action.search.RestMultiSearchAction.parseMultiLineRequest(RestMultiSearchAction.java:190)
at org.elasticsearch.server@9.1.0-SNAPSHOT/org.elasticsearch.rest.action.search.RestMultiSearchAction.parseRequest(RestMultiSearchAction.java:133)
at org.elasticsearch.server@9.1.0-SNAPSHOT/org.elasticsearch.rest.action.search.RestMultiSearchAction.parseRequest(RestMultiSearchAction.java:98)
at org.elasticsearch.server@9.1.0-SNAPSHOT/org.elasticsearch.rest.action.search.RestMultiSearchAction.prepareRequest(RestMultiSearchAction.java:78)
at org.elasticsearch.server@9.1.0-SNAPSHOT/org.elasticsearch.rest.BaseRestHandler.handleRequest(BaseRestHandler.java:99)
at org.elasticsearch.server@9.1.0-SNAPSHOT/org.elasticsearch.rest.RestController$1.onResponse(RestController.java:468)
at org.elasticsearch.server@9.1.0-SNAPSHOT/org.elasticsearch.rest.RestController$1.onResponse(RestController.java:462)
at org.elasticsearch.security@9.1.0-SNAPSHOT/org.elasticsearch.xpack.security.rest.SecurityRestFilter.intercept(SecurityRestFilter.java:69)
at org.elasticsearch.server@9.1.0-SNAPSHOT/org.elasticsearch.rest.RestController.dispatchRequest(RestController.java:462)
at org.elasticsearch.server@9.1.0-SNAPSHOT/org.elasticsearch.rest.RestController.tryAllHandlers(RestController.java:626)
at org.elasticsearch.server@9.1.0-SNAPSHOT/org.elasticsearch.rest.RestController.dispatchRequest(RestController.java:309)
at org.elasticsearch.server@9.1.0-SNAPSHOT/org.elasticsearch.http.AbstractHttpServerTransport.dispatchRequest(AbstractHttpServerTransport.java:498)
at org.elasticsearch.server@9.1.0-SNAPSHOT/org.elasticsearch.http.AbstractHttpServerTransport.handleIncomingRequest(AbstractHttpServerTransport.java:581)
at org.elasticsearch.server@9.1.0-SNAPSHOT/org.elasticsearch.http.AbstractHttpServerTransport.incomingRequest(AbstractHttpServerTransport.java:461)
at org.elasticsearch.transport.netty4@9.1.0-SNAPSHOT/org.elasticsearch.http.netty4.Netty4HttpPipeliningHandler.handlePipelinedRequest(Netty4HttpPipeliningHandler.java:172)
at org.elasticsearch.transport.netty4@9.1.0-SNAPSHOT/org.elasticsearch.http.netty4.Netty4HttpPipeliningHandler.channelRead(Netty4HttpPipeliningHandler.java:147)
at io.netty.transport@4.1.118.Final/io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:442)
Metadata
Metadata
Assignees
Labels
:Search Foundations/SearchCatch all for Search FoundationsCatch all for Search Foundations>bugTeam:Search FoundationsMeta label for the Search Foundations team in ElasticsearchMeta label for the Search Foundations team in Elasticsearch