{"record":{"id":"38dc7081147f0590","repo":"juicedata/juicefs","slug":"s-is-not-inside-juicefs-38dc70","errorCode":null,"errorMessage":"%s is not inside JuiceFS","messagePattern":"(.+?) is not inside JuiceFS","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"cmd/mount_unix.go","lineNumber":168,"sourceCode":"\t\t} else if err != nil {\n\t\t\tlogger.Warnf(\"watchdog: failed to parse waiting FUSE requests for connection %d, pid %d: %v; abort not triggered\", conn, pid, err)\n\t\t}\n\t}\n}\n\nfunc loadConfig(path string) (string, *vfs.Config, error) {\n\tfor d := path; d != \"/\"; d = filepath.Dir(d) {\n\t\tdata, err := readConfig(d)\n\t\tif err == nil {\n\t\t\tvar conf vfs.Config\n\t\t\terr = json.Unmarshal(data, &conf)\n\t\t\treturn d, &conf, err\n\t\t}\n\t\tif !os.IsNotExist(err) {\n\t\t\treturn \"\", nil, fmt.Errorf(\"read %s: %w\", d, err)\n\t\t}\n\t}\n\treturn \"\", nil, fmt.Errorf(\"%s is not inside JuiceFS\", path)\n}\n\nfunc printThreadsStack(pid int) {\n\tif pid <= 1 {\n\t\treturn\n\t}\n\tstart := time.Now()\n\ttids, err := os.ReadDir(fmt.Sprintf(\"/proc/%d/task\", pid))\n\tif err != nil {\n\t\tlogger.Warnf(\"list tasks of pid %d: %s\", pid, err)\n\t\treturn\n\t}\n\tvar b strings.Builder\n\tfor _, tid := range tids {\n\t\treadThreadStats(pid, tid.Name(), &b)\n\t}\n\tlogger.Infof(\"print kernel stacks of process %d takes %s:\\n%s\", pid, time.Since(start), b.String())\n}","sourceCodeStart":150,"sourceCodeEnd":186,"githubUrl":"https://github.com/juicedata/juicefs/blob/c9a67b23e8e08ec23ec331aa6f1675e2319e921c/cmd/mount_unix.go#L150-L186","documentation":"Returned by loadConfig when the upward directory walk from the given path reaches '/' without finding any JuiceFS .config file. It means the path is not inside a JuiceFS mountpoint, so mount status operations (graceful shutdown, mountpoint checks) cannot proceed.","triggerScenarios":"Thrown at cmd/mount_unix.go:168 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Run the command against a path inside the actual JuiceFS mountpoint","Mount the filesystem first if it is not mounted"],"exampleFix":null,"handlingStrategy":"validation","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"}