Skip to content

WIP: feat(crashpad): offline caching#1493

Draft
jpnurmi wants to merge 6 commits intomasterfrom
jpnurmi/feat/crashpad-offline-caching
Draft

WIP: feat(crashpad): offline caching#1493
jpnurmi wants to merge 6 commits intomasterfrom
jpnurmi/feat/crashpad-offline-caching

Conversation

@jpnurmi
Copy link
Collaborator

@jpnurmi jpnurmi commented Jan 26, 2026

Converts completed Crashpad reports to Sentry envelopes for offline caching.

  1. After N upload/retry attempts, Crashpad moves reports to <db>/completed/
  2. On the next SDK init, the Crashpad backend iterates over completed reports
    • Each report is converted into a Sentry envelope stored in <db>/cache/
  3. Cache pruning is applied as usual

Depends on:

See also:

@jpnurmi jpnurmi force-pushed the jpnurmi/feat/crashpad-offline-caching branch 4 times, most recently from 4dd6c5e to ff864c4 Compare January 26, 2026 15:27
@jpnurmi jpnurmi force-pushed the jpnurmi/feat/crashpad-offline-caching branch from ff864c4 to a3db389 Compare February 4, 2026 08:48
@jpnurmi
Copy link
Collaborator Author

jpnurmi commented Feb 4, 2026

@sentry review

@jpnurmi
Copy link
Collaborator Author

jpnurmi commented Feb 4, 2026

@cursor review

@jpnurmi jpnurmi force-pushed the jpnurmi/feat/crashpad-offline-caching branch from a3db389 to 1cc6a7e Compare February 4, 2026 09:33
@jpnurmi
Copy link
Collaborator Author

jpnurmi commented Feb 4, 2026

@cursor review

JoshuaMoelans and others added 6 commits February 4, 2026 12:09
Wait for minidump upload to complete before proceeding in the cache
tests to fix flaky CI failures across all platforms.

Also reorder test_crashpad_cache_max_age to set file mtimes before
the 5th crash to avoid timing issues with the cache.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Fixes test_crashpad_dumping_crash by checking for options->cache_keep
before attempting to process completed reports.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Prevents creating malformed envelopes when __sentry-event file is
missing or contains invalid msgpack data.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@jpnurmi jpnurmi force-pushed the jpnurmi/feat/crashpad-offline-caching branch from 1cc6a7e to 7fc7a78 Compare February 4, 2026 11:10
@jpnurmi
Copy link
Collaborator Author

jpnurmi commented Feb 4, 2026

@cursor review

Copy link

@cursor cursor bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ Bugbot reviewed your changes and found no new issues!

Comment @cursor review or bugbot run to trigger another review on this PR

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.

2 participants