Handle ApplicationExitInfo.REASON_MEMORY_LIMITER in MemoryLimiterIntegration
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 3/5
- Thời gian dự kiến
- 1-2 ngày
- Mức phù hợp với người mới
- 78/100
Hướng nghiên cứu
Start in sentry-android-core/src/main/java/io/sentry/android/core/MemoryLimiterIntegration.java by reading MemoryLimiterPolicy.matches(...), then inspect sentry-android-core/src/test/java/io/sentry/android/core/MemoryLimiterIntegrationTest.kt. Add coverage for ApplicationExitInfo.REASON_MEMORY_LIMITER while preserving the REASON_OTHER plus MemoryLimiter: behavior, and verify compatibility with older SDK stubs and the existing tests.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Summary
MemoryLimiterIntegration currently recognizes MemoryLimiter process deaths only when ApplicationExitInfo.getReason() == REASON_OTHER and the description contains the MemoryLimiter: prefix.
Android 17 / API 37.2 added ApplicationExitInfo.REASON_MEMORY_LIMITER, and our integration does not account for it yet. That means newer platform versions can report a dedicated MemoryLimiter reason that we may fail to capture.
Relevant code:
sentry-android-core/src/main/java/io/sentry/android/core/MemoryLimiterIntegration.javasentry-android-core/src/test/java/io/sentry/android/core/MemoryLimiterIntegrationTest.kt
Android reference:
Current Behavior
MemoryLimiterPolicy.matches(...) currently returns true only when:
exitInfo.getReason() == ApplicationExitInfo.REASON_OTHERexitInfo.getDescription()containsMemoryLimiter:
Expected Behavior
MemoryLimiterIntegration should also recognize exits reported with ApplicationExitInfo.REASON_MEMORY_LIMITER.
We should preserve current behavior for existing REASON_OTHER + MemoryLimiter: records, since older platform behavior may still surface that combination.
Acceptance Criteria
- Update
MemoryLimiterPolicy.matches(...)to handleREASON_MEMORY_LIMITERin addition to the existing legacy path. - Keep backward compatibility for older Android versions / SDK stubs where the new constant may not be available at compile or runtime.
- Add regression tests covering the dedicated MemoryLimiter reason.
- Verify existing tests around the legacy
REASON_OTHERpath still pass.
Notes
The implementation may need to avoid directly referencing the new constant from older compile targets if that creates compatibility issues with our current Android SDK setup.
- Ngôn ngữ chính
- Kotlin
- Star
- 1.4k
- Fork
- 478
- Merge trung bình
- 2 ngày 20 giờ
- Pull request đã merge (30 ngày)
- 71
Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của getsentry/sentry-java
-
Improvement Java Platform: Android Platform: Java
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
getsentry/sentry-java#6145 · 1 bình luận · 1 người được giao ·
-
Bug Java Platform: Android Platform: Java
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
getsentry/sentry-java#6138 · 1 bình luận ·
-
Feature Java Platform: Java Spans
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
getsentry/sentry-java#5984 · 1 bình luận ·
-
Android Task Traces
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
getsentry/sentry-java#5376 · 1 bình luận ·
-
Android Docs Errors
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 64/100
getsentry/sentry-java#5375 · 1 bình luận ·
Tất cả issue của getsentry/sentry-java
Issue tương tự
-
enhancement
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
Richie97/track-history#325 ·
-
bug CLI documentation reliability
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
-
KW-related Type:bug UI / UX
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
RevenueCat/purchases-android#4299 · 1 bình luận ·
-
[Bug] 统计页面无法重置token和汇率 Đang mởbug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
AAswordman/Operit#1265 · 3 bình luận ·