When I use es 5.4 I find datanode search.query_current= -1,and the value is unusual


(Liuguangmin) #1

when I use es 5.4 ,I run a long time, I find the datanode's search.query_current= -1,because -1 is a negative ,so the ES cluster console printf:
========================the first part =============
Caused by: org.elasticsearch.transport.RemoteTransportException: [datagrand-data-1][10.45.139.177:9300][cluster
:monitor/nodes/stats[n]]
Caused by: java.lang.IllegalStateException: Negative longs unsupported, use writeLong or writeZLong for negativ
e numbers [-1]
at org.elasticsearch.common.io.stream.StreamOutput.writeVLong(StreamOutput.java:219) ~[elasticsearch-5.
4.0.jar:5.4.0]
at org.elasticsearch.index.search.stats.SearchStats$Stats.writeTo(SearchStats.java:204) ~[elasticsearch
-5.4.0.jar:5.4.0]
at org.elasticsearch.index.search.stats.SearchStats.writeTo(SearchStats.java:353) ~[elasticsearch-5.4.0
.jar:5.4.0]
at org.elasticsearch.common.io.stream.StreamOutput.writeOptionalStreamable(StreamOutput.java:723) ~[ela
sticsearch-5.4.0.jar:5.4.0]
at org.elasticsearch.action.admin.indices.stats.CommonStats.writeTo(CommonStats.java:255) ~[elasticsear
ch-5.4.0.jar:5.4.0]
at org.elasticsearch.indices.NodeIndicesStats.writeTo(NodeIndicesStats.java:175) ~[elasticsearch-5.4.0.
jar:5.4.0]
at org.elasticsearch.action.admin.cluster.node.stats.NodeStats.writeTo(NodeStats.java:235) ~[elasticsea
rch-5.4.0.jar:5.4.0]
at org.elasticsearch.transport.TcpTransport.buildMessage(TcpTransport.java:1210) ~[elasticsearch-5.4.0.
jar:5.4.0]
at org.elasticsearch.transport.TcpTransport.sendResponse(TcpTransport.java:1154) ~[elasticsearch-5.4.0.
jar:5.4.0]
at org.elasticsearch.transport.TcpTransport.sendResponse(TcpTransport.java:1132) ~[elasticsearch-5.4.0.
jar:5.4.0]
at org.elasticsearch.transport.TcpTransportChannel.sendResponse(TcpTransportChannel.java:67) ~[elastics
earch-5.4.0.jar:5.4.0]
at org.elasticsearch.transport.TcpTransportChannel.sendResponse(TcpTransportChannel.java:61) ~[elastics
earch-5.4.0.jar:5.4.0]
at org.elasticsearch.transport.DelegatingTransportChannel.sendResponse(DelegatingTransportChannel.java:
60) ~[elasticsearch-5.4.0.jar:5.4.0]
at org.elasticsearch.transport.RequestHandlerRegistry$TransportChannelWrapper.sendResponse(RequestHandl
erRegistry.java:111) ~[elasticsearch-5.4.0.jar:5.4.0]
=====================the second part==========
[2017-05-27T14:42:43,808][WARN ][o.e.a.a.c.n.s.TransportNodesStatsAction] [datagrand-data-4] not accumulating e
xceptions, excluding exception from response
org.elasticsearch.action.FailedNodeException: Failed node [el9GeOaEREmcp_s33BX1YA]
at org.elasticsearch.action.support.nodes.TransportNodesAction$AsyncAction.onFailure(TransportNodesActi
on.java:246) ~[elasticsearch-5.4.0.jar:5.4.0]
at org.elasticsearch.action.support.nodes.TransportNodesAction$AsyncAction.access$200(TransportNodesAct
ion.java:160) ~[elasticsearch-5.4.0.jar:5.4.0]
at org.elasticsearch.action.support.nodes.TransportNodesAction$AsyncAction$1.handleException(TransportN
odesAction.java:218) ~[elasticsearch-5.4.0.jar:5.4.0]
at org.elasticsearch.transport.TransportService$ContextRestoreResponseHandler.handleException(Transport
Service.java:1041) ~[elasticsearch-5.4.0.jar:5.4.0]
at org.elasticsearch.transport.TcpTransport.lambda$handleException$17(TcpTransport.java:1442) ~[elastic
search-5.4.0.jar:5.4.0]
at org.elasticsearch.common.util.concurrent.EsExecutors$1.execute(EsExecutors.java:110) [elasticsearch-
5.4.0.jar:5.4.0]
at org.elasticsearch.transport.TcpTransport.handleException(TcpTransport.java:1440) [elasticsearch-5.4.
0.jar:5.4.0]
at org.elasticsearch.transport.TcpTransport.handlerResponseError(TcpTransport.java:1432) [elasticsearch
-5.4.0.jar:5.4.0]
at org.elasticsearch.transport.TcpTransport.messageReceived(TcpTransport.java:1376) [elasticsearch-5.4.
0.jar:5.4.0]
at org.elasticsearch.transport.netty4.Netty4MessageChannelHandler.channelRead(Netty4MessageChannelHandl
er.java:74) [transport-netty4-5.4.0.jar:5.4.0]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:
362) [netty-transport-4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:
348) [netty-transport-4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:34
0) [netty-transport-4.1.9.Final.jar:4.1.9.Final]
at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:293) [netty-co
dec-4.1.9.Final.jar:4.1.9.Final]
at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:280) [netty-co
dec-4.1.9.Final.jar:4.1.9.Final]
at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:396) [netty-codec-4
.1.9.Final.jar:4.1.9.Final]
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:248) [netty-codec-
4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:
362) [netty-transport-4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:
348) [netty-transport-4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:34
0) [netty-transport-4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1334) [n
etty-transport-4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:
362) [netty-transport-4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:
348) [netty-transport-4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:926) [netty-tran
sport-4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:134)

because the ES method writeVLong() is below:
public void writeVLong(long i) throws IOException {
if (i < 0) {
throw new IllegalStateException("Negative longs unsupported, use writeLong or writeZLong for negative numbers [" + i + "]");
}
writeVLongNoCheck(i);
}

I guess this is may be the ES's budge,or I unright use the ES?
so I want to know how to solve the problem


(Jason Tedor) #2

This will be fixed by https://github.com/elastic/elasticsearch/pull/24922.


(system) #3

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.