Skip to content

downloaded: half open race #12925

Closed
Closed
@dvovk

Description

==================
WARNING: DATA RACE
Write at 0x00c000b015e0 by goroutine 17410:
  github.com/anacrolix/torrent.(*Client).noLongerHalfOpen()
      github.com/anacrolix/torrent/client.go:695 +0xec
  github.com/anacrolix/torrent.(*Client).outgoingConnection()
      github.com/anacrolix/torrent/client.go:897 +0x184
  github.com/anacrolix/torrent.initiateConn.gowrap2()
      github.com/anacrolix/torrent/torrent.go:3143 +0xa0

Previous read at 0x00c000b015e0 by goroutine 21281:
  github.com/anacrolix/torrent.(*Torrent).openNewConns()
      github.com/anacrolix/torrent/torrent.go:1737 +0x34c
  github.com/anacrolix/torrent.(*Torrent).dropConnection()
      github.com/anacrolix/torrent/torrent.go:2012 +0x84
  github.com/anacrolix/torrent.(*PeerConn).drop()
      github.com/anacrolix/torrent/peerconn.go:1267 +0x60
  github.com/anacrolix/torrent.(*Torrent).maybeDropMutuallyCompletePeer()
      github.com/anacrolix/torrent/torrent.go:1305 +0x268
  github.com/anacrolix/torrent.(*PeerConn).peerPiecesChanged()
      github.com/anacrolix/torrent/peerconn.go:1390 +0x60
  github.com/anacrolix/torrent.(*PeerConn).onPeerHasAllPieces()
      github.com/anacrolix/torrent/peerconn.go:577 +0x21c
  github.com/anacrolix/torrent.(*PeerConn).onPeerSentHaveAll()
      github.com/anacrolix/torrent/peerconn.go:581 +0x3c
  github.com/anacrolix/torrent.(*PeerConn).mainReadLoop()
      github.com/anacrolix/torrent/peerconn.go:1027 +0x1440
  github.com/anacrolix/torrent.(*Torrent).runHandshookConn()
      github.com/anacrolix/torrent/client.go:1132 +0x1d0
  github.com/anacrolix/torrent.(*Torrent).logRunHandshookConn()
      github.com/anacrolix/torrent/torrent.go:2111 +0x5c
  github.com/anacrolix/torrent.(*Torrent).runHandshookConnLoggingErr()
      github.com/anacrolix/torrent/torrent.go:2118 +0x70
  github.com/anacrolix/torrent.(*Client).outgoingConnection()
      github.com/anacrolix/torrent/client.go:915 +0x5dc
  github.com/anacrolix/torrent.initiateConn.gowrap2()
      github.com/anacrolix/torrent/torrent.go:3143 +0xa0

Goroutine 17410 (running) created at:
  github.com/anacrolix/torrent.initiateConn()
      github.com/anacrolix/torrent/torrent.go:3143 +0x5a8
  github.com/anacrolix/torrent.(*Torrent).openNewConns()
      github.com/anacrolix/torrent/torrent.go:1749 +0x538
  github.com/anacrolix/torrent.(*Torrent).addPeer()
      github.com/anacrolix/torrent/torrent.go:394 +0x95c
  github.com/anacrolix/torrent.(*Torrent).addPeers()
      github.com/anacrolix/torrent/torrent.go:2351 +0x128
  github.com/anacrolix/torrent.(*Torrent).AddPeers()
      github.com/anacrolix/torrent/t.go:365 +0x6c
  github.com/anacrolix/torrent.(*trackerScraper).announce()
      github.com/anacrolix/torrent/tracker_scraper.go:219 +0x15bc
  github.com/anacrolix/torrent.(*trackerScraper).Run()
      github.com/anacrolix/torrent/tracker_scraper.go:258 +0x2f8
  github.com/anacrolix/torrent.(*Torrent).startScrapingTracker.func1.gowrap1()
      github.com/anacrolix/torrent/torrent.go:2182 +0x38

      Goroutine 21281 (finished) created at:
      github.com/anacrolix/torrent.initiateConn()
          github.com/anacrolix/torrent/torrent.go:3143 +0x5a8
      github.com/anacrolix/torrent.(*Torrent).openNewConns()
          github.com/anacrolix/torrent/torrent.go:1749 +0x538
      github.com/anacrolix/torrent.(*Torrent).addPeer()
          github.com/anacrolix/torrent/torrent.go:394 +0x95c
      github.com/anacrolix/torrent.(*Torrent).addPeers()
          github.com/anacrolix/torrent/torrent.go:2351 +0x128
      github.com/anacrolix/torrent.(*Torrent).AddPeers()
          github.com/anacrolix/torrent/t.go:365 +0x6c
      github.com/anacrolix/torrent.(*trackerScraper).announce()
          github.com/anacrolix/torrent/tracker_scraper.go:219 +0x15bc
      github.com/anacrolix/torrent.(*trackerScraper).Run()
          github.com/anacrolix/torrent/tracker_scraper.go:258 +0x2f8
      github.com/anacrolix/torrent.(*Torrent).startScrapingTracker.func1.gowrap1()
          github.com/anacrolix/torrent/torrent.go:2182 +0x38
    ==================

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions