apache / rocketmq

Apache RocketMQ is a cloud native messaging and streaming platform, making it simple to build event-driven applications.
https://rocketmq.apache.org/
Apache License 2.0
21.07k stars 11.64k forks source link

[Bug] 执行命令报错:sh mqadmin consumerStatus -n xx:9876 -g group_name -s #7811

Open 41405465 opened 7 months ago

41405465 commented 7 months ago

Before Creating the Bug Report

Runtime platform environment

centos 7.9

RocketMQ version

5.1.4

JDK Version

No response

Describe the Bug

[root@xx bin]# sh mqadmin consumerStatus -n 192.268.5.6:9876 -g topic_test_grey -s

Index #ClientId #Version #ConsumerRunningInfoFile

com.alibaba.fastjson.JSONException: parseLong error, field : commitOffset at com.alibaba.fastjson.serializer.LongCodec.deserialze(LongCodec.java:86) at com.alibaba.fastjson.parser.deserializer.DefaultFieldDeserializer.parseField(DefaultFieldDeserializer.java:88) at com.alibaba.fastjson.parser.deserializer.JavaBeanDeserializer.parseField(JavaBeanDeserializer.java:1278) at com.alibaba.fastjson.parser.deserializer.JavaBeanDeserializer.deserialze(JavaBeanDeserializer.java:893) at com.alibaba.fastjson.parser.deserializer.JavaBeanDeserializer.parseRest(JavaBeanDeserializer.java:1624) at com.alibaba.fastjson.parser.deserializer.FastjsonASMDeserializer_10_ProcessQueueInfo.deserialze(Unknown Source) at com.alibaba.fastjson.parser.deserializer.JavaBeanDeserializer.deserialze(JavaBeanDeserializer.java:287) at com.alibaba.fastjson.parser.deserializer.MapDeserializer.parseMap(MapDeserializer.java:347) at com.alibaba.fastjson.parser.deserializer.MapDeserializer.deserialze(MapDeserializer.java:71) at com.alibaba.fastjson.parser.deserializer.MapDeserializer.deserialze(MapDeserializer.java:43) at com.alibaba.fastjson.parser.deserializer.ContextObjectDeserializer.deserialze(ContextObjectDeserializer.java:9) at com.alibaba.fastjson.parser.deserializer.DefaultFieldDeserializer.parseField(DefaultFieldDeserializer.java:88) at com.alibaba.fastjson.parser.deserializer.JavaBeanDeserializer.deserialze(JavaBeanDeserializer.java:858) at com.alibaba.fastjson.parser.deserializer.JavaBeanDeserializer.deserialze(JavaBeanDeserializer.java:291) at com.alibaba.fastjson.parser.DefaultJSONParser.parseObject(DefaultJSONParser.java:703) at com.alibaba.fastjson.JSON.parseObject(JSON.java:394) at com.alibaba.fastjson.JSON.parseObject(JSON.java:476) at com.alibaba.fastjson.JSON.parseObject(JSON.java:413) at com.alibaba.fastjson.JSON.parseObject(JSON.java:405) at org.apache.rocketmq.remoting.protocol.RemotingSerializable.fromJson(RemotingSerializable.java:49) at org.apache.rocketmq.remoting.protocol.RemotingSerializable.decode(RemotingSerializable.java:41) at org.apache.rocketmq.client.impl.MQClientAPIImpl.getConsumerRunningInfo(MQClientAPIImpl.java:2610) at org.apache.rocketmq.tools.admin.DefaultMQAdminExtImpl.getConsumerRunningInfo(DefaultMQAdminExtImpl.java:1312) at org.apache.rocketmq.tools.admin.DefaultMQAdminExtImpl.getConsumerRunningInfo(DefaultMQAdminExtImpl.java:1299) at org.apache.rocketmq.tools.admin.DefaultMQAdminExt.getConsumerRunningInfo(DefaultMQAdminExt.java:580) at org.apache.rocketmq.tools.command.consumer.ConsumerStatusSubCommand.execute(ConsumerStatusSubCommand.java:103) at org.apache.rocketmq.tools.command.MQAdminStartup.main0(MQAdminStartup.java:165) at org.apache.rocketmq.tools.command.MQAdminStartup.main(MQAdminStartup.java:115) Caused by: com.alibaba.fastjson.JSONException: can not cast to long, value : 18446744073709551615 at com.alibaba.fastjson.util.TypeUtils.castToLong(TypeUtils.java:908) at com.alibaba.fastjson.serializer.LongCodec.deserialze(LongCodec.java:79) ... 27 more

Steps to Reproduce

What Did You Expect to See?

What Did You See Instead?

Additional Context

No response

leizhiyuan commented 7 months ago

Caused by: com.alibaba.fastjson.JSONException: can not cast to long, value : 18446744073709551615

这个18446744073709551615 应该是-1溢出之后了。可以debug一下,看看当时getConsumerRunningInfo 返回的数据是什么。