@@ -53,7 +53,7 @@ type Status struct {
53
53
type WorkerCheckPoint struct {
54
54
LastInvokeTime time.Time `json:"last_invoke_time"`
55
55
LastFinished * time.Time `json:"last_finished,omitempty"`
56
- Result bool `json:"result,omitempty"`
56
+ Result * bool `json:"result,omitempty"`
57
57
}
58
58
59
59
type CheckPoint struct {
@@ -92,10 +92,15 @@ func workerFromCheckpoint(repoConfig config.RepoConfig, checkpoint *CheckPoint,
92
92
return worker .NewWorker (repoConfig , lastInvokeTime , true )
93
93
}
94
94
95
- if info .LastFinished == nil {
96
- return worker .NewWorker (repoConfig , lastInvokeTime , info .Result )
95
+ result := true
96
+ if info .Result != nil {
97
+ result = * info .Result
97
98
}
98
- return worker .NewWorker (repoConfig , * info .LastFinished , info .Result )
99
+ lastFinished := lastInvokeTime
100
+ if info .LastFinished != nil {
101
+ lastFinished = * info .LastFinished
102
+ }
103
+ return worker .NewWorker (repoConfig , lastFinished , result )
99
104
}
100
105
101
106
// NewManager creates a new manager with attached workers from config
@@ -148,7 +153,7 @@ func (m *Manager) checkpoint() error {
148
153
149
154
ckptObj .WorkerInfo [name ] = WorkerCheckPoint {
150
155
LastInvokeTime : lastInvokeTime ,
151
- Result : status .Result ,
156
+ Result : & status .Result ,
152
157
LastFinished : & status .LastFinished ,
153
158
}
154
159
}
0 commit comments