首页 > 解决方案 > 使用节点驱动程序时,流程中的公证会因握手失败而挂起

问题描述

每当我尝试使用节点驱动程序进行测试时,我发现在公证时,我的流程会挂起。

检查节点日志后,显示公证人的消息代理无法访问:

[信息] 09:33:26,653 [nioEventLoopGroup-3-3] (AMQPClient.kt:91) netty.AMQPClient.run - 重试连接 {}

[INFO] 09:33:26,657 [nioEventLoopGroup-3-4] (AMQPClient.kt:76) netty.AMQPClient.operationComplete - 连接到 localhost:10001 {}

[INFO] 09:33:26,658 [nioEventLoopGroup-3-4] (AMQPChannelHandler.kt:49) O=Notary Service, L=Zurich, C=CH.channelActive - 新客户端连接 db926eb8 从 localhost/127.0.0.1:10001 到/127.0.0.1:63781 {}

[INFO] 09:33:26,658 [nioEventLoopGroup-3-4] (AMQPClient.kt:86) netty.AMQPClient.operationComplete - 与 localhost:10001 {} 断开连接

[错误] 09:33:26,658 [nioEventLoopGroup-3-4] (AMQPChannelHandler.kt:98) O=Notary Service, L=Zurich, C=CH.userEventTriggered - 握手失败 SslHandshakeCompletionEvent(java.nio.channels.ClosedChannelException) { }

[INFO] 09:33:26,659 [nioEventLoopGroup-3-4] (AMQPChannelHandler.kt:74) O=Notary Service, L=Zurich, C=CH.channelInactive - 从 localhost/127.0.0.1:10001 关闭客户端连接 db926eb8 到/127.0.0.1:63781 {}

[INFO] 09:33:26,659 [nioEventLoopGroup-3-4] (AMQPBridgeManager.kt:115) peers.DLF1ZmHt1DXc9HbxzDNm6VHduUABBbNsp7Mh4DhoBs6ifd -> localhost:10001:O=Notary Service, L=Zurich, C=CH.onSocketConnected - Bridge Disconnected {}

而公证日志显示以下内容:

[INFO] 13:24:21,735 [main] (ActiveMQServerImpl.java:540) core.server.internalStart - AMQ221001:Apache ActiveMQ Artemis 消息代理版本 2.2.0 [localhost,nodeID=7b3df3b8-98aa-11e8-83bd-ead493c8221e] {}

[DEBUG] 13:24:21,735 [main] (ArtemisRpcBroker.kt:51) rpc.ArtemisRpcBroker.start - Artemis RPC 代理已启动。{}

[INFO] 13:24:21,737 [main] (ArtemisMessagingClient.kt:28) internal.ArtemisMessagingClient.start - 连接到消息代理:localhost:10001 {}

[错误] 13:24:22,298 [main] (NettyConnector.java:713) core.client.createConnection - AMQ214016: 无法创建 netty 连接 {} java.nio.channels.ClosedChannelException: null at io.netty.handler.ssl .SslHandler.channelInactive(...)(未知来源) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]

[DEBUG] 13:24:22,362 [main] (PersistentIdentityService.kt:137) identity.PersistentIdentityService.verifyAndRegisterIdentity - 注册身份 O=Notary Service, L=Zurich, C=CH {}

[警告] 13:24:22,363 [main] (AppendOnlyPersistentMap.kt:79) utility.AppendOnlyPersistentMapBase.set - 在 net.corda.node.utilities.AppendOnlyPersistentMap 中双重插入实体类 net.corda.node.services.identity。 PersistentIdentityService$PersistentIdentity key 69ACAA32A0C7934D9454CB53EEA6CA6CCD8E4090B30C560A5A36EA10F3DC13E8,第二次不插入{}

[错误] 13:24:22,368 [main] (NodeStartup.kt:125) internal.Node.run - 节点启动期间出现异常{} org.apache.activemq.artemis.api.core.ActiveMQNotConnectedException:AMQ119007:无法连接到服务器(s)。尝试了所有可用的服务器。在 org.apache.activemq.artemis.core.client.impl.ServerLocatorImpl.createSessionFactory(ServerLocatorImpl.java:787) ~[artemis-core-client-2.2.0.jar:2.2.0] 在 net.corda.nodeapi。 internal.ArtemisMessagingClient.start(ArtemisMessagingClient.kt:39) ~[corda-node-api-3.2-corda.jar:?] at net.corda.nodeapi.internal.bridging.AMQPBridgeManager.start(AMQPBridgeManager.kt:195) ~ [corda-node-api-3.2-corda.jar:?] 在 net.corda.nodeapi.internal.bridging.BridgeControlListener.start(BridgeControlListener.kt:35) ~[corda-node-api-3.2-corda.jar: ?] 在 net.corda.node.internal.Node。

我该如何解决?

标签: intellij-ideacordayourkit

解决方案


IntelliJ Ultimate 附带 Yourkit 分析器,默认情况下,它在 IntelliJ 启动时启动并侦听端口 100001 - 驱动程序中公证人的默认端口。

您可以使用此处找到此配置并根据此更改它以使用不同的端口

您的新配置行将如下所示:

-agentlib:yjpagent=delay=10000,probe_disable=*,port=30000

推荐阅读