Commit Graph
127 Commits
Author SHA1 Message Date
velzie 673a67963e initial commit for wasm work 2026-06-15 19:20:19 -04:00
Daniel Holbert 9a9241a112 Bug 2038746: Use MakeRefPtr to do allocation for local RefPtr variables, in storage/. r=saschanaz
Differential Revision: https://phabricator.services.mozilla.com/D299790
2026-05-12 07:22:51 +00:00
Norisz Fay ed803af7c5 Revert "Bug 2038746: Use MakeRefPtr to do allocation for local RefPtr variables, in storage/. r=saschanaz" for causing bustage @ test_unlock_notify.cpp
This reverts commit 9de44784b9.
2026-05-11 23:36:10 +00:00
Daniel Holbert 9de44784b9 Bug 2038746: Use MakeRefPtr to do allocation for local RefPtr variables, in storage/. r=saschanaz
Differential Revision: https://phabricator.services.mozilla.com/D299790
2026-05-11 21:59:13 +00:00
Sylvestre Ledru 77f982c1ca Bug 2023419 - Remove Emacs/Vim modelines from storage/ r=emilio
replaced by .editorconfig
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D287870
2026-03-16 19:40:31 +00:00
Henri SivonenandAndré Bargull 10352a6874 Bug 1937541 - Migrate collation to ICU4X. r=supply-chain-reviewers,places-reviewers,dom-storage-reviewers,layout-reviewers,TYLin,jari,anba,m_kato,smaug
Co-authored-by: André Bargull <[email protected]>

Differential Revision: https://phabricator.services.mozilla.com/D251862
2026-03-10 22:05:37 +00:00
Silaghi 16270fc2e8 Revert "Bug 1937541 - Migrate collation to ICU4X. r=supply-chain-reviewers,places-reviewers,dom-storage-reviewers,layout-reviewers,TYLin,jari,anba,m_kato" for causing multiple mochitest-plain failures
This reverts commit 6cccabf457.
2026-03-10 14:33:17 +00:00
Henri SivonenandAndré Bargull 6cccabf457 Bug 1937541 - Migrate collation to ICU4X. r=supply-chain-reviewers,places-reviewers,dom-storage-reviewers,layout-reviewers,TYLin,jari,anba,m_kato
Co-authored-by: André Bargull <[email protected]>

Differential Revision: https://phabricator.services.mozilla.com/D251862
2026-03-10 13:15:27 +00:00
serge-sans-paille 1e9b33083e Bug 1993127 - Remove unused inclusion of Attributes.h r=emilio,extension-reviewers,application-update-reviewers,profiler-reviewers,win-reviewers,gstoll,bytesized,robwu,canaltinova
Differential Revision: https://phabricator.services.mozilla.com/D269718
2025-10-26 16:59:43 +00:00
serge-sans-paille 7662b3abdc Bug 1994397 - Remove obsolete Unused.h header r=emilio,tschuster,geckoview-reviewers,extension-reviewers,application-update-reviewers,media-playback-reviewers,webrtc-reviewers,cookie-reviewers,places-reviewers,profiler-reviewers,win-reviewers,dom-storage-reviewers,permissions-reviewers,profiles-reviewers,toolkit-telemetry-reviewers,firefox-style-system-reviewers,firefox-svg-reviewers,layout-reviewers,timhuang,gstoll,TravisLong,bytesized,mstange,karlt,robwu,pehrsons,m_kato,jari,jhirsch
It is replaced by a standard-conforming cast to (void) which is
understood the same by the compiler.

In some cases this could be replaced by `[[maybe_unused]]` but for
expression whose value is ignored, this requires storing to a temporary
variable first, so not going that way.

One notable change is that marking an object of type already_AddRefed as
unused used to implicitly leak memory. This is now made explicit.

Most of the heavy lifting was done through:

    $ git grep -l '\<Unused\> <<' | xargs sed -i -e 's/Unused << /(void)/g'
    $ git grep -l mozilla/Unused.h | xargs sed -i -e '/mozilla\/Unused.h/ d'

