chore: update gateway pressure observability

This commit is contained in:
elky
2026-06-30 17:01:39 +08:00
parent 974def5fef
commit f179ee72f9
69 changed files with 14843 additions and 1609 deletions
+33
View File
@@ -97,6 +97,39 @@ fn maintenance_pool_pressure_keeps_idle_reserve_for_foreground_work() {
assert!(!GatewayDataState::database_pool_summary_under_maintenance_pressure(&idle));
}
#[test]
fn usage_worker_pool_pressure_only_defers_near_pool_exhaustion() {
let comfortable = aether_data::DatabasePoolSummary {
driver: DatabaseDriver::Postgres,
checked_out: 56,
pool_size: 64,
idle: 8,
max_connections: 64,
usage_rate: 87.5,
};
assert!(!GatewayDataState::database_pool_summary_under_usage_worker_pressure(&comfortable));
let last_idle_left = aether_data::DatabasePoolSummary {
driver: DatabaseDriver::Postgres,
checked_out: 63,
pool_size: 64,
idle: 1,
max_connections: 64,
usage_rate: 98.4375,
};
assert!(GatewayDataState::database_pool_summary_under_usage_worker_pressure(&last_idle_left));
let exhausted = aether_data::DatabasePoolSummary {
driver: DatabaseDriver::Postgres,
checked_out: 64,
pool_size: 64,
idle: 0,
max_connections: 64,
usage_rate: 100.0,
};
assert!(GatewayDataState::database_pool_summary_under_usage_worker_pressure(&exhausted));
}
#[test]
fn maintenance_pool_pressure_deferral_has_timeout() {
let mut deferred_since = None;