Crash in [@ mozilla::dom::cache::db::(anonymous namespace)::DeleteAllCacheEntries::$::operator()<T>]
Categories
(Core :: Storage: Cache API, defect)
Tracking
()
People
(Reporter: gsvelto, Assigned: hsingh)
References
(Regression)
Details
(Keywords: crash, regression)
Crash Data
Attachments
(1 file)
Crash report: https://crash-stats.mozilla.org/report/index/84b529f3-32cb-4568-b656-fd5c30230325
MOZ_CRASH Reason: MOZ_DIAGNOSTIC_ASSERT(paddingSize + deletedPaddingSize <= 2147483647)
Top 10 frames of crashing thread:
0 XUL mozilla::dom::cache::db:: const dom/cache/DBSchema.cpp:1380
0 XUL mozilla::dom::quota::CollectWhileHasResult<mozilla::dom::cache::db:: const dom/quota/QuotaCommon.h:1481
0 XUL mozilla::CollectWhile<mozilla::dom::quota::CollectWhileHasResult<mozilla::dom::cache::db:: const dom/quota/QuotaCommon.h:1199
0 XUL mozilla::CollectEach<mozilla::dom::quota::CollectWhileHasResult<mozilla::dom::cache::db:: dom/quota/QuotaCommon.h:1129
0 XUL mozilla::CollectWhile<mozilla::dom::quota::CollectWhileHasResult<mozilla::dom::cache::db:: dom/quota/QuotaCommon.h:1199
0 XUL mozilla::dom::quota::CollectWhileHasResult<mozilla::dom::cache::db:: dom/quota/QuotaCommon.h:1477
0 XUL mozilla::dom::cache::db:: dom/cache/DBSchema.cpp:1380
0 XUL mozilla::dom::cache::db::DeleteCacheId dom/cache/DBSchema.cpp:636
1 XUL mozilla::dom::cache:: const dom/cache/Manager.cpp:108
1 XUL mozilla::ReduceEach<mozilla::Reduce<AutoTArray<long long, const dom/quota/QuotaCommon.h:1146
We're triggering a diagnostic assertion but I don't know enough about this code to be able to tell why. The signatures on Windows and macOS are slightly different.
Comment 1•2 years ago
|
||
That assertion has been introduced (together with the surrounding code) by bug 1784700.
Comment 2•2 years ago
|
||
Set release status flags based on info from the regressing bug 1784700
| Assignee | ||
Comment 3•2 years ago
|
||
The regression was introduced with patch: https://phabricator.services.mozilla.com/D156184, specifically, in the assertion line MOZ_DIAGNOSTIC_ASSERT(paddingSize + deletedPaddingSize <= INT_MAX).
R.H.S of the above comparison should be INT64_MAX instead of INT_MAX. Assertion would only trigger if the total cache padding size becomes greater than INT_MAX.
Looking at the crash stat, it seems like this happened in nightly, are diagnostic assertion enabled by-default on nightly builds? How about release? This is an issue with assertion statement itself, so probably there would not be any problems with release builds.
Updated•2 years ago
|
| Assignee | ||
Updated•2 years ago
|
| Reporter | ||
Comment 4•2 years ago
|
||
Diagnostic assertions are enabled on nightly and early beta (see here)
Updated•2 years ago
|
Updated•2 years ago
|
Comment 5•2 years ago
|
||
Set release status flags based on info from the regressing bug 1784700
Updated•2 years ago
|
| Assignee | ||
Comment 6•2 years ago
|
||
Updated•2 years ago
|
Comment 8•2 years ago
|
||
| bugherder | ||
Description
•