JuliusBrussee/caveman · error
cachebench: replay engine, transport, verifier, and emitter
Error message
cachebench: replay engine, transport, verifier, and emitter required
What it means
Error "cachebench: replay engine, transport, verifier, and emitter required" thrown in JuliusBrussee/caveman.
Source
Thrown at cacheengine/cachebench/replay.go:466
for _, record := range records {
provider := strings.ToLower(strings.TrimSpace(record.Provider))
if provider == "" {
return fmt.Errorf("cachebench: replay request %q has empty provider", record.RequestID)
}
counts[provider]++
}
for provider, count := range counts {
if count < target.MinEligibleRequest {
return fmt.Errorf("cachebench: provider %q population %d cannot meet minimum eligible requests %d", provider, count, target.MinEligibleRequest)
}
}
return nil
}
// Run validates full population, prepares equivalent bodies, then dispatches replay.
func (runner ReplayRunner) Run(ctx context.Context, records []TraceRecord, emit func(ReplayResult) error) error {
if runner.Engine == nil || runner.Transport == nil || runner.Verifier == nil || emit == nil {
return errors.New("cachebench: replay engine, transport, verifier, and emitter required")
}
if _, err := ValidateReplay(records, runner.Limits, runner.TimeScale); err != nil {
return err
}
prepared, err := runner.prepare(ctx, records)
if err != nil {
return err
}
if runner.Target != nil {
if err := validatePreparedReplayTarget(prepared, *runner.Target); err != nil {
return err
}
}
now := runner.Now
if now == nil {
now = time.Now
}
sleep := runner.SleepView on GitHub (pinned to 27d5a3981a)
Solutions
- Provide the replay engine, transport, verifier, and emitter; all four are required.
When it happens
Trigger: Thrown at cacheengine/cachebench/replay.go:466 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/80f08a79b23fb9c7.
Report an issue: GitHub.