Skip to content

race in main in torrent announce #20491

Description

@AskAlexSharov
==================
WARNING: DATA RACE
Write at 0x00c00a68caa8 by goroutine 725358:
  github.com/anacrolix/torrent/tracker/udp.(*Client).request()
      /home/erigon/go/pkg/mod/github.com/anacrolix/torrent@v1.61.1-0.20260306043331-7dea980541ac/tracker/udp/client.go:236 +0x834
  github.com/anacrolix/torrent/tracker/udp.(*Client).Announce()
      /home/erigon/go/pkg/mod/github.com/anacrolix/torrent@v1.61.1-0.20260306043331-7dea980541ac/tracker/udp/client.go:40 +0x357
  github.com/anacrolix/torrent/tracker/udp.(*ConnClient).Announce()
      /home/erigon/go/pkg/mod/github.com/anacrolix/torrent@v1.61.1-0.20260306043331-7dea980541ac/tracker/udp/conn-client.go:129 +0x10c
  github.com/anacrolix/torrent/tracker.(*udpClient).Announce()
      /home/erigon/go/pkg/mod/github.com/anacrolix/torrent@v1.61.1-0.20260306043331-7dea980541ac/tracker/udp.go:44 +0x164
  github.com/anacrolix/torrent.(*regularTrackerAnnounceDispatcher).singleAnnounce()
      /home/erigon/go/pkg/mod/github.com/anacrolix/torrent@v1.61.1-0.20260306043331-7dea980541ac/client-tracker-announcer.go:635 +0x5f9
  github.com/anacrolix/torrent.(*regularTrackerAnnounceDispatcher).singleAnnounceAttempter()
      /home/erigon/go/pkg/mod/github.com/anacrolix/torrent@v1.61.1-0.20260306043331-7dea980541ac/client-tracker-announcer.go:617 +0x3ef
  github.com/anacrolix/torrent.(*regularTrackerAnnounceDispatcher).startAnnounce.gowrap1()
      /home/erigon/go/pkg/mod/github.com/anacrolix/torrent@v1.61.1-0.20260306043331-7dea980541ac/client-tracker-announcer.go:532 +0x8a

Previous write at 0x00c00a68caa8 by goroutine 725361:
  github.com/anacrolix/torrent/tracker/udp.(*Client).request()
      /home/erigon/go/pkg/mod/github.com/anacrolix/torrent@v1.61.1-0.20260306043331-7dea980541ac/tracker/udp/client.go:236 +0x834
  github.com/anacrolix/torrent/tracker/udp.(*Client).Announce()
      /home/erigon/go/pkg/mod/github.com/anacrolix/torrent@v1.61.1-0.20260306043331-7dea980541ac/tracker/udp/client.go:40 +0x357
  github.com/anacrolix/torrent/tracker/udp.(*ConnClient).Announce()
      /home/erigon/go/pkg/mod/github.com/anacrolix/torrent@v1.61.1-0.20260306043331-7dea980541ac/tracker/udp/conn-client.go:129 +0x10c
  github.com/anacrolix/torrent/tracker.(*udpClient).Announce()
      /home/erigon/go/pkg/mod/github.com/anacrolix/torrent@v1.61.1-0.20260306043331-7dea980541ac/tracker/udp.go:44 +0x164
  github.com/anacrolix/torrent.(*regularTrackerAnnounceDispatcher).singleAnnounce()
      /home/erigon/go/pkg/mod/github.com/anacrolix/torrent@v1.61.1-0.20260306043331-7dea980541ac/client-tracker-announcer.go:635 +0x5f9
  github.com/anacrolix/torrent.(*regularTrackerAnnounceDispatcher).singleAnnounceAttempter()
      /home/erigon/go/pkg/mod/github.com/anacrolix/torrent@v1.61.1-0.20260306043331-7dea980541ac/client-tracker-announcer.go:617 +0x3ef
  github.com/anacrolix/torrent.(*regularTrackerAnnounceDispatcher).startAnnounce.gowrap1()
      /home/erigon/go/pkg/mod/github.com/anacrolix/torrent@v1.61.1-0.20260306043331-7dea980541ac/client-tracker-announcer.go:532 +0x8a

