go-redis/redis · error
invalid synonyms format
Error message
invalid synonyms format
What it means
Returned in FTSynDumpCmd.readReply (search_commands.go:3609-3612): each term's synonyms value must be a []interface{} (an array of synonym-group IDs). A non-array value here trips this error.
Source
Thrown at search_commands.go:3611
return err
}
// RESP2 format
termSynonymPairs, err := rd.ReadSlice()
if err != nil {
return err
}
var results []FTSynDumpResult
for i := 0; i < len(termSynonymPairs); i += 2 {
term, ok := termSynonymPairs[i].(string)
if !ok {
return fmt.Errorf("invalid term format")
}
synonyms, ok := termSynonymPairs[i+1].([]interface{})
if !ok {
return fmt.Errorf("invalid synonyms format")
}
synonymList := make([]string, len(synonyms))
for j, syn := range synonyms {
synonym, ok := syn.(string)
if !ok {
return fmt.Errorf("invalid synonym format")
}
synonymList[j] = synonym
}
results = append(results, FTSynDumpResult{
Term: term,
Synonyms: synonymList,
})
}
cmd.val = resultsView on GitHub (pinned to 36d97525cd)
Solutions
- Inspect cmd.RawVal() to see the synonyms value and its type.
- Reproduce via redis-cli FT.SYNDUMP <idx>.
- Upgrade Redis Stack and go-redis to current versions.
- File a go-redis issue with the raw payload if persistent.
Defensive patterns
Strategy: try-catch
Try / catch
res, err := client.FTSynDump(ctx, idx).Result()
if err != nil && strings.Contains(err.Error(), "invalid synonyms format") {
raw, _ := cmd.RawVal()
log.Printf("ft.syndump synonyms not array; raw=%#v", raw)
} Prevention
- Upgrade Redis Stack and go-redis together.
- Inspect RawVal() to see the synonyms value type.
- Reproduce via redis-cli FT.SYNDUMP.
When it happens
Trigger: FTSynDump reply where the synonyms slot is a scalar (string, nil) instead of an array — typically version drift or a malformed reply.
Common situations: Older/newer module variant returning a single ID instead of a list, or a proxy mangling the reply.
Related errors
- invalid total results format
- invalid document ID format
- invalid document fields format
- invalid field value format
- invalid item key format
AI-assisted analysis of go-redis/redis@36d97525cd (2026-08-06).
Data as JSON: /data/errors/b62cb86cafb3c1e2.json.
Report an issue: GitHub.