Broken pipe, what does it mean?

What does this error mean? I get a lot of them.

2022-07-02T07:16:01.852Z ERROR piecestore
download failed {“Process”: “storagenode”, “Piece ID”:
"V46I636EWPGRM3JXZTFQO42TAKE2LGHTUA74MJTOA4J6NKQUATIQ
", “Satellite ID”: “12L9ZFwhzVpuEKMUNUqkaTLGzwY9G24tbi
igLiXpmZWKwmcNDDs”, “Action”: “GET”, “error”: “write t
cp 172.17.0.3:28967->184.104.224.99:32416: write: brok
en pipe”, “errorVerbose”: "write tcp 172.17.0.3:28967-

184.104.224.99:32416: write: broken pipe\n\tstorj.io/
drpc/drpcstream.(*Stream).rawWriteLocked:322\n\tstorj.
io/drpc/drpcstream.(*Stream).MsgSend:400\n\tstorj.io/c
ommon/pb.(*drpcPiecestore_DownloadStream).Send:317\n\t
storj.io/storj/storagenode/piecestore.(*Endpoint).Down
load.func5.1:620\n\tstorj.io/common/rpc/rpctimeout.Run
.func1:22"}

The other party cancelled the transfer for whatever reason.
For this case - your node likely in a severed long tail: when the customer downloads a file, their uplink requests 39 nodes and starts download in parallel. As soon as the first 29 nodes are finished - the remaining got canceled: uplink requires any 29 pieces from 80 to reconstruct the file.
Depending on in what moment this cancel is happened, the error could be different - broken pipe, variations of https://support.storj.io/hc/en-us/articles/360028695691-INFO-piecestore-upload-canceled, etc.

2 Likes

Ok thanks, I hope Storj will make some kind of simplified dignostics so people don’t need to actually use logs.