add rowcount check

This commit is contained in:
Yansong Zhang
2026-01-08 10:45:28 +08:00
parent 7938a2bc5b
commit c301052789

View File

@ -61,7 +61,12 @@ class CreditPoolService:
TenantCreditPool.quota_used + credits_required <= TenantCreditPool.quota_limit,
]
stmt = update(TenantCreditPool).where(*where_conditions).values(**update_values)
session.execute(stmt)
result = session.execute(stmt)
session.commit()
if result.rowcount == 0:
raise QuotaExceededError(
f"Insufficient credits. Required: {credits_required}, Available: {pool.remaining_credits}"
)
except Exception:
logger.exception("Failed to deduct credits for tenant %s", tenant_id)
raise QuotaExceededError("Failed to deduct credits")