-
-
Notifications
You must be signed in to change notification settings - Fork 14
Open
Description
The game shows that there is no connection with the player. Ice Debug shows that there is a connection (state = 'Connection'). The logs say that the Socket is closed.
2024-11-07 04:04:29.825 DEBUG Error while reading from local FA as peer (probably disconnecting from peer) Hann(375817) (com.faforever.iceadapter.ice.Peer:84)
java.net.SocketException: Socket closed
at java.base/sun.nio.ch.DatagramSocketAdaptor.receive(DatagramSocketAdaptor.java:264)
at java.base/java.net.DatagramSocket.receive(DatagramSocket.java:714)
at com.faforever.iceadapter.ice.Peer.faListener(Peer.java:81)
at java.base/java.lang.Thread.run(Thread.java:1583)
Caused by: java.nio.channels.AsynchronousCloseException: null
at java.base/sun.nio.ch.DatagramChannelImpl.endRead(DatagramChannelImpl.java:564)
at java.base/sun.nio.ch.DatagramChannelImpl.trustedBlockingReceive(DatagramChannelImpl.java:718)
at java.base/sun.nio.ch.DatagramChannelImpl.blockingReceive(DatagramChannelImpl.java:675)
at java.base/sun.nio.ch.DatagramSocketAdaptor.receive(DatagramSocketAdaptor.java:241)
... 3 common frames omitted
java-ice-adapter/ice-adapter/src/main/java/com/faforever/iceadapter/ice/Peer.java
Lines 79 to 86 in 0173f58
| try { | |
| DatagramPacket packet = new DatagramPacket(data, data.length); | |
| faSocket.receive(packet); | |
| ice.onFaDataReceived(data, packet.getLength()); | |
| } catch (IOException e) { | |
| log.debug("Error while reading from local FA as peer (probably disconnecting from peer) " + getPeerIdentifier(), e); | |
| return; | |
| } |
2024-11-07 04:00:52.724 WARN ICE Hann(375817): Error while reading from ICE adapter (c.f.iceadapter.ice.PeerIceModule:413)
org.ice4j.socket.SocketClosedException: Socket closed
at org.ice4j.socket.MergingDatagramSocket.receive(MergingDatagramSocket.java:491)
at org.ice4j.socket.DelegatingDatagramSocket.receive(DelegatingDatagramSocket.java:698)
at org.ice4j.socket.SafeCloseDatagramSocket.receive(SafeCloseDatagramSocket.java:173)
at org.ice4j.socket.MultiplexingDatagramSocket.multiplexingXXXSocketSupportDoReceive(MultiplexingDatagramSocket.java:414)
at org.ice4j.socket.MultiplexingDatagramSocket$1.doReceive(MultiplexingDatagramSocket.java:66)
at org.ice4j.socket.MultiplexingXXXSocketSupport.receive(MultiplexingXXXSocketSupport.java:649)
at org.ice4j.socket.MultiplexingDatagramSocket.receive(MultiplexingDatagramSocket.java:465)
at com.faforever.iceadapter.ice.PeerIceModule.listener(PeerIceModule.java:392)
at java.base/java.lang.Thread.run(Thread.java:1583)
java-ice-adapter/ice-adapter/src/main/java/com/faforever/iceadapter/ice/PeerIceModule.java
Lines 390 to 418 in 0173f58
| try { | |
| DatagramPacket packet = new DatagramPacket(data, data.length); | |
| localComponent.getSelectedPair().getIceSocketWrapper().getUDPSocket().receive(packet); | |
| if (packet.getLength() == 0) { | |
| continue; | |
| } | |
| if (data[0] == 'd') { | |
| //Received data | |
| peer.onIceDataReceived(data, 1, packet.getLength() - 1); | |
| } else if (data[0] == 'e') { | |
| //Received echo req/res | |
| if (peer.isLocalOffer()) { | |
| connectivityChecker.echoReceived(data, 0, packet.getLength()); | |
| } else { | |
| sendViaIce(data, 0, packet.getLength());//Turn around, send echo back | |
| } | |
| } else { | |
| log.warn(getLogPrefix() + "Received invalid packet, first byte: 0x{}, length: {}", data[0], packet.getLength()); | |
| } | |
| } catch (IOException e) {//TODO: nullpointer from localComponent.xxxx???? | |
| log.warn(getLogPrefix() + "Error while reading from ICE adapter", e); | |
| if(component == localComponent) { | |
| onConnectionLost(); | |
| } | |
| return; | |
| } |
Metadata
Metadata
Assignees
Labels
No labels