Differential Revision: https://phabricator.services.mozilla.com/D268706
2025-10-21 19:36:01 +00:00
Cristina Horotan 8a1b1970b7 Revert "Bug 1994397 - Remove obsolete Unused.h header r=emilio,tschuster,geckoview-reviewers,extension-reviewers,application-update-reviewers,media-playback-reviewers,webrtc-reviewers,cookie-reviewers,places-reviewers,profiler-reviewers,win-reviewers,dom-storage-reviewers,permissions-reviewers,profiles-reviewers,toolkit-telemetry-reviewers,firefox-style-system-reviewers,firefox-svg-reviewers,layout-reviewers,timhuang,gstoll,TravisLong,bytesized,mstange,karlt,robwu,pehrsons,m_kato,jari,jhirsch" for causing Gtest failures on AlreadyAddRefed.h
This reverts commit e98adca292.
2025-10-21 16:16:29 +00:00
serge-sans-paille e98adca292 Bug 1994397 - Remove obsolete Unused.h header r=emilio,tschuster,geckoview-reviewers,extension-reviewers,application-update-reviewers,media-playback-reviewers,webrtc-reviewers,cookie-reviewers,places-reviewers,profiler-reviewers,win-reviewers,dom-storage-reviewers,permissions-reviewers,profiles-reviewers,toolkit-telemetry-reviewers,firefox-style-system-reviewers,firefox-svg-reviewers,layout-reviewers,timhuang,gstoll,TravisLong,bytesized,mstange,karlt,robwu,pehrsons,m_kato,jari,jhirsch
It is replaced by a standard-conforming cast to (void) which is
understood the same by the compiler.

In some cases this could be replaced by `[[maybe_unused]]` but for
expression whose value is ignored, this requires storing to a temporary
variable first, so not going that way.

One notable change is that marking an object of type already_AddRefed as
unused used to implicitly leak memory. This is now made explicit.

Most of the heavy lifting was done through:

    $ git grep -l '\<Unused\> <<' | xargs sed -i -e 's/Unused << /(void)/g'
    $ git grep -l mozilla/Unused.h | xargs sed -i -e '/mozilla\/Unused.h/ d'

Differential Revision: https://phabricator.services.mozilla.com/D268706
2025-10-21 15:05:17 +00:00
Cristina Horotan aab924e90d Revert "Bug 1994397 - Remove obsolete Unused.h header r=emilio,tschuster,geckoview-reviewers,extension-reviewers,application-update-reviewers,media-playback-reviewers,webrtc-reviewers,cookie-reviewers,places-reviewers,profiler-reviewers,win-reviewers,dom-storage-reviewers,permissions-reviewers,profiles-reviewers,toolkit-telemetry-reviewers,firefox-style-system-reviewers,firefox-svg-reviewers,layout-reviewers,timhuang,gstoll,TravisLong,bytesized,mstange,karlt,robwu,pehrsons,m_kato,jari,jhirsch" for causing build bustage at nsBrowserApp.cpp
This reverts commit fd0ffa193c.
2025-10-21 10:44:13 +00:00
serge-sans-paille fd0ffa193c Bug 1994397 - Remove obsolete Unused.h header r=emilio,tschuster,geckoview-reviewers,extension-reviewers,application-update-reviewers,media-playback-reviewers,webrtc-reviewers,cookie-reviewers,places-reviewers,profiler-reviewers,win-reviewers,dom-storage-reviewers,permissions-reviewers,profiles-reviewers,toolkit-telemetry-reviewers,firefox-style-system-reviewers,firefox-svg-reviewers,layout-reviewers,timhuang,gstoll,TravisLong,bytesized,mstange,karlt,robwu,pehrsons,m_kato,jari,jhirsch
It is replaced by a standard-conforming cast to (void) which is
understood the same by the compiler.

In some cases this could be replaced by `[[maybe_unused]]` but for
expression whose value is ignored, this requires storing to a temporary
variable first, so not going that way.

One notable change is that marking an object of type already_AddRefed as
unused used to implicitly leak memory. This is now made explicit.

Most of the heavy lifting was done through:

    $ git grep -l '\<Unused\> <<' | xargs sed -i -e 's/Unused << /(void)/g'
    $ git grep -l mozilla/Unused.h | xargs sed -i -e '/mozilla\/Unused.h/ d'

