by Robin at 20231228; fix
This commit is contained in:
parent
d9a43a3c47
commit
4c73116546
|
@ -34,7 +34,7 @@ func executeImageAuditTasks(tasks []*ImageAuditTaskControlBlock, batchId string)
|
||||||
req, taskMap, actionMap, err := createScanImageAdvanceRequest(tasks, batchId)
|
req, taskMap, actionMap, err := createScanImageAdvanceRequest(tasks, batchId)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Info("Create Scan ImageRequest fail: %v", err)
|
logger.Info("Create Scan ImageRequest fail: %v", err)
|
||||||
handleBatchError(batchId, err)
|
handleBatchError(tasks, batchId, err)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -46,7 +46,7 @@ func executeImageAuditTasks(tasks []*ImageAuditTaskControlBlock, batchId string)
|
||||||
//_result, err := defaultImageAuditClient.ScanImageWithOptions(req, runtime)
|
//_result, err := defaultImageAuditClient.ScanImageWithOptions(req, runtime)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Error("ScanImageAdvance fail : %v", err)
|
logger.Error("ScanImageAdvance fail : %v", err)
|
||||||
handleBatchError(batchId, err)
|
handleBatchError(tasks, batchId, err)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -357,7 +357,7 @@ func updateExpiredTasks(expiredTaskIds []string) (err error) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
func handleBatchError(batchId string, _err error) (err error) {
|
func handleBatchError(tasks []*ImageAuditTaskControlBlock, batchId string, _err error) (err error) {
|
||||||
logger.Info("All tasks of this batchId: %v has failed, rolling back...", batchId)
|
logger.Info("All tasks of this batchId: %v has failed, rolling back...", batchId)
|
||||||
ctx := &gin.Context{}
|
ctx := &gin.Context{}
|
||||||
if err = _DefaultImageAudit.OpUpdateByBatchId(ctx, batchId, &dbstruct.ImageAudit{
|
if err = _DefaultImageAudit.OpUpdateByBatchId(ctx, batchId, &dbstruct.ImageAudit{
|
||||||
|
@ -375,60 +375,21 @@ func handleBatchError(batchId string, _err error) (err error) {
|
||||||
logger.Error("_DefaultImageAuditTask OpUpdateByBatchId fail: %v\n", err)
|
logger.Error("_DefaultImageAuditTask OpUpdateByBatchId fail: %v\n", err)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 回退
|
||||||
|
for _, task := range tasks {
|
||||||
|
if err = task.RollbackFunc(); err != nil {
|
||||||
|
if err = _DefaultImageAuditTask.OpUpdate(ctx, &imageaudittaskproto.OpUpdateReq{
|
||||||
|
ImageAuditTask: &dbstruct.ImageAuditTask{
|
||||||
|
Id: task.ImageAuditTask.Id,
|
||||||
|
Status: goproto.Int64(consts.ImageAudit_Failed),
|
||||||
|
Remarks: goproto.String("任务审核失败,回退失败,请联系管理员排查"),
|
||||||
|
},
|
||||||
|
}); err != nil {
|
||||||
|
logger.Error("_DefaultImageAudit OpUpdate fail: %v\n", err)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
// func createScanImageRequest(tasks []*ImageAuditTaskControlBlock, batchId string) (request *imageaudit.ScanImageRequest,
|
|
||||||
// taskMap map[int]*ImageAuditTaskControlBlock, actionMap map[string]*ImageAuditAction, err error) {
|
|
||||||
|
|
||||||
// ctx := &gin.Context{}
|
|
||||||
// // todo:taskMap其实可以删掉
|
|
||||||
// taskMap = make(map[int]*ImageAuditTaskControlBlock) // 图像审核索引号-task的map
|
|
||||||
// actionMap = make(map[string]*ImageAuditAction) // 动作Id号-action的map
|
|
||||||
|
|
||||||
// // 1.获取所有图像信息
|
|
||||||
// offset := 0
|
|
||||||
// images := make([]mediafiller.MediaFillable, 0)
|
|
||||||
// for _, task := range tasks {
|
|
||||||
// // 写map记录
|
|
||||||
// if actionMap[task.ActionId] == nil { // 写入actionMap
|
|
||||||
// actionMap[task.ActionId] = NewImageAuditAction()
|
|
||||||
// }
|
|
||||||
// actionMap[task.ActionId].Record(task)
|
|
||||||
|
|
||||||
// //获取图像
|
|
||||||
// for _, image := range task.Images {
|
|
||||||
// images = append(images, image)
|
|
||||||
// taskMap[offset] = task
|
|
||||||
// offset++
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// mediafiller.FillList(ctx, images)
|
|
||||||
|
|
||||||
// // 2.打包图像url及图像审核id,转成ScanImageRequest
|
|
||||||
// reqTasks := make([]*imageaudit.ScanImageRequestTask, 0)
|
|
||||||
// for _, task := range tasks {
|
|
||||||
// if util.DerefInt64(task.ImageAuditTask.IsFragmented) == 1 {
|
|
||||||
// imageauditIds := util.DerefStringSlice(task.ImageAuditTask.ImageAuditFragmentIds)
|
|
||||||
// for i := range task.Images {
|
|
||||||
// reqTasks = append(reqTasks, &imageaudit.ScanImageRequestTask{
|
|
||||||
// DataId: goproto.String(imageauditIds[i]),
|
|
||||||
// ImageURL: goproto.String(task.Images[i].Images[0].Urls[0]),
|
|
||||||
// })
|
|
||||||
// }
|
|
||||||
// } else {
|
|
||||||
// reqTasks = append(reqTasks, &imageaudit.ScanImageRequestTask{
|
|
||||||
// DataId: task.ImageAuditTask.ImageAuditId,
|
|
||||||
// ImageURL: goproto.String(task.Images[0].Images[0].Urls[0]),
|
|
||||||
// })
|
|
||||||
// }
|
|
||||||
|
|
||||||
// }
|
|
||||||
|
|
||||||
// request = &imageaudit.ScanImageRequest{
|
|
||||||
// Scene: scenes,
|
|
||||||
// Task: reqTasks,
|
|
||||||
// }
|
|
||||||
// logger.Info("本次打包:%v", reqTasks)
|
|
||||||
// return
|
|
||||||
// }
|
|
||||||
|
|
|
@ -29,7 +29,7 @@ func executeTextAuditTasks(tasks []*TextAuditTaskControlBlock, batchId string) (
|
||||||
req, actionMap, err := createScanTextRequest(tasks, batchId)
|
req, actionMap, err := createScanTextRequest(tasks, batchId)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Info("Create Scan TextRequest fail: %v", err)
|
logger.Info("Create Scan TextRequest fail: %v", err)
|
||||||
handleBatchError(batchId, err)
|
handleBatchError(tasks, batchId, err)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -40,7 +40,7 @@ func executeTextAuditTasks(tasks []*TextAuditTaskControlBlock, batchId string) (
|
||||||
_result, err := defaultTextAuditClient.ScanTextWithOptions(req, runtime)
|
_result, err := defaultTextAuditClient.ScanTextWithOptions(req, runtime)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Error("ScanTextWithOptions fail : %v", err)
|
logger.Error("ScanTextWithOptions fail : %v", err)
|
||||||
handleBatchError(batchId, err)
|
handleBatchError(tasks, batchId, err)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -296,7 +296,7 @@ func updateExpiredTasks(expiredTaskIds []string) (err error) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
func handleBatchError(batchId string, _err error) (err error) {
|
func handleBatchError(tasks []*TextAuditTaskControlBlock, batchId string, _err error) (err error) {
|
||||||
logger.Info("All tasks of this batchId: %v has failed, rolling back...", batchId)
|
logger.Info("All tasks of this batchId: %v has failed, rolling back...", batchId)
|
||||||
ctx := &gin.Context{}
|
ctx := &gin.Context{}
|
||||||
if err = _DefaultTextAudit.OpUpdateByBatchId(ctx, batchId, &dbstruct.TextAudit{
|
if err = _DefaultTextAudit.OpUpdateByBatchId(ctx, batchId, &dbstruct.TextAudit{
|
||||||
|
@ -314,5 +314,20 @@ func handleBatchError(batchId string, _err error) (err error) {
|
||||||
logger.Error("_DefaultTextAuditTask OpUpdateByBatchId fail: %v\n", err)
|
logger.Error("_DefaultTextAuditTask OpUpdateByBatchId fail: %v\n", err)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 回退
|
||||||
|
for _, task := range tasks {
|
||||||
|
if err = task.RollbackFunc(); err != nil {
|
||||||
|
if err = _DefaultTextAuditTask.OpUpdate(ctx, &textaudittaskproto.OpUpdateReq{
|
||||||
|
TextAuditTask: &dbstruct.TextAuditTask{
|
||||||
|
Id: task.TextAuditTask.Id,
|
||||||
|
Status: goproto.Int64(consts.ImageAudit_Failed),
|
||||||
|
Remarks: goproto.String("任务审核失败,回退失败,请联系管理员排查"),
|
||||||
|
},
|
||||||
|
}); err != nil {
|
||||||
|
logger.Error("_DefaultTextAudit OpUpdate fail: %v\n", err)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue