@@ -82,17 +82,12 @@ func (bp *BundleProverTask) Assign(ctx *gin.Context, getTaskParameter *coordinat
8282 for i := 0 ; i < 5 ; i ++ {
8383 var getTaskError error
8484 var tmpBundleTask * orm.Bundle
85- if getTaskParameter .TaskID != "" {
86- tmpBundleTask , getTaskError = bp .bundleOrm .GetBundleByHash (ctx .Copy (), getTaskParameter .TaskID )
87- if getTaskError != nil {
88- log .Error ("failed to get expected bundle" , "taskID" , getTaskParameter .TaskID , "err" , getTaskError )
89- return nil , ErrCoordinatorInternalFailure
90- } else if tmpBundleTask == nil {
91- return nil , fmt .Errorf ("Expected task (%s) is already dropped" , getTaskParameter .TaskID )
92- }
93- }
9485
9586 if taskCtx .hasAssignedTask != nil {
87+ if taskCtx .hasAssignedTask .TaskType != int16 (message .ProofTypeBundle ) {
88+ return nil , fmt .Errorf ("prover with publicKey %s is already assigned a task. ProverName: %s, ProverVersion: %s" , taskCtx .PublicKey , taskCtx .ProverName , taskCtx .ProverVersion )
89+ }
90+
9691 tmpBundleTask , getTaskError = bp .bundleOrm .GetBundleByHash (ctx .Copy (), taskCtx .hasAssignedTask .TaskID )
9792 if getTaskError != nil {
9893 log .Error ("failed to get bundle has assigned to prover" , "taskID" , taskCtx .hasAssignedTask .TaskID , "err" , getTaskError )
@@ -102,6 +97,14 @@ func (bp *BundleProverTask) Assign(ctx *gin.Context, getTaskParameter *coordinat
10297 return nil , fmt .Errorf ("prover with publicKey %s is already assigned a dropped bundle. ProverName: %s, ProverVersion: %s" ,
10398 taskCtx .PublicKey , taskCtx .ProverName , taskCtx .ProverVersion )
10499 }
100+ } else if getTaskParameter .TaskID != "" {
101+ tmpBundleTask , getTaskError = bp .bundleOrm .GetBundleByHash (ctx .Copy (), getTaskParameter .TaskID )
102+ if getTaskError != nil {
103+ log .Error ("failed to get expected bundle" , "taskID" , getTaskParameter .TaskID , "err" , getTaskError )
104+ return nil , ErrCoordinatorInternalFailure
105+ } else if tmpBundleTask == nil {
106+ return nil , fmt .Errorf ("Expected task (%s) is already dropped" , getTaskParameter .TaskID )
107+ }
105108 }
106109
107110 if tmpBundleTask == nil {
0 commit comments