From a8a1aef62ad571ec14b437636f2d79928a510669 Mon Sep 17 00:00:00 2001 From: Chris Lu Date: Wed, 26 Nov 2025 15:20:48 -0800 Subject: [PATCH] more efficient --- weed/s3api/s3api_circuit_breaker.go | 16 ++++++++-------- weed/server/filer_server_handlers.go | 16 ++++++++-------- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/weed/s3api/s3api_circuit_breaker.go b/weed/s3api/s3api_circuit_breaker.go index f04b9541a..e19caf91b 100644 --- a/weed/s3api/s3api_circuit_breaker.go +++ b/weed/s3api/s3api_circuit_breaker.go @@ -123,18 +123,18 @@ func (cb *CircuitBreaker) Limit(f func(w http.ResponseWriter, r *http.Request), cb.s3a.inFlightDataLimitCond.L.Unlock() // Increment counters - atomic.AddInt64(&cb.s3a.inFlightUploads, 1) - atomic.AddInt64(&cb.s3a.inFlightDataSize, contentLength) + newUploads := atomic.AddInt64(&cb.s3a.inFlightUploads, 1) + newSize := atomic.AddInt64(&cb.s3a.inFlightDataSize, contentLength) // Update metrics - stats.S3InFlightUploadCountGauge.Set(float64(atomic.LoadInt64(&cb.s3a.inFlightUploads))) - stats.S3InFlightUploadBytesGauge.Set(float64(atomic.LoadInt64(&cb.s3a.inFlightDataSize))) + stats.S3InFlightUploadCountGauge.Set(float64(newUploads)) + stats.S3InFlightUploadBytesGauge.Set(float64(newSize)) defer func() { // Decrement counters - atomic.AddInt64(&cb.s3a.inFlightUploads, -1) - atomic.AddInt64(&cb.s3a.inFlightDataSize, -contentLength) + newUploads := atomic.AddInt64(&cb.s3a.inFlightUploads, -1) + newSize := atomic.AddInt64(&cb.s3a.inFlightDataSize, -contentLength) // Update metrics - stats.S3InFlightUploadCountGauge.Set(float64(atomic.LoadInt64(&cb.s3a.inFlightUploads))) - stats.S3InFlightUploadBytesGauge.Set(float64(atomic.LoadInt64(&cb.s3a.inFlightDataSize))) + stats.S3InFlightUploadCountGauge.Set(float64(newUploads)) + stats.S3InFlightUploadBytesGauge.Set(float64(newSize)) cb.s3a.inFlightDataLimitCond.Signal() }() } diff --git a/weed/server/filer_server_handlers.go b/weed/server/filer_server_handlers.go index 7e2ef64d2..f068579ec 100644 --- a/weed/server/filer_server_handlers.go +++ b/weed/server/filer_server_handlers.go @@ -112,18 +112,18 @@ func (fs *FilerServer) filerHandler(w http.ResponseWriter, r *http.Request) { fs.inFlightDataLimitCond.L.Unlock() // Increment counters - atomic.AddInt64(&fs.inFlightUploads, 1) - atomic.AddInt64(&fs.inFlightDataSize, contentLength) + newUploads := atomic.AddInt64(&fs.inFlightUploads, 1) + newSize := atomic.AddInt64(&fs.inFlightDataSize, contentLength) // Update metrics - stats.FilerInFlightUploadCountGauge.Set(float64(atomic.LoadInt64(&fs.inFlightUploads))) - stats.FilerInFlightUploadBytesGauge.Set(float64(atomic.LoadInt64(&fs.inFlightDataSize))) + stats.FilerInFlightUploadCountGauge.Set(float64(newUploads)) + stats.FilerInFlightUploadBytesGauge.Set(float64(newSize)) defer func() { // Decrement counters - atomic.AddInt64(&fs.inFlightUploads, -1) - atomic.AddInt64(&fs.inFlightDataSize, -contentLength) + newUploads := atomic.AddInt64(&fs.inFlightUploads, -1) + newSize := atomic.AddInt64(&fs.inFlightDataSize, -contentLength) // Update metrics - stats.FilerInFlightUploadCountGauge.Set(float64(atomic.LoadInt64(&fs.inFlightUploads))) - stats.FilerInFlightUploadBytesGauge.Set(float64(atomic.LoadInt64(&fs.inFlightDataSize))) + stats.FilerInFlightUploadCountGauge.Set(float64(newUploads)) + stats.FilerInFlightUploadBytesGauge.Set(float64(newSize)) fs.inFlightDataLimitCond.Signal() }()