hiero-ledger / hiero-ledger/hiero-consensus-node
"NetworkUtils: Connection broken"
- Dominant language
- Java
- Stars
- 407
- Forks
- 226
- Avg merge
- 3d 4h
- Merged PRs (30d)
- 210
Description
Permanent issue [after enabling broadcast] :
https://perf.analytics.eng.hashgraph.io/ephemeral/test_runs/main_AdHoc6_674/report/longevity/podlog_solo-sdlt-n6/error_summary.txt
5 WARN SOCKET_EXCEPTIONS <> NetworkUtils: Connection broken: N <- N
5 WARN SOCKET_EXCEPTIONS <> NetworkUtils: Connection broken: N -> N
5 Caused by: java.net.SocketTimeoutException: Read timed out
5 Suppressed: java.util.concurrent.ExecutionException: java.net.SocketException: Connection or outbound has closed
5 Caused by: java.net.SocketException: Connection or outbound has closed
Example:
https://perf.analytics.eng.hashgraph.io/ephemeral/test_runs/main_AdHoc6_674/report/longevity/podlog_solo-sdlt-n6/network-node7_logs/swirlds.log
```
2026-04-29 04:08:12.907 25120 WARN SOCKET_EXCEPTIONS <> NetworkUtils: Connection broken: 6 <- 1
org.hiero.consensus.concurrent.pool.ParallelExecutionException: Time thrown: 2026-04-29T04:08:12.903444064Z
at org.hiero.consensus.concurrent.pool.CachedPoolParallelExecutor.doParallelWithHandler(CachedPoolParallelExecutor.java:160)
at org.hiero.consensus.gossip.impl.network.protocol.rpc.RpcPeerProtocol.runProtocol(RpcPeerProtocol.java:303)
at org.hiero.consensus.gossip.impl.network.communication.states.ProtocolNegotiated.transition(ProtocolNegotiated.java:47)
at org.hiero.consensus.gossip.impl.network.communication.Negotiator.execute(Negotiator.java:79)
at org.hiero.consensus.gossip.impl.network.communication.ProtocolNegotiatorThread.run(ProtocolNegotiatorThread.java:65)
at org.hiero.consensus.concurrent.framework.internal.StoppableThreadImpl.doWork(StoppableThreadImpl.java:599)
at org.hiero.consensus.concurrent.framework.internal.StoppableThreadImpl.run(StoppableThreadImpl.java:200)
at org.hiero.consensus.concurrent.framework.internal.AbstractThreadConfiguration.lambda$wrapRunnableWithSnapshot$0(AbstractThreadConfiguration.java:654)
at java.base/java.lang.Thread.run(Thread.java:1474)
Suppressed: java.util.concurrent.ExecutionException: java.net.SocketException: Connection or outbound has closed
at java.base/java.util.concurrent.FutureTask.report(FutureTask.java:124)
at java.base/java.util.concurrent.FutureTask.get(FutureTask.java:193)
at org.hiero.consensus.concurrent.pool.CachedPoolParallelExecutor.doParallelWithHandler(CachedPoolParallelExecutor.java:154)
... 8 more
Caused by: java.net.SocketException: Connection or outbound has closed
at java.base/sun.security.ssl.SSLSocketImpl$AppOutputStream.write(SSLSocketImpl.java:1299)
at org.hiero.consensus.io.counting.CountingOutputStream.write(CountingOutputStream.java:58)
at java.base/java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:123)
at java.base/java.io.BufferedOutputStream.flush(BufferedOutputStream.java:203)
at java.base/java.io.DataOutputStream.flush(DataOutputStream.java:142)
at org.hiero.consensus.gossip.impl.network.protocol.rpc.RpcPeerProtocol.writeMessages(RpcPeerProtocol.java:400)
at org.hiero.consensus.gossip.impl.network.protocol.rpc.RpcPeerProtocol.lambda$runProtocol$1(RpcPeerProtocol.java:307)
at org.hiero.base.concurrent.ThrowingRunnable.call(ThrowingRunnable.java:24)
at org.hiero.base.concurrent.ThrowingRunnable.call(ThrowingRunnable.java:9)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:328)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1090)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:614)
... 2 more
Caused by: java.util.concurrent.ExecutionException: java.io.IOException: com.hedera.pbj.runtime.ParseException: java.io.UncheckedIOException: java.net.SocketTimeoutException: Read timed out
at java.base/java.util.concurrent.FutureTask.report(FutureTask.java:124)
at java.base/java.util.concurrent.FutureTask.get(FutureTask.java:193)
at org.hiero.consensus.concurrent.pool.CachedPoolParallelExecutor.doParallelWithHandler(CachedPoolParallelExecutor.java:154)
... 8 more
Caused by: java.io.IOException: com.hedera.pbj.runtime.ParseException: java.io.UncheckedIOException: java.net.SocketTimeoutException: Read timed out
at org.hiero.base.io.streams.SerializableDataInputStream.readPbjRecord(SerializableDataInputStream.java:612)
at org.hiero.consensus.gossip.impl.network.protocol.rpc.RpcPeerProtocol.readMessages(RpcPeerProtocol.java:471)
at org.hiero.consensus.gossip.impl.network.protocol.rpc.RpcPeerProtocol.lambda$runProtocol$0(RpcPeerProtocol.java:306)
at org.hiero.base.concurrent.ThrowingRunnable.call(ThrowingRunnable.java:24)
at org.hiero.base.concurrent.ThrowingRunnable.call(ThrowingRunnable.java:9)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:328)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1090)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:614)
... 2 more
Caused by: com.hedera.pbj.runtime.ParseException: java.io.UncheckedIOException: java.net.SocketTimeoutException: Read timed out
at com.hedera.hapi.platform.event.codec.GossipEventProtoCodec.parse(GossipEventProtoCodec.java:249)
at com.hedera.hapi.platform.event.codec.GossipEventProtoCodec.parse(GossipEventProtoCodec.java:32)
at org.hiero.base.io.streams.SerializableDataInputStream.readPbjRecord(SerializableDataInputStream.java:600)
... 9 more
Caused by: java.io.UncheckedIOException: java.net.SocketTimeoutException: Read timed out
at com.hedera.pbj.runtime.io.stream.ReadableStreamingData.readBytes(ReadableStreamingData.java:203)
at com.hedera.pbj.runtime.io.ReadableSequentialData.readBytes(ReadableSequentialData.java:217)
at com.hedera.pbj.runtime.ProtoParserTools.readBytes(ProtoParserTools.java:303)
at com.hedera.hapi.platform.event.codec.GossipEventProtoCodec.parse(GossipEventProtoCodec.java:154)
... 11 more
Caused by: java.net.SocketTimeoutException: Read timed out
at java.base/sun.nio.ch.NioSocketImpl.timedRead(NioSocketImpl.java:277)
at java.base/sun.nio.ch.NioSocketImpl.implRead(NioSocketImpl.java:302)
at java.base/sun.nio.ch.NioSocketImpl.read(NioSocketImpl.java:354)
at java.base/sun.nio.ch.NioSocketImpl$1.read(NioSocketImpl.java:798)
at java.base/java.net.Socket$SocketInputStream.implRead(Socket.java:974)
at java.base/java.net.Socket$SocketInputStream.read(Socket.java:964)
at java.base/sun.security.ssl.SSLSocketInputRecord.read(SSLSocketInputRecord.java:489)
at java.base/sun.security.ssl.SSLSocketInputRecord.readHeader(SSLSocketInputRecord.java:483)
at java.base/sun.security.ssl.SSLSocketInputRecord.bytesInCompletePacket(SSLSocketInputRecord.java:70)
at java.base/sun.security.ssl.SSLSocketImpl.readApplicationRecord(SSLSocketImpl.java:1461)
at java.base/sun.security.ssl.SSLSocketImpl$AppInputStream.read(SSLSocketImpl.java:1068)
at org.hiero.consensus.io.counting.CountingInputStream.read(CountingInputStream.java:62)
at java.base/java.io.BufferedInputStream.fill(BufferedInputStream.java:289)
at java.base/java.io.BufferedInputStream.read1(BufferedInputStream.java:330)
at java.base/java.io.BufferedInputStream.read(BufferedInputStream.java:388)
at java.base/java.io.InputStream.readNBytes(InputStream.java:508)
at com.hedera.pbj.runtime.io.stream.ReadableStreamingData.readBytes(ReadableStreamingData.java:196)
... 14 more
```
Contributor guide
Assessment
This issue has not been assessed yet.