I'm writing a peer-to-peer program that requires the network be fully connected. However, when I test this locally and bring up about 20 nodes, some nodes successfully create a socket to other nodes, but when writing immediately after a broken pipe error occurs. This only happens when I start all nodes one right after the other; if I sleep about a second I don't see this problem.
I have logic to deal with two nodes that both open sockets to eachother, which may be buggy, though I do see it operating properly with less nodes. Is this a limitation of testing locally?
'Broken pipe' means you have written to a connection that has already been closed by the other end. So, you must have done that somehow.
Reason for broken pipes