You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@eventmesh.apache.org by GitBox <gi...@apache.org> on 2022/01/26 02:27:45 UTC

[GitHub] [incubator-eventmesh] xwm1992 edited a comment on issue #744: [Bug] Using Request-Reply mode timeout with grpc

xwm1992 edited a comment on issue #744:
URL: https://github.com/apache/incubator-eventmesh/issues/744#issuecomment-1021802636


   > Hi @xwm1992 I tried rocketmq eventstore with RequestReply Publish API 'RequestReplyInstance'. I am getting error in RocketMQ side as well.
   > 
   > I tried HTTP `SyncRequestInstance` client also failed with error. I don't know if RocketMQ support "RequestReply" publish.
   > 
   > ```
   > 2022-01-25 12:44:42,820 DEBUG [grpc-default-worker-ELG-3-1] NettyServerHandler(AbstractInternalLogger.java:214) - [id: 0x9af6eaa7, L:/127.0.0.1:10205 - R:/127.0.0.1:55194] OUTBOUND GO_AWAY: lastStreamId=3 errorCode=2 length=41 bytes=53747265616d20332073656e7420746f6f206d616e79206865616465727320454f533a2066616c7365
   > 2022-01-25 12:44:42,821 ERROR [RequestHouseKeepingService] RequestReplyMessageProcessor(RequestReplyMessageProcessor.java:117) - message|eventMesh2mq|REQ|RequestReply|send2MQCost=11032ms|topic=TEST-TOPIC-GRPC-RR|bizSeqNo=572192559509670950233762085100|uniqueId=823186571000217086159750375334
   > org.apache.rocketmq.client.exception.RequestTimeoutException: CODE: 10006  DESC: request timeout, no reply message.
   > 	at org.apache.rocketmq.client.producer.RequestFutureTable.scanExpiredRequest(RequestFutureTable.java:54) [rocketmq-client-4.7.1.jar:4.7.1]
   > 	at org.apache.rocketmq.client.impl.producer.DefaultMQProducerImpl$2.run(DefaultMQProducerImpl.java:226) [rocketmq-client-4.7.1.jar:4.7.1]
   > 	at java.util.TimerThread.mainLoop(Timer.java:555) [?:1.8.0_261]
   > 	at java.util.TimerThread.run(Timer.java:505) [?:1.8.0_261]
   > 2022-01-25 12:44:42,821 WARN  [RequestHouseKeepingService] EventEmitter(EventEmitter.java:28) - StreamObserver Error onCompleted. call already closed
   > 2022-01-25 12:44:42,821 ERROR [RequestHouseKeepingService] RequestReplyMessageProcessor(RequestReplyMessageProcessor.java:117) - message|eventMesh2mq|REQ|RequestReply|send2MQCost=11032ms|topic=TEST-TOPIC-GRPC-RR|bizSeqNo=572192559509670950233762085100|uniqueId=823186571000217086159750375334
   > org.apache.rocketmq.client.exception.RequestTimeoutException: CODE: 10006  DESC: request timeout, no reply message.
   > 	at org.apache.rocketmq.client.producer.RequestFutureTable.scanExpiredRequest(RequestFutureTable.java:54) [rocketmq-client-4.7.1.jar:4.7.1]
   > 	at org.apache.rocketmq.client.impl.producer.DefaultMQProducerImpl$2.run(DefaultMQProducerImpl.java:226) [rocketmq-client-4.7.1.jar:4.7.1]
   > 	at java.util.TimerThread.mainLoop(Timer.java:555) [?:1.8.0_261]
   > 	at java.util.TimerThread.run(Timer.java:505) [?:1.8.0_261]
   > 2022-01-25 12:44:42,822 DEBUG [grpc-default-worker-ELG-3-1] Http2ConnectionHandler(Http2ConnectionHandler.java:911) - [id: 0x9af6eaa7, L:/127.0.0.1:10205 - R:/127.0.0.1:55194] Sent GOAWAY: lastStreamId '3', errorCode '2', debugData 'Stream 3 sent too many headers EOS: false'. Forcing shutdown of the connection.
   > 2022-01-25 12:44:42,826 DEBUG [grpc-default-worker-ELG-3-1] NettyServerHandler(AbstractInternalLogger.java:214) - [id: 0x9af6eaa7, L:/127.0.0.1:10205 ! R:/127.0.0.1:55194] OUTBOUND RST_STREAM: streamId=3 errorCode=8
   > 2022-01-25 12:44:42,826 DEBUG [grpc-default-worker-ELG-3-1] NettyServerHandler(AbstractInternalLogger.java:214) - [id: 0x9af6eaa7, L:/127.0.0.1:10205 ! R:/127.0.0.1:55194] OUTBOUND HEADERS: streamId=3 headers=GrpcHttp2OutboundHeaders[grpc-status: 0] padding=0 endStream=true
   > Jan 25, 2022 12:44:42 PM io.grpc.internal.ServerCallImpl internalClose
   > WARNING: Cancelling the stream with status Status{code=INTERNAL, description=Too many responses, cause=null}
   > Jan 25, 2022 12:44:42 PM io.grpc.netty.NettyServerTransport notifyTerminated
   > INFO: Transport failed
   > java.lang.IllegalStateException: Stream 3 sent too many headers EOS: false
   > 	at io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder.validateHeadersSentState(DefaultHttp2ConnectionEncoder.java:158)
   > 	at io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder.writeHeaders0(DefaultHttp2ConnectionEncoder.java:231)
   > 	at io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder.writeHeaders(DefaultHttp2ConnectionEncoder.java:151)
   > 	at io.grpc.netty.NettyServerHandler.sendResponseHeaders(NettyServerHandler.java:638)
   > 	at io.grpc.netty.NettyServerHandler.write(NettyServerHandler.java:575)
   > 	at io.netty.channel.AbstractChannelHandlerContext.invokeWrite0(AbstractChannelHandlerContext.java:717)
   > 	at io.netty.channel.AbstractChannelHandlerContext.invokeWrite(AbstractChannelHandlerContext.java:709)
   > 	at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:792)
   > 	at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:702)
   > 	at io.netty.channel.DefaultChannelPipeline.write(DefaultChannelPipeline.java:1015)
   > 	at io.netty.channel.AbstractChannel.write(AbstractChannel.java:289)
   > 	at io.grpc.netty.WriteQueue$AbstractQueuedCommand.run(WriteQueue.java:174)
   > 	at io.grpc.netty.WriteQueue.flush(WriteQueue.java:112)
   > 	at io.grpc.netty.WriteQueue.access$000(WriteQueue.java:32)
   > 	at io.grpc.netty.WriteQueue$1.run(WriteQueue.java:44)
   > 	at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:164)
   > 	at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:472)
   > 	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:500)
   > 	at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989)
   > 	at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
   > 	at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
   > 	at java.lang.Thread.run(Thread.java:748)
   > ```
   
   Http doesn't support for Request-reply, please use the TCP example to try this, execute `SyncResponse` and `SyncRequest`. @jinrongluo 


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscribe@eventmesh.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@eventmesh.apache.org
For additional commands, e-mail: dev-help@eventmesh.apache.org