Open Bug 1712582 Opened 3 years ago Updated 3 months ago

[QM_TRY] Replace generic NS_ERROR_FAILURE errors with more specific codes.

Categories

(Core :: Storage: Quota Manager, task)

task

Tracking

()

People

(Reporter: jstutte, Unassigned)

References

(Blocks 29 open bugs)

Details

(Keywords: leave-open)

Attachments

(1 file)

We generate generic NS_ERROR_FAILURE in quite some places. We should have better error codes in our list of NS_ERROR_FILE_* codes we can use.

Query to find all QM_TRY failures with NS_ERROR_FAILURE.

Errors:

Clients Sessions Hits Anchor Stack
1 1 4 dom/quota/ActorsParent.cpp:QuotaManager::InitializeRepository dom/quota/ActorsParent.cpp#4744:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4767:NS_ERROR_FAILURE <- dom/localstorage/ActorsParent.cpp#987:NS_ERROR_FAILURE <- dom/localstorage/ActorsParent.cpp#8111:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4876:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4948:NS_ERROR_FAILURE
1 1 3 dom/localstorage/ActorsParent.cpp:ExistsAsFile dom/localstorage/ActorsParent.cpp#987:NS_ERROR_FAILURE <- dom/localstorage/ActorsParent.cpp#8111:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4876:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4948:NS_ERROR_FAILURE
1 1 3 dom/quota/ActorsParent.cpp:QuotaManager::InitializeRepository dom/quota/ActorsParent.cpp#4744:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4767:NS_ERROR_FAILURE
1 1 2 dom/quota/QuotaCommon.cpp:GetDirEntryKind dom/quota/QuotaCommon.cpp#186:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#2329:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#2337:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#2340:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#2571:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#11040:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#9850:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#11028:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4543:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4628:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4631:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4687:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4767:NS_ERROR_FAILURE <- dom/localstorage/ActorsParent.cpp#987:NS_ERROR_FAILURE <- dom/localstorage/ActorsParent.cpp#8111:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4876:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4948:NS_ERROR_FAILURE
1 1 2 dom/quota/ActorsParent.cpp:QuotaManager::InitializeRepository dom/quota/ActorsParent.cpp#4744:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4767:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4231:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#6230:NS_ERROR_FAILURE
1 2 2 dom/quota/QuotaCommon.h:CollectEachFile dom/quota/QuotaCommon.h#1380:NS_ERROR_FAILURE <- dom/indexedDB/ActorsParent.cpp#12457:NS_ERROR_FAILURE <- dom/indexedDB/ActorsParent.cpp#12883:NS_ERROR_FAILURE <- dom/indexedDB/ActorsParent.cpp#12726:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4875:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4947:NS_ERROR_FAILURE
1 1 2 dom/quota/ActorsParent.cpp:QuotaManager::InitializeRepository dom/quota/ActorsParent.cpp#4743:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4766:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4230:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#6229:NS_ERROR_FAILURE
1 1 1 dom/quota/QuotaCommon.cpp:GetDirEntryKind dom/quota/QuotaCommon.cpp#186:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#2329:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#2337:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#2340:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#2571:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#11040:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#9850:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#11028:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4543:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4628:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4631:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4687:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4767:NS_ERROR_FAILURE
1 1 1 dom/quota/ActorsParent.cpp:QuotaManager::LoadQuota dom/quota/ActorsParent.cpp#4231:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#6230:NS_ERROR_FAILURE

Warnings

