JuliusBrussee/caveman · error

cachebench: corpus line %d: %w

Error message

cachebench: corpus line %d: %w

What it means

Error "cachebench: corpus line %d: %w" thrown in JuliusBrussee/caveman.

Source

Thrown at cacheengine/cachebench/corpus.go:211

		return CorpusLimits{}, errors.New("cachebench: corpus limits exceed hard resource ceilings")
	}
	return limits, nil
}

func readLMCacheJSONL(reader io.Reader, limits CorpusLimits) ([]CorpusRow, error) {
	scanner := bufio.NewScanner(reader)
	scanner.Buffer(make([]byte, 64*1024), limits.MaxRowBytes)
	rows := make([]CorpusRow, 0)
	sessions := map[string]bool{}
	var retainedBytes int64
	for line := 1; scanner.Scan(); line++ {
		raw := bytes.TrimSpace(scanner.Bytes())
		if len(raw) == 0 {
			continue
		}
		var wire lmcacheRowWire
		if err := decodeOneJSON(raw, &wire); err != nil {
			return nil, fmt.Errorf("cachebench: corpus line %d: %w", line, err)
		}
		row, err := validateCorpusWire(wire, line-1, limits)
		if err != nil {
			return nil, fmt.Errorf("cachebench: corpus line %d: %w", line, err)
		}
		if err := appendCorpusRow(&rows, sessions, &retainedBytes, row, limits); err != nil {
			return nil, fmt.Errorf("cachebench: corpus line %d: %w", line, err)
		}
	}
	if err := scanner.Err(); err != nil {
		return nil, fmt.Errorf("cachebench: read corpus: %w", err)
	}
	return rows, nil
}

func readHFRows(reader io.Reader, limits CorpusLimits) ([]CorpusRow, error) {
	decoder := json.NewDecoder(reader)
	first, err := decoder.Token()

View on GitHub (pinned to 27d5a3981a)

Solutions

  1. Fix the corpus line indicated in the error.

When it happens

Trigger: Thrown at cacheengine/cachebench/corpus.go:211 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/dcfb0e4465485e18. Report an issue: GitHub.