fix: add TTL cleanup for stale WebhookEvent records in cronWorker (#2647) - #2729
fix: add TTL cleanup for stale WebhookEvent records in cronWorker (#2647)#2729tmdeveloper007 wants to merge 1 commit into
Conversation
Completed and DLQ WebhookEvent records accumulated indefinitely with no TTL or archival mechanism, causing unbounded database growth. Fix: add cleanupStaleWebhookEvents() to cronWorker that purges completed and DLQ records older than WEBHOOK_EVENT_TTL_DAYS (default 30 days). Uses the existing @@index([status, createdAt]) for efficient range scans. Configurable via WEBHOOK_EVENT_TTL_DAYS env var (issue nisshchayarathi#2647).
|
Someone is attempting to deploy a commit to the Nisshchaya's projects Team on Vercel. A member of the Team first needs to authorize it. |
|
Warning Review limit reached
Next review available in: 58 minutes You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
🎉 Thanks for your contribution, @tmdeveloper007!Your PR has passed our automated GSSoC quality checks. Here's a quick summary:
A maintainer will review your PR soon. Please be patient and available for feedback. 💪 GSSoC'26 automation · Maintainer: @nisshchayarathi |
|
CI status note: the failing Lint and Type Check checks are pre-existing failures on the |
Description
Completed and DLQ WebhookEvent records accumulated indefinitely with no TTL or archival mechanism. In production, this causes unbounded database growth, degraded query performance, and increasing backup/restore times.
Fix
Add
cleanupStaleWebhookEvents()toscripts/cronWorker.tsthat purges completed and DLQ records older thanWEBHOOK_EVENT_TTL_DAYS(default: 30 days, configurable via env var). The query uses the existing@@index([status, createdAt])for efficient range scans.Pending and processing records are intentionally retained.
Files Changed
scripts/cronWorker.tsRelated Issues