Browse Source

fix-2069

tags/v1.22.9.2^2
liuzx 3 years ago
parent
commit
86b05f642f
6 changed files with 26 additions and 22 deletions
  1. +2
    -1
      models/cloudbrain.go
  2. +1
    -0
      options/locale/locale_en-US.ini
  3. +1
    -0
      options/locale/locale_zh-CN.ini
  4. +8
    -8
      routers/repo/cloudbrain.go
  5. +4
    -4
      routers/repo/grampus.go
  6. +10
    -9
      routers/repo/modelarts.go

+ 2
- 1
models/cloudbrain.go View File

@@ -101,7 +101,8 @@ const (
ModelArtsTrainJobCheckRunningCompleted ModelArtsJobStatus = "CHECK_RUNNING_COMPLETED" //审核作业已经完成
ModelArtsTrainJobCheckFailed ModelArtsJobStatus = "CHECK_FAILED" //审核作业失败

DURATION_STR_ZERO = "00:00:00"
DURATION_STR_ZERO = "00:00:00"
CloudbrainKeyDuration = 24 * time.Hour

//grampus
GrampusStatusPending = "pending"


+ 1
- 0
options/locale/locale_en-US.ini View File

@@ -1092,6 +1092,7 @@ cloudbrain_operate = Operate
cloudbrain_status_createtime = Status/Createtime
cloudbrain_status_runtime = Running Time
cloudbrain_jobname_err=Name must start with a lowercase letter or number,can include lowercase letter,number,_ and -,can not end with _, and can be up to 36 characters long.
cloudbrain_samejob_err=You have created a task with the same name, the system is processing it, please wait a minute.
cloudbrain_bootfile_err=The bootfile does not exist in the repository
cloudbrain_query_fail=Failed to query cloudbrain information.
cloudbrain.mirror_tag = Mirror Tag


+ 1
- 0
options/locale/locale_zh-CN.ini View File

@@ -1096,6 +1096,7 @@ cloudbrain_operate=操作
cloudbrain_status_createtime=状态/创建时间
cloudbrain_status_runtime = 运行时长
cloudbrain_jobname_err=只能以小写字母或数字开头且只包含小写字母、数字、_和-,不能以_结尾,最长36个字符。
cloudbrain_samejob_err=您已经创建了同名任务,系统处理中,请您稍候。
cloudbrain_bootfile_err=仓库中不存在启动文件
cloudbrain_query_fail=查询云脑任务失败。
cloudbrain.mirror_tag = 镜像标签


+ 8
- 8
routers/repo/cloudbrain.go View File

@@ -250,11 +250,11 @@ func CloudBrainCreate(ctx *context.Context, form auth.CreateCloudBrainForm) {
}

lock := redis_lock.NewDistributeLock(redis_key.CloudbrainBindingJobNameKey(fmt.Sprint(repo.ID), jobType, displayJobName))
isOk := lock.Lock(60 * time.Second)
isOk := lock.Lock(models.CloudbrainKeyDuration)
if !isOk {
log.Error("The task have been processed", ctx.Data["MsgID"])
cloudBrainNewDataPrepare(ctx)
ctx.RenderWithErr("The task have been processed, please wait a minute", tpl, &form)
ctx.RenderWithErr(ctx.Tr("repo.cloudbrain_samejob_err"), tpl, &form)
return
}
defer lock.UnLock()
@@ -438,11 +438,11 @@ func CloudBrainInferenceJobCreate(ctx *context.Context, form auth.CreateCloudBra
tpl := tplCloudBrainInferenceJobNew

lock := redis_lock.NewDistributeLock(redis_key.CloudbrainBindingJobNameKey(fmt.Sprint(repo.ID), jobType, displayJobName))
isOk := lock.Lock(60 * time.Second)
isOk := lock.Lock(models.CloudbrainKeyDuration)
if !isOk {
log.Error("The task have been processed", ctx.Data["MsgID"])
cloudBrainNewDataPrepare(ctx)
ctx.RenderWithErr("The task have been processed, please wait a minute", tpl, &form)
ctx.RenderWithErr(ctx.Tr("repo.cloudbrain_samejob_err"), tpl, &form)
return
}
defer lock.UnLock()
@@ -2319,11 +2319,11 @@ func BenchMarkAlgorithmCreate(ctx *context.Context, form auth.CreateCloudBrainFo
ctx.Data["benchmark_child_types_id_hidden"] = benchmarkChildTypeID

lock := redis_lock.NewDistributeLock(redis_key.CloudbrainBindingJobNameKey(fmt.Sprint(repo.ID), form.JobType, displayJobName))
isOk := lock.Lock(60 * time.Second)
isOk := lock.Lock(models.CloudbrainKeyDuration)
if !isOk {
log.Error("The task have been processed", ctx.Data["MsgID"])
cloudBrainNewDataPrepare(ctx)
ctx.RenderWithErr("The task have been processed, please wait a minute", tplCloudBrainBenchmarkNew, &form)
ctx.RenderWithErr(ctx.Tr("repo.cloudbrain_samejob_err"), tplCloudBrainBenchmarkNew, &form)
return
}
defer lock.UnLock()
@@ -2517,11 +2517,11 @@ func ModelBenchmarkCreate(ctx *context.Context, form auth.CreateCloudBrainForm)
command := cloudbrain.GetCloudbrainDebugCommand()

lock := redis_lock.NewDistributeLock(redis_key.CloudbrainBindingJobNameKey(fmt.Sprint(repo.ID), jobType, displayJobName))
isOk := lock.Lock(60 * time.Second)
isOk := lock.Lock(models.CloudbrainKeyDuration)
if !isOk {
log.Error("The task have been processed", ctx.Data["MsgID"])
cloudBrainNewDataPrepare(ctx)
ctx.RenderWithErr("The task have been processed, please wait a minute", tpl, &form)
ctx.RenderWithErr(ctx.Tr("repo.cloudbrain_samejob_err"), tpl, &form)
return
}
defer lock.UnLock()


+ 4
- 4
routers/repo/grampus.go View File

@@ -212,11 +212,11 @@ func GrampusTrainJobGpuCreate(ctx *context.Context, form auth.CreateGrampusTrain
image := strings.TrimSpace(form.Image)

lock := redis_lock.NewDistributeLock(redis_key.CloudbrainBindingJobNameKey(fmt.Sprint(repo.ID), string(models.JobTypeTrain), displayJobName))
isOk := lock.Lock(60 * time.Second)
isOk := lock.Lock(models.CloudbrainKeyDuration)
if !isOk {
log.Error("The task have been processed", ctx.Data["MsgID"])
grampusTrainJobNewDataPrepare(ctx, grampus.ProcessorTypeGPU)
ctx.RenderWithErr("The task have been processed, please wait a minute", tplGrampusTrainJobGPUNew, &form)
ctx.RenderWithErr(ctx.Tr("repo.cloudbrain_samejob_err"), tplGrampusTrainJobGPUNew, &form)
return
}
defer lock.UnLock()
@@ -414,11 +414,11 @@ func GrampusTrainJobNpuCreate(ctx *context.Context, form auth.CreateGrampusTrain
engineName := form.EngineName

lock := redis_lock.NewDistributeLock(redis_key.CloudbrainBindingJobNameKey(fmt.Sprint(repo.ID), string(models.JobTypeTrain), displayJobName))
isOk := lock.Lock(60 * time.Second)
isOk := lock.Lock(models.CloudbrainKeyDuration)
if !isOk {
log.Error("The task have been processed", ctx.Data["MsgID"])
grampusTrainJobNewDataPrepare(ctx, grampus.ProcessorTypeNPU)
ctx.RenderWithErr("The task have been processed, please wait a minute", tplGrampusTrainJobNPUNew, &form)
ctx.RenderWithErr(ctx.Tr("repo.cloudbrain_samejob_err"), tplGrampusTrainJobNPUNew, &form)
return
}
defer lock.UnLock()


+ 10
- 9
routers/repo/modelarts.go View File

@@ -2,7 +2,6 @@ package repo

import (
"archive/zip"
"code.gitea.io/gitea/modules/modelarts_cd"
"encoding/json"
"errors"
"fmt"
@@ -16,6 +15,8 @@ import (
"time"
"unicode/utf8"

"code.gitea.io/gitea/modules/modelarts_cd"

"code.gitea.io/gitea/models"
"code.gitea.io/gitea/modules/auth"
"code.gitea.io/gitea/modules/base"
@@ -154,11 +155,11 @@ func Notebook2Create(ctx *context.Context, form auth.CreateModelArtsNotebookForm
repo := ctx.Repo.Repository

lock := redis_lock.NewDistributeLock(redis_key.CloudbrainBindingJobNameKey(fmt.Sprint(repo.ID), string(models.JobTypeDebug), displayJobName))
isOk := lock.Lock(60 * time.Second)
isOk := lock.Lock(models.CloudbrainKeyDuration)
if !isOk {
log.Error("The task have been processed", ctx.Data["MsgID"])
notebookNewDataPrepare(ctx)
ctx.RenderWithErr("The task have been processed, please wait a minute", tplModelArtsNotebookNew, &form)
ctx.RenderWithErr(ctx.Tr("repo.cloudbrain_samejob_err"), tplModelArtsNotebookNew, &form)
return
}
defer lock.UnLock()
@@ -1094,11 +1095,11 @@ func TrainJobCreate(ctx *context.Context, form auth.CreateModelArtsTrainJobForm)
}

lock := redis_lock.NewDistributeLock(redis_key.CloudbrainBindingJobNameKey(fmt.Sprint(repo.ID), string(models.JobTypeTrain), displayJobName))
isOk := lock.Lock(60 * time.Second)
isOk := lock.Lock(models.CloudbrainKeyDuration)
if !isOk {
log.Error("The task have been processed", ctx.Data["MsgID"])
trainJobErrorNewDataPrepare(ctx, form)
ctx.RenderWithErr("The task have been processed, please wait a minute", tplModelArtsTrainJobNew, &form)
ctx.RenderWithErr(ctx.Tr("repo.cloudbrain_samejob_err"), tplModelArtsTrainJobNew, &form)
return
}
defer lock.UnLock()
@@ -1466,11 +1467,11 @@ func TrainJobCreateVersion(ctx *context.Context, form auth.CreateModelArtsTrainJ
isLatestVersion := modelarts.IsLatestVersion

lock := redis_lock.NewDistributeLock(redis_key.CloudbrainBindingJobNameKey(fmt.Sprint(repo.ID), string(models.JobTypeTrain), displayJobName))
isOk := lock.Lock(60 * time.Second)
isOk := lock.Lock(models.CloudbrainKeyDuration)
if !isOk {
log.Error("The task have been processed", ctx.Data["MsgID"])
versionErrorDataPrepare(ctx, form)
ctx.RenderWithErr("The task have been processed, please wait a minute", tplModelArtsTrainJobVersionNew, &form)
ctx.RenderWithErr(ctx.Tr("repo.cloudbrain_samejob_err"), tplModelArtsTrainJobVersionNew, &form)
return
}
defer lock.UnLock()
@@ -2072,11 +2073,11 @@ func InferenceJobCreate(ctx *context.Context, form auth.CreateModelArtsInference
}

lock := redis_lock.NewDistributeLock(redis_key.CloudbrainBindingJobNameKey(fmt.Sprint(repo.ID), string(models.JobTypeInference), displayJobName))
isOk := lock.Lock(60 * time.Second)
isOk := lock.Lock(models.CloudbrainKeyDuration)
if !isOk {
log.Error("The task have been processed", ctx.Data["MsgID"])
inferenceJobErrorNewDataPrepare(ctx, form)
ctx.RenderWithErr("The task have been processed, please wait a minute", tplModelArtsInferenceJobNew, &form)
ctx.RenderWithErr(ctx.Tr("repo.cloudbrain_samejob_err"), tplModelArtsInferenceJobNew, &form)
return
}
defer lock.UnLock()


Loading…
Cancel
Save