{"record":{"id":"c0fb8f8e7ba7c425","repo":"goharbor/harbor","slug":"not-found-c0fb8f","errorCode":"NOT_FOUND","errorMessage":"the asking blob is in GC, mark it as non existing, request id: %s","messagePattern":"the asking blob is in GC, mark it as non existing, request id: (.+?)","errorType":"http","errorClass":"errors.Error","httpStatus":404,"severity":"error","filePath":"src/server/middleware/blob/util.go","lineNumber":59,"sourceCode":"\n\tswitch bb.Status {\n\tcase models.StatusNone, models.StatusDelete, models.StatusDeleteFailed:\n\t\tif err := blobController.Touch(r.Context(), bb); err != nil {\n\t\t\tlogger.Errorf(\"failed to update blob: %s status to StatusNone, error:%v\", bb.Digest, err)\n\t\t\treturn errors.Wrapf(err, \"the request id is: %s\", r.Header.Get(requestid.HeaderXRequestID))\n\t\t}\n\tcase models.StatusDeleting:\n\t\tnow := time.Now().UTC()\n\t\t// if the deleting exceed 2 hours, marks the blob as StatusDeleteFailed\n\t\tif now.Sub(bb.UpdateTime) > time.Duration(config.GetGCTimeWindow())*time.Hour {\n\t\t\tif err := blob.Ctl.Fail(r.Context(), bb); err != nil {\n\t\t\t\tlog.Errorf(\"failed to update blob: %s status to StatusDeleteFailed, error:%v\", bb.Digest, err)\n\t\t\t\treturn errors.Wrapf(err, \"the request id is: %s\", r.Header.Get(requestid.HeaderXRequestID))\n\t\t\t}\n\t\t\t// StatusDeleteFailed => StatusNone, and then let the proxy to handle manifest upload\n\t\t\treturn probeBlob(r, digest)\n\t\t}\n\t\treturn errors.New(nil).WithMessagef(\"the asking blob is in GC, mark it as non existing, request id: %s\", r.Header.Get(requestid.HeaderXRequestID)).WithCode(errors.NotFoundCode)\n\tdefault:\n\t\treturn nil\n\t}\n\treturn nil\n}\n","sourceCodeStart":41,"sourceCodeEnd":65,"githubUrl":"https://github.com/goharbor/harbor/blob/7b2fd08cc568955cca339afeefab27372840d936/src/server/middleware/blob/util.go#L41-L65","documentation":"Error \"the asking blob is in GC, mark it as non existing, request id: %s\" thrown in goharbor/harbor.","triggerScenarios":"Thrown at src/server/middleware/blob/util.go:59 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"7b2fd08cc568955cca339afeefab27372840d936","analyzedAt":"2026-08-16T00:00:10.961Z","schemaVersion":2},"datasetVersion":"2026-08-16T03:17:38.424Z"}