Clean up FileInfo/FileManager
Categories
(Core :: Storage: IndexedDB, task, P2)
Tracking
()
Tracking | Status | |
---|---|---|
firefox76 | --- | fixed |
People
(Reporter: sg, Assigned: sg)
References
(Blocks 1 open bug)
Details
Attachments
(38 files, 6 obsolete files)
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
Bug 1617170 - Encapsulate fields and reduce statefulness of DatabaseFile. r=#dom-workers-and-storage
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
Bug 1617170 - Make AsyncDeleteFile a member function of FileManager. r=#dom-workers-and-storage,janv
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review |
Code around FileInfo and FileManager is error-prone, including stateful and missing encapsulation. This should be cleaned up.
Assignee | ||
Comment 1•5 years ago
|
||
Depends on D63627
Assignee | ||
Comment 2•5 years ago
|
||
Depends on D63647
Assignee | ||
Comment 3•5 years ago
|
||
Depends on D63648
Assignee | ||
Comment 4•5 years ago
|
||
Depends on D63649
Assignee | ||
Comment 5•5 years ago
|
||
Depends on D63650
Assignee | ||
Comment 6•5 years ago
|
||
Depends on D63651
Assignee | ||
Comment 7•5 years ago
|
||
Depends on D63652
Assignee | ||
Comment 8•5 years ago
|
||
Depends on D63653
Assignee | ||
Comment 9•5 years ago
|
||
Depends on D63654
Assignee | ||
Comment 10•5 years ago
|
||
Depends on D63679
Assignee | ||
Comment 11•5 years ago
|
||
Depends on D63680
Assignee | ||
Comment 12•5 years ago
|
||
Depends on D63681
Updated•5 years ago
|
Updated•5 years ago
|
Assignee | ||
Comment 13•5 years ago
|
||
Depends on D63683
Assignee | ||
Comment 14•5 years ago
|
||
Depends on D64073
Assignee | ||
Comment 15•5 years ago
|
||
Depends on D64074
Assignee | ||
Comment 16•5 years ago
|
||
Depends on D64075
Assignee | ||
Comment 17•5 years ago
|
||
Depends on D64076
Assignee | ||
Comment 18•5 years ago
|
||
Depends on D64077
Assignee | ||
Comment 19•5 years ago
|
||
Depends on D64090
Assignee | ||
Comment 20•5 years ago
|
||
Depends on D64078
Assignee | ||
Comment 21•5 years ago
|
||
Depends on D64129
Assignee | ||
Updated•5 years ago
|
Comment 22•5 years ago
|
||
Assignee | ||
Comment 23•5 years ago
|
||
Depends on D64131
Assignee | ||
Comment 24•5 years ago
|
||
Depends on D64342
Assignee | ||
Comment 25•5 years ago
|
||
Depends on D64343
Assignee | ||
Comment 26•5 years ago
|
||
Depends on D64344
Assignee | ||
Comment 27•5 years ago
|
||
Depends on D64345
Assignee | ||
Comment 28•5 years ago
|
||
Depends on D64346
Assignee | ||
Comment 29•5 years ago
|
||
Depends on D64347
Assignee | ||
Comment 30•5 years ago
|
||
Depends on D64347
Comment 31•5 years ago
|
||
bugherder |
Updated•5 years ago
|
Comment 32•5 years ago
|
||
Comment 33•5 years ago
|
||
bugherder |
Comment 34•5 years ago
|
||
Comment 35•5 years ago
|
||
Backed out 6 changesets for causing bustages in build/src/dom/indexedDB
Backout link: https://hg.mozilla.org/integration/autoland/rev/bc7e351c2e9e5219567b5a0089b1aeb00c0047a2
Push with failures: https://treeherder.mozilla.org/#/jobs?repo=autoland&group_state=expanded&resultStatus=testfailed%2Cbusted%2Cexception&revision=c8931f8118a0812526de490e8008f9c8bee1d4d3
Failure log: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=291275894&repo=autoland&lineNumber=43201
[task 2020-03-02T15:39:21.488Z] 15:39:21 INFO - make[4]: Leaving directory '/builds/worker/workspace/build/src/obj-firefox/layout/ipc'
[task 2020-03-02T15:39:21.665Z] 15:39:21 INFO - make[4]: Entering directory '/builds/worker/workspace/build/src/obj-firefox/dom/indexedDB'
[task 2020-03-02T15:39:21.665Z] 15:39:21 INFO - /builds/worker/fetches/sccache/sccache /builds/worker/fetches/gcc/bin/g++ -std=gnu++17 -o ActorsParent.o -c -I/builds/worker/workspace/build/src/obj-firefox/dist/stl_wrappers -I/builds/worker/workspace/build/src/obj-firefox/dist/system_wrappers -include /builds/worker/workspace/build/src/config/gcc_hidden.h -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fstack-protector-strong -DDEBUG=1 -DOS_POSIX=1 -DOS_LINUX=1 -DMOZ_HAS_MOZGLUE -DMOZILLA_INTERNAL_API -DIMPL_LIBXUL -DSTATIC_EXPORTABLE_JS_API -I/builds/worker/workspace/build/src/dom/indexedDB -I/builds/worker/workspace/build/src/obj-firefox/dom/indexedDB -I/builds/worker/workspace/build/src/obj-firefox/ipc/ipdl/_ipdlheaders -I/builds/worker/workspace/build/src/ipc/chromium/src -I/builds/worker/workspace/build/src/ipc/glue -I/builds/worker/workspace/build/src/dom/base -I/builds/worker/workspace/build/src/dom/storage -I/builds/worker/workspace/build/src/ipc/glue -I/builds/worker/workspace/build/src/third_party/sqlite3/src -I/builds/worker/workspace/build/src/xpcom/build -I/builds/worker/workspace/build/src/obj-firefox/dist/include -I/builds/worker/workspace/build/src/obj-firefox/dist/include/nspr -I/builds/worker/workspace/build/src/obj-firefox/dist/include/nss -fPIC -DMOZILLA_CLIENT -include /builds/worker/workspace/build/src/obj-firefox/mozilla-config.h -Wall -Wempty-body -Wignored-qualifiers -Woverloaded-virtual -Wpointer-arith -Wsign-compare -Wtype-limits -Wunreachable-code -Wwrite-strings -Wno-invalid-offsetof -Wduplicated-cond -Wimplicit-fallthrough -Wunused-function -Wunused-variable -Wno-error=maybe-uninitialized -Wno-error=deprecated-declarations -Wno-error=array-bounds -Wno-error=coverage-mismatch -Wno-error=free-nonheap-object -Wformat -Wformat-overflow=2 -D_GLIBCXX_USE_CXX11_ABI=0 -fno-sized-deallocation -fno-aligned-new -fno-exceptions -fno-strict-aliasing -fno-rtti -ffunction-sections -fdata-sections -fno-exceptions -fno-math-errno -pthread -pipe -g -freorder-blocks -Os -fno-omit-frame-pointer -funwind-tables -Werror -Wno-error=shadow -MD -MP -MF .deps/ActorsParent.o.pp /builds/worker/workspace/build/src/dom/indexedDB/ActorsParent.cpp
[task 2020-03-02T15:39:21.666Z] 15:39:21 ERROR - /builds/worker/workspace/build/src/dom/indexedDB/ActorsParent.cpp:7568:58: error: declaration of 'const mozilla::dom::indexedDB::FileInfo& mozilla::dom::indexedDB::{anonymous}::ObjectStoreAddOrPutRequestOp::StoredFileInfo::FileInfo() const' [-fpermissive]
[task 2020-03-02T15:39:21.666Z] 15:39:21 INFO - const FileInfo& FileInfo() const { return **mFileInfo; }
[task 2020-03-02T15:39:21.666Z] 15:39:21 INFO - ^
[task 2020-03-02T15:39:21.666Z] 15:39:21 INFO - In file included from /builds/worker/workspace/build/src/dom/indexedDB/ActorsParent.cpp:13:0:
[task 2020-03-02T15:39:21.666Z] 15:39:21 ERROR - /builds/worker/workspace/build/src/dom/indexedDB/FileInfo.h:18:7: error: changes meaning of 'FileInfo' from 'class mozilla::dom::indexedDB::FileInfo' [-fpermissive]
[task 2020-03-02T15:39:21.666Z] 15:39:21 INFO - class FileInfo final {
[task 2020-03-02T15:39:21.666Z] 15:39:21 INFO - ^~~~~~~~
[task 2020-03-02T15:39:21.666Z] 15:39:21 INFO - /builds/worker/workspace/build/src/config/rules.mk:745: recipe for target 'ActorsParent.o' failed
[task 2020-03-02T15:39:21.666Z] 15:39:21 ERROR - make[4]: *** [ActorsParent.o] Error 1
[task 2020-03-02T15:39:21.666Z] 15:39:21 INFO - make[4]: Leaving directory '/builds/worker/workspace/build/src/obj-firefox/dom/indexedDB'
[task 2020-03-02T15:39:21.666Z] 15:39:21 INFO - make[4]: *** Waiting for unfinished jobs....
[task 2020-03-02T15:39:21.666Z] 15:39:21 INFO - make[4]: Entering directory '/builds/worker/workspace/build/src/obj-firefox/layout/ipc'
[task 2020-03-02T15:39:21.667Z] 15:39:21 INFO - layout/ipc/VsyncParent.o
Assignee | ||
Comment 36•5 years ago
|
||
Fixed gcc build bustage. clang doesn't complain about that, interestingly. However, there was another editing error also affecting clang builds. Re-landing now.
Comment 37•5 years ago
|
||
Comment 38•5 years ago
|
||
Backed out 6 changesets (bug 1617170) for causing crashes in indexedDB
https://hg.mozilla.org/integration/autoland/rev/4d15522e37262f5e3eccf19b954b602892f22cb1
push that caused the backout: https://treeherder.mozilla.org/#/jobs?repo=autoland&resultStatus=testfailed%2Cbusted%2Cexception%2Cretry%2Cusercancel%2Crunnable&revision=d748f4a50edaa48018f1de8d9b0c136ddd57a103&failure_classification_id=2
Comment 39•5 years ago
|
||
Assignee | ||
Comment 40•5 years ago
|
||
I thought I had tested that, but apparently I mixed something up. https://treeherder.mozilla.org/#/jobs?repo=try&revision=82babf55d739bf46a3a28eb358ff3991967fcf79 is now running, and if that's fine, I will re-land.
Assignee | ||
Comment 41•5 years ago
|
||
Depends on D64346
Assignee | ||
Comment 42•5 years ago
|
||
Depends on D65114
Comment 43•5 years ago
|
||
Assignee | ||
Comment 44•5 years ago
|
||
Depends on D64387
Comment 45•5 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/c1ed2f2fcdfb
https://hg.mozilla.org/mozilla-central/rev/41f56e8d0a03
https://hg.mozilla.org/mozilla-central/rev/7a83b0348c4a
https://hg.mozilla.org/mozilla-central/rev/448d9723a425
https://hg.mozilla.org/mozilla-central/rev/f8a89a7cf897
https://hg.mozilla.org/mozilla-central/rev/b16772537144
Assignee | ||
Comment 46•5 years ago
|
||
Assignee | ||
Comment 47•5 years ago
|
||
Depends on D65167
Assignee | ||
Comment 48•5 years ago
|
||
Depends on D65305
Assignee | ||
Comment 49•5 years ago
|
||
Depends on D65547
Assignee | ||
Comment 50•5 years ago
|
||
Depends on D65548
Assignee | ||
Comment 51•5 years ago
|
||
Depends on D65549
Assignee | ||
Comment 52•5 years ago
|
||
Depends on D65550
Comment 53•5 years ago
|
||
Updated•5 years ago
|
Assignee | ||
Comment 54•5 years ago
|
||
Depends on D65710
Comment 55•5 years ago
|
||
Comment 56•5 years ago
|
||
Backed out 5 changesets (Bug 1617170) for toolchains bustages CLOSED TREE
https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=291985061&repo=autoland&lineNumber=42359
Comment 57•5 years ago
|
||
Comment 58•5 years ago
|
||
Comment 59•5 years ago
|
||
Backed out for build bustages at nsTArray
Failure log: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=292003921&repo=autoland&lineNumber=42174
Backout: https://hg.mozilla.org/integration/autoland/rev/22c4b944eb92d862f4d83fff50efe599286a2e1a
Simon, this failed on base-toolchain build and there is also the Bx build.
https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=292003919&repo=autoland&lineNumber=47432
Comment 60•5 years ago
|
||
Assignee | ||
Comment 61•5 years ago
|
||
I worked around the gcc issue (and opened Bug 1620632 to fix the cause of that), and also fixed the issue on Windows builds. I hope the patches are finally good now :)
Comment 62•5 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/62cddf341d1e
https://hg.mozilla.org/mozilla-central/rev/163e89015b83
https://hg.mozilla.org/mozilla-central/rev/e701761075df
https://hg.mozilla.org/mozilla-central/rev/955f6482ff72
https://hg.mozilla.org/mozilla-central/rev/a74e47ef8215
https://hg.mozilla.org/mozilla-central/rev/1d24fc48bfde
https://hg.mozilla.org/mozilla-central/rev/9c1f7142cd12
https://hg.mozilla.org/mozilla-central/rev/466957b35672
https://hg.mozilla.org/mozilla-central/rev/9ac9c80edf1f
Assignee | ||
Comment 63•5 years ago
|
||
Depends on D65711
Comment 64•5 years ago
|
||
Comment 65•5 years ago
|
||
bugherder |
Comment 66•5 years ago
|
||
Assignee | ||
Comment 67•5 years ago
|
||
Depends on D64387
Assignee | ||
Comment 68•5 years ago
|
||
Depends on D65948
Comment 69•5 years ago
|
||
bugherder |
Assignee | ||
Comment 70•5 years ago
|
||
Based on a patch supplied by janv@mozilla.com
Comment 71•5 years ago
|
||
Comment 72•5 years ago
|
||
bugherder |
Comment 73•5 years ago
|
||
Comment on attachment 9131145 [details]
Bug 1617170 - Use SafeRefPtr for FullDatabaseMetadata. r=#dom-workers-and-storage
Revision D65548 was moved to bug 1623278. Setting attachment 9131145 [details] to obsolete.
Comment 74•5 years ago
|
||
Comment on attachment 9131146 [details]
Bug 1617170 - Use SafeRefPtr for FileManager. r=#dom-workers-and-storage
Revision D65549 was moved to bug 1623278. Setting attachment 9131146 [details] to obsolete.
Comment 75•5 years ago
|
||
Comment on attachment 9131147 [details]
Bug 1617170 - Use SafeRefPtr for FileInfo. r=#dom-workers-and-storage
Revision D65550 was moved to bug 1623278. Setting attachment 9131147 [details] to obsolete.
Comment 76•5 years ago
|
||
Comment on attachment 9131181 [details]
Bug 1617170 - Use SafeRefPtr for Database. r=#dom-workers-and-storage
Revision D65568 was moved to bug 1623278. Setting attachment 9131181 [details] to obsolete.
Comment 77•5 years ago
|
||
Comment on attachment 9131441 [details]
Bug 1617170 - Use SafeRefPtr for TransactionBase and its subclasses. r=#dom-workers-and-storage
Revision D65711 was moved to bug 1623278. Setting attachment 9131441 [details] to obsolete.
Comment 78•5 years ago
|
||
Comment on attachment 9133561 [details]
Bug 1617170 - Use SafeRefPtr for IDBFactory. r=#dom-workers-and-storage
Revision D66972 was moved to bug 1623278. Setting attachment 9133561 [details] to obsolete.
Comment 79•5 years ago
|
||
Comment 80•5 years ago
|
||
Assignee | ||
Comment 81•5 years ago
|
||
This is due to a bug in clang: https://bugs.llvm.org/show_bug.cgi?id=21629
Unfortunately, using double braces as a workaround prevents template argument deduction. This is the current version, which clang 5 does not accept:
static constexpr auto kDBOnlyFileInfoIds =
std::array{int64_t(10), int64_t(20), int64_t(30)};
This is no valid C++:
static constexpr auto kDBOnlyFileInfoIds =
std::array{{int64_t(10), int64_t(20), int64_t(30)}};
So I need to write:
static constexpr auto kDBOnlyFileInfoIds =
std::array<int64_t, 3>{{10, 20, 30}};
I hope that clang 5 accepts that.
Comment 82•5 years ago
|
||
For the https://bugzilla.mozilla.org/show_bug.cgi?id=1617170#c80 backout:
Backed out changeset 23b42017cf7d (bug 1617170) for build bustage at indexedDB/test/gtest/TestFileInfo.cpp
Backout: https://hg.mozilla.org/integration/autoland/rev/0d19968c99a723016cd2b1a4bade3c4a0aa869a7
Failure push: https://treeherder.mozilla.org/#/jobs?repo=autoland&revision=23b42017cf7d03e2b4f89ee76fb8d5a5b082d35b
Failure log: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=293651636&repo=autoland&lineNumber=28738
Comment 83•5 years ago
|
||
Updated•5 years ago
|
Comment 84•5 years ago
|
||
bugherder |
Comment 85•5 years ago
|
||
Comment 86•5 years ago
|
||
Backed out 10 changesets (Bug 1623278, Bug 1617170, Bug 1620273, Bug 1597954) for causing bustages.
Backout link: https://hg.mozilla.org/integration/autoland/rev/0e7e76826ace75277a1f892dc14358c675d1c911
Failure log: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=293829628&repo=autoland&lineNumber=45369
Assignee | ||
Updated•5 years ago
|
Comment 87•5 years ago
|
||
Comment 88•5 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/a880c8cc014e
https://hg.mozilla.org/mozilla-central/rev/bdbbe1018985
https://hg.mozilla.org/mozilla-central/rev/74465a508e6c
https://hg.mozilla.org/mozilla-central/rev/026c69cf6e3a
Description
•