Skip to content
This repository has been archived by the owner on Jul 16, 2024. It is now read-only.

服务注册异常 #228

Open
hupeiD opened this issue Mar 26, 2023 · 3 comments
Open

服务注册异常 #228

hupeiD opened this issue Mar 26, 2023 · 3 comments

Comments

@hupeiD
Copy link

hupeiD commented Mar 26, 2023

发现在频繁重连的时候容易发生服务注册不上的情况,更改Broker Server的日志级别后报了如下异常信息。

Environment

  • Alibaba RSocket Broker version: 1.1.3
  • Operating System version: Linux
  • Java version: 11.0.17

2023-03-26 21:39:55.299 ERROR 1 --- [tor-tcp-epoll-6] .s.b.r.b.r.RSocketBrokerResponderHandler : RST-500400: Refuse bad connection from requester

java.lang.RuntimeException: Possible corruption through unsynchronized concurrent modification.
at org.eclipse.collections.impl.map.mutable.UnifiedMap$2.hashCode(UnifiedMap.java:101) ~[eclipse-collections-11.0.0.jar:na]
at org.eclipse.collections.impl.map.mutable.UnifiedMap.index(UnifiedMap.java:321) ~[eclipse-collections-11.0.0.jar:na]
at org.eclipse.collections.impl.map.mutable.UnifiedMap.put(UnifiedMap.java:346) ~[eclipse-collections-11.0.0.jar:na]
at org.eclipse.collections.impl.map.mutable.UnifiedMap.rehash(UnifiedMap.java:866) ~[eclipse-collections-11.0.0.jar:na]
at org.eclipse.collections.impl.map.mutable.UnifiedMap.getIfAbsentPutWith(UnifiedMap.java:746) ~[eclipse-collections-11.0.0.jar:na]
at com.alibaba.spring.boot.rsocket.broker.route.impl.FastListMultimap2.putMultiCopies(FastListMultimap2.java:160) ~[alibaba-broker-spring-boot-starter-1.1.3.jar:na]
at com.alibaba.spring.boot.rsocket.broker.route.impl.ServiceRoutingSelectorImpl.register(ServiceRoutingSelectorImpl.java:56) ~[alibaba-broker-spring-boot-starter-1.1.3.jar:na]
at com.alibaba.spring.boot.rsocket.broker.responder.RSocketBrokerResponderHandler.registerPublishedServices(RSocketBrokerResponderHandler.java:430) ~[alibaba-broker-spring-boot-starter-1.1.3.jar:na]
at com.alibaba.spring.boot.rsocket.broker.responder.RSocketBrokerResponderHandler.(RSocketBrokerResponderHandler.java:181) ~[alibaba-broker-spring-boot-starter-1.1.3.jar:na]
at com.alibaba.spring.boot.rsocket.broker.responder.RSocketBrokerHandlerRegistryImpl.accept(RSocketBrokerHandlerRegistryImpl.java:182) ~[alibaba-broker-spring-boot-starter-1.1.3.jar:na]
at com.alibaba.rsocket.listen.impl.RSocketListenerImpl.lambda$start$7(RSocketListenerImpl.java:148) ~[alibaba-rsocket-core-1.1.3.jar:na]
at io.rsocket.core.RSocketServer.lambda$acceptSetup$6(RSocketServer.java:458) ~[rsocket-core-1.1.2.jar:na]
at io.rsocket.core.ServerSetup$DefaultServerSetup.acceptRSocketSetup(ServerSetup.java:81) ~[rsocket-core-1.1.2.jar:na]
at io.rsocket.core.RSocketServer.acceptSetup(RSocketServer.java:418) ~[rsocket-core-1.1.2.jar:na]
at io.rsocket.core.RSocketServer.accept(RSocketServer.java:386) ~[rsocket-core-1.1.2.jar:na]
at io.rsocket.core.RSocketServer.lambda$acceptor$0(RSocketServer.java:370) ~[rsocket-core-1.1.2.jar:na]
at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:125) ~[reactor-core-3.4.16.jar:3.4.16]
at reactor.core.publisher.FluxFirstWithSignal$FirstEmittingSubscriber.onNext(FluxFirstWithSignal.java:330) ~[reactor-core-3.4.16.jar:3.4.16]
at reactor.core.publisher.SerializedSubscriber.onNext(SerializedSubscriber.java:99) ~[reactor-core-3.4.16.jar:3.4.16]
at reactor.core.publisher.SerializedSubscriber.onNext(SerializedSubscriber.java:99) ~[reactor-core-3.4.16.jar:3.4.16]
at reactor.core.publisher.FluxTimeout$TimeoutMainSubscriber.onNext(FluxTimeout.java:180) ~[reactor-core-3.4.16.jar:3.4.16]
at reactor.core.publisher.MonoCreate$DefaultMonoSink.success(MonoCreate.java:165) ~[reactor-core-3.4.16.jar:3.4.16]
at io.rsocket.core.SetupHandlingDuplexConnection.onNext(SetupHandlingDuplexConnection.java:115) ~[rsocket-core-1.1.2.jar:na]
at io.rsocket.core.SetupHandlingDuplexConnection.onNext(SetupHandlingDuplexConnection.java:19) ~[rsocket-core-1.1.2.jar:na]
at reactor.core.publisher.FluxMap$MapSubscriber.onNext(FluxMap.java:120) ~[reactor-core-3.4.16.jar:3.4.16]
at reactor.core.publisher.FluxMap$MapSubscriber.onNext(FluxMap.java:120) ~[reactor-core-3.4.16.jar:3.4.16]
at reactor.netty.channel.FluxReceive.drainReceiver(FluxReceive.java:279) ~[reactor-netty-core-1.0.17.jar:1.0.17]
at reactor.netty.channel.FluxReceive.onInboundNext(FluxReceive.java:388) ~[reactor-netty-core-1.0.17.jar:1.0.17]
at reactor.netty.channel.ChannelOperations.onInboundNext(ChannelOperations.java:404) ~[reactor-netty-core-1.0.17.jar:1.0.17]
at reactor.netty.channel.ChannelOperationsHandler.channelRead(ChannelOperationsHandler.java:93) ~[reactor-netty-core-1.0.17.jar:1.0.17]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[netty-transport-4.1.75.Final.jar:4.1.75.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[netty-transport-4.1.75.Final.jar:4.1.75.Final]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[netty-transport-4.1.75.Final.jar:4.1.75.Final]
at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:327) ~[netty-codec-4.1.75.Final.jar:4.1.75.Final]
at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:314) ~[netty-codec-4.1.75.Final.jar:4.1.75.Final]
at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:435) ~[netty-codec-4.1.75.Final.jar:4.1.75.Final]
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:279) ~[netty-codec-4.1.75.Final.jar:4.1.75.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[netty-transport-4.1.75.Final.jar:4.1.75.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[netty-transport-4.1.75.Final.jar:4.1.75.Final]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[netty-transport-4.1.75.Final.jar:4.1.75.Final]
at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410) ~[netty-transport-4.1.75.Final.jar:4.1.75.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[netty-transport-4.1.75.Final.jar:4.1.75.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[netty-transport-4.1.75.Final.jar:4.1.75.Final]
at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919) ~[netty-transport-4.1.75.Final.jar:4.1.75.Final]
at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:800) ~[netty-transport-classes-epoll-4.1.75.Final.jar:4.1.75.Final]
at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:480) ~[netty-transport-classes-epoll-4.1.75.Final.jar:4.1.75.Final]
at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:378) ~[netty-transport-classes-epoll-4.1.75.Final.jar:4.1.75.Final]
at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:986) ~[netty-common-4.1.75.Final.jar:4.1.75.Final]
at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[netty-common-4.1.75.Final.jar:4.1.75.Final]
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) ~[netty-common-4.1.75.Final.jar:4.1.75.Final]
at java.base/java.lang.Thread.run(Unknown Source) ~[na:na]

