fix(sessions): Finalize previous session even when auto session tracking is disabled#5154
fix(sessions): Finalize previous session even when auto session tracking is disabled#5154
Conversation
…is disabled The `isEnableAutoSessionTracking` guard in `PreviousSessionFinalizer`, `MovePreviousSession`, and `InternalSentrySdk.deleteCurrentSessionFile` prevented finalization of manually started sessions (via `Sentry.startSession()`). The flag controls *automatic* session lifecycle, not whether sessions exist at all. Manual sessions write the same files to disk and need the same finalization. Fixes #5108 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
🚨 Detected changes in high risk code 🚨High-risk code has higher potential to break the SDK and may be hard to test. To prevent severe bugs, apply the rollout process for releasing such changes and be extra careful when changing and reviewing these files:
|
Semver Impact of This PR🟢 Patch (bug fixes) 📋 Changelog PreviewThis is how your changes will appear in the changelog. Bug Fixes 🐛
🤖 This preview updates automatically when you update the PR. |
🚨 Detected changes in high risk code 🚨High-risk code has higher potential to break the SDK and may be hard to test. To prevent severe bugs, apply the rollout process for releasing such changes and be extra careful when changing and reviewing these files:
|
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
🚨 Detected changes in high risk code 🚨High-risk code has higher potential to break the SDK and may be hard to test. To prevent severe bugs, apply the rollout process for releasing such changes and be extra careful when changing and reviewing these files:
|
Performance metrics 🚀
|
| Revision | Plain | With Sentry | Diff |
|---|---|---|---|
| 91bb874 | 314.47 ms | 440.00 ms | 125.53 ms |
| dba088c | 333.98 ms | 381.16 ms | 47.18 ms |
| d15471f | 310.66 ms | 368.19 ms | 57.53 ms |
| bbc35bb | 298.53 ms | 372.17 ms | 73.64 ms |
| d15471f | 307.28 ms | 381.85 ms | 74.57 ms |
| ad8da22 | 362.98 ms | 453.94 ms | 90.96 ms |
| cf708bd | 408.35 ms | 458.98 ms | 50.63 ms |
| 96449e8 | 361.30 ms | 423.39 ms | 62.09 ms |
| 27d7cf8 | 309.43 ms | 364.27 ms | 54.85 ms |
| 91bb874 | 311.00 ms | 363.47 ms | 52.47 ms |
App size
| Revision | Plain | With Sentry | Diff |
|---|---|---|---|
| 91bb874 | 1.58 MiB | 2.13 MiB | 559.07 KiB |
| dba088c | 1.58 MiB | 2.13 MiB | 558.99 KiB |
| d15471f | 1.58 MiB | 2.13 MiB | 559.54 KiB |
| bbc35bb | 1.58 MiB | 2.12 MiB | 553.01 KiB |
| d15471f | 1.58 MiB | 2.13 MiB | 559.54 KiB |
| ad8da22 | 1.58 MiB | 2.29 MiB | 719.83 KiB |
| cf708bd | 1.58 MiB | 2.11 MiB | 539.71 KiB |
| 96449e8 | 1.58 MiB | 2.11 MiB | 539.35 KiB |
| 27d7cf8 | 1.58 MiB | 2.12 MiB | 549.42 KiB |
| 91bb874 | 1.58 MiB | 2.13 MiB | 559.07 KiB |
Summary
isEnableAutoSessionTracking()early-return guards fromPreviousSessionFinalizer,MovePreviousSession, andInternalSentrySdk.deleteCurrentSessionFileSentry.startSession()) write the same files to disk and need the same finalizationTest plan
Sentry.startSession()whileenableAutoSessionTracking = false, kill the app, relaunch — previous session should be finalizedFixes #5108
🤖 Generated with Claude Code