JuliusBrussee/caveman · error
cachebench: duplicate Hugging Face field %q
Error message
cachebench: duplicate Hugging Face field %q
What it means
Error "cachebench: duplicate Hugging Face field %q" thrown in JuliusBrussee/caveman.
Source
Thrown at cacheengine/cachebench/corpus.go:248
if err != nil || first != json.Delim('{') {
return nil, errors.New("cachebench: Hugging Face rows root must be object")
}
rows := make([]CorpusRow, 0)
sessions := map[string]bool{}
var retainedBytes int64
foundRows := false
rootKeys := map[string]bool{}
for decoder.More() {
keyToken, err := decoder.Token()
if err != nil {
return nil, fmt.Errorf("cachebench: read Hugging Face rows key: %w", err)
}
key, ok := keyToken.(string)
if !ok {
return nil, errors.New("cachebench: invalid Hugging Face rows key")
}
if rootKeys[key] {
return nil, fmt.Errorf("cachebench: duplicate Hugging Face field %q", key)
}
rootKeys[key] = true
if key != "rows" {
var ignored json.RawMessage
if err := decoder.Decode(&ignored); err != nil {
return nil, fmt.Errorf("cachebench: skip Hugging Face field %q: %w", key, err)
}
continue
}
foundRows = true
start, err := decoder.Token()
if err != nil || start != json.Delim('[') {
return nil, errors.New("cachebench: Hugging Face rows field must be array")
}
for decoder.More() {
var raw json.RawMessage
if err := decoder.Decode(&raw); err != nil {
return nil, fmt.Errorf("cachebench: decode Hugging Face row: %w", err)View on GitHub (pinned to 27d5a3981a)
Solutions
- Remove the duplicate Hugging Face field.
When it happens
Trigger: Thrown at cacheengine/cachebench/corpus.go:248 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of JuliusBrussee/caveman@27d5a3981a (2026-08-15).
Data as JSON: /api/errors/0b51773540c9bcca.
Report an issue: GitHub.