@@ -33,12 +33,12 @@ func NewPuller(feedRepo FeedRepo, itemRepo ItemRepo) *Puller {
33
33
}
34
34
}
35
35
36
- const interval = 30
36
+ var interval = 30 * time . Minute
37
37
38
38
func (p * Puller ) Run () {
39
39
ctx , cancel := context .WithCancel (context .Background ())
40
40
defer cancel ()
41
- ticker := time .NewTicker (interval * time . Minute )
41
+ ticker := time .NewTicker (interval )
42
42
defer ticker .Stop ()
43
43
44
44
for {
@@ -52,9 +52,9 @@ func (p *Puller) Run() {
52
52
}
53
53
}
54
54
55
- func (p * Puller ) PullAll (ctx context.Context , includeFailed bool ) error {
55
+ func (p * Puller ) PullAll (ctx context.Context , force bool ) error {
56
56
log .Println ("start pull-all" )
57
- ctx , cancel := context .WithTimeout (ctx , ( interval - 3 ) * time . Minute )
57
+ ctx , cancel := context .WithTimeout (ctx , interval / 2 )
58
58
defer cancel ()
59
59
feeds , err := p .feedRepo .All ()
60
60
if err != nil {
@@ -71,11 +71,6 @@ func (p *Puller) PullAll(ctx context.Context, includeFailed bool) error {
71
71
defer close (routinePool )
72
72
wg := sync.WaitGroup {}
73
73
for _ , f := range feeds {
74
- if f .IsSuspended () || (f .IsFailed () && ! includeFailed ) {
75
- log .Printf ("skip %d\n " , f .ID )
76
- continue
77
- }
78
-
79
74
routinePool <- struct {}{}
80
75
wg .Add (1 )
81
76
go func (f * model.Feed ) {
@@ -84,7 +79,7 @@ func (p *Puller) PullAll(ctx context.Context, includeFailed bool) error {
84
79
<- routinePool
85
80
}()
86
81
87
- if err := p .do (ctx , f ); err != nil {
82
+ if err := p .do (ctx , f , force ); err != nil {
88
83
log .Println (err )
89
84
}
90
85
}(f )
@@ -102,5 +97,5 @@ func (p *Puller) PullOne(id uint) error {
102
97
ctx , cancel := context .WithTimeout (context .Background (), 10 * time .Second )
103
98
defer cancel ()
104
99
105
- return p .do (ctx , f )
100
+ return p .do (ctx , f , true )
106
101
}
0 commit comments