Commit Graph

27 Commits

Author SHA1 Message Date
Andrew Sutherland
ddd3c4327f Bug 507414 - Add a createAsyncStatement API on mozIStorageConnection. r=sdwilsh, sr=vlad.
--HG--
rename : storage/src/mozStorageStatementJSHelper.cpp => storage/src/mozStorageAsyncStatementJSHelper.cpp
rename : storage/src/mozStorageStatementJSHelper.h => storage/src/mozStorageAsyncStatementJSHelper.h
rename : storage/src/mozStorageStatementParams.cpp => storage/src/mozStorageAsyncStatementParams.cpp
rename : storage/src/mozStorageStatementParams.h => storage/src/mozStorageAsyncStatementParams.h
2010-03-24 00:32:40 -07:00
Shawn Wilsher
e7bf5fc1f2 Bug 496019 - mozilla::storage::Connection::Close can spin a nested event loop
Creates a new close method that must be used when using asynchronous statements,
and disallow Close from being called in that case.
r=asuth
sr=vlad
2009-11-09 09:58:34 -08:00
Shawn Wilsher
02575db216 Bug 494828 - Stop using our own mutexes and use SQLite's where possible.
Part 2: Use the helper object in a few places where we had our own mutexes.
r=asuth
2009-07-22 15:18:33 -07:00
Shawn Wilsher
9fc75352b9 Bug 525356 - windows debug unit tests: test_connection_executeAsync.js and test_statement_executeAsync.js failing frequently (fatal assertion)
Make sure to release the database connection on the thread it was opened on, not
the background thread!
r=asuth
a=beltzner
2009-12-02 10:53:46 -08:00
Shawn Wilsher
7dac22ddd2 Backed out changeset f91a016416d1 (bug 496019) 2009-12-01 15:05:52 -08:00
Shawn Wilsher
09b6e528f9 Bug 496019 - mozilla::storage::Connection::Close can spin a nested event loop
Creates a new close method that must be used when using asynchronous statements,
and disallow Close from being called in that case.
r=asuth
sr=vlad
a=dbaron

--HG--
extra : rebase_source : 8470e30ef4ca1e9fb516284cafb77b070e46fde3
2009-11-09 09:58:34 -08:00
Shawn Wilsher
116173a4b7 Backout of bug 496019 and bug 526601 due to window build bustage. 2009-11-09 12:16:39 -08:00
Shawn Wilsher
e6c35ff3f0 Bug 496019 - mozilla::storage::Connection::Close can spin a nested event loop
Creates a new close method that must be used when using asynchronous statements,
and disallow Close from being called in that case.
r=asuth
sr=vlad
2009-11-09 09:58:34 -08:00
Robert O'Callahan
6b41eca841 Backed out changeset 59a6c227df86 2009-10-02 15:23:36 +10:00
Shawn Wilsher
168578cfbc Bug 494828 - Stop using our own mutexes and use SQLite's where possible.
Part 2: Use the helper object in a few places where we had our own mutexes.
r=asuth

--HG--
extra : rebase_source : 3f2f703274df0405bc395191dec8f522e5aa4e40
2009-07-22 15:18:33 -07:00
Shawn Wilsher
3889b768e7 Bug 507674 - Safer protection of AsyncExecuteStatements::mState and AsyncExecuteStatements::mCancelRequested
This is essentially a backout of bug 506805, followed by changing the locking
protection rules to only protect mCancelRequested writing on the calling thread,
and reading on the background thread.

--HG--
extra : rebase_source : 249a61e40c2fd140527f034e36e8c1a53518baac
2009-09-02 13:30:24 -07:00
Shawn Wilsher
11b33f0ab8 Bug 506805 - Remove locking in AsyncExecuteStatements
This removes the use of the shared mutex in AsyncExecuteStatements.  We now rely
on PR_AtomicSet and the volatile keyword.  This results in zero lock contention
between the calling thread and the background thread if cancel is ever called.
r=asuth
r=bent
sr=vlad
2009-07-29 17:24:50 -07:00
Shawn Wilsher
5fcdac946b Backout of bug 494828 and bug 505550 due to orange. 2009-07-23 10:34:54 -07:00
Shawn Wilsher
5a66fb8a7c Bug 494828 - Stop using our own mutexes and use SQLite's where possible.
Part 2: Use the helper object in a few places where we had our own mutexes.
r=asuth
2009-07-22 15:18:33 -07:00
Drew Willcoxon
c57a0f0e22 Bug 499990 - Locale-aware collation, r=sdwilsh, sr=vladimir 2009-07-15 10:49:05 -07:00
Makoto Kato
87c3734112 Bug 499268 - storage code for Symbian emulator. r=sdwilsh 2009-06-29 14:42:56 +09:00
Shawn Wilsher
1ef152638f Bug 488148 - Share the mutex used by AsyncExecuteStatements on Connection
Greatly reduces the number of mutexes used when using the asynchronous storage
API.
r=bent
r=asuth
2009-06-17 12:12:43 -07:00
Shawn Wilsher
2c58e01641 Backed out changeset 0997bcc75daf (bug 488148). Silly me - this patch is wrong! 2009-06-19 12:21:44 -07:00
Shawn Wilsher
b85d50d660 Bug 488148 - Share the mutex used by AsyncExecuteStatements on Connection
Greatly reduces the number of mutexes used when using the asynchronous storage
API.
r=bent
r=asuth
2009-06-17 12:12:43 -07:00
Shawn Wilsher
c000eb400c Bug 488379 - Update mozStorageConnection.* to follow style guidelines
Consistent spacing, consistent naming, and namespaces - OH MY!
r=asuth
2009-04-17 17:19:31 -04:00
Alex Gartrell
57eed89aeb Bug 453781 - Merge TableExists and IndexExists, and replace nsCString with nsCAutoString
r=sdwilsh
2009-02-23 13:05:24 -05:00
Andrew Sutherland
c28b95be23 Bug 463988 - Gloda: mozStorageConnection holds lock while calling outside its module leading to PR_ASSERT(lock->owner != me) on shutting down while indexing is active. v1 add flag that indicates async thread is shutting down, don't call nsIThread::Shutdown with a lock held. r=sdwilsh. 2008-12-13 18:59:17 -08:00
Andrew Sutherland
6d099dfd18 Bug 460635 - There should be one async execution thread per mozStorageConnection connection; v1.2; r=(bugmail + sdwilsh) 2008-10-29 04:53:19 +01:00
Shawn Wilsher
24ac19f401 Make mozIStorageConnection threadsafe - bug 448476 r=robarnold 2008-08-12 17:50:25 -07:00
Arpad Borsos
3a10a9bcf4 Bug 434838 - mozStorageConnection uses nsDataHashtable when it should use nsInterfaceHashtable
This makes mozStorageConnection no longer manually AddRef and Release user
defined functions.
r=sdwilsh
r=bent
2008-07-08 18:38:25 -04:00
sdwilsh@shawnwilsher.com
fe3d828231 Bug 333848 - add full-featured user-defined functions and progress handlers to storage. Patch by Lev Serebryakov <blacklion@gmail.com>. r=sdwilsh 2007-07-07 14:14:51 -07:00
hg@mozilla.com
465265d0d4 Free the (distributed) Lizard! Automatic merge from CVS: Module mozilla: tag HG_REPO_INITIAL_IMPORT at 22 Mar 2007 10:30 PDT, 2007-03-22 10:30:00 -07:00