diff --git a/lib/harmony/harmonytask/harmonytask.go b/lib/harmony/harmonytask/harmonytask.go index dc71b299c..2d537868d 100644 --- a/lib/harmony/harmonytask/harmonytask.go +++ b/lib/harmony/harmonytask/harmonytask.go @@ -313,7 +313,8 @@ func (e *TaskEngine) pollerTryAllWork() bool { resources.CleanupMachines(e.ctx, e.db) } for _, v := range e.handlers { - if v.AssertMachineHasCapacity() != nil { + if err := v.AssertMachineHasCapacity(); err != nil { + log.Debugf("skipped scheduling %s type tasks on due to %s", v.Name, err.Error()) continue } var unownedTasks []TaskID diff --git a/storage/paths/db_index.go b/storage/paths/db_index.go index 470d5c33c..792395445 100644 --- a/storage/paths/db_index.go +++ b/storage/paths/db_index.go @@ -723,7 +723,7 @@ func (dbi *DBIndex) StorageBestAlloc(ctx context.Context, allocate storiface.Sec FROM storage_path WHERE available >= $1 and NOW()-($2 * INTERVAL '1 second') < last_heartbeat - and heartbeat_err is null + and heartbeat_err = '' and (($3 and can_seal = TRUE) or ($4 and can_store = TRUE)) order by (available::numeric * weight) desc`, spaceReq,