{"record":{"id":"85b098c4f8e3c4cd","repo":"juicedata/juicefs","slug":"storj-open-project-w","errorCode":null,"errorMessage":"storj: open project: %w","messagePattern":"storj: open project: %w","errorType":"error_code","errorClass":null,"httpStatus":null,"severity":"error","filePath":"pkg/object/storj.go","lineNumber":363,"sourceCode":"func newStorj(endpoint, accessGrant, _, _ string) (ObjectStorage, error) {\n\tif accessGrant == \"\" {\n\t\treturn nil, fmt.Errorf(\"storj: access grant is required (pass via --access-key)\")\n\t}\n\taccess, err := uplink.ParseAccess(accessGrant)\n\tif err != nil {\n\t\treturn nil, fmt.Errorf(\"storj: parse access grant: %w\", err)\n\t}\n\tbucket := strings.Trim(strings.TrimPrefix(endpoint, \"storj://\"), \"/\")\n\tif bucket == \"\" {\n\t\treturn nil, fmt.Errorf(\"storj: bucket name is required (set via --bucket)\")\n\t}\n\n\tcfg := uplink.Config{UserAgent: UserAgent}\n\n\tctx := context.Background()\n\tproject, err := cfg.OpenProject(ctx, access)\n\tif err != nil {\n\t\treturn nil, fmt.Errorf(\"storj: open project: %w\", err)\n\t}\n\treturn &storjClient{project: project, bucket: bucket}, nil\n}\n\nfunc init() {\n\tRegister(\"storj\", newStorj)\n}\n","sourceCodeStart":345,"sourceCodeEnd":371,"githubUrl":"https://github.com/juicedata/juicefs/blob/c9a67b23e8e08ec23ec331aa6f1675e2319e921c/pkg/object/storj.go#L345-L371","documentation":"Returned by newStorj when opening the Storj project with the parsed access grant fails — the grant is structurally valid but the satellite is unreachable, credentials were revoked, or the project cannot be opened.","triggerScenarios":"Thrown at pkg/object/storj.go:363 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Verify network access to the Storj satellite","Confirm the access grant is still valid and not revoked"],"exampleFix":null,"handlingStrategy":"retry","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"c9a67b23e8e08ec23ec331aa6f1675e2319e921c","analyzedAt":"2026-09-06T17:55:48.476Z","contentChangedAt":"2026-09-06T17:55:48.476Z","schemaVersion":2},"datasetVersion":"2026-09-14T05:17:10.506Z"}