Commit 7cd93bc3 authored by duanjinfei's avatar duanjinfei

handler container resp is nil

parent dba82059
...@@ -317,6 +317,7 @@ func handlerMsg(nodeManager *models.NodeManagerClient, ...@@ -317,6 +317,7 @@ func handlerMsg(nodeManager *models.NodeManagerClient,
taskExecRes.TaskExecError = fmt.Sprintf("%s-%s", "Container sign failed", taskExecRes.TaskExecError) taskExecRes.TaskExecError = fmt.Sprintf("%s-%s", "Container sign failed", taskExecRes.TaskExecError)
} }
} else { } else {
isSuccess = false
taskExecRes.TaskExecError = fmt.Sprintf("%s-%s", "Task exec error", taskExecRes.TaskExecError) taskExecRes.TaskExecError = fmt.Sprintf("%s-%s", "Task exec error", taskExecRes.TaskExecError)
} }
reqHash, respHash, minerSign := taskMsgWorker.GetMinerSign(taskMsg, taskExecRes.TaskRespBody) reqHash, respHash, minerSign := taskMsgWorker.GetMinerSign(taskMsg, taskExecRes.TaskRespBody)
......
...@@ -104,9 +104,7 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage) ...@@ -104,9 +104,7 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage)
TaskExecTime: 0, TaskExecTime: 0,
TaskExecError: "", TaskExecError: "",
} }
t.Mutex.Lock()
t.LruCache.Add(taskMsg.TaskId, taskExecResult) t.LruCache.Add(taskMsg.TaskId, taskExecResult)
t.Mutex.Unlock()
taskCmd := &models.TaskCmd{} taskCmd := &models.TaskCmd{}
err := json.Unmarshal(bytes.NewBufferString(taskMsg.TaskCmd).Bytes(), taskCmd) err := json.Unmarshal(bytes.NewBufferString(taskMsg.TaskCmd).Bytes(), taskCmd)
if err != nil { if err != nil {
...@@ -295,6 +293,12 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage) ...@@ -295,6 +293,12 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage)
apiResBody := utils.EncodeJsonEscapeHTML(apiRes) apiResBody := utils.EncodeJsonEscapeHTML(apiRes)
taskExecResult.TaskRespBody = apiResBody taskExecResult.TaskRespBody = apiResBody
} }
if len(apiRes) == 0 || len(apiRes[0]) == 0 {
log.Warn("Container resp output is nil")
taskExecResult.TaskExecError = fmt.Sprintf("worker:%s,%s", conf.GetConfig().SignPublicAddress.Hex(), "Container resp output is nil")
t.ExecTaskIdIsSuccess.Store(taskMsg.TaskId, true)
return
}
} }
case []string: case []string:
{ {
...@@ -330,6 +334,12 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage) ...@@ -330,6 +334,12 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage)
apiResBody := utils.EncodeJsonEscapeHTML(apiRes) apiResBody := utils.EncodeJsonEscapeHTML(apiRes)
taskExecResult.TaskRespBody = apiResBody taskExecResult.TaskRespBody = apiResBody
} }
if len(apiRes) == 0 {
log.Warn("Container resp output is nil")
taskExecResult.TaskExecError = fmt.Sprintf("worker:%s,%s", conf.GetConfig().SignPublicAddress.Hex(), "Container resp output is nil")
t.ExecTaskIdIsSuccess.Store(taskMsg.TaskId, true)
return
}
} }
case string: case string:
{ {
...@@ -366,20 +376,23 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage) ...@@ -366,20 +376,23 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage)
apiResBody := utils.EncodeJsonEscapeHTML(apiRes) apiResBody := utils.EncodeJsonEscapeHTML(apiRes)
taskExecResult.TaskRespBody = apiResBody taskExecResult.TaskRespBody = apiResBody
} }
if len(apiRes) == 0 {
log.Warn("Container resp output is nil")
taskExecResult.TaskExecError = fmt.Sprintf("worker:%s,%s", conf.GetConfig().SignPublicAddress.Hex(), "Container resp output is nil")
t.ExecTaskIdIsSuccess.Store(taskMsg.TaskId, true)
return
}
} }
default: default:
log.Error("data is unknown type", v) log.Error("data is unknown type", v)
taskExecResult.TaskExecError = fmt.Sprintf("worker:%s,%s", conf.GetConfig().SignPublicAddress.Hex(), "Container resp data is unknown type") taskExecResult.TaskExecError = fmt.Sprintf("worker:%s,%s", conf.GetConfig().SignPublicAddress.Hex(), "Container resp data is unknown type")
apiRes := make([]string, 0) t.ExecTaskIdIsSuccess.Store(taskMsg.TaskId, true)
apiResBody := utils.EncodeJsonEscapeHTML(apiRes) return
taskExecResult.TaskRespBody = apiResBody
} }
} else { } else {
taskExecResult.TaskExecError = fmt.Sprintf("worker:%s,%s", conf.GetConfig().SignPublicAddress.Hex(), "Container resp ouput is nil") log.Error("Container resp output is nil")
taskExecResult.TaskExecError = fmt.Sprintf("worker:%s,%s", conf.GetConfig().SignPublicAddress.Hex(), "Container resp output is nil")
t.ExecTaskIdIsSuccess.Store(taskMsg.TaskId, true) t.ExecTaskIdIsSuccess.Store(taskMsg.TaskId, true)
apiRes := make([]string, 0)
apiResBody := utils.EncodeJsonEscapeHTML(apiRes)
taskExecResult.TaskRespBody = apiResBody
return return
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment