goharbor/harbor · error
no job in the queue removed
Error message
no job in the queue removed
What it means
Error "no job in the queue removed" thrown in goharbor/harbor.
Source
Thrown at src/pkg/jobmonitor/redis.go:118
}
if len(jobInfo.ID) > 0 {
jobIDs = append(jobIDs, jobInfo.ID)
}
}
}
log.Infof("updated %d tasks in pending status to stop", len(jobIDs))
ret, err := redis.Int64(conn.Do("DEL", redisKeyJobQueue))
if err != nil {
return []string{}, err
}
go func() {
// the amount of jobIDs maybe large, so use goroutine to remove the job status tracking info
r.removeJobStatusInRedis(ctx, jobIDs)
}()
if ret < 1 {
// no job in queue removed
return []string{}, fmt.Errorf("no job in the queue removed")
}
log.Infof("deleted %d keys in waiting queue for %s", ret, jobType)
log.Debugf("job id to be deleted %v", jobIDs)
return jobIDs, nil
}
// removeJobStatusInRedis remove job status track information from redis, to avoid performance impact when the jobIDs is too large, use batch to remove
func (r *redisClientImpl) removeJobStatusInRedis(_ context.Context, jobIDs []string) {
conn := r.redisPool.Get()
defer conn.Close()
for _, id := range jobIDs {
namespace := fmt.Sprintf("{%s}", r.namespace)
redisKeyStatus := rds.KeyJobStats(namespace, id)
log.Debugf("delete job status info for job id:%v, key:%v", id, redisKeyStatus)
_, err := conn.Do("DEL", redisKeyStatus)
if err != nil {
log.Warningf("failed to delete the job status info for job %v, %v, continue", id, err)
}View on GitHub (pinned to 7b2fd08cc5)
When it happens
Trigger: Thrown at src/pkg/jobmonitor/redis.go:118 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of goharbor/harbor@7b2fd08cc5 (2026-08-16).
Data as JSON: /api/errors/3c495ab2323d3cb9.
Report an issue: GitHub.