{"record":{"id":"708cc371fe2e4ff2","repo":"ipfs/kubo","slug":"old-style-datatstore-config-detected","errorCode":null,"errorMessage":"old style datatstore config detected","messagePattern":"old style datatstore config detected","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"repo/fsrepo/fsrepo.go","lineNumber":490,"sourceCode":"\treturn err\n}\n\nfunc (r *FSRepo) openKeystore() error {\n\tksp := filepath.Join(r.path, \"keystore\")\n\tks, err := keystore.NewFSKeystore(ksp)\n\tif err != nil {\n\t\treturn err\n\t}\n\n\tr.keystore = ks\n\n\treturn nil\n}\n\n// openDatastore returns an error if the config file is not present.\nfunc (r *FSRepo) openDatastore() error {\n\tif r.config.Datastore.Type != \"\" || r.config.Datastore.Path != \"\" {\n\t\treturn fmt.Errorf(\"old style datatstore config detected\")\n\t} else if r.config.Datastore.Spec == nil {\n\t\treturn fmt.Errorf(\"required Datastore.Spec entry missing from config file\")\n\t}\n\tif r.config.Datastore.NoSync {\n\t\tlog.Warn(\"NoSync is now deprecated in favor of datastore specific settings. If you want to disable fsync on flatfs set 'sync' to false. See https://github.com/ipfs/kubo/blob/master/docs/datastores.md#flatfs.\")\n\t}\n\n\tdsc, err := AnyDatastoreConfig(r.config.Datastore.Spec)\n\tif err != nil {\n\t\treturn err\n\t}\n\tspec := dsc.DiskSpec()\n\n\toldSpec, err := r.readSpec()\n\tif err != nil {\n\t\treturn err\n\t}\n\tif oldSpec != spec.String() {","sourceCodeStart":472,"sourceCodeEnd":508,"githubUrl":"https://github.com/ipfs/kubo/blob/329838acdfafae224582930457efe80aa217afc0/repo/fsrepo/fsrepo.go#L472-L508","documentation":"Repo open guard: the config still carries the pre-0.5 'Datastore.Type'/'Datastore.Path' top-level fields, which were replaced by the Datastore.Spec map. Kubo refuses to guess how to open such an old-style datastore.","triggerScenarios":"Thrown at repo/fsrepo/fsrepo.go:490 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Run the repo migrations to convert the config to the Datastore.Spec format","Or re-init the repo and re-add content if starting over is acceptable","Reference: docs/datastores.md for the Spec format"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"329838acdfafae224582930457efe80aa217afc0","analyzedAt":"2026-09-03T18:30:52.135Z","contentChangedAt":"2026-09-03T18:30:52.135Z","schemaVersion":2},"datasetVersion":"2026-09-11T00:17:11.886Z"}