File tree Expand file tree Collapse file tree 1 file changed +10
-3
lines changed Expand file tree Collapse file tree 1 file changed +10
-3
lines changed Original file line number Diff line number Diff line change @@ -961,7 +961,12 @@ func (d *Downloader) fetchHeaders(p *peerConnection, from uint64) error {
961
961
ancestor := from
962
962
getHeaders (from )
963
963
964
- //mode := d.getMode()
964
+ headerCheckTimer := time .NewTimer (fsHeaderContCheck )
965
+ defer headerCheckTimer .Stop ()
966
+
967
+ headerDelayedTimer := time .NewTimer (fsHeaderContCheck )
968
+ defer headerDelayedTimer .Stop ()
969
+
965
970
for {
966
971
select {
967
972
case <- d .cancelCh :
@@ -1025,8 +1030,9 @@ func (d *Downloader) fetchHeaders(p *peerConnection, from uint64) error {
1025
1030
// Don't abort header fetches while the pivot is downloading
1026
1031
if ! d .committed .Load () && pivot <= from {
1027
1032
p .log .Debug ("No headers, waiting for pivot commit" )
1033
+ headerCheckTimer .Reset (fsHeaderContCheck )
1028
1034
select {
1029
- case <- time . After ( fsHeaderContCheck ) :
1035
+ case <- headerCheckTimer . C :
1030
1036
getHeaders (from )
1031
1037
continue
1032
1038
case <- d .cancelCh :
@@ -1097,8 +1103,9 @@ func (d *Downloader) fetchHeaders(p *peerConnection, from uint64) error {
1097
1103
} else {
1098
1104
// No headers delivered, or all of them being delayed, sleep a bit and retry
1099
1105
p .log .Trace ("All headers delayed, waiting" )
1106
+ headerDelayedTimer .Reset (fsHeaderContCheck )
1100
1107
select {
1101
- case <- time . After ( fsHeaderContCheck ) :
1108
+ case <- headerDelayedTimer . C :
1102
1109
getHeaders (from )
1103
1110
continue
1104
1111
case <- d .cancelCh :
You can’t perform that action at this time.
0 commit comments