From 01b5233167d3f3a8eebe74ab50918424a0d7ca4d Mon Sep 17 00:00:00 2001 From: Aykhan Shahsuvarov Date: Mon, 10 Aug 2026 00:01:16 +0400 Subject: [PATCH] perf: replace status code string map with an indexed table --- internal/sarin/worker.go | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/internal/sarin/worker.go b/internal/sarin/worker.go index ba97b2f..fb0648f 100644 --- a/internal/sarin/worker.go +++ b/internal/sarin/worker.go @@ -12,19 +12,19 @@ import ( const dryRunResponseKey = "dry-run" // statusCodeStrings contains pre-computed string representations for HTTP status codes 100-599. -var statusCodeStrings = func() map[int]string { - m := make(map[int]string, 500) - for i := 100; i < 600; i++ { - m[i] = strconv.Itoa(i) +var statusCodeStrings = func() [500]string { + var codes [500]string + for i := range codes { + codes[i] = strconv.Itoa(i + 100) } - return m + return codes }() // statusCodeToString returns a string representation of the HTTP status code. -// Uses a pre-computed map for codes 100-599, falls back to strconv.Itoa for others. +// Uses a pre-computed table for codes 100-599, falls back to strconv.Itoa for others. func statusCodeToString(code int) string { - if s, ok := statusCodeStrings[code]; ok { - return s + if i := code - 100; i >= 0 && i < len(statusCodeStrings) { + return statusCodeStrings[i] } return strconv.Itoa(code) }