You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Operating system version: Microsoft Windows 10 Enterprise v10.0.19043.0
Description of the problem including expected versus actual behavior:
Creating UpdateByQueryRequest with Slices to specify slice number constructs incorrect request querystring parameter leading to failure
Steps to reproduce:
Code snip:
var updateByQueryRequest = new UpdateByQueryRequest("IndexName")
{
WaitForCompletion = false,
Query = updateByQuery,
Slices = new Slices(SlicesCalculation.Auto) //Buggy part
}
Elastic.Clients.Elasticsearch version: 8.14.7
Elasticsearch version: 8.10.2
.NET runtime version: 4.8.04084
Operating system version: Microsoft Windows 10 Enterprise v10.0.19043.0
Description of the problem including expected versus actual behavior:
Creating UpdateByQueryRequest with Slices to specify slice number constructs incorrect request querystring parameter leading to failure
Steps to reproduce:
Code snip:
var updateByQueryRequest = new UpdateByQueryRequest("IndexName")
{
WaitForCompletion = false,
Query = updateByQuery,
Slices = new Slices(SlicesCalculation.Auto) //Buggy part
}
The debug information revealed that the request endpoint is not created right.
FailureReason: BadResponse while attempting POST on https://ESHost:9200/IndexName/_update_by_query?pretty=true&error_trace=true&wait_for_completion=false&slices=Elastic.Clients.Elasticsearch.Slices
Expected behavior
Below is the expected endpoint with correct request query string parameter value for slices.
https://ESHost:9200/IndexName/_update_by_query?pretty=true&error_trace=true&wait_for_completion=false&slices=auto
Provide
ConnectionSettings
(if relevant):Provide
DebugInformation
(if relevant):Response part from DebugInformation
{
"error" : {
"root_cause" : [
{
"type" : "illegal_argument_exception",
"reason" : "[slices] must be a positive integer or the string "auto", but was [Elastic.Clients.Elasticsearch.Slices]",
"stack_trace" : "org.elasticsearch.ElasticsearchException$1: [slices] must be a positive integer or the string "auto", but was [Elastic.Clients.Elasticsearch.Slices]\n\tat [email protected]/org.elasticsearch.ElasticsearchException.guessRootCauses(ElasticsearchException.java:667)\n\tat [email protected]/org.elasticsearch.ElasticsearchException.generateFailureXContent(ElasticsearchException.java:595)\n\tat [email protected]/org.elasticsearch.rest.RestResponse.build(RestResponse.java:176)\n\tat [email protected]/org.elasticsearch.rest.RestResponse.(RestResponse.java:124)\n\tat [email protected]/org.elasticsearch.rest.RestResponse.(RestResponse.java:103)\n\tat [email protected]/org.elasticsearch.xpack.security.rest.SecurityRestFilter.handleException(SecurityRestFilter.java:108)\n\tat [email protected]/org.elasticsearch.xpack.security.rest.SecurityRestFilter.lambda$handleRequest$1(SecurityRestFilter.java:88)\n\tat [email protected]/org.elasticsearch.action.ActionListenerImplementations.safeAcceptException(ActionListenerImplementations.java:62)\n\tat [email protected]/org.elasticsearch.action.ActionListener$2.onFailure(ActionListener.java:185)\n\tat [email protected]/org.elasticsearch.action.ActionListener$2.onResponse(ActionListener.java:179)\n\tat [email protected]/org.elasticsearch.xpack.security.authc.support.SecondaryAuthenticator.lambda$authenticateAndAttachToContext$3(SecondaryAuthenticator.java:99)\n\tat [email protected]/org.elasticsearch.action.ActionListenerImplementations$ResponseWrappingActionListener.onResponse(ActionListenerImplementations.java:236)\n\tat [email protected]/org.elasticsearch.xpack.security.authc.support.SecondaryAuthenticator.authenticate(SecondaryAuthenticator.java:109)\n\tat [email protected]/org.elasticsearch.xpack.security.authc.support.SecondaryAuthenticator.authenticateAndAttachToContext(SecondaryAuthenticator.java:90)\n\tat [email protected]/org.elasticsearch.xpack.security.rest.SecurityRestFilter.handleRequest(SecurityRestFilter.java:82)\n\tat [email protected]/org.elasticsearch.rest.RestController.dispatchRequest(RestController.java:415)\n\tat [email protected]/org.elasticsearch.rest.RestController.tryAllHandlers(RestController.java:544)\n\tat [email protected]/org.elasticsearch.rest.RestController.dispatchRequest(RestController.java:317)\n\tat [email protected]/org.elasticsearch.http.AbstractHttpServerTransport.dispatchRequest(AbstractHttpServerTransport.java:453)\n\tat [email protected]/org.elasticsearch.http.AbstractHttpServerTransport.handleIncomingRequest(AbstractHttpServerTransport.java:549)\n\tat [email protected]/org.elasticsearch.http.AbstractHttpServerTransport.incomingRequest(AbstractHttpServerTransport.java:426)\n\tat [email protected]/org.elasticsearch.http.netty4.Netty4HttpPipeliningHandler.handlePipelinedRequest(Netty4HttpPipeliningHandler.java:128)\n\tat [email protected]/org.elasticsearch.http.netty4.Netty4HttpPipeliningHandler.channelRead(Netty4HttpPipeliningHandler.java:118)\n\tat [email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:442)\n\tat [email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)\n\tat [email protected]/io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)\n\tat [email protected]/io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103)\n\tat [email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444)\n\tat [email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)\n\tat [email protected]/io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)\n\tat [email protected]/io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103)\n\tat [email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444)\n\tat [email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)\n\tat [email protected]/io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)\n\tat [email protected]/org.elasticsearch.http.netty4.Netty4HttpHeaderValidator.forwardData(Netty4HttpHeaderValidator.java:194)\n\tat [email protected]/org.elasticsearch.http.netty4.Netty4HttpHeaderValidator.forwardFullRequest(Netty4HttpHeaderValidator.java:137)\n\tat [email protected]/org.elasticsearch.http.netty4.Netty4HttpHeaderValidator.lambda$requestStart$1(Netty4HttpHeaderValidator.java:120)\n\tat [email protected]/io.netty.util.concurrent.PromiseTask.runTask(PromiseTask.java:98)\n\tat [email protected]/io.netty.util.concurrent.PromiseTask.run(PromiseTask.java:106)\n\tat [email protected]/io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:174)\n\tat [email protected]/io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:167)\n\tat [email protected]/io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:470)\n\tat [email protected]/io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:566)\n\tat [email protected]/io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)\n\tat [email protected]/io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)\n\tat java.base/java.lang.Thread.run(Thread.java:1623)\nCaused by: java.lang.IllegalArgumentException: [slices] must be a positive integer or the string "auto", but was [Elastic.Clients.Elasticsearch.Slices]\n\tat org.elasticsearch.reindex.AbstractBaseReindexRestHandler.parseSlices(AbstractBaseReindexRestHandler.java:135)\n\tat org.elasticsearch.reindex.AbstractBaseReindexRestHandler.setCommonOptions(AbstractBaseReindexRestHandler.java:88)\n\tat org.elasticsearch.reindex.AbstractBaseReindexRestHandler.doPrepareRequest(AbstractBaseReindexRestHandler.java:45)\n\tat org.elasticsearch.reindex.RestUpdateByQueryAction.prepareRequest(RestUpdateByQueryAction.java:54)\n\tat [email protected]/org.elasticsearch.rest.BaseRestHandler.handleRequest(BaseRestHandler.java:80)\n\tat [email protected]/org.elasticsearch.xpack.security.rest.SecurityRestFilter.doHandleRequest(SecurityRestFilter.java:96)\n\tat [email protected]/org.elasticsearch.xpack.security.rest.SecurityRestFilter.lambda$handleRequest$0(SecurityRestFilter.java:87)\n\tat [email protected]/org.elasticsearch.action.ActionListener$2.onResponse(ActionListener.java:177)\n\t... 36 more\nCaused by: java.lang.NumberFormatException: For input string: "Elastic.Clients.Elasticsearch.Slices"\n\tat java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:67)\n\tat java.base/java.lang.Integer.parseInt(Integer.java:665)\n\tat java.base/java.lang.Integer.parseInt(Integer.java:781)\n\tat org.elasticsearch.reindex.AbstractBaseReindexRestHandler.parseSlices(AbstractBaseReindexRestHandler.java:133)\n\t... 43 more\n"
}
],
"type" : "illegal_argument_exception",
"reason" : "[slices] must be a positive integer or the string "auto", but was [Elastic.Clients.Elasticsearch.Slices]",
"caused_by" : {
"type" : "number_format_exception",
"reason" : "For input string: "Elastic.Clients.Elasticsearch.Slices"",
"stack_trace" : "java.lang.NumberFormatException: For input string: "Elastic.Clients.Elasticsearch.Slices"\n\tat java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:67)\n\tat java.base/java.lang.Integer.parseInt(Integer.java:665)\n\tat java.base/java.lang.Integer.parseInt(Integer.java:781)\n\tat org.elasticsearch.reindex.AbstractBaseReindexRestHandler.parseSlices(AbstractBaseReindexRestHandler.java:133)\n\tat org.elasticsearch.reindex.AbstractBaseReindexRestHandler.setCommonOptions(AbstractBaseReindexRestHandler.java:88)\n\tat org.elasticsearch.reindex.AbstractBaseReindexRestHandler.doPrepareRequest(AbstractBaseReindexRestHandler.java:45)\n\tat org.elasticsearch.reindex.RestUpdateByQueryAction.prepareRequest(RestUpdateByQueryAction.java:54)\n\tat [email protected]/org.elasticsearch.rest.BaseRestHandler.handleRequest(BaseRestHandler.java:80)\n\tat [email protected]/org.elasticsearch.xpack.security.rest.SecurityRestFilter.doHandleRequest(SecurityRestFilter.java:96)\n\tat [email protected]/org.elasticsearch.xpack.security.rest.SecurityRestFilter.lambda$handleRequest$0(SecurityRestFilter.java:87)\n\tat [email protected]/org.elasticsearch.action.ActionListener$2.onResponse(ActionListener.java:177)\n\tat [email protected]/org.elasticsearch.xpack.security.authc.support.SecondaryAuthenticator.lambda$authenticateAndAttachToContext$3(SecondaryAuthenticator.java:99)\n\tat [email protected]/org.elasticsearch.action.ActionListenerImplementations$ResponseWrappingActionListener.onResponse(ActionListenerImplementations.java:236)\n\tat [email protected]/org.elasticsearch.xpack.security.authc.support.SecondaryAuthenticator.authenticate(SecondaryAuthenticator.java:109)\n\tat [email protected]/org.elasticsearch.xpack.security.authc.support.SecondaryAuthenticator.authenticateAndAttachToContext(SecondaryAuthenticator.java:90)\n\tat [email protected]/org.elasticsearch.xpack.security.rest.SecurityRestFilter.handleRequest(SecurityRestFilter.java:82)\n\tat [email protected]/org.elasticsearch.rest.RestController.dispatchRequest(RestController.java:415)\n\tat [email protected]/org.elasticsearch.rest.RestController.tryAllHandlers(RestController.java:544)\n\tat [email protected]/org.elasticsearch.rest.RestController.dispatchRequest(RestController.java:317)\n\tat [email protected]/org.elasticsearch.http.AbstractHttpServerTransport.dispatchRequest(AbstractHttpServerTransport.java:453)\n\tat [email protected]/org.elasticsearch.http.AbstractHttpServerTransport.handleIncomingRequest(AbstractHttpServerTransport.java:549)\n\tat [email protected]/org.elasticsearch.http.AbstractHttpServerTransport.incomingRequest(AbstractHttpServerTransport.java:426)\n\tat [email protected]/org.elasticsearch.http.netty4.Netty4HttpPipeliningHandler.handlePipelinedRequest(Netty4HttpPipeliningHandler.java:128)\n\tat [email protected]/org.elasticsearch.http.netty4.Netty4HttpPipeliningHandler.channelRead(Netty4HttpPipeliningHandler.java:118)\n\tat [email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:442)\n\tat [email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)\n\tat [email protected]/io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)\n\tat [email protected]/io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103)\n\tat [email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444)\n\tat [email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)\n\tat [email protected]/io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)\n\tat [email protected]/io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103)\n\tat [email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444)\n\tat [email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)\n\tat [email protected]/io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)\n\tat [email protected]/org.elasticsearch.http.netty4.Netty4HttpHeaderValidator.forwardData(Netty4HttpHeaderValidator.java:194)\n\tat [email protected]/org.elasticsearch.http.netty4.Netty4HttpHeaderValidator.forwardFullRequest(Netty4HttpHeaderValidator.java:137)\n\tat [email protected]/org.elasticsearch.http.netty4.Netty4HttpHeaderValidator.lambda$requestStart$1(Netty4HttpHeaderValidator.java:120)\n\tat [email protected]/io.netty.util.concurrent.PromiseTask.runTask(PromiseTask.java:98)\n\tat [email protected]/io.netty.util.concurrent.PromiseTask.run(PromiseTask.java:106)\n\tat [email protected]/io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:174)\n\tat [email protected]/io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:167)\n\tat [email protected]/io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:470)\n\tat [email protected]/io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:566)\n\tat [email protected]/io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)\n\tat [email protected]/io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)\n\tat java.base/java.lang.Thread.run(Thread.java:1623)\n"
},
"stack_trace" : "java.lang.IllegalArgumentException: [slices] must be a positive integer or the string "auto", but was [Elastic.Clients.Elasticsearch.Slices]\n\tat org.elasticsearch.reindex.AbstractBaseReindexRestHandler.parseSlices(AbstractBaseReindexRestHandler.java:135)\n\tat org.elasticsearch.reindex.AbstractBaseReindexRestHandler.setCommonOptions(AbstractBaseReindexRestHandler.java:88)\n\tat org.elasticsearch.reindex.AbstractBaseReindexRestHandler.doPrepareRequest(AbstractBaseReindexRestHandler.java:45)\n\tat org.elasticsearch.reindex.RestUpdateByQueryAction.prepareRequest(RestUpdateByQueryAction.java:54)\n\tat [email protected]/org.elasticsearch.rest.BaseRestHandler.handleRequest(BaseRestHandler.java:80)\n\tat [email protected]/org.elasticsearch.xpack.security.rest.SecurityRestFilter.doHandleRequest(SecurityRestFilter.java:96)\n\tat [email protected]/org.elasticsearch.xpack.security.rest.SecurityRestFilter.lambda$handleRequest$0(SecurityRestFilter.java:87)\n\tat [email protected]/org.elasticsearch.action.ActionListener$2.onResponse(ActionListener.java:177)\n\tat [email protected]/org.elasticsearch.xpack.security.authc.support.SecondaryAuthenticator.lambda$authenticateAndAttachToContext$3(SecondaryAuthenticator.java:99)\n\tat [email protected]/org.elasticsearch.action.ActionListenerImplementations$ResponseWrappingActionListener.onResponse(ActionListenerImplementations.java:236)\n\tat [email protected]/org.elasticsearch.xpack.security.authc.support.SecondaryAuthenticator.authenticate(SecondaryAuthenticator.java:109)\n\tat [email protected]/org.elasticsearch.xpack.security.authc.support.SecondaryAuthenticator.authenticateAndAttachToContext(SecondaryAuthenticator.java:90)\n\tat [email protected]/org.elasticsearch.xpack.security.rest.SecurityRestFilter.handleRequest(SecurityRestFilter.java:82)\n\tat [email protected]/org.elasticsearch.rest.RestController.dispatchRequest(RestController.java:415)\n\tat [email protected]/org.elasticsearch.rest.RestController.tryAllHandlers(RestController.java:544)\n\tat [email protected]/org.elasticsearch.rest.RestController.dispatchRequest(RestController.java:317)\n\tat [email protected]/org.elasticsearch.http.AbstractHttpServerTransport.dispatchRequest(AbstractHttpServerTransport.java:453)\n\tat [email protected]/org.elasticsearch.http.AbstractHttpServerTransport.handleIncomingRequest(AbstractHttpServerTransport.java:549)\n\tat [email protected]/org.elasticsearch.http.AbstractHttpServerTransport.incomingRequest(AbstractHttpServerTransport.java:426)\n\tat [email protected]/org.elasticsearch.http.netty4.Netty4HttpPipeliningHandler.handlePipelinedRequest(Netty4HttpPipeliningHandler.java:128)\n\tat [email protected]/org.elasticsearch.http.netty4.Netty4HttpPipeliningHandler.channelRead(Netty4HttpPipeliningHandler.java:118)\n\tat [email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:442)\n\tat [email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)\n\tat [email protected]/io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)\n\tat [email protected]/io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103)\n\tat [email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444)\n\tat [email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)\n\tat [email protected]/io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)\n\tat [email protected]/io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103)\n\tat [email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444)\n\tat [email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)\n\tat [email protected]/io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)\n\tat [email protected]/org.elasticsearch.http.netty4.Netty4HttpHeaderValidator.forwardData(Netty4HttpHeaderValidator.java:194)\n\tat [email protected]/org.elasticsearch.http.netty4.Netty4HttpHeaderValidator.forwardFullRequest(Netty4HttpHeaderValidator.java:137)\n\tat [email protected]/org.elasticsearch.http.netty4.Netty4HttpHeaderValidator.lambda$requestStart$1(Netty4HttpHeaderValidator.java:120)\n\tat [email protected]/io.netty.util.concurrent.PromiseTask.runTask(PromiseTask.java:98)\n\tat [email protected]/io.netty.util.concurrent.PromiseTask.run(PromiseTask.java:106)\n\tat [email protected]/io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:174)\n\tat [email protected]/io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:167)\n\tat [email protected]/io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:470)\n\tat [email protected]/io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:566)\n\tat [email protected]/io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)\n\tat [email protected]/io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)\n\tat java.base/java.lang.Thread.run(Thread.java:1623)\nCaused by: java.lang.NumberFormatException: For input string: "Elastic.Clients.Elasticsearch.Slices"\n\tat java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:67)\n\tat java.base/java.lang.Integer.parseInt(Integer.java:665)\n\tat java.base/java.lang.Integer.parseInt(Integer.java:781)\n\tat org.elasticsearch.reindex.AbstractBaseReindexRestHandler.parseSlices(AbstractBaseReindexRestHandler.java:133)\n\t... 43 more\n"
},
"status" : 400
}
TCP states:
Established: 11
TimeWait: 1
ThreadPool statistics:
Worker:
Busy: 1
Free: 32766
Min: 12
Max: 32767
IOCP:
Busy: 0
Free: 1000
Min: 1
Max: 1000
The text was updated successfully, but these errors were encountered: