Explorar el Código

eth/fetcher: avoid spurious timer events at startup (#22652)

Co-authored-by: Felix Lange <fjl@twurst.com>
xD AKA Rapper King Of cn background diablo & revelations hace 4 años
padre
commit
a50251e6cb
Se han modificado 1 ficheros con 6 adiciones y 2 borrados
  1. 6 2
      eth/fetcher/block_fetcher.go

+ 6 - 2
eth/fetcher/block_fetcher.go

@@ -331,8 +331,12 @@ func (f *BlockFetcher) FilterBodies(peer string, transactions [][]*types.Transac
 // events.
 func (f *BlockFetcher) loop() {
 	// Iterate the block fetching until a quit is requested
-	fetchTimer := time.NewTimer(0)
-	completeTimer := time.NewTimer(0)
+	var (
+		fetchTimer    = time.NewTimer(0)
+		completeTimer = time.NewTimer(0)
+	)
+	<-fetchTimer.C // clear out the channel
+	<-completeTimer.C
 	defer fetchTimer.Stop()
 	defer completeTimer.Stop()