Граф коммитов

10 Коммитов

Автор SHA1 Сообщение Дата
Lina Cambridge 9d9b081407 Bug 1588329 - Introduce `mozIStorageAsyncConnection::variableLimit`. r=mak
This is a wrapper around the `sqlite3_limit` interface that returns the
binding parameter limit. Adding this getter lets us clean up the inline
`SQLITE_MAX_VARIABLE_NUMBER` constants scattered around Places.

Differential Revision: https://phabricator.services.mozilla.com/D49071

--HG--
extra : moz-landing-system : lando
2019-10-15 21:22:57 +00:00
Boris Zbarsky f1f2d7ade1 Bug 1552547 part 1. Stop using [array] in mozIStorageAsyncConnection.executeAsync. r=mak
Differential Revision: https://phabricator.services.mozilla.com/D31658

--HG--
extra : moz-landing-system : lando
2019-05-20 16:17:51 +00:00
Lina Cambridge 3e894ac30e Bug 1482608 - Add basic Rust bindings for mozStorage. r=nika,asuth,mak
This commit wraps just enough of the mozStorage API to support the
bookmarks mirror. It's not complete: for example, there's no way
to open, clone, or close a connection, because the mirror handles
that from JS. The wrapper also omits shutdown blocking and retrying on
`SQLITE_BUSY`.

This commit also changes the behavior of sync and async mozStorage
connections. Async (`mozIStorageAsyncConnection`) methods may be called
from any thread on any connection. Sync (`mozIStorageConnection`)
methods may be called from any thread on a sync connection, and from
background threads on an async connection. All connections now QI
to `mozIStorageConnection`, but attempting to call a sync method on
an async connection from the main thread throws.

Finally, this commit exposes an `OpenedConnection::unsafeRawConnection`
getter in Sqlite.jsm, for JS code to access the underlying connection.

Differential Revision: https://phabricator.services.mozilla.com/D20073

--HG--
extra : moz-landing-system : lando
2019-03-25 04:49:18 +00:00
Kit Cambridge e4711b8178 Bug 1435446 - Add a default transaction type for storage connections. r=mak
This patch adds a `mozIStorageConnection::defaultTransactionType`
attribute that controls the default transaction behavior for the
connection. As before, `mozStorageTransaction` can override the default
behavior for individual transactions.

MozReview-Commit-ID: IRSlMesETWN

--HG--
extra : rebase_source : fc63af108bb246bc096cb9ef7c13b41fabba5563
2018-02-28 22:44:40 -08:00
Kit Cambridge 4dbde1745b Bug 1422383 - Clone temporary tables, views, and triggers when cloning a storage connection. r=mak
MozReview-Commit-ID: HwVMvvn7cui

--HG--
extra : rebase_source : 5acd3a9a3edbb0b1b844a76b7210d7b260762667
2017-11-30 19:21:10 -08:00
Marco Bonardo 7f569f98d9 Bug 1320301 - Add partial support to sqlite3_interrupt. r=asuth
MozReview-Commit-ID: V3ZjLEjqmT

--HG--
extra : rebase_source : 6f559b473c32dfcfb2bfe919c53199e202f7d636
2017-07-31 22:27:23 +02:00
Marco Bonardo 8d20cc6802 Bug 1355561 - Add a new API to spinningly close the database when strictly needed, and ensure Close() does what it's named after. r=asuth
Introduce a new SpinningSynchronousClose API that allows to synchronously close
a connection that executed asynchronous statements, by spinning the events loop.
This is expected to be used rarely in particular cases like database corruption.
It is currently [noscript] since the only consumer is cpp, in the future we can
evaluate removing that, if we find more uses for it.

MozReview-Commit-ID: 7SPqutoF9jJ

--HG--
extra : rebase_source : d053e308192f335dfdca089668e56115b068ff8c
2017-04-12 17:44:39 +02:00
Marco Bonardo 949197fdb7 Bug 1283083 - Cloning a connection should re-attach databases to the clone. r=asuth
MozReview-Commit-ID: CSZqvJNWthB

--HG--
extra : rebase_source : 9213a9e73052e7d87cf12c64af2ad1a15496ace1
2016-06-29 17:33:15 +02:00
Andrew Sutherland debfaf45f7 Bug 1237601 - Perform storage close synchronously if async thread cannot be started. r=bkelly
Also factors asyncClose tests out into their own file.
2016-01-07 11:18:00 -05:00
Birunthan Mohanathas 11f2166660 Bug 1164717 - Flatten storage/public/ directory. r=mak
--HG--
rename : storage/public/StatementCache.h => storage/StatementCache.h
rename : storage/public/mozIStorageAggregateFunction.idl => storage/mozIStorageAggregateFunction.idl
rename : storage/public/mozIStorageAsyncConnection.idl => storage/mozIStorageAsyncConnection.idl
rename : storage/public/mozIStorageAsyncStatement.idl => storage/mozIStorageAsyncStatement.idl
rename : storage/public/mozIStorageBaseStatement.idl => storage/mozIStorageBaseStatement.idl
rename : storage/public/mozIStorageBindingParams.idl => storage/mozIStorageBindingParams.idl
rename : storage/public/mozIStorageBindingParamsArray.idl => storage/mozIStorageBindingParamsArray.idl
rename : storage/public/mozIStorageCompletionCallback.idl => storage/mozIStorageCompletionCallback.idl
rename : storage/public/mozIStorageConnection.idl => storage/mozIStorageConnection.idl
rename : storage/public/mozIStorageError.idl => storage/mozIStorageError.idl
rename : storage/public/mozIStorageFunction.idl => storage/mozIStorageFunction.idl
rename : storage/public/mozIStoragePendingStatement.idl => storage/mozIStoragePendingStatement.idl
rename : storage/public/mozIStorageProgressHandler.idl => storage/mozIStorageProgressHandler.idl
rename : storage/public/mozIStorageResultSet.idl => storage/mozIStorageResultSet.idl
rename : storage/public/mozIStorageRow.idl => storage/mozIStorageRow.idl
rename : storage/public/mozIStorageService.idl => storage/mozIStorageService.idl
rename : storage/public/mozIStorageStatement.idl => storage/mozIStorageStatement.idl
rename : storage/public/mozIStorageStatementCallback.idl => storage/mozIStorageStatementCallback.idl
rename : storage/public/mozIStorageStatementParams.idl => storage/mozIStorageStatementParams.idl
rename : storage/public/mozIStorageStatementRow.idl => storage/mozIStorageStatementRow.idl
rename : storage/public/mozIStorageVacuumParticipant.idl => storage/mozIStorageVacuumParticipant.idl
rename : storage/public/mozIStorageValueArray.idl => storage/mozIStorageValueArray.idl
rename : storage/public/mozStorageHelper.h => storage/mozStorageHelper.h
rename : storage/public/storage.h => storage/storage.h
2015-05-19 10:47:29 -07:00