Goroutine 725358 (running) created at:
  github.com/anacrolix/torrent.(*regularTrackerAnnounceDispatcher).startAnnounce()
      /home/erigon/go/pkg/mod/github.com/anacrolix/torrent@v1.61.1-0.20260306043331-7dea980541ac/client-tracker-announcer.go:532 +0x39b
  github.com/anacrolix/torrent.(*regularTrackerAnnounceDispatcher).dispatchAnnounces()
      /home/erigon/go/pkg/mod/github.com/anacrolix/torrent@v1.61.1-0.20260306043331-7dea980541ac/client-tracker-announcer.go:508 +0x75
  github.com/anacrolix/torrent.(*regularTrackerAnnounceDispatcher).step()
      /home/erigon/go/pkg/mod/github.com/anacrolix/torrent@v1.61.1-0.20260306043331-7dea980541ac/client-tracker-announcer.go:437 +0x149
  github.com/anacrolix/torrent.(*regularTrackerAnnounceDispatcher).timerFunc()
      /home/erigon/go/pkg/mod/github.com/anacrolix/torrent@v1.61.1-0.20260306043331-7dea980541ac/client-tracker-announcer.go:418 +0x92
  github.com/anacrolix/torrent.(*regularTrackerAnnounceDispatcher).timerFunc-fm()
      <autogenerated>:1 +0x2e
  github.com/anacrolix/torrent/internal/mytimer.(*Timer).innerCallback()
      /home/erigon/go/pkg/mod/github.com/anacrolix/torrent@v1.61.1-0.20260306043331-7dea980541ac/internal/mytimer/my-timer.go:69 +0xd2
  github.com/anacrolix/torrent/internal/mytimer.(*Timer).innerCallback-fm()
      <autogenerated>:1 +0x2e

Goroutine 725361 (running) created at:
  github.com/anacrolix/torrent.(*regularTrackerAnnounceDispatcher).startAnnounce()
      /home/erigon/go/pkg/mod/github.com/anacrolix/torrent@v1.61.1-0.20260306043331-7dea980541ac/client-tracker-announcer.go:532 +0x39b
  github.com/anacrolix/torrent.(*regularTrackerAnnounceDispatcher).dispatchAnnounces()
      /home/erigon/go/pkg/mod/github.com/anacrolix/torrent@v1.61.1-0.20260306043331-7dea980541ac/client-tracker-announcer.go:508 +0x75
  github.com/anacrolix/torrent.(*regularTrackerAnnounceDispatcher).step()
      /home/erigon/go/pkg/mod/github.com/anacrolix/torrent@v1.61.1-0.20260306043331-7dea980541ac/client-tracker-announcer.go:437 +0x149
  github.com/anacrolix/torrent.(*regularTrackerAnnounceDispatcher).timerFunc()
      /home/erigon/go/pkg/mod/github.com/anacrolix/torrent@v1.61.1-0.20260306043331-7dea980541ac/client-tracker-announcer.go:418 +0x92
  github.com/anacrolix/torrent.(*regularTrackerAnnounceDispatcher).timerFunc-fm()
      <autogenerated>:1 +0x2e
  github.com/anacrolix/torrent/internal/mytimer.(*Timer).innerCallback()
      /home/erigon/go/pkg/mod/github.com/anacrolix/torrent@v1.61.1-0.20260306043331-7dea980541ac/internal/mytimer/my-timer.go:69 +0xd2
  github.com/anacrolix/torrent/internal/mytimer.(*Timer).innerCallback-fm()
      <autogenerated>:1 +0x2e
==================

Metadata

Metadata

Assignees

Labels

Type

No type

Fields

No fields configured for issues without a type.

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions