Context cancelled on all uploads/downloads

@encabn If you see log messages like this:

2020-02-04T01:30:19.306+0100 INFO piecestore upload failed {“Piece ID”: “OQQBKVMCGVFXTHVSRTHQJINZZUXBWM5DPL327IJRP7WPEALDWRUQ”, “Satellite ID”: “12EayRS2V1kEsWESU9QMRseFhdxYxKicsiFmxrsLZHeLUtdps3S”, “Action”: “PUT”, “error”: “context canceled”, “errorVerbose”: “context canceled\n\tstorj.io/common/rpc/rpcstatus.Wrap:79\n\tstorj.io/storj/storagenode/piecestore.(*Endpoint).doUpload:483\n\tstorj.io/storj/storagenode/piecestore.(*drpcEndpoint).Upload:257\n\tstorj.io/common/pb.DRPCPiecestoreDescription.Method.func1:1066\n\tstorj.io/drpc/drpcserver.(*Server).doHandle:175\n\tstorj.io/drpc/drpcserver.(*Server).HandleRPC:153\n\tstorj.io/drpc/drpcserver.(*Server).ServeOne:114\n\tstorj.io/drpc/drpcserver.(*Server).Serve.func2:147\n\tstorj.io/drpc/drpcctx.(*Tracker).track:51”}

it does not always mean that your node failed to get the piece.

Some time ago, we changed the uplink to aggressively close the connection after upload without waiting for the last acknowledgment from the storage node. This significantly improved the upload performance.

As a result, we have this pollution in the storagenode logs with “upload failed” messages due to “context canceled”. For this specific piece OQQBKVMCGVFXTHVSRTHQJINZZUXBWM5DPL327IJRP7WPEALDWRUQ you can see in the logs that it is deleted later. This cannot happen if it wasn’t uploaded successfully in the first hand.

We are now working on cleaning up the logs. There is a change in review: https://review.dev.storj.io/c/storj/storj/+/821

10 Likes