diff --git a/packages/gossip/neighbor.go b/packages/gossip/neighbor.go
index 6674275b595900a0ac379eb90964a2a675f19e38..8cfcee905f3636d6d3443c342b259191ccc8876e 100644
--- a/packages/gossip/neighbor.go
+++ b/packages/gossip/neighbor.go
@@ -84,7 +84,6 @@ func (n *Neighbor) IsOutbound() bool {
 func (n *Neighbor) disconnect() (err error) {
 	n.disconnectOnce.Do(func() {
 		close(n.closing)
-		close(n.queue)
 		err = n.BufferedConnection.Close()
 	})
 	return
@@ -140,7 +139,7 @@ func (n *Neighbor) readLoop() {
 func (n *Neighbor) Write(b []byte) (int, error) {
 	l := len(b)
 	if l > maxPacketSize {
-		n.log.Errorw("message too large", "len", l, "max", maxPacketSize)
+		n.log.Panicw("message too large", "len", l, "max", maxPacketSize)
 	}
 
 	// add to queue
diff --git a/packages/gossip/neighbor_test.go b/packages/gossip/neighbor_test.go
index 72a0f8959dc24cc842c2a7c2bff276c4a8ebedb0..fd1e0fc71a0f1a1c978c436946837175a37e4246 100644
--- a/packages/gossip/neighbor_test.go
+++ b/packages/gossip/neighbor_test.go
@@ -35,19 +35,6 @@ func TestNeighborCloseTwice(t *testing.T) {
 	require.NoError(t, n.Close())
 }
 
-func TestNeighborWriteToClosed(t *testing.T) {
-	a, _, teardown := newPipe()
-	defer teardown()
-
-	n := newTestNeighbor("A", a)
-	n.Listen()
-	require.NoError(t, n.Close())
-
-	assert.Panics(t, func() {
-		_, _ = n.Write(testData)
-	})
-}
-
 func TestNeighborWrite(t *testing.T) {
 	a, b, teardown := newPipe()
 	defer teardown()