Commit 1e1d2d95 authored by duanjinfei's avatar duanjinfei

handler output is nil resp

parent 75f05d54
......@@ -254,18 +254,23 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage)
if readBody != nil {
data := parseData(readBody)
if data != nil {
isRedirect := false
isSuccess := false
switch v := data.(type) {
case [][]string:
{
res := data.([][]string)
log.Info("data is [][]string type")
apiRes := make([][]string, 1)
isRedirect := false
for _, innerSlice := range res {
apiResOneArr := make([]string, 0)
for _, respStr := range innerSlice {
if respStr == "" || respStr == "null" {
continue
}
if !isUseFileCache {
apiResOneArr = append(apiResOneArr, respStr)
isSuccess = true
continue
}
ossUri, err := t.getFileCache(respStr, taskMsg, taskParam, taskCmd)
......@@ -275,6 +280,7 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage)
}
if ossUri == "" {
apiResOneArr = append(apiResOneArr, respStr)
isSuccess = true
}
continue
}
......@@ -287,10 +293,16 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage)
break
} else {
apiResOneArr = append(apiResOneArr, ossUri)
isSuccess = true
}
}
apiRes = append(apiRes, apiResOneArr)
}
if !isSuccess {
taskExecResult.TaskExecError = fmt.Sprintf("%s-%s", "Container output is nil", string(readBody))
t.ExecTaskIdIsSuccess.Store(taskMsg.TaskId, true)
return
}
if !isRedirect {
apiResBody := utils.EncodeJsonEscapeHTML(apiRes)
taskExecResult.TaskRespBody = apiResBody
......@@ -301,10 +313,13 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage)
res := data.([]string)
log.Info("data is []string type")
apiRes := make([]string, 0)
isRedirect := false
for _, respStr := range res {
if respStr == "" || respStr == "null" {
continue
}
if !isUseFileCache {
apiRes = append(apiRes, respStr)
isSuccess = true
continue
}
ossUri, err := t.getFileCache(respStr, taskMsg, taskParam, taskCmd)
......@@ -314,6 +329,7 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage)
}
if ossUri == "" {
apiRes = append(apiRes, respStr)
isSuccess = true
}
continue
}
......@@ -323,11 +339,18 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage)
apiResBody := utils.EncodeJsonEscapeHTML(ossUri)
taskExecResult.TaskRespBody = apiResBody
isRedirect = true
isSuccess = true
break
} else {
apiRes = append(apiRes, ossUri)
isSuccess = true
}
}
if !isSuccess {
taskExecResult.TaskExecError = fmt.Sprintf("%s-%s", "Container output is nil", string(readBody))
t.ExecTaskIdIsSuccess.Store(taskMsg.TaskId, true)
return
}
if !isRedirect {
apiResBody := utils.EncodeJsonEscapeHTML(apiRes)
taskExecResult.TaskRespBody = apiResBody
......@@ -341,8 +364,12 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage)
apiRes := make([]string, 0)
isRedirect := false
for _, respStr := range resArr {
if respStr == "" || respStr == "null" {
continue
}
if !isUseFileCache {
apiRes = append(apiRes, respStr)
isSuccess = true
continue
}
ossUri, err := t.getFileCache(respStr, taskMsg, taskParam, taskCmd)
......@@ -352,6 +379,7 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage)
}
if ossUri == "" {
apiRes = append(apiRes, respStr)
isSuccess = true
}
continue
}
......@@ -361,11 +389,18 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage)
apiResBody := utils.EncodeJsonEscapeHTML(ossUri)
taskExecResult.TaskRespBody = apiResBody
isRedirect = true
isSuccess = true
break
} else {
apiRes = append(apiRes, ossUri)
isSuccess = true
}
}
if !isSuccess {
taskExecResult.TaskExecError = fmt.Sprintf("%s-%s", "Container output is nil", string(readBody))
t.ExecTaskIdIsSuccess.Store(taskMsg.TaskId, true)
return
}
if !isRedirect {
apiResBody := utils.EncodeJsonEscapeHTML(apiRes)
taskExecResult.TaskRespBody = apiResBody
......@@ -412,7 +447,7 @@ func (t *TaskHandler) ComputeTaskHandler(taskMsg *nodeManagerV1.PushTaskMessage)
}
taskExecResult.TaskExecError = fmt.Sprintf("%s,Container Http Code:%d,body:%s", "Container is exec failed", post.StatusCode, string(all))
} else {
taskExecResult.TaskExecError = fmt.Sprintf("%s,Container Http Code:%d,body:%s", "Read container body failed", post.StatusCode, "")
taskExecResult.TaskExecError = fmt.Sprintf("%s,Container Http Code:%d,body:%s", "Container resp body is nil", post.StatusCode, "")
}
log.WithField("error", post.Body).WithField("taskId", taskMsg.TaskId).Error("Exec task result is failed")
}
......
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