mirror of
https://github.com/fawney19/Aether.git
synced 2026-09-02 09:20:22 +08:00
Fix postgres bigint counter decoding
This commit is contained in:
@@ -1518,7 +1518,7 @@ fn map_auth_api_key_export_row(
|
|||||||
row_get(row, "is_active")?,
|
row_get(row, "is_active")?,
|
||||||
row_get(row, "expires_at_unix_secs")?,
|
row_get(row, "expires_at_unix_secs")?,
|
||||||
row_get(row, "auto_delete_on_expiry")?,
|
row_get(row, "auto_delete_on_expiry")?,
|
||||||
row_get::<i32>(row, "total_requests")?.into(),
|
row_get::<i64>(row, "total_requests")?,
|
||||||
row_get::<i64>(row, "total_tokens")?,
|
row_get::<i64>(row, "total_tokens")?,
|
||||||
row_get(row, "total_cost_usd")?,
|
row_get(row, "total_cost_usd")?,
|
||||||
row_get(row, "is_standalone")?,
|
row_get(row, "is_standalone")?,
|
||||||
|
|||||||
@@ -589,7 +589,7 @@ fn map_token_row(row: &PgRow) -> Result<StoredManagementToken, DataLayerError> {
|
|||||||
optional_unix_secs(row.try_get("expires_at_unix_secs").map_postgres_err()?),
|
optional_unix_secs(row.try_get("expires_at_unix_secs").map_postgres_err()?),
|
||||||
optional_unix_secs(row.try_get("last_used_at_unix_secs").map_postgres_err()?),
|
optional_unix_secs(row.try_get("last_used_at_unix_secs").map_postgres_err()?),
|
||||||
row.try_get("last_used_ip").map_postgres_err()?,
|
row.try_get("last_used_ip").map_postgres_err()?,
|
||||||
u64::try_from(row.try_get::<i32, _>("usage_count").map_postgres_err()?).unwrap_or(0),
|
u64::try_from(row.try_get::<i64, _>("usage_count").map_postgres_err()?).unwrap_or(0),
|
||||||
row.try_get("is_active").map_postgres_err()?,
|
row.try_get("is_active").map_postgres_err()?,
|
||||||
)
|
)
|
||||||
.with_timestamps(
|
.with_timestamps(
|
||||||
|
|||||||
@@ -289,12 +289,12 @@ SELECT
|
|||||||
NULL::jsonb AS utilization_samples,
|
NULL::jsonb AS utilization_samples,
|
||||||
NULL::bigint AS last_probe_increase_at_unix_secs,
|
NULL::bigint AS last_probe_increase_at_unix_secs,
|
||||||
NULL::integer AS last_rpm_peak,
|
NULL::integer AS last_rpm_peak,
|
||||||
NULL::integer AS request_count,
|
NULL::bigint AS request_count,
|
||||||
0::bigint AS total_tokens,
|
0::bigint AS total_tokens,
|
||||||
0::double precision AS total_cost_usd,
|
0::double precision AS total_cost_usd,
|
||||||
NULL::integer AS success_count,
|
NULL::bigint AS success_count,
|
||||||
NULL::integer AS error_count,
|
NULL::bigint AS error_count,
|
||||||
NULL::integer AS total_response_time_ms,
|
NULL::bigint AS total_response_time_ms,
|
||||||
NULL::bigint AS last_used_at_unix_secs,
|
NULL::bigint AS last_used_at_unix_secs,
|
||||||
FALSE AS auto_fetch_models,
|
FALSE AS auto_fetch_models,
|
||||||
NULL::bigint AS last_models_fetch_at_unix_secs,
|
NULL::bigint AS last_models_fetch_at_unix_secs,
|
||||||
@@ -1273,7 +1273,7 @@ INSERT INTO provider_api_keys (
|
|||||||
.map(|value| value as f64),
|
.map(|value| value as f64),
|
||||||
)
|
)
|
||||||
.bind(key.last_rpm_peak.map(|value| value as i32))
|
.bind(key.last_rpm_peak.map(|value| value as i32))
|
||||||
.bind(key.request_count.map(|value| value as i32))
|
.bind(key.request_count.map(i64::from))
|
||||||
.bind(Some(i64::try_from(key.total_tokens).map_err(|_| {
|
.bind(Some(i64::try_from(key.total_tokens).map_err(|_| {
|
||||||
DataLayerError::InvalidInput(format!(
|
DataLayerError::InvalidInput(format!(
|
||||||
"provider catalog key.total_tokens exceeds i64: {}",
|
"provider catalog key.total_tokens exceeds i64: {}",
|
||||||
@@ -1281,9 +1281,9 @@ INSERT INTO provider_api_keys (
|
|||||||
))
|
))
|
||||||
})?))
|
})?))
|
||||||
.bind(key.total_cost_usd)
|
.bind(key.total_cost_usd)
|
||||||
.bind(key.success_count.map(|value| value as i32))
|
.bind(key.success_count.map(i64::from))
|
||||||
.bind(key.error_count.map(|value| value as i32))
|
.bind(key.error_count.map(i64::from))
|
||||||
.bind(key.total_response_time_ms.map(|value| value as i32))
|
.bind(key.total_response_time_ms.map(i64::from))
|
||||||
.bind(key.last_used_at_unix_secs.map(|value| value as f64))
|
.bind(key.last_used_at_unix_secs.map(|value| value as f64))
|
||||||
.bind(key.last_models_fetch_at_unix_secs.map(|value| value as f64))
|
.bind(key.last_models_fetch_at_unix_secs.map(|value| value as f64))
|
||||||
.bind(&key.last_models_fetch_error)
|
.bind(&key.last_models_fetch_error)
|
||||||
@@ -2293,7 +2293,7 @@ fn map_key_row(row: &PgRow) -> Result<StoredProviderCatalogKey, DataLayerError>
|
|||||||
})
|
})
|
||||||
})
|
})
|
||||||
.transpose()?;
|
.transpose()?;
|
||||||
let request_count = row_get::<Option<i32>>(row, "request_count")?
|
let request_count = row_get::<Option<i64>>(row, "request_count")?
|
||||||
.map(|value| {
|
.map(|value| {
|
||||||
u32::try_from(value).map_err(|_| {
|
u32::try_from(value).map_err(|_| {
|
||||||
DataLayerError::UnexpectedValue(format!(
|
DataLayerError::UnexpectedValue(format!(
|
||||||
@@ -2314,7 +2314,7 @@ fn map_key_row(row: &PgRow) -> Result<StoredProviderCatalogKey, DataLayerError>
|
|||||||
"invalid provider_api_keys.total_cost_usd".to_string(),
|
"invalid provider_api_keys.total_cost_usd".to_string(),
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
let success_count = row_get::<Option<i32>>(row, "success_count")?
|
let success_count = row_get::<Option<i64>>(row, "success_count")?
|
||||||
.map(|value| {
|
.map(|value| {
|
||||||
u32::try_from(value).map_err(|_| {
|
u32::try_from(value).map_err(|_| {
|
||||||
DataLayerError::UnexpectedValue(format!(
|
DataLayerError::UnexpectedValue(format!(
|
||||||
@@ -2323,7 +2323,7 @@ fn map_key_row(row: &PgRow) -> Result<StoredProviderCatalogKey, DataLayerError>
|
|||||||
})
|
})
|
||||||
})
|
})
|
||||||
.transpose()?;
|
.transpose()?;
|
||||||
let error_count = row_get::<Option<i32>>(row, "error_count")?
|
let error_count = row_get::<Option<i64>>(row, "error_count")?
|
||||||
.map(|value| {
|
.map(|value| {
|
||||||
u32::try_from(value).map_err(|_| {
|
u32::try_from(value).map_err(|_| {
|
||||||
DataLayerError::UnexpectedValue(format!(
|
DataLayerError::UnexpectedValue(format!(
|
||||||
@@ -2332,7 +2332,7 @@ fn map_key_row(row: &PgRow) -> Result<StoredProviderCatalogKey, DataLayerError>
|
|||||||
})
|
})
|
||||||
})
|
})
|
||||||
.transpose()?;
|
.transpose()?;
|
||||||
let total_response_time_ms = row_get::<Option<i32>>(row, "total_response_time_ms")?
|
let total_response_time_ms = row_get::<Option<i64>>(row, "total_response_time_ms")?
|
||||||
.map(|value| {
|
.map(|value| {
|
||||||
u32::try_from(value).map_err(|_| {
|
u32::try_from(value).map_err(|_| {
|
||||||
DataLayerError::UnexpectedValue(format!(
|
DataLayerError::UnexpectedValue(format!(
|
||||||
|
|||||||
Reference in New Issue
Block a user