Differential Revision: https://phabricator.services.mozilla.com/D268706
2025-10-21 09:44:11 +00:00
Narcis Beleuzu e1e6bbb1c9 Revert "Bug 1994397 - Remove obsolete Unused.h header r=emilio,tschuster,geckoview-reviewers,extension-reviewers,application-update-reviewers,media-playback-reviewers,webrtc-reviewers,cookie-reviewers,places-reviewers,profiler-reviewers,win-reviewers,dom-storage-reviewers,permissions-reviewers,profiles-reviewers,toolkit-telemetry-reviewers,firefox-style-system-reviewers,firefox-svg-reviewers,layout-reviewers,timhuang,gstoll,TravisLong,bytesized,mstange,karlt,robwu,pehrsons,m_kato,jari,jhirsch" for causing bustages on Document.cpp
This reverts commit b23c15e927.
2025-10-21 06:34:58 +00:00
serge-sans-paille b23c15e927 Bug 1994397 - Remove obsolete Unused.h header r=emilio,tschuster,geckoview-reviewers,extension-reviewers,application-update-reviewers,media-playback-reviewers,webrtc-reviewers,cookie-reviewers,places-reviewers,profiler-reviewers,win-reviewers,dom-storage-reviewers,permissions-reviewers,profiles-reviewers,toolkit-telemetry-reviewers,firefox-style-system-reviewers,firefox-svg-reviewers,layout-reviewers,timhuang,gstoll,TravisLong,bytesized,mstange,karlt,robwu,pehrsons,m_kato,jari,jhirsch
It is replaced by a standard-conforming cast to (void) which is
understood the same by the compiler.

In some cases this could be replaced by `[[maybe_unused]]` but for
expression whose value is ignored, this requires storing to a temporary
variable first, so not going that way.

One notable change is that marking an object of type already_AddRefed as
unused used to implicitly leak memory. This is now made explicit.

Most of the heavy lifting was done through:

    $ git grep -l '\<Unused\> <<' | xargs sed -i -e 's/Unused << /(void)/g'
    $ git grep -l mozilla/Unused.h | xargs sed -i -e '/mozilla\/Unused.h/ d'

Differential Revision: https://phabricator.services.mozilla.com/D268706
2025-10-21 06:01:36 +00:00
Niklas Baumgardner bdf028d4e2 Bug 1900093 - Add OPEN_NOT_EXCLUSIVE option for opening sqlite database. r=mak
Differential Revision: https://phabricator.services.mozilla.com/D212466
2024-06-12 00:17:58 +00:00
Gabriele Svelto e1e9346196 Bug 1831092 - Use the new pull-based API for all crash annotations and remove the global annotations table r=jgilbert,necko-reviewers,media-playback-reviewers,profiler-reviewers,win-reviewers,padenot,handyman,afranchuk,valentin,alwu,sotaro
This changes comes with several different refactorings all rolled into one,
unfotunately I couldn't find a way to pull them apart:
- First of all annotations now can either recorded (that is, we copy the value
  and have the crash reporting code own the copy) or registered. Several
  annotations are changed to use this functionality so that we don't need to
  update them as their value change.
- The code in the exception handler is modified to read the annotations from
  the mozannotation_client crate. This has the unfortunate side-effect that
  we need three different bits of code to serialize them: one for annotations
  read from a child process, one for reading annotations from the main process
  outside of the exception handler and one for reading annotations from the
  main process within the exception handler. As we move to fully
  out-of-process crash reporting the last two methods will go away.
- The mozannotation_client crate now doesn't record annotation types anymore.
  I realized as I was working on this that storing types at runtime has two
  issues: the first one is that buggy code might change the type of an
  annotation (that is record it under two different types at two different
  moments), the second issue is that types might become corrupt during a
  crash, so better enforce them at annotation-writing time. The end result is
  that the mozannotation_* crates now only store byte buffers, track the
  format the data is stored in (null-terminated string, fixed size buffer,
  etc...) but not the type of data each annotation is supposed to contain.
