Optimize ConsumptionService and OverageAcceptanceNotificationJob eligibility checks
Problem
Two related optimization opportunities:
- The
eligible_for_overage_acceptance_emailcheck is performed outside the consumption process, requiring additional queries - OverageAcceptanceNotificationJob performs redundant validation and tracking checks for subscriptions eligible for overage acceptance
Current State
- Eligibility check runs as a separate query before consumption, adding latency
- OverageAcceptanceNotificationJob queues multiple times with redundant checks despite not sending duplicate notifications
- Wasteful resource usage in both cases
Proposed Solution
- Move eligibility check into the consumption process or defer it
- Implement deduplication/idempotency in OverageAcceptanceNotificationJob
- Consolidate tracking logic
Acceptance Criteria
- Analyze current query performance for both issues
- Implement optimized approach for consumption eligibility check
- Reduce redundant validation in OverageAcceptanceNotificationJob
- Measure performance improvement
- Add monitoring for optimized flows
- Document changes