Avatar for the netresearch user
netresearch
ofelia
BlogDocsChangelog

Performance History

Latest Results

feat: replace scheduler semaphore with go-cron MaxConcurrentSkip middleware (#500) ## Summary - Replaces manual `jobSemaphore chan struct{}` with `concurrencySemaphore` type integrated into go-cron's middleware chain - Adds `maxConcurrentSkipWrapper` as a `cron.JobWrapper` in `WithChain()` for cron-scheduled jobs - Removes semaphore check from `runWithCtx()` — concurrency enforced at middleware layer - Manual/triggered jobs get explicit concurrency checks in `RunJob()` and `Start()` - `SetMaxConcurrentJobs()` supports thread-safe resize via `concurrencySem.resize()` - Adds `ErrConcurrencyLimitReached` sentinel error for programmatic error handling - Token bucket `RateLimiter` in resilience.go preserved (used for HTTP, not jobs) Closes #492 ## Test plan - [x] All existing tests pass (`go test ./... -count=1`) - [x] Race detector clean (`go test -race ./core/...`) - [x] Linter clean (`golangci-lint run ./...`) - [x] Concurrency tests verify middleware-based limiting - [x] 3 code review cycles completed (all approved)
main
4 days ago
fix: improve concurrency middleware documentation
feat/492-native-rate-limiting
4 days ago
fix: improve concurrency middleware documentation
feat/492-native-rate-limiting
4 days ago
fix: improve concurrency middleware documentation
feat/492-native-rate-limiting
4 days ago

Active Branches

No pull requests foundAs pull requests are created, their performance will appear here.
© 2026 CodSpeed Technology
Home Terms Privacy Docs