client.go | 5 +++++ diff --git a/client.go b/client.go index 5b161293023a6cf163f76f034169d6c54900bd56..b8fbdb80d8d6623e21cbeab8a98cb15ff471d11b 100644 --- a/client.go +++ b/client.go @@ -56,6 +56,7 @@ uploadChunksPosted = expvar.NewInt("uploadChunksPosted") unexpectedCancels = expvar.NewInt("unexpectedCancels") postedCancels = expvar.NewInt("postedCancels") duplicateConnsAvoided = expvar.NewInt("duplicateConnsAvoided") + failedPieceHashes = expvar.NewInt("failedPieceHashes") ) const ( @@ -1451,6 +1452,10 @@ } func (me *Client) pieceHashed(t *torrent, piece pp.Integer, correct bool) { p := t.Pieces[piece] + if p.EverHashed && !correct { + log.Printf("%s: piece %d failed hash", t, piece) + failedPieceHashes.Add(1) + } p.EverHashed = true if correct { p.PendingChunkSpecs = nil