Clients Sessions Hits Anchor Stack
103 277 277 dom/quota/ActorsParent.cpp:QuotaManager::LoadQuota dom/quota/ActorsParent.cpp#4117:None <- dom/quota/ActorsParent.cpp#4160:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4202:NS_ERROR_FAILURE
63 149 150 dom/quota/ActorsParent.cpp:QuotaManager::LoadQuota dom/quota/ActorsParent.cpp#4117:None <- dom/quota/ActorsParent.cpp#4160:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4202:NS_ERROR_FAILURE
1 1 146 dom/indexedDB/ActorsParent.cpp:QuotaClient::GetUsageForOriginInternal dom/indexedDB/ActorsParent.cpp#12825:NS_ERROR_FAILURE
35 106 106 dom/quota/ActorsParent.cpp:QuotaManager::LoadQuota dom/quota/ActorsParent.cpp#4117:None <- dom/quota/ActorsParent.cpp#4160:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4202:NS_ERROR_FAILURE
40 102 102 dom/quota/ActorsParent.cpp:QuotaManager::LoadQuota dom/quota/ActorsParent.cpp#4118:None <- dom/quota/ActorsParent.cpp#4161:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4203:NS_ERROR_FAILURE
46 96 96 dom/quota/ActorsParent.cpp:QuotaManager::LoadQuota dom/quota/ActorsParent.cpp#4118:None <- dom/quota/ActorsParent.cpp#4161:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4203:NS_ERROR_FAILURE
38 89 89 dom/quota/ActorsParent.cpp:QuotaManager::LoadQuota dom/quota/ActorsParent.cpp#4117:None <- dom/quota/ActorsParent.cpp#4160:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4202:NS_ERROR_FAILURE
48 63 80 dom/quota/ActorsParent.cpp:QuotaManager::LoadQuota dom/quota/ActorsParent.cpp#4133:None <- dom/quota/ActorsParent.cpp#4160:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4202:NS_ERROR_FAILURE
35 79 79 dom/quota/ActorsParent.cpp:QuotaManager::LoadQuota dom/quota/ActorsParent.cpp#4118:None <- dom/quota/ActorsParent.cpp#4161:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4203:NS_ERROR_FAILURE
2 3 67 dom/indexedDB/ActorsParent.cpp:QuotaClient::GetUsageForOriginInternal dom/indexedDB/ActorsParent.cpp#12859:NS_ERROR_FAILURE
1 1 60 dom/indexedDB/ActorsParent.cpp:QuotaClient::GetUsageForOriginInternal dom/indexedDB/ActorsParent.cpp#12825:NS_ERROR_FAILURE
25 58 58 dom/quota/ActorsParent.cpp:QuotaManager::LoadQuota dom/quota/ActorsParent.cpp#4118:None <- dom/quota/ActorsParent.cpp#4161:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4203:NS_ERROR_FAILURE
1 4 55 dom/indexedDB/ActorsParent.cpp:QuotaClient::GetUsageForOriginInternal dom/indexedDB/ActorsParent.cpp#12825:NS_ERROR_FAILURE
1 1 36 dom/indexedDB/ActorsParent.cpp:QuotaClient::GetUsageForOriginInternal dom/indexedDB/ActorsParent.cpp#12859:NS_ERROR_FAILURE
1 1 35 dom/indexedDB/ActorsParent.cpp:QuotaClient::GetUsageForOriginInternal dom/indexedDB/ActorsParent.cpp#12859:NS_ERROR_FAILURE
1 1 33 dom/indexedDB/ActorsParent.cpp:QuotaClient::GetUsageForOriginInternal dom/indexedDB/ActorsParent.cpp#12825:NS_ERROR_FAILURE
17 22 29 dom/quota/ActorsParent.cpp:QuotaManager::LoadQuota dom/quota/ActorsParent.cpp#4134:None <- dom/quota/ActorsParent.cpp#4161:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4203:NS_ERROR_FAILURE
18 24 29 dom/quota/ActorsParent.cpp:QuotaManager::LoadQuota dom/quota/ActorsParent.cpp#4133:None <- dom/quota/ActorsParent.cpp#4160:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4202:NS_ERROR_FAILURE
15 23 27 dom/quota/ActorsParent.cpp:QuotaManager::LoadQuota dom/quota/ActorsParent.cpp#4133:None <- dom/quota/ActorsParent.cpp#4160:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4202:NS_ERROR_FAILURE
17 21 27 dom/quota/ActorsParent.cpp:QuotaManager::LoadQuota dom/quota/ActorsParent.cpp#4133:None <- dom/quota/ActorsParent.cpp#4160:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4202:NS_ERROR_FAILURE
18 20 26 dom/quota/ActorsParent.cpp:QuotaManager::LoadQuota dom/quota/ActorsParent.cpp#4134:None <- dom/quota/ActorsParent.cpp#4161:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4203:NS_ERROR_FAILURE
10 15 17 dom/quota/ActorsParent.cpp:QuotaManager::LoadQuota dom/quota/ActorsParent.cpp#4134:None <- dom/quota/ActorsParent.cpp#4161:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4203:NS_ERROR_FAILURE
1 1 15 dom/indexedDB/ActorsParent.cpp:QuotaClient::GetUsageForOriginInternal dom/indexedDB/ActorsParent.cpp#12859:NS_ERROR_FAILURE
1 1 9 dom/quota/ActorsParent.cpp:QuotaManager::LoadFullOriginMetadata dom/quota/ActorsParent.cpp#4579:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4631:NS_ERROR_FAILURE
3 5 8 dom/quota/ActorsParent.cpp:QuotaManager::LoadQuota dom/quota/ActorsParent.cpp#4134:None <- dom/quota/ActorsParent.cpp#4161:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4203:NS_ERROR_FAILURE
1 1 6 dom/quota/ActorsParent.cpp:QuotaManager::InitializeRepository dom/quota/ActorsParent.cpp#4744:NS_ERROR_FAILURE
1 1 3 dom/quota/ActorsParent.cpp:QuotaManager::InitializeRepository dom/quota/ActorsParent.cpp#4744:NS_ERROR_FAILURE
1 2 2 dom/quota/ActorsParent.cpp:GetBinaryInputStream dom/quota/ActorsParent.cpp#2585:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4556:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4631:NS_ERROR_FAILURE
1 1 2 dom/quota/ActorsParent.cpp:QuotaManager::InitializeRepository dom/quota/ActorsParent.cpp#4743:NS_ERROR_FAILURE
1 1 1 dom/quota/ActorsParent.cpp:GetBinaryInputStream dom/quota/ActorsParent.cpp#2585:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4556:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4631:NS_ERROR_FAILURE
1 1 1 dom/quota/ActorsParent.cpp:<Unknown 4133> dom/quota/ActorsParent.cpp#4133:None <- dom/quota/ActorsParent.cpp#4160:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4202:NS_ERROR_FAILURE
Blocks: 1711703
Blocks: 1704434
Blocks: 1708126
Blocks: 1708131
Blocks: 1730547
Blocks: 1720080
Blocks: 1720087
Blocks: 1708141
Blocks: 1722267
Blocks: 1746894
Blocks: 1757062
Blocks: 1706006
Blocks: 1796643
Blocks: 1705013
Assignee: nobody → jkrause
Status: NEW → ASSIGNED
Pushed by jkrause@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/a6a0b74a1368
Use `NS_ERROR_NOT_INITIALIZED` when `aQuotaManager.Is[Temporary]StorageInitialized()` fails. r=dom-storage-reviewers,janv

Adding leave-open because the patch will return more exact errors, but will not prevent them.

Keywords: leave-open
Blocks: 1843872
Blocks: 1855352

The bug assignee is inactive on Bugzilla, so the assignee is being reset.

Assignee: jan.rio.krause → nobody
Status: ASSIGNED → NEW

This would be really useful. We've been trying to resolve multiple NS_ERROR_FAILURE exceptions for months with no luck, because it doesn't provide any helpful information.

You need to log in before you can comment on or make changes to this bug.