- Which brings us to the next change: concrete types for annotations are now
  enforced when they're written out. If an annotation doesn't match the
  expected type it's skipped. Storing an annotation with the wrong type will
  also trigger an assertion in debug builds.

Differential Revision: https://phabricator.services.mozilla.com/D195248
2024-03-04 10:24:43 +00:00
Mike Conley 37818b5cbf Bug 1869060 - Move old backupDatabaseFile utility out from mozIStorageService to a Places helper. r=mak,places-reviewers
This utility copies an SQLite database, but does so just by performing a file
copy on the database itself. It assumes that there are no open connections on
the underlying database file.

Given that this is only used by Places, and that a later patch in this stack
adds a database backup utility that works even if there are open connections,
means we can move this old utility out form the mozIStorageService and into
a dedicated Places helper instead.

Differential Revision: https://phabricator.services.mozilla.com/D198309
2024-01-22 14:26:52 +00:00
Sylvestre Ledru b0fe72dee5 Bug 1856795 - Remove redundant member init r=emilio
Done with:
./mach static-analysis check --checks="-*, readability-redundant-member-init" --fix .

https://clang.llvm.org/extra/clang-tidy/checks/readability/redundant-member-init.html

Differential Revision: https://phabricator.services.mozilla.com/D190002
2023-10-15 15:29:02 +00:00
Cristina Horotan 7388749830 Backed out 2 changesets (bug 1856795) for causing build bustage at BasicEvents.h CLOSED TREE
Backed out changeset 1d98b028923a (bug 1856795)
Backed out changeset eae2ac93e17c (bug 1856795)
2023-10-14 21:42:14 +03:00
Sylvestre Ledru 4a97019e39 Bug 1856795 - Remove redundant member init r=emilio
Done with:
./mach static-analysis check --checks="-*, readability-redundant-member-init" --fix .

https://clang.llvm.org/extra/clang-tidy/checks/readability/redundant-member-init.html

Differential Revision: https://phabricator.services.mozilla.com/D190002
2023-10-14 17:34:26 +00:00
hsingh 08ca90200e Bug 1843229: Created header files to declare external functions in BaseVFS.cpp, QuotaVFS.cpp and ObfuscatingVFS.cpp.r=janv,dom-storage-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D187992
2023-09-26 14:51:38 +00:00
Marco Bonardo b7b8ae15ad Bug 1638256 - Some casts and fixes in mozStorage to make clang-tidy happy. r=asuth
Differential Revision: https://phabricator.services.mozilla.com/D181551
2023-06-24 10:11:28 +00:00
Marco Bonardo a2c1ce84fc Bug 1638256 - Use mTelemetryFilename for the mozStorage thread name. r=asuth
Depends on D181037

Differential Revision: https://phabricator.services.mozilla.com/D181038
2023-06-24 10:11:28 +00:00
Marco Bonardo ced0eaadae Bug 1638256 - Initialize mTelemetryFilename in the Connection constructor. r=asuth
Differential Revision: https://phabricator.services.mozilla.com/D181037
2023-06-24 10:11:28 +00:00
Norisz Fay ccf5eb3195 Backed out 3 changesets (bug 1638256) for causing GTest failures CLOSED TREE
Backed out changeset 556614d4b90a (bug 1638256)
Backed out changeset dfd4d3679ccf (bug 1638256)
Backed out changeset 30c66c06f6ce (bug 1638256)
2023-06-21 22:41:40 +03:00
Marco Bonardo 40e5e8c2ab Bug 1638256 - Some casts and fixes in mozStorage to make clang-tidy happy. r=asuth
Differential Revision: https://phabricator.services.mozilla.com/D181551
2023-06-21 18:47:19 +00:00
Marco Bonardo cbe0c876ee Bug 1638256 - Use mTelemetryFilename for the mozStorage thread name. r=asuth
Depends on D181037