2023-03-26 21:39:55.300 ERROR 1 --- [tor-tcp-epoll-6] b.r.b.r.RSocketBrokerHandlerRegistryImpl : RST-500406: Failed to accept the connection: null

java.lang.NullPointerException: null
at com.alibaba.spring.boot.rsocket.broker.responder.RSocketBrokerHandlerRegistryImpl.accept(RSocketBrokerHandlerRegistryImpl.java:186) ~[alibaba-broker-spring-boot-starter-1.1.3.jar:na]
at com.alibaba.rsocket.listen.impl.RSocketListenerImpl.lambda$start$7(RSocketListenerImpl.java:148) ~[alibaba-rsocket-core-1.1.3.jar:na]
at io.rsocket.core.RSocketServer.lambda$acceptSetup$6(RSocketServer.java:458) ~[rsocket-core-1.1.2.jar:na]
at io.rsocket.core.ServerSetup$DefaultServerSetup.acceptRSocketSetup(ServerSetup.java:81) ~[rsocket-core-1.1.2.jar:na]
at io.rsocket.core.RSocketServer.acceptSetup(RSocketServer.java:418) ~[rsocket-core-1.1.2.jar:na]
at io.rsocket.core.RSocketServer.accept(RSocketServer.java:386) ~[rsocket-core-1.1.2.jar:na]
at io.rsocket.core.RSocketServer.lambda$acceptor$0(RSocketServer.java:370) ~[rsocket-core-1.1.2.jar:na]
at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:125) ~[reactor-core-3.4.16.jar:3.4.16]
at reactor.core.publisher.FluxFirstWithSignal$FirstEmittingSubscriber.onNext(FluxFirstWithSignal.java:330) ~[reactor-core-3.4.16.jar:3.4.16]
at reactor.core.publisher.SerializedSubscriber.onNext(SerializedSubscriber.java:99) ~[reactor-core-3.4.16.jar:3.4.16]
at reactor.core.publisher.SerializedSubscriber.onNext(SerializedSubscriber.java:99) ~[reactor-core-3.4.16.jar:3.4.16]
at reactor.core.publisher.FluxTimeout$TimeoutMainSubscriber.onNext(FluxTimeout.java:180) ~[reactor-core-3.4.16.jar:3.4.16]
at reactor.core.publisher.MonoCreate$DefaultMonoSink.success(MonoCreate.java:165) ~[reactor-core-3.4.16.jar:3.4.16]
at io.rsocket.core.SetupHandlingDuplexConnection.onNext(SetupHandlingDuplexConnection.java:115) ~[rsocket-core-1.1.2.jar:na]
at io.rsocket.core.SetupHandlingDuplexConnection.onNext(SetupHandlingDuplexConnection.java:19) ~[rsocket-core-1.1.2.jar:na]
at reactor.core.publisher.FluxMap$MapSubscriber.onNext(FluxMap.java:120) ~[reactor-core-3.4.16.jar:3.4.16]
at reactor.core.publisher.FluxMap$MapSubscriber.onNext(FluxMap.java:120) ~[reactor-core-3.4.16.jar:3.4.16]
at reactor.netty.channel.FluxReceive.drainReceiver(FluxReceive.java:279) ~[reactor-netty-core-1.0.17.jar:1.0.17]
at reactor.netty.channel.FluxReceive.onInboundNext(FluxReceive.java:388) ~[reactor-netty-core-1.0.17.jar:1.0.17]
at reactor.netty.channel.ChannelOperations.onInboundNext(ChannelOperations.java:404) ~[reactor-netty-core-1.0.17.jar:1.0.17]
at reactor.netty.channel.ChannelOperationsHandler.channelRead(ChannelOperationsHandler.java:93) ~[reactor-netty-core-1.0.17.jar:1.0.17]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[netty-transport-4.1.75.Final.jar:4.1.75.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[netty-transport-4.1.75.Final.jar:4.1.75.Final]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[netty-transport-4.1.75.Final.jar:4.1.75.Final]
at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:327) ~[netty-codec-4.1.75.Final.jar:4.1.75.Final]
at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:314) ~[netty-codec-4.1.75.Final.jar:4.1.75.Final]
at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:435) ~[netty-codec-4.1.75.Final.jar:4.1.75.Final]
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:279) ~[netty-codec-4.1.75.Final.jar:4.1.75.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[netty-transport-4.1.75.Final.jar:4.1.75.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[netty-transport-4.1.75.Final.jar:4.1.75.Final]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[netty-transport-4.1.75.Final.jar:4.1.75.Final]
at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410) ~[netty-transport-4.1.75.Final.jar:4.1.75.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[netty-transport-4.1.75.Final.jar:4.1.75.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[netty-transport-4.1.75.Final.jar:4.1.75.Final]
at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919) ~[netty-transport-4.1.75.Final.jar:4.1.75.Final]
at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:800) ~[netty-transport-classes-epoll-4.1.75.Final.jar:4.1.75.Final]
at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:480) ~[netty-transport-classes-epoll-4.1.75.Final.jar:4.1.75.Final]
at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:378) ~[netty-transport-classes-epoll-4.1.75.Final.jar:4.1.75.Final]
at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:986) ~[netty-common-4.1.75.Final.jar:4.1.75.Final]
at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[netty-common-4.1.75.Final.jar:4.1.75.Final]
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) ~[netty-common-4.1.75.Final.jar:4.1.75.Final]

@linux-china
Copy link
Collaborator

@hupeiD 能否更新到1.1.5版本试试? 可能是 #224 引起的。

@hupeiD
Copy link
Author

hupeiD commented May 18, 2023

那想问下,1.1.5版本是否兼容jdk11呢,还是Broker Server得用jdk17,客户端则无所谓

@linux-china
Copy link
Collaborator

@hupeiD 1.1.5 server端使用Java 17,客户端是1.8

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants