diff --git a/lib/gat/handlers/pool/spool/pool.go b/lib/gat/handlers/pool/spool/pool.go
index d3a9d7625231c4015fd9d89b4ec7134d6dda0ad8..2a4bc7828923030114d0627fde616fcf0ed73f79 100644
--- a/lib/gat/handlers/pool/spool/pool.go
+++ b/lib/gat/handlers/pool/spool/pool.go
@@ -179,8 +179,8 @@ func (T *Pool) ScaleUp() bool {
 }
 
 func (T *Pool) ScaleDown(now time.Time) time.Duration {
-	T.mu.RLock()
-	defer T.mu.RUnlock()
+	T.mu.Lock()
+	defer T.mu.Unlock()
 
 	var m time.Duration