Differential Revision: https://phabricator.services.mozilla.com/D181038
2023-06-21 18:47:19 +00:00
Marco Bonardo 188a3547f9 Bug 1638256 - Initialize mTelemetryFilename in the Connection constructor. r=asuth
Differential Revision: https://phabricator.services.mozilla.com/D181037
2023-06-21 18:47:19 +00:00
Marco Bonardo 3fdbdaf4bb Bug 1065923 - Rename Storage TelemetryVFS to BaseVFS. r=janv
Differential Revision: https://phabricator.services.mozilla.com/D172015
2023-05-10 11:51:48 +00:00
Jan Varga 395a667fcf Bug 1819535 - Extract quota related stuff from TelemetryVFS into standalone QuotaVFS; r=dom-storage-reviewers,mak,asuth
Differential Revision: https://phabricator.services.mozilla.com/D171440
2023-03-07 14:27:07 +00:00
Iulian Moraru d206ae58cd Backed out changeset 80713e5124f3 (bug 1819535) for causing build bustages on mozStorageService.cpp. CLOSED TREE 2023-03-07 14:35:19 +02:00
Jan Varga 2bccae1b9a Bug 1819535 - Extract quota related stuff from TelemetryVFS into standalone QuotaVFS; r=dom-storage-reviewers,mak,asuth
Differential Revision: https://phabricator.services.mozilla.com/D171440
2023-03-07 10:47:07 +00:00
Marco Bonardo 9c0b37cc24 Bug 1801495 - Add a shim no-lock VFS that implements immutable behavior. r=asuth
When ignoreLockingMode option is used, we default to the unix-none or win32-none
VFS, and enforce the connection to be read-only, because it's trivial to
corrupt data using a no-lock VFS.
Unfortunately read-only mode doesn't allow to open a WAL database if the journal
files are missing, unless the device is marked as "immutable".
There is no SQLITE_OPEN_* flag for immutable, and adding one could easily be
misinterpreted since it only makes sense for read-only.

This implement a readonly-immutable-nolock VFS shim on top of unix-none or
win32-none that overrides device characteristics with immutable. When
ignoreLockingMode option is specified, we use this VFS. It can only be used on
read-only connections, as enforced both by Storage service and a MOZ_ASSERT.

Differential Revision: https://phabricator.services.mozilla.com/D162492
2022-11-29 20:35:23 +00:00
Jari Jalkanen e8d95373e8 Bug 1121282 - Allow use of thread pools for storage connections. r=asuth,dom-storage-reviewers,janv
Differential Revision: https://phabricator.services.mozilla.com/D157234
2022-09-21 15:02:14 +00:00
Jari Jalkanen 0416d333d7 Bug 1736844 - Add interrupt flag to storage service methods opening database; r=dom-storage-reviewers,mak,janv
Differential Revision: https://phabricator.services.mozilla.com/D129023
2022-02-17 06:22:27 +00:00
Marian-Vasile Laza 2521ad393d Backed out changeset 0ef0b43b28f1 (bug 1736844) for causing gtest failures. CLOSED TREE 2022-02-16 09:27:30 +02:00
Haiyang Xu 5199250fc0 Bug 1736844 - Add interrupt flag to storage service methods opening database; r=dom-storage-reviewers,mak,janv
* The same flags can be used to enable other features such as extented error codes

Differential Revision: https://phabricator.services.mozilla.com/D129023
2022-02-16 06:08:11 +00:00
Jens Stutte 5faff836e6 Bug 1731564: Use motivated SpinEventLoopUntil inside storage/*. r=janv
Depends on D127232

Differential Revision: https://phabricator.services.mozilla.com/D127233
2021-10-07 08:06:14 +00:00
Marian-Vasile Laza 7de6967c5a Backed out 18 changesets (bug 1731564) for causing build bustages on SpinEventLoopUntil. CLOSED TREE
Backed out changeset 0464dbdc8584 (bug 1731564)
Backed out changeset 0d996df13545 (bug 1731564)
Backed out changeset 5630a0e7a109 (bug 1731564)
Backed out changeset 37b41d187cdb (bug 1731564)
Backed out changeset d37700fa60b6 (bug 1731564)
Backed out changeset b0ce7db44b99 (bug 1731564)
Backed out changeset aa5ec3aa1535 (bug 1731564)
Backed out changeset 73b648f1fa70 (bug 1731564)
Backed out changeset bb8fb0f9833e (bug 1731564)
Backed out changeset 0d8905144f5d (bug 1731564)
Backed out changeset 2cfb094a1ec3 (bug 1731564)
Backed out changeset 78d3b0257a6a (bug 1731564)
Backed out changeset e9d32926e93c (bug 1731564)
Backed out changeset 874cab520ce5 (bug 1731564)
Backed out changeset d8071cc32bd9 (bug 1731564)
Backed out changeset 283c5393cbbc (bug 1731564)
Backed out changeset 317bc38e3de5 (bug 1731564)
Backed out changeset 53e3f4862439 (bug 1731564)
2021-10-07 00:09:19 +03:00
Jens Stutte 64ff26e167 Bug 1731564: Use motivated SpinEventLoopUntil inside storage/*. r=janv
Depends on D127232

Differential Revision: https://phabricator.services.mozilla.com/D127233
2021-10-06 19:45:16 +00:00
Greg Tatum 58c1c8f37f Bug 1719550 - Unify collator in mozStorageService and SQLCollations; r=platform-i18n-reviewers,nordzilla
Differential Revision: https://phabricator.services.mozilla.com/D121432
2021-08-10 16:01:18 +00:00
Greg Tatum ef55555f01 Bug 1719550 - Use mozilla::intl::Collator in the SpiderMonkey; r=anba,platform-i18n-reviewers,nordzilla
This patch attempts to directly wire the Intl.Collator implementation to the
mozilla::intl::Collator::Options bag. The only complexity that wasn't factored
out was the use of the locale keywords, which would invalidate the locale in
the current implementation.

Differential Revision: https://phabricator.services.mozilla.com/D120904
2021-08-10 16:01:15 +00:00
Narcis Beleuzu 58b02874e5 Backed out 12 changesets (bug 1719550) for bustages on TestCollator.cpp . CLOSED TREE
Backed out changeset 3b2735a29138 (bug 1719550)
Backed out changeset 5e2019335244 (bug 1719550)
Backed out changeset 105676dd2d6f (bug 1719550)
Backed out changeset b4b0d58778e9 (bug 1719550)
Backed out changeset 3ef5792020bb (bug 1719550)
Backed out changeset 389a77da6ddc (bug 1719550)
Backed out changeset 48f39b5ef77f (bug 1719550)
Backed out changeset bd125cc5b9b4 (bug 1719550)
Backed out changeset a8b778ca2375 (bug 1719550)
Backed out changeset b14702168fb9 (bug 1719550)
Backed out changeset 7b46b5cc7424 (bug 1719550)
Backed out changeset 6b04162618a1 (bug 1719550)
2021-08-10 17:46:34 +03:00
Greg Tatum 4f249cbb62 Bug 1719550 - Unify collator in mozStorageService and SQLCollations; r=platform-i18n-reviewers,nordzilla
Differential Revision: https://phabricator.services.mozilla.com/D121432
2021-08-10 11:46:37 +00:00
Greg Tatum 58af77a317 Bug 1719550 - Use mozilla::intl::Collator in the SpiderMonkey; r=anba,platform-i18n-reviewers,nordzilla
This patch attempts to directly wire the Intl.Collator implementation to the
mozilla::intl::Collator::Options bag. The only complexity that wasn't factored
out was the use of the locale keywords, which would invalidate the locale in
the current implementation.

Differential Revision: https://phabricator.services.mozilla.com/D120904
2021-08-10 11:46:35 +00:00
Simon Giesecke c83a083a0c Bug 1676365 - Move SpinEventLoopUntil to separate header. r=#xpcom-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D96556

Depends on D96554
2020-11-23 16:10:41 +00:00
Jan Varga f97c73d2b7 Bug 1676806 - Follow-up fix for bug 1676573; r=asuth,dom-workers-and-storage-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D96820
2020-11-12 22:01:32 +00:00
Jan Varga 63a46e6aeb Bug 1676573 - Add support for named in-memory databases; r=asuth,dom-workers-and-storage-reviewers
Naming in-memory databases also allows cloning which is the primary goal of
this patch.

Differential Revision: https://phabricator.services.mozilla.com/D96527
2020-11-11 07:26:41 +00:00