v2rayA/v2rayA · error
given server cannot be found in database
Error message
given server cannot be found in database
What it means
Returned by RemoveConnect when the requested server touch is not present in the connectedServers list of the given outbound bucket: after normalizing empty outbound names to "proxy" and scanning all stored touches, none matched the WhichToRemove via EqualTo, so there is nothing to disconnect.
Source
Thrown at service/db/configure/configure.go:398
if wt.Outbound == "" {
wt.Outbound = "proxy"
}
bucket := fmt.Sprintf("outbound.%v", wt.Outbound)
var wcs Whiches
_ = db.Get(bucket, "connectedServers", &wcs)
// Normalize Outbound field of existing entries for consistent comparison
for _, v := range wcs.Touches {
if v.Outbound == "" {
v.Outbound = "proxy"
}
}
for i, v := range wcs.Touches {
if v.EqualTo(wt) {
wcs.Touches = append(wcs.Touches[:i], wcs.Touches[i+1:]...)
return db.Set(bucket, "connectedServers", wcs)
}
}
return fmt.Errorf("given server cannot be found in database")
}
func GetOutbounds() (outbounds []string) {
// keep order
members, _ := db.StringSetGetAll("outbounds", "names")
for _, m := range members {
if m != "proxy" {
outbounds = append(outbounds, m)
}
}
sort.Strings(outbounds)
// "proxy" is always the first outbound.
outbounds = append([]string{"proxy"}, outbounds...)
return
}
// InitDefaultOutbound ensures the default "proxy" outbound group exists in the database.
// It should be called during system initialization.View on GitHub (pinned to 71e5442fc5)
Solutions
- Refresh the UI/server list and retry
- Check for concurrent disconnects that already removed the server
- Restart the service if DB state is inconsistent
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at service/db/configure/configure.go:398 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of v2rayA/v2rayA@71e5442fc5 (2026-09-05).
Data as JSON: /api/errors/28c1d4902d9b475f.
Report an issue: GitHub.