Open Bug 1702411 Opened 2 years ago Updated 3 days ago

[meta] Monitor and fix QM_TRY failures

Categories

(Core :: Storage: Quota Manager, task)

task

Tracking

()

REOPENED
103 Branch
Tracking Status
firefox103 --- affected

People

(Reporter: jstutte, Assigned: jkrause)

References

(Depends on 73 open bugs, Blocks 1 open bug)

Details

(Keywords: leave-open, meta)

Attachments

(126 files, 5 obsolete files)

116.06 KB, text/plain
Details
116.86 KB, text/plain
Details
110.31 KB, text/plain
Details
782.87 KB, text/plain
Details
305.88 KB, text/plain
Details
117.73 KB, text/plain
Details
338.07 KB, text/plain
Details
716.32 KB, text/plain
Details
286.01 KB, text/plain
Details
874.06 KB, text/plain
Details
1.14 MB, text/plain
Details
521.14 KB, text/plain
Details
744.07 KB, text/plain
Details
331.61 KB, text/plain
Details
516.26 KB, text/plain
Details
700.63 KB, text/plain
Details
78.46 KB, text/plain
Details
328.25 KB, text/plain
Details
542.68 KB, text/plain
Details
145.74 KB, text/plain
Details
199.02 KB, text/plain
Details
271.92 KB, text/plain
Details
673.53 KB, text/plain
Details
623.17 KB, text/plain
Details
109.63 KB, text/plain
Details
187.56 KB, text/plain
Details
445.51 KB, text/plain
Details
372.25 KB, text/plain
Details
239.00 KB, text/plain
Details
198.69 KB, text/plain
Details
302.08 KB, text/plain
Details
295.57 KB, text/plain
Details
286.59 KB, text/plain
Details
331.08 KB, text/plain
Details
343.21 KB, text/plain
Details
232.02 KB, text/plain
Details
337.49 KB, text/plain
Details
269.75 KB, text/plain
Details
227.49 KB, text/plain
Details
290.43 KB, text/plain
Details
216.24 KB, text/plain
Details
202.91 KB, text/plain
Details
263.84 KB, text/plain
Details
244.26 KB, text/plain
Details
300.69 KB, text/plain
Details
183.95 KB, text/plain
Details
256.48 KB, text/plain
Details
254.54 KB, text/plain
Details
255.46 KB, text/plain
Details
268.95 KB, text/plain
Details
268.71 KB, text/plain
Details
254.23 KB, text/plain
Details
215.82 KB, text/plain
Details
260.59 KB, text/plain
Details
303.54 KB, text/plain
Details
282.22 KB, text/plain
Details
307.29 KB, text/plain
Details
245.98 KB, text/plain
Details
258.29 KB, text/plain
Details
209.74 KB, text/plain
Details
255.44 KB, text/plain
Details
209.12 KB, text/plain
Details
232.11 KB, text/plain
Details
246.86 KB, text/plain
Details
302.73 KB, text/plain
Details
184.32 KB, text/plain
Details
373.34 KB, text/plain
Details
377.56 KB, text/plain
Details
275.12 KB, text/plain
Details
276.36 KB, text/plain
Details
282.32 KB, text/plain
Details
323.73 KB, text/plain
Details
286.96 KB, text/plain
Details
325.39 KB, text/plain
Details
274.51 KB, text/plain
Details
340.96 KB, text/plain
Details
341.21 KB, text/plain
Details
433.82 KB, text/plain
Details
319.63 KB, text/plain
Details
349.31 KB, text/plain
Details
285.41 KB, text/plain
Details
412.60 KB, text/plain
Details
307.48 KB, text/plain
Details
284.58 KB, text/plain
Details
267.15 KB, text/plain
Details
317.80 KB, text/plain
Details
247.40 KB, text/plain
Details
262.19 KB, text/plain
Details
279.78 KB, text/plain
Details
276.19 KB, text/plain
Details
270.99 KB, text/plain
Details
288.98 KB, text/plain
Details
277.55 KB, text/plain
Details
268.15 KB, text/plain
Details
260.38 KB, text/plain
Details
258.75 KB, text/plain
Details
228.23 KB, text/plain
Details
248.97 KB, text/plain
Details
230.88 KB, text/plain
Details
297.71 KB, text/plain
Details
48 bytes, text/x-phabricator-request
Details | Review
254.26 KB, text/plain
Details
247.42 KB, text/plain
Details
298.59 KB, text/plain
Details
300.09 KB, text/plain
Details
286.41 KB, text/plain
Details
247.84 KB, text/plain
Details
235.36 KB, text/plain
Details
348.40 KB, text/plain
Details
238.59 KB, text/plain
Details
303.47 KB, text/plain
Details
304.32 KB, text/plain
Details
310.83 KB, text/plain
Details
362.37 KB, text/plain
Details
279.26 KB, text/plain
Details
249.87 KB, text/plain
Details
300.43 KB, text/plain
Details
395.53 KB, text/plain
Details
254.79 KB, text/plain
Details
289.73 KB, text/plain
Details
884.05 KB, text/plain
Details
264.39 KB, text/plain
Details
274.68 KB, text/plain
Details
269.90 KB, text/plain
Details
284.04 KB, text/plain
Details
263.35 KB, text/plain
Details

This bugs keeps track of the semi-automatic monitoring of QM_TRY failures.
Specific bugs will be filed underneath.

See Also: → 1700915
Attached file until_1617178176970
Attached file until_1617194371121
Attached file until_1634520128111
Depends on: 1702416
Depends on: 1702418
Depends on: 1702421
Depends on: 1702422
Keywords: meta
Assignee: nobody → jstutte
Depends on: 1702594
Depends on: 1702595
Depends on: 1702598
Depends on: 1702599
Depends on: 1702600
Depends on: 1703266
Depends on: 1703269
Depends on: 1703270
Depends on: 1703271
Depends on: 1703273
Depends on: 1703797
Depends on: 1703798

My first guess is that rust-code-analysis-cli is confused by the macro in some places. I would need to see the metrics file to tell more. Should I try myself ?

Flags: needinfo?(jvarga)
Depends on: 1703801

Or maybe the script needs a list of functions that should be ignored (if QM_TRY is considered as a function) and use other function name which is not the closest one.

(In reply to Jan Varga [:janv] from comment #6)

My first guess is that rust-code-analysis-cli is confused by the macro in some places. I would need to see the metrics file to tell more. Should I try myself ?

This seems to be the case. Fetching ActorsParent.cpp manually and applying rust-code-analysis-cli -m -O json -o /tmp -p /tmp/ActorsParent.cpp manually yields:

...
             {
                    "name": "LoadLocalStorageArchiveVersion",
                    "start_line": 658,
                    "end_line": 755,
                    "kind": "function",
                    "spaces": [
                        {
                            "name": "QM_TRY_INSPECT",
                            "start_line": 662,
                            "end_line": 745,
                            "kind": "function",
                            "spaces": [],
                            "metrics": {
                                "nargs": {
                                    "sum": 7.0,
                                    "average": 7.0
                                },
                                "nexits": {
                                    "sum": 0.0,
                                    "average": 0.0
                                },
                                "cognitive": {
                                    "sum": 0.0,
                                    "average": 0.0
                                },
                                "cyclomatic": {
                                    "sum": 7.0,
                                    "average": 7.0
                                },
                                "halstead": {
                                    "n1": 19.0,
                                    "N1": 157.0,
                                    "n2": 65.0,
                                    "N2": 119.0,
                                    "length": 276.0,
                                    "estimated_program_length": 472.16453060227764,
                                    "purity_ratio": 1.710741052906803,
                                    "vocabulary": 84.0,
                                    "volume": 1764.279608686938,
                                    "difficulty": 17.392307692307693,
                                    "level": 0.05749668288367979,
                                    "effort": 30684.893809547437,
                                    "time": 1704.7163227526353,
                                    "bugs": 0.32670954919749584
                                },
                                "loc": {
                                    "sloc": 84.0,
                                    "ploc": 60.0,
                                    "lloc": 1.0,
                                    "cloc": 5.0,
                                    "blank": 19.0
                                },
                                "nom": {
                                    "functions": 1.0,
                                    "closures": 0.0,
                                    "total": 1.0
                                },
                                "mi": {
                                    "mi_original": 58.738179650614256,
                                    "mi_sei": 28.20463653446185,
                                    "mi_visual_studio": 34.34981266117793
                                }
                            }
                        },
                        {
                            "name": "~Observer",
                            "start_line": 747,
                            "end_line": 747,
                            "kind": "function",
                            "spaces": [],
                            "metrics": {
                                "nargs": {
                                    "sum": 0.0,
                                    "average": 0.0
                                },
                                "nexits": {
                                    "sum": 0.0,
                                    "average": 0.0
                                },
                                "cognitive": {
                                    "sum": 0.0,
                                    "average": 0.0
                                },
                                "cyclomatic": {
                                    "sum": 1.0,
                                    "average": 1.0
                                },
                                "halstead": {
                                    "n1": 4.0,
                                    "N1": 6.0,
                                    "n2": 3.0,
                                    "N2": 3.0,
                                    "length": 9.0,
                                    "estimated_program_length": 12.754887502163468,
                                    "purity_ratio": 1.4172097224626077,
                                    "vocabulary": 7.0,
                                    "volume": 25.26619429851844,
                                    "difficulty": 2.0,
                                    "level": 0.5,
                                    "effort": 50.53238859703688,
                                    "time": 2.807354922057604,
                                    "bugs": 0.004556086527391188
                                },
                                "loc": {
                                    "sloc": 1.0,
                                    "ploc": 1.0,
                                    "lloc": 1.0,
                                    "cloc": 0.0,
                                    "blank": 0.0
                                },
                                "nom": {
                                    "functions": 1.0,
                                    "closures": 0.0,
                                    "total": 1.0
                                },
                                "mi": {
                                    "mi_original": 153.97676999581998,
                                    "mi_sei": 146.54249035246173,
                                    "mi_visual_studio": 90.04489473439764
                                }
                            }
                        }
                    ],
                    "metrics": {
                        "nargs": {
                            "sum": 8.0,
                            "average": 2.6666666666666665
                        },
                        "nexits": {
                            "sum": 0.0,
                            "average": 0.0
                        },
                        "cognitive": {
                            "sum": 0.0,
                            "average": 0.0
                        },
                        "cyclomatic": {
                            "sum": 9.0,
                            "average": 3.0
                        },
                        "halstead": {
                            "n1": 20.0,
                            "N1": 176.0,
                            "n2": 68.0,
                            "N2": 132.0,
                            "length": 308.0,
                            "estimated_program_length": 500.38603510277034,
                            "purity_ratio": 1.6246299840999037,
                            "vocabulary": 88.0,
                            "volume": 1989.5049385402876,
                            "difficulty": 19.41176470588235,
                            "level": 0.05151515151515152,
                            "effort": 38619.80174813499,
                            "time": 2145.5445415630547,
                            "bugs": 0.3808483736064195
                        },
                        "loc": {
                            "sloc": 98.0,
                            "ploc": 69.0,
                            "lloc": 3.0,
                            "cloc": 5.0,
                            "blank": 24.0
                        },
                        "nom": {
                            "functions": 3.0,
                            "closures": 0.0,
                            "total": 3.0
                        },
                        "mi": {
                            "mi_original": 55.15619306227286,
                            "mi_sei": 21.9305595486369,
                            "mi_visual_studio": 32.25508366214787
                        }
                    }
                },
...

The line numbers are clearly wrong here. And similar problems are happening also in other places around QM_TRY_INSPECT. As the line numbers also of LoadLocalStorageArchiveVersion itself are wrong (end line), I fear that ignoring QM_* function names might not always help.

:marco, is this something you ever noticed in rust-code-analysis-cli?

Flags: needinfo?(mcastelluccio)

Is there a way to get rust-code-analysis to dump the tree-sitter AST/parse? I presume there's an error node in the given method that causes it to miss the end of the function and eat further.

:asuth, yes it's possible:

cargo run -p rust-code-analysis-cli -- -p /tmp/ActorsParent.cpp -d --ls 658 --le 671

ls and le are here to limit the ast dump to nodes which are between these two line numbers (included).
and the problem is because of

QM_TRY_INSPECT(const auto& stmt, ...

because it isn't really grammatically correct.
In rca we've a grammar for mozilla-central code:
https://github.com/mozilla/rust-code-analysis/blob/master/tree-sitter-mozcpp/grammar.js
so we can amend it to handle special cases (it's the goal of this grammar), feel free to file a bug.

Flags: needinfo?(mcastelluccio)
Depends on: 1703840
Depends on: 1703844

I wrote a patch for rca to fix the problem:
https://github.com/mozilla/rust-code-analysis/pull/611

(In reply to Calixte Denizet (:calixte) from comment #11)

I wrote a patch for rca to fix the problem:
https://github.com/mozilla/rust-code-analysis/pull/611

Thanks a lot!

It works:

< 5 | 5 | 5 | dom/quota/ActorsParent.cpp:QM_TRY_INSPECT | [dom/quota/ActorsParent.cpp#667:None](https://hg.mozilla.org/releases/mozilla-beta/annotate/276ecc030f1c341ecf57287999ff4bec10adfb4f/dom/quota/ActorsParent.cpp#l667) <- [dom/quota/ActorsParent.cpp#5875:NS_ERROR_FILE_CORRUPTED](https://hg.mozilla.org/releases/mozilla-beta/annotate/276ecc030f1c341ecf57287999ff4bec10adfb4f/dom/quota/ActorsParent.cpp#l5875)
---
> 5 | 5 | 5 | dom/quota/ActorsParent.cpp:LoadLocalStorageArchiveVersion | [dom/quota/ActorsParent.cpp#667:None](https://hg.mozilla.org/releases/mozilla-beta/annotate/276ecc030f1c341ecf57287999ff4bec10adfb4f/dom/quota/ActorsParent.cpp#l667) <- [dom/quota/ActorsParent.cpp#5875:NS_ERROR_FILE_CORRUPTED](https://hg.mozilla.org/releases/mozilla-beta/annotate/276ecc030f1c341ecf57287999ff4bec10adfb4f/dom/quota/ActorsParent.cpp#l5875)

Thanks!

Needs new bug:

Clients Sessions Hits Anchor Stack
2 2 2 dom/quota/ActorsParent.cpp:LoadLocalStorageArchiveVersion dom/quota/ActorsParent.cpp#667:None <- dom/quota/ActorsParent.cpp#5875:NS_ERROR_FILE_CORRUPTED

Needs new bug:

Clients Sessions Hits Anchor Stack
2 2 2 dom/quota/ActorsParent.cpp:QuotaManager::EnsureStorageIsInitialized dom/quota/ActorsParent.cpp#6011:NS_ERROR_FILE_ACCESS_DENIED
1 1 1 dom/quota/ActorsParent.cpp:QuotaManager::EnsureStorageIsInitialized dom/quota/ActorsParent.cpp#6011:NS_ERROR_STORAGE_BUSY

Needs new bug:

Clients Sessions Hits Anchor Stack
1 1 1 dom/quota/ActorsParent.cpp:CreateDirectoryMetadata2 dom/quota/ActorsParent.cpp#2568:NS_ERROR_FILE_ACCESS_DENIED <- dom/quota/ActorsParent.cpp#11027:NS_ERROR_FILE_ACCESS_DENIED <- dom/quota/ActorsParent.cpp#9841:NS_ERROR_FILE_ACCESS_DENIED <- dom/quota/ActorsParent.cpp#11015:NS_ERROR_FILE_ACCESS_DENIED <- dom/quota/ActorsParent.cpp#4534:NS_ERROR_FILE_ACCESS_DENIED <- dom/quota/ActorsParent.cpp#4619:NS_ERROR_FILE_ACCESS_DENIED <- dom/quota/ActorsParent.cpp#4622:NS_ERROR_FILE_ACCESS_DENIED <- dom/quota/ActorsParent.cpp#4678:NS_ERROR_FILE_ACCESS_DENIED <- dom/quota/ActorsParent.cpp#4758:NS_ERROR_FILE_ACCESS_DENIED <- dom/quota/ActorsParent.cpp#4222:NS_ERROR_FILE_ACCESS_DENIED <- dom/quota/ActorsParent.cpp#6221:NS_ERROR_FILE_ACCESS_DENIED
1 1 1 dom/quota/ActorsParent.cpp:CreateDirectoryMetadata2 dom/quota/ActorsParent.cpp#2542:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#11044:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#9856:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#11032:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4542:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4632:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4693:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4773:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4777:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4780:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4230:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#4233:NS_ERROR_FAILURE <- dom/quota/ActorsParent.cpp#6234:NS_ERROR_FAILURE

Needs new bug:

Clients Sessions Hits Anchor Stack
1 1 1 dom/quota/ActorsParent.cpp:MaybeUpdateGroupForOrigin dom/quota/ActorsParent.cpp#1829:NS_ERROR_MALFORMED_URI <- dom/quota/ActorsParent.cpp#4596:NS_ERROR_MALFORMED_URI <- dom/quota/ActorsParent.cpp#4628:NS_ERROR_MALFORMED_URI

Needs new bug:

Clients Sessions Hits Anchor Stack
1 1 1 dom/quota/ActorsParent.cpp:QuotaManager::InitializeRepository dom/quota/ActorsParent.cpp#4735:NS_ERROR_FILE_FS_CORRUPTED <- dom/quota/ActorsParent.cpp#4758:NS_ERROR_FILE_FS_CORRUPTED <- dom/quota/ActorsParent.cpp#4222:NS_ERROR_FILE_FS_CORRUPTED <- dom/quota/ActorsParent.cpp#6221:NS_ERROR_FILE_FS_CORRUPTED
1 1 1 dom/quota/ActorsParent.cpp:QuotaManager::InitializeRepository dom/quota/ActorsParent.cpp#4735:NS_ERROR_FILE_ACCESS_DENIED <- dom/quota/ActorsParent.cpp#4758:NS_ERROR_FILE_ACCESS_DENIED
1 1 1 dom/quota/ActorsParent.cpp:QuotaManager::InitializeRepository dom/quota/ActorsParent.cpp#4735:NS_ERROR_FILE_ACCESS_DENIED <- dom/quota/ActorsParent.cpp#4758:NS_ERROR_FILE_ACCESS_DENIED
1 1 183 dom/quota/ActorsParent.cpp:QuotaManager::InitializeRepository dom/quota/ActorsParent.cpp#4735:NS_ERROR_FILE_ACCESS_DENIED <- dom/quota/ActorsParent.cpp#4758:NS_ERROR_FILE_ACCESS_DENIED
1 1 2 dom/quota/ActorsParent.cpp:QuotaManager::InitializeRepository dom/quota/ActorsParent.cpp#4735:NS_ERROR_FILE_ACCESS_DENIED <- dom/quota/ActorsParent.cpp#4758:NS_ERROR_FILE_ACCESS_DENIED <- dom/quota/ActorsParent.cpp#4222:NS_ERROR_FILE_ACCESS_DENIED <- dom/quota/ActorsParent.cpp#6221:NS_ERROR_FILE_ACCESS_DENIED
1 1 1 dom/quota/ActorsParent.cpp:QuotaManager::InitializeRepository dom/quota/ActorsParent.cpp#4735:NS_ERROR_FILE_ACCESS_DENIED <- dom/quota/ActorsParent.cpp#4758:NS_ERROR_FILE_ACCESS_DENIED <- dom/quota/ActorsParent.cpp#4222:NS_ERROR_FILE_ACCESS_DENIED
1 1 62 dom/quota/ActorsParent.cpp:QuotaManager::InitializeRepository dom/quota/ActorsParent.cpp#4735:NS_ERROR_FILE_ACCESS_DENIED <- dom/quota/ActorsParent.cpp#4758:NS_ERROR_FILE_ACCESS_DENIED
1 1 1 dom/quota/ActorsParent.cpp:QuotaManager::InitializeRepository dom/quota/ActorsParent.cpp#4735:NS_ERROR_FILE_IS_LOCKED <- dom/quota/ActorsParent.cpp#4758:NS_ERROR_FILE_IS_LOCKED
1 1 2 dom/quota/ActorsParent.cpp:QuotaManager::InitializeRepository dom/quota/ActorsParent.cpp#4735:NS_ERROR_FILE_IS_LOCKED <- dom/quota/ActorsParent.cpp#4758:NS_ERROR_FILE_IS_LOCKED
1 1 2 dom/quota/ActorsParent.cpp:QuotaManager::InitializeRepository dom/quota/ActorsParent.cpp#4735:NS_ERROR_FILE_READ_ONLY <- dom/quota/ActorsParent.cpp#4758:NS_ERROR_FILE_READ_ONLY

Needs new bug:

Clients Sessions Hits Anchor Stack
1 1 1 dom/quota/QuotaCommon.cpp:GetDirEntryKind dom/quota/QuotaCommon.cpp#186:NS_ERROR_FILE_ACCESS_DENIED <- dom/indexedDB/ActorsParent.cpp#13125:NS_ERROR_FILE_ACCESS_DENIED <- dom/indexedDB/ActorsParent.cpp#13184:NS_ERROR_FILE_ACCESS_DENIED <- dom/indexedDB/ActorsParent.cpp#12772:NS_ERROR_FILE_ACCESS_DENIED <- dom/indexedDB/ActorsParent.cpp#12731:NS_ERROR_FILE_ACCESS_DENIED <- dom/quota/ActorsParent.cpp#4867:NS_ERROR_FILE_ACCESS_DENIED <- dom/quota/ActorsParent.cpp#4939:NS_ERROR_FILE_ACCESS_DENIED
1 1 1 dom/quota/QuotaCommon.cpp:GetDirEntryKind dom/quota/QuotaCommon.cpp#186:NS_ERROR_FILE_ACCESS_DENIED <- dom/indexedDB/ActorsParent.cpp#13125:NS_ERROR_FILE_ACCESS_DENIED <- dom/indexedDB/ActorsParent.cpp#13184:NS_ERROR_FILE_ACCESS_DENIED <- dom/indexedDB/ActorsParent.cpp#12772:NS_ERROR_FILE_ACCESS_DENIED <- dom/indexedDB/ActorsParent.cpp#12731:NS_ERROR_FILE_ACCESS_DENIED <- dom/quota/ActorsParent.cpp#4867:NS_ERROR_FILE_ACCESS_DENIED <- dom/quota/ActorsParent.cpp#4939:NS_ERROR_FILE_ACCESS_DENIED
1 1 237 dom/quota/QuotaCommon.cpp:GetDirEntryKind dom/quota/QuotaCommon.cpp#186:NS_ERROR_FILE_ACCESS_DENIED <- dom/quota/ActorsParent.cpp#4848:NS_ERROR_FILE_ACCESS_DENIED <- dom/quota/ActorsParent.cpp#4939:NS_ERROR_FILE_ACCESS_DENIED
1 1 62 dom/quota/QuotaCommon.cpp:GetDirEntryKind dom/quota/QuotaCommon.cpp#186:NS_ERROR_FILE_ACCESS_DENIED <- dom/quota/ActorsParent.cpp#2327:NS_ERROR_FILE_ACCESS_DENIED <- dom/quota/ActorsParent.cpp#2335:NS_ERROR_FILE_ACCESS_DENIED <- dom/quota/ActorsParent.cpp#2338:NS_ERROR_FILE_ACCESS_DENIED
1 1 62 dom/quota/QuotaCommon.cpp:GetDirEntryKind dom/quota/QuotaCommon.cpp#186:NS_ERROR_FILE_ACCESS_DENIED <- dom/quota/ActorsParent.cpp#2327:NS_ERROR_FILE_ACCESS_DENIED <- dom/quota/ActorsParent.cpp#2335:NS_ERROR_FILE_ACCESS_DENIED <- dom/quota/ActorsParent.cpp#2338:NS_ERROR_FILE_ACCESS_DENIED
1 1 79 dom/quota/QuotaCommon.cpp:GetDirEntryKind dom/quota/QuotaCommon.cpp#186:NS_ERROR_FILE_ACCESS_DENIED <- dom/quota/ActorsParent.cpp#4848:NS_ERROR_FILE_ACCESS_DENIED <- dom/quota/ActorsParent.cpp#4939:NS_ERROR_FILE_ACCESS_DENIED
1 2 3 dom/quota/QuotaCommon.cpp:GetDirEntryKind dom/quota/QuotaCommon.cpp#187:WIN32(0x45D) <- dom/cache/FileUtilsImpl.h#42:WIN32(0x45D) <- dom/cache/FileUtilsImpl.h#93:WIN32(0x45D) <- dom/cache/QuotaClient.cpp#122:WIN32(0x45D) <- dom/cache/QuotaClient.cpp#49:WIN32(0x45D) <- dom/cache/QuotaClient.cpp#52:WIN32(0x45D) <- dom/cache/QuotaClient.cpp#124:WIN32(0x45D) <- dom/cache/QuotaClient.cpp#437:WIN32(0x45D) <- dom/cache/QuotaClient.cpp#49:WIN32(0x45D) <- dom/cache/QuotaClient.cpp#52:WIN32(0x45D) <- dom/cache/QuotaClient.cpp#478:WIN32(0x45D) <- dom/quota/ActorsParent.cpp#4882:WIN32(0x45D) <- dom/quota/ActorsParent.cpp#4954:WIN32(0x45D) <- dom/quota/ActorsParent.cpp#4958:WIN32(0x45D) <- dom/quota/ActorsParent.cpp#4961:WIN32(0x45D) <- dom/quota/ActorsParent.cpp#4750:WIN32(0x45D) <- dom/quota/ActorsParent.cpp#4773:WIN32(0x45D) <- dom/quota/ActorsParent.cpp#4777:WIN32(0x45D) <- dom/quota/ActorsParent.cpp#4780:WIN32(0x45D) <- dom/quota/ActorsParent.cpp#4230:WIN32(0x45D) <- dom/quota/ActorsParent.cpp#4233:WIN32(0x45D) <- dom/quota/ActorsParent.cpp#6234:WIN32(0x45D)
1 2 2 dom/quota/QuotaCommon.cpp:GetDirEntryKind dom/quota/QuotaCommon.cpp#187:WIN32(0x45D) <- dom/indexedDB/ActorsParent.cpp#13127:WIN32(0x45D) <- dom/indexedDB/ActorsParent.cpp#13186:WIN32(0x45D) <- dom/indexedDB/ActorsParent.cpp#12778:WIN32(0x45D) <- dom/indexedDB/ActorsParent.cpp#12737:WIN32(0x45D) <- dom/quota/ActorsParent.cpp#4882:WIN32(0x45D) <- dom/quota/ActorsParent.cpp#4954:WIN32(0x45D) <- dom/quota/ActorsParent.cpp#4958:WIN32(0x45D) <- dom/quota/ActorsParent.cpp#4961:WIN32(0x45D) <- dom/quota/ActorsParent.cpp#4750:WIN32(0x45D) <- dom/quota/ActorsParent.cpp#4773:WIN32(0x45D) <- dom/quota/ActorsParent.cpp#4777:WIN32(0x45D) <- dom/quota/ActorsParent.cpp#4780:WIN32(0x45D) <- dom/quota/ActorsParent.cpp#4230:WIN32(0x45D) <- dom/quota/ActorsParent.cpp#4233:WIN32(0x45D) <- dom/quota/ActorsParent.cpp#6234:WIN32(0x45D)

Needs new bug:

Clients Sessions Hits Anchor Stack
1 2 2 dom/quota/ActorsParent.cpp:QuotaManager::CopyLocalStorageArchiveFromWebAppsStore dom/quota/ActorsParent.cpp#5514:WIN32(0x570) <- dom/quota/ActorsParent.cpp#5859:WIN32(0x570) <- dom/quota/ActorsParent.cpp#5863:WIN32(0x570) <- dom/quota/ActorsParent.cpp#6041:WIN32(0x570)

Needs new bug:

Clients Sessions Hits Anchor Stack
1 1 1 dom/quota/ActorsParent.cpp:QuotaManager::MaybeCreateOrUpgradeStorage dom/quota/ActorsParent.cpp#5811:NS_ERROR_FILE_NO_DEVICE_SPACE <- dom/quota/ActorsParent.cpp#6013:NS_ERROR_FILE_NO_DEVICE_SPACE
1 1 1 dom/quota/ActorsParent.cpp:QuotaManager::MaybeCreateOrUpgradeStorage dom/quota/ActorsParent.cpp#5811:NS_ERROR_FILE_NO_DEVICE_SPACE <- dom/quota/ActorsParent.cpp#6013:NS_ERROR_FILE_NO_DEVICE_SPACE
Depends on: 1704432
Depends on: 1704433
Depends on: 1704434
Depends on: 1704437
Depends on: 1704438
Depends on: 1704439
Depends on: 1704440
Depends on: 1704442
Depends on: 1704443
Depends on: 1704444
Depends on: 1705013
Depends on: 1705304
Depends on: 1705383
Depends on: 1706005
Depends on: 1706006
Depends on: 1706009
Depends on: 1706010
Depends on: 1706012
Depends on: 1706013
Depends on: 1706343

The last two files are almost a week old, I will not file the single errors.

Attached file qmstacks_until_1619343297418.txt (obsolete) —
Attached file qmstacks_until_1619481593759.txt (obsolete) —
Attachment #9218612 - Attachment is obsolete: true
Attachment #9218613 - Attachment is obsolete: true

Hopefully better split with less false errors.

Also here, hopefully better split with less false alarms.

Depends on: 1708119
Depends on: 1708126
Depends on: 1708127
Depends on: 1708130
Depends on: 1708131
Depends on: 1708132
Depends on: 1708134
Depends on: 1708138
Depends on: 1708139
Depends on: 1708141
Depends on: 1709058
Depends on: 1709059
Depends on: 1709060
Depends on: 1711686
Depends on: 1711693
Depends on: 1711696
Depends on: 1711703
Depends on: 1712582
Attached file qmstacks_until_1622505580053.txt (obsolete) —

Looking at the frequency of different stacks with nsResult:

Errors:
> cat qmerrors_until_1622505580053.json | grep result | sort | uniq -c
    166                 "result": "NS_ERROR_FILE_ACCESS_DENIED",
     25                 "result": "NS_ERROR_FILE_DIR_NOT_EMPTY",
     18                 "result": "NS_ERROR_FILE_FS_CORRUPTED",
     10                 "result": "NS_ERROR_FILE_IS_LOCKED",
      3                 "result": "NS_ERROR_FILE_NO_DEVICE_SPACE",
     50                 "result": "NS_ERROR_FILE_NOT_FOUND",
      3                 "result": "NS_ERROR_FILE_READ_ONLY",
      4                 "result": null,

Warnings:
> cat qmwarnings_until_1622505580053.json | grep result | sort | uniq -c
     65                 "result": "NS_ERROR_FAILURE",
     27                 "result": "NS_ERROR_FILE_ACCESS_DENIED",
     15                 "result": "NS_ERROR_FILE_CORRUPTED",
      3                 "result": "NS_ERROR_FILE_DEVICE_FAILURE",
      1                 "result": "NS_ERROR_FILE_DIR_NOT_EMPTY",
      9                 "result": "NS_ERROR_FILE_IS_LOCKED",
      1                 "result": "NS_ERROR_FILE_NO_DEVICE_SPACE",
    108                 "result": "NS_ERROR_FILE_NOT_FOUND",
      2                 "result": "NS_ERROR_FILE_READ_ONLY",
     45                 "result": "NS_ERROR_FILE_TARGET_DOES_NOT_EXIST",
      6                 "result": "NS_ERROR_FILE_TOO_BIG",
     44                 "result": "NS_ERROR_ILLEGAL_VALUE",
      6                 "result": "NS_ERROR_MALFORMED_URI",
      7                 "result": "NS_ERROR_STORAGE_IOERR",
      6                 "result": "NS_ERROR_UNEXPECTED",
     55                 "result": null,

Please note, that this does not count, how often those stacks occur, it is just the number of unique stack frames in this script run (we could do better but not with a 5min bash line).

Things worth an investigation:

Error Comment
NS_ERROR_FILE_DEVICE_FAILURE Should never be a Warning?
NS_ERROR_FILE_NO_DEVICE_SPACE Should never be a Warning?
NS_ERROR_FAILURE See bug 1712582
NS_ERROR_UNEXPECTED Unspecific?
Attachment #9224408 - Attachment is obsolete: true
Attached file qmstacks_until_1622505580053.txt (obsolete) —
Attachment #9224738 - Attachment is obsolete: true
Depends on: 1714963
Depends on: 1714967
Depends on: 1714971
Depends on: 1714972
Depends on: 1720080
Depends on: 1720082
Depends on: 1720083
Depends on: 1720085
Depends on: 1720087
Depends on: 1720663
Depends on: 1722267
Depends on: 1724874
Depends on: 1724875
No longer depends on: 1702600
Assignee: jstutte → jkrause
Depends on: 1730547
Depends on: 1732721
Depends on: 1734678
Depends on: 1735124
Depends on: 1735170
Depends on: 1746432
Depends on: 1746894
Depends on: 1748260
Depends on: 1748861
Depends on: 1755362
Depends on: 1757062
Depends on: 1759536
Depends on: 1760014
Attached file qmstacks_until_1647820601008.txt (obsolete) —

The rust-code-analysis-cli had to be run again because previously mostly unknown anchors were returned.

Attachment #9268662 - Attachment is obsolete: true
Depends on: 1769244
Depends on: 1770786
Depends on: 1770787
Pushed by jkrause@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/13c0b769cc03
Add `context` to Bugzilla comment markup. r=jstutte,dom-storage-reviewers
Status: NEW → RESOLVED
Closed: 4 months ago
Resolution: --- → FIXED
Target Milestone: --- → 103 Branch

The closure was not intended here, this is a perennial thing.

Status: RESOLVED → REOPENED
Keywords: leave-open
Resolution: FIXED → ---
Depends on: 1778506
Depends on: 1780048
You need to log in before you can comment on or make changes to this bug.