Skip to content

fix(performance): Enable MDX caching and ISR revalidation in preview environments#15952

Draft
seer-by-sentry[bot] wants to merge 1 commit intomasterfrom
seer/fix-preview-env-mdx-caching
Draft

fix(performance): Enable MDX caching and ISR revalidation in preview environments#15952
seer-by-sentry[bot] wants to merge 1 commit intomasterfrom
seer/fix-preview-env-mdx-caching

Conversation

@seer-by-sentry
Copy link
Copy Markdown
Contributor

@seer-by-sentry seer-by-sentry Bot commented Jan 9, 2026

DESCRIBE YOUR PR

Tell us what you're changing and why. If your PR resolves an issue, please link it so it closes automatically.

Problem

Preview environments were experiencing massive traffic spikes (300k+ requests) due to:

  • MDX recompilation on every page render (no runtime cache)
  • Release registry API fetches for every page (180k+ calls to release-registry.services.sentry.io)
  • Simultaneous page regeneration causing 8-12 second render times

Root cause: MDX caching was only enabled in CI environments, not in Vercel preview deployments.

Solution

1. Enable MDX caching in Vercel environments

  • Changed cache condition from process.env.CI to process.env.CI || process.env.VERCEL in src/mdx.ts.
  • This enables the existing MDX bundler cache in preview environments.
  • Prevents redundant compilation and registry fetches when pages are re-rendered.

2. Add ISR revalidation period

  • Added export const revalidate = 3600 (1 hour) to app/[[...path]]/page.tsx.
  • Limits how often pages can be regenerated in preview environments.
  • Prevents runaway regeneration from deployments or external triggers.

Impact

Before:

  • 14:25-16:00 UTC: ~372k Page Server Component renders
  • 16:30-16:45 UTC: Peak of 53.1k renders in 5 minutes
  • 180k+ fetches to release-registry.services.sentry.io/apps
  • 180k+ fetches to release-registry.services.sentry.io/sdks

After (expected):

  • MDX compiled once per file per worker process
  • Registry fetched once per worker (not per page)
  • Pages regenerate at most once per hour
  • ~99% reduction in API traffic from preview environments

Related to issue DOCS-915 (4.8M occurrences)
Investigated via Sentry trace analysis showing runtime MDX compilation

This fix was generated by Seer in Sentry, triggered by Cody De Arkland. 👁️

IS YOUR CHANGE URGENT?

Help us prioritize incoming PRs by letting us know when the change needs to go live.

  • Urgent deadline (GA date, etc.):
  • Other deadline:
  • None: Not urgent, can wait up to 1 week+

SLA

  • Teamwork makes the dream work, so please add a reviewer to your PRs.
  • Please give the docs team up to 1 week to review your PR unless you've added an urgent due date to it.
    Thanks in advance for your help!

PRE-MERGE CHECKLIST

Make sure you've checked the following before merging your changes:

  • Checked Vercel preview for correctness, including links
  • PR was reviewed and approved by any necessary SMEs (subject matter experts)
  • PR was reviewed and approved by a member of the Sentry docs team

LEGAL BOILERPLATE

Look, I get it. The entity doing business as "Sentry" was incorporated in the State of Delaware in 2015 as Functional Software, Inc. and is gonna need some rights from me in order to utilize my contributions in this here PR. So here's the deal: I retain all rights, title and interest in and to my contributions, and by keeping this boilerplate intact I confirm that Sentry can use, modify, copy, and redistribute my contributions, under Sentry's choice of terms.

EXTRA RESOURCES

@vercel
Copy link
Copy Markdown

vercel Bot commented Jan 9, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Review Updated (UTC)
develop-docs Ready Ready Preview, Comment Jan 9, 2026 10:17pm
sentry-docs Ready Ready Preview, Comment Jan 9, 2026 10:17pm

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants