RocketMQ 消费抛出Message not exist异常-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

RocketMQ 消费抛出Message not exist异常

2020-06-12 14:19:06 1977 2

1、使用阿里云java http client 版本:1.0.1

2、消费部分代码

                     // 长轮询消费消息
                    // 长轮询表示如果topic没有消息则请求会在服务端挂住3s,3s内如果有消息可以消费则立即返回
                    messages = consumerId.consumeMessage(
                            3,// 一次最多消费3条(最多可设置为16条)
                            3// 长轮询时间3秒(最多可设置为30秒)
                    );
                    // 没有消息
                    if (messages == null || messages.isEmpty()) {
                        System.out.println(Thread.currentThread().getName() + ": no new message, continue!");
                        continue;
                    }

3、异常信息


com.aliyun.mq.http.common.ServiceException: <?xml version="1.0" ?>
<Error xmlns="http://mq.aliyuncs.com/doc/v1">
  <Code>MessageNotExist</Code>
  <Message>Message not exist.</Message>
  <RequestId>5EE31D253842397B6D765BA3</RequestId>
  <HostId>http://xxxx.mqrest.cn-qingdao.aliyuncs.com</HostId>
</Error>
	at com.aliyun.mq.http.common.http.ExceptionResultParser.parse(ExceptionResultParser.java:46)
	at com.aliyun.mq.http.common.http.ExceptionResultParser.parse(ExceptionResultParser.java:12)
	at com.aliyun.mq.http.common.http.HttpCallback.handleResult(HttpCallback.java:140)
	at com.aliyun.mq.http.common.http.HttpCallback.buildResponseMessage(HttpCallback.java:113)
	at com.aliyun.mq.http.common.http.HttpCallback.completed(HttpCallback.java:74)
	at com.aliyun.mq.http.common.http.HttpCallback.completed(HttpCallback.java:22)
	at org.apache.http.concurrent.BasicFuture.completed(BasicFuture.java:122)
	at org.apache.http.impl.nio.client.DefaultClientExchangeHandlerImpl.responseCompleted(DefaultClientExchangeHandlerImpl.java:181)
	at org.apache.http.nio.protocol.HttpAsyncRequestExecutor.processResponse(HttpAsyncRequestExecutor.java:448)
	at org.apache.http.nio.protocol.HttpAsyncRequestExecutor.inputReady(HttpAsyncRequestExecutor.java:338)
	at org.apache.http.impl.nio.DefaultNHttpClientConnection.consumeInput(DefaultNHttpClientConnection.java:265)
	at org.apache.http.impl.nio.client.InternalIODispatch.onInputReady(InternalIODispatch.java:81)
	at org.apache.http.impl.nio.client.InternalIODispatch.onInputReady(InternalIODispatch.java:39)
	at org.apache.http.impl.nio.reactor.AbstractIODispatch.inputReady(AbstractIODispatch.java:114)
	at org.apache.http.impl.nio.reactor.BaseIOReactor.readable(BaseIOReactor.java:162)
	at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvent(AbstractIOReactor.java:337)
	at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvents(AbstractIOReactor.java:315)
	at org.apache.http.impl.nio.reactor.AbstractIOReactor.execute(AbstractIOReactor.java:276)
	at org.apache.http.impl.nio.reactor.BaseIOReactor.execute(BaseIOReactor.java:104)
	at org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor$Worker.run(AbstractMultiworkerIOReactor.java:591)
	at java.base/java.lang.Thread.run(Thread.java:830)

4、从异常信息来看应该是没有消息,但sdk中没有消费到看代码是根据code过滤了,但不知道为什么这个code不是MessageNotExist


 try {
            ConsumeMessageAction action = new ConsumeMessageAction(serviceClient, credentials, endpoint);
            request.setRequestPath(topicURL + "/" + Constants.LOCATION_MESSAGES);
            return action.executeWithCustomHeaders(request, null);
        } catch (ServiceException e) {
            if (Constants.CODE_MESSAGE_NOT_EXIST.equals(e.getErrorCode())) {
                return null;
            } else {
                throw e;
            }
        }
取消 提交回答
全部回答(2)
  • brandonyou
    2021-03-22 23:25:19

    我也是,有时候正常有时候这样。

    0 0
  • 不语奈何
    2020-06-12 17:35:17

    应该是长时间无消息导致的

    0 0
添加回答
相关问答

40

回答

[@徐雷frank][¥20]什么是JAVA的平台无关性

大河人家 2018-10-29 23:55:20 144761浏览量 回答数 40

162

回答

惊喜翻倍:免费ECS+免费环境配置~!(ECS免费体验6个月活动3月31日结束)

豆妹 2014-10-29 17:52:21 226231浏览量 回答数 162

8

回答

OceanBase 使用动画(持续更新)

mq4096 2019-02-20 17:16:36 337091浏览量 回答数 8

13

回答

[@饭娱咖啡][¥20]我想知道 Java 关于引用那一块的知识

心意乱 2018-10-31 18:44:12 142480浏览量 回答数 13

111

回答

OSS存储服务-客户端工具

newegg11 2012-05-17 15:37:18 295652浏览量 回答数 111

22

回答

爬虫数据管理【问答合集】

我是管理员 2018-08-10 16:37:41 147276浏览量 回答数 22

18

回答

阿里云开放端口权限

xcxx 2016-07-20 15:03:33 646868浏览量 回答数 18

31

回答

[@倚贤][¥20]刚学完html/css/js的新手学习servlet、jsp需要注意哪些问题?

弗洛伊德6 2018-10-27 21:52:43 146071浏览量 回答数 31

82

回答

OSS入门教程

belle.zhoux 2014-07-07 17:14:27 151525浏览量 回答数 82

24

回答

【精品问答】python技术1000问(1)

问问小秘 2019-11-15 13:25:00 475858浏览量 回答数 24
+关注
726
文章
2
问答
问答排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载