gastownhall/beads · error
Dolt server performance diagnostics do not apply to the conf
Error message
Dolt server performance diagnostics do not apply to the configured backend %q
What it means
RunDoltPerformanceDiagnostics only applies to Dolt-backed repositories. It checks IsDoltBackend(beadsDir); if false it reports the backend actually configured by getBackendAndBeadsDir so the user knows Dolt server diagnostics are inapplicable.
Source
Thrown at cmd/bd/doctor/perf_dolt.go:52
ConnectionTime int64 // Time to establish connection
ReadyWorkTime int64 // Time for GetReadyWork equivalent
ListOpenTime int64 // Time to list open issues
ShowIssueTime int64 // Time to get single issue
ComplexQueryTime int64 // Time for complex filter query
CommitLogTime int64 // Time to query dolt_log
// Profile file path if profiling was enabled
ProfilePath string
}
// RunDoltPerformanceDiagnostics runs performance diagnostics for Dolt backend
func RunDoltPerformanceDiagnostics(path string, enableProfiling bool) (*DoltPerfMetrics, error) {
beadsDir := ResolveBeadsDirForRepo(path)
// Verify this is a Dolt backend
if !IsDoltBackend(beadsDir) {
backend, _ := getBackendAndBeadsDir(path)
return nil, fmt.Errorf("Dolt server performance diagnostics do not apply to the configured backend %q", backend)
}
metrics := &DoltPerfMetrics{
Platform: fmt.Sprintf("%s/%s", runtime.GOOS, runtime.GOARCH),
GoVersion: runtime.Version(),
}
// Resolve server config (handles standalone ephemeral ports)
dsCfg := doltserver.DefaultConfig(beadsDir)
// Check server status
doltDir := getDatabasePath(beadsDir)
serverRunning := isDoltServerRunning(dsCfg.Host, dsCfg.Port)
if serverRunning {
metrics.ServerStatus = "running"
} else {
metrics.ServerStatus = "not running"
}View on GitHub (pinned to 71377f2769)
Solutions
- Switch the repository to the Dolt backend ('bd init --backend dolt' or update config) if Dolt diagnostics are wanted
- Run backend-appropriate diagnostics instead of Dolt perf diagnostics
- Inspect the quoted backend name in the message and correct the config typo
Example fix
// before
_, err := RunDoltPerformanceDiagnostics(path, true)
// after
if IsDoltBackend(ResolveBeadsDirForRepo(path)) {
_, err := RunDoltPerformanceDiagnostics(path, true)
} Defensive patterns
Strategy: validation
Validate before calling
if !IsDoltBackend(ResolveBeadsDirForRepo(repo)) {
return fmt.Errorf("repo %s is not Dolt-backed; skip Dolt perf diagnostics", repo)
}
_, err := RunDoltPerformanceDiagnostics(repo, true) Try / catch
if err != nil && strings.Contains(err.Error(), "do not apply to the configured backend") {
// route to the appropriate backend's diagnostics
} Prevention
- Branch diagnostics by configured backend name before calling
- Keep backend config (config.json) consistent across CI jobs
- Document which doctor checks require the Dolt backend
When it happens
Trigger: Calling RunDoltPerformanceDiagnostics (directly or via RunPerformanceDiagnostics/CheckDoltPerformance) on a repo whose config selects a non-Dolt backend (e.g. jsonl, sqlite) or an unknown backend value.
Common situations: Backend switched in config.json but stale tooling still invokes Dolt checks; running the same doctor command across repos with different backends; misconfigured or missing backend key defaulting away from Dolt.
Related errors
- running performance diagnostics: %w
- failed to load config: %w
- no beads configuration found in %s
- failed to commit is_blocked repairs to Dolt: %w
- check %s exists: %w
AI-assisted analysis of gastownhall/beads@71377f2769 (2026-08-30).
Data as JSON: /api/errors/448c6560459f6663.
Report an issue: GitHub.