Halve the job sitemap chunk to restore the timeout margin - #2021
Conversation
Measured on prod after #1990 shipped: a 25k page is ~2.5s warm, but 8s on the deepest offset with the host under load — against this route's 10s fetch timeout. That is a file which renders fine until the box is busy and then 500s, which is the same shape of latent failure /sitemap.xml itself was in before #1990 (it answered 200 from a stale nginx cache while every uncached request errored). 10k puts a page at ~1-3s. The cost is 127 sub-sitemaps instead of 51, which a sitemap index carries for free — its own cap is 50,000 entries. Cheap files beat a narrow deadline here because there is no partial credit: the crawler either gets a file or gets an error, so the failure mode of being slightly too slow is losing 25,000 URLs rather than delivering them late.
|
Warning Review limit reached
Next review available in: 19 minutes Limit details: You’ve used all 2 included reviews currently available under your plan. 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: defaults Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (2)
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 |
Measured on prod after #1990 shipped, and noted at the time as a follow-up.
A file that renders fine until the box is busy, and then 500s. That is the same shape of latent failure
/sitemap.xmlitself was in before #1990: it answered 200 from a stale nginx cache while every uncached request errored, so nothing looked wrong from outside.10k puts a page at ~1-3 s. The cost is 127 sub-sitemaps instead of 51 — a sitemap index carries that for free, its own cap being 50,000 entries.
Cheap files beat a narrow deadline here because there is no partial credit: the crawler either gets a file or gets an error. Being slightly too slow does not deliver the URLs late, it loses 25,000 of them.
Both constants move together — the backend's
jobSitemapChunkand the SPA'sJOB_SITEMAP_CHUNKmust match or the offsets stop lining up with the files they open.