提交 a94d2174 编写于 作者: G gongweibao

add TaskID

上级 7663a40c
...@@ -113,8 +113,8 @@ func (c *Client) taskFinished(taskID int) error { ...@@ -113,8 +113,8 @@ func (c *Client) taskFinished(taskID int) error {
} }
// TaskFailed tell the master server as task is failed. // TaskFailed tell the master server as task is failed.
func (c *Client) taskFailed(taskID int, epoch int) error { func (c *Client) taskFailed(taskID TaskID) error {
return c.conn.Call("Service.TaskFinished", taskID, epoch) return c.conn.Call("Service.TaskFinished", taskID, nil)
} }
// NextRecord returns next record in the dataset. // NextRecord returns next record in the dataset.
......
...@@ -396,8 +396,14 @@ func (s *Service) TaskFinished(taskID int, dummy *int) error { ...@@ -396,8 +396,14 @@ func (s *Service) TaskFinished(taskID int, dummy *int) error {
return err return err
} }
// TaskFailed tell the service that a task is failed. // TaskID is a struct which client uses for reports failure.
func (s *Service) TaskFailed(taskID int, epoch int) error { type TaskID struct {
ID int
Epoch int
}
// TaskFailed tells the service that a task is failed.
func (s *Service) TaskFailed(taskID TaskID, dummy *int) error {
select { select {
case <-s.ready: case <-s.ready:
} }
...@@ -405,13 +411,13 @@ func (s *Service) TaskFailed(taskID int, epoch int) error { ...@@ -405,13 +411,13 @@ func (s *Service) TaskFailed(taskID int, epoch int) error {
s.mu.Lock() s.mu.Lock()
defer s.mu.Unlock() defer s.mu.Unlock()
t, ok := s.taskQueues.Pending[taskID] t, ok := s.taskQueues.Pending[taskID.ID]
if !ok { if !ok {
err := errors.New("pending task not found") err := errors.New("pending task not found")
log.WithFields(s.logFields()).Warningln("TaskFailed:Pending task #%d not found.", taskID) log.WithFields(s.logFields()).Warningln("TaskFailed:Pending task #%d not found.", taskID)
return err return err
} }
s.procFailedTask(t, epoch) s.procFailedTask(t, taskID.Epoch)
return nil return nil
} }
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册