From a32653f79075cf2dc4d3d8a0f655d5d0ecf1f640 Mon Sep 17 00:00:00 2001 From: chimp1984 Date: Sun, 6 Sep 2020 20:18:02 -0500 Subject: [PATCH] Add log in case protoOutputStream.writeEnvelope fails --- .../bisq/network/p2p/network/Connection.java | 20 +++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/p2p/src/main/java/bisq/network/p2p/network/Connection.java b/p2p/src/main/java/bisq/network/p2p/network/Connection.java index 050978d969..436e3d51a4 100644 --- a/p2p/src/main/java/bisq/network/p2p/network/Connection.java +++ b/p2p/src/main/java/bisq/network/p2p/network/Connection.java @@ -283,12 +283,20 @@ public class Connection implements HasCapabilities, Runnable, MessageListener { bundleSender.schedule(() -> { if (!stopped) { synchronized (lock) { - BundleOfEnvelopes current = queueOfBundles.poll(); - if (current != null && !stopped) { - if (current.getEnvelopes().size() == 1) { - protoOutputStream.writeEnvelope(current.getEnvelopes().get(0)); - } else { - protoOutputStream.writeEnvelope(current); + BundleOfEnvelopes bundle = queueOfBundles.poll(); + if (bundle != null && !stopped) { + NetworkEnvelope envelope = bundle.getEnvelopes().size() == 1 ? + bundle.getEnvelopes().get(0) : + bundle; + try { + protoOutputStream.writeEnvelope(envelope); + } catch (Throwable t) { + log.error("Sending envelope of class {} to address {} " + + "failed due {}", + envelope.getClass().getSimpleName(), + this.getPeersNodeAddressOptional(), + t.toString()); + log.error("envelope: {}", envelope); } } }