VictoriaMetrics/VictoriaMetrics · error
cannot write topHeapEntry name: %w
Error message
cannot write topHeapEntry name: %w
What it means
Fires in writeTopHeapEntries when writing an entry's Name string to the vmselect connection fails mid-stream. The response payload is abandoned at that entry; the root cause is a transport failure on the RPC connection.
Source
Thrown at lib/vmselectapi/server.go:963
if err := writeTopHeapEntries(ctx, status.SeriesCountByLabelValuePair); err != nil {
return fmt.Errorf("cannot write seriesCountByLabelValuePair to vmselect: %w", err)
}
if err := writeTopHeapEntries(ctx, status.LabelValueCountByLabelName); err != nil {
return fmt.Errorf("cannot write labelValueCountByLabelName to vmselect: %w", err)
}
if err := writeMetricNameStatRecords(ctx, status.SeriesQueryStatsByMetricName); err != nil {
return fmt.Errorf("cannot write SeriesMetricNamesStats: %w", err)
}
return nil
}
func writeTopHeapEntries(ctx *vmselectRequestCtx, a []storage.TopHeapEntry) error {
if err := ctx.writeUint64(uint64(len(a))); err != nil {
return fmt.Errorf("cannot write topHeapEntries size: %w", err)
}
for _, e := range a {
if err := ctx.writeString(e.Name); err != nil {
return fmt.Errorf("cannot write topHeapEntry name: %w", err)
}
if err := ctx.writeUint64(e.Count); err != nil {
return fmt.Errorf("cannot write topHeapEntry count: %w", err)
}
}
return nil
}
func (s *Server) processSearchMetricNames(ctx *vmselectRequestCtx) error {
s.searchMetricNamesRequests.Inc()
// Read request.
if err := ctx.readSearchQuery(); err != nil {
return err
}
if err := s.beginConcurrentRequest(ctx); err != nil {
return ctx.writeErrorMessage(err)View on GitHub (pinned to 5079fb58f1)
Solutions
- Check for network interruptions or connection resets in logs
- Verify vmselect liveness and protocol version match
- Retry the TSDB status request
Defensive patterns
Strategy: retry
When it happens
Trigger: Thrown at lib/vmselectapi/server.go:963 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of VictoriaMetrics/VictoriaMetrics@5079fb58f1 (2026-09-03).
Data as JSON: /api/errors/3f6c4f63411bf782.
Report an issue: GitHub.