Commit Graph

273 Commits

Author SHA1 Message Date
Shawn Wilsher
3e8d79a831 Bug 506959 - AsyncExecuteStatements assumes ms, but calls functions that assume microseconds
This fixes the code to use functions that expect milliseconds instead of
microseconds, and updates to use the new TimeStamp and TimeDuration class.
r=asuth
2009-07-28 13:18:10 -07:00
Shawn Wilsher
ef61780206 Bug 506022 - Avoid obtaining the database mutex at all costs in Connection::ExecuteAsync
Stop calling any SQLite functions that would acquire the database mutex inside
Connection::ExecuteAsync.  Additionally, do not actually bind parameters when
the binding functions are called, but rather when we execute (so for async
statements, that will happen on the background thread creating no mutex
contention with the main thread).
r=asuth
2009-07-28 10:21:03 -07:00
Shawn Wilsher
cbf6d8a79c Merge places to mozilla-central. 2009-07-27 08:50:26 -07:00
Curtis Bartley
0ac9a4e2a5 Bug 498938 - Add Levenshtein Edit Distance function to Sqlite so we can use it in queries. r=sdwilsh sr=vlad 2009-07-24 11:39:34 -04:00
Shawn Wilsher
3b8c5a49ad Merge places to mozilla-central. 2009-07-23 13:10:26 -07:00
Shawn Wilsher
2b666b27ef Merge places to mozilla-central. 2009-07-23 07:58:59 -07:00
timeless@mozdev.org
015f42221e Bug 491196 don't implement static functions in headers
r=sdwilsh
Moving JSValStorageStatementBinder to mozStoragePrivateHelpers as bindJSValue

storage/src/mozStorageStatementParams.h: At global scope:
storage/src/mozStorageStatementParams.h:78: warning: ‘PRBool mozilla::storage::JSValStorageStatementBinder(JSContext*, mozIStorageStatement*, int, jsval)’ defined but not used
storage/src/mozStorageStatementParams.h:78: warning: ‘PRBool mozilla::storage::JSValStorageStatementBinder(JSContext*, mozIStorageStatement*, int, jsval)’ defined but not used

You get this once for each file that includes a header that defines a static function which is not used in that file.
2009-07-22 17:31:03 -05:00
Shawn Wilsher
b3404e8eeb Bug 505550 - Acquire the db's mutex when cloning statements in Connection::ExecuteAsync
Hold the lock around all our API calls so we don't lose so much to the
background thread.
r=asuth
2009-07-22 15:18:33 -07:00
Shawn Wilsher
a4d8d9f5d2 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
a1699525aa Bug 494828 - Stop using our own mutexes and use SQLite's where possible.
Part 1: Create helper objects to make using sqlite3_mutex safer and easier.
r=cjones

--HG--
rename : xpcom/tests/TestDeadlockDetector.cpp => storage/test/test_deadlock_detector.cpp
2009-07-22 15:18:33 -07:00
Shawn Wilsher
5cefb953b9 Backout of bug 494828 and bug 505550 due to orange. 2009-07-23 10:34:54 -07:00
Benjamin Smedberg
577adb3056 Fix bustage again from bug 494828 by linking against libxpcomglue_s like we were, but continue to link against libxpcom_core also. 2009-07-23 12:18:12 -04:00
Benjamin Smedberg
248219b23b Fix bustage from bug 494828 by linking against libxpcom_core.so for tracemalloc symbols. 2009-07-23 11:42:32 -04:00
Shawn Wilsher
dd6c28f49f Bug 505550 - Acquire the db's mutex when cloning statements in Connection::ExecuteAsync
Hold the lock around all our API calls so we don't lose so much to the
background thread.
r=asuth
2009-07-22 15:18:33 -07:00
Shawn Wilsher
d98ce2854a 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
4c6bbe05cc Bug 494828 - Stop using our own mutexes and use SQLite's where possible.
Part 1: Create helper objects to make using sqlite3_mutex safer and easier.
r=cjones
2009-07-22 15:18:33 -07:00
Shawn Wilsher
231a5ea0d6 Merge places to mozilla-central. 2009-07-19 18:21:55 -07:00
Shawn Wilsher
421808700f Bug 455555 - Use asynchronous queries for places AutoComplete.
This changes the location bar's AutoComplete provider to use asynchronous
queries instead of synchronous ones.  No more blocking the main thread FTW!
r=mak
r=Mardak
r=dietrich
2009-07-13 12:19:03 -07:00
Drew Willcoxon
1dbee03d3f Bug 499990 - Locale-aware collation, r=sdwilsh, sr=vladimir 2009-07-15 10:49:05 -07:00
Makoto Kato
bf1ad75653 Bug 499268 - storage code for Symbian emulator. r=sdwilsh 2009-06-29 14:42:56 +09:00
Shailen
f4f4bda576 Bug 497823. Fix compilation errors in Stroage on AIX. r=sdwilsh
--HG--
extra : rebase_source : 58bdecd2cec8b9a39be37514fa2465015addec42
2009-06-29 10:59:40 +12:00
Shawn Wilsher
3d3efc34e4 Bug 500750 - mDBConn is not set to NULL in release builds
r=asuth
2009-06-26 15:03:53 -07:00
Drew Willcoxon
3e203adfc2 Bug 490867 - Variant fixes: coerce null to empty string, GetIsNull should check correct type, variant base type should be void, r=sdwilsh
Adds a NullVariant derived class of Variant_base.
2009-06-24 15:04:49 -07:00
Shawn Wilsher
ac8e9eb3db Test for bug 488148. r=asuth 2009-06-24 10:10:52 -07:00
Shawn Wilsher
57170806b5 Bug 490085 - Add ability to bind multiple sets of parameters and execute asynchronously
Improves the asynchronous API by allowing multiple parameters to be bound before
executing it.  The statement is then executed with each set of parameters
asynchronously.
r=asuth
sr=vlad
2009-06-17 12:12:51 -07:00
Shawn Wilsher
71aaff31eb 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
f78be7c6b0 Backed out changeset 0997bcc75daf (bug 488148). Silly me - this patch is wrong! 2009-06-19 12:21:44 -07:00
Shawn Wilsher
2df095f854 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
9bebb41ad8 Bug 485107 - Do not throw in NewResolve
This changeset makes sure that we allow for properties to be defined on the
prototype chain for the JS language helpers in storage.
r=bent
2009-06-11 13:18:58 -07:00
Shawn Wilsher
d19b8e79ce imported patch storage.remove-statement-state-checks 2009-06-11 13:18:58 -07:00
Shawn Wilsher
9251159638 Bug 492139 - Expose the Variant publicly so consumers can also use it
Actually makes this usable to things outside of the storage module.
r=bsmedberg

--HG--
rename : storage/src/Variant.cpp => storage/src/Variant_inl.h
2009-06-11 13:18:58 -07:00
Benjamin Smedberg
7b03f6352e Follow-up to bug 488175 with correct capitalization of makefile variable. 2009-05-19 11:20:20 -04:00
Benjamin Smedberg
6df221580d Bug 488175 - flatten dist/include and provide mechanism to install certain headers in namespaced subdirectories (e.g. #include "mozilla/XPCOM.h") r=ted
--HG--
rename : xpcom/ds/nsTimeStamp.cpp => xpcom/ds/TimeStamp.cpp
rename : xpcom/ds/nsTimeStamp.h => xpcom/ds/TimeStamp.h
2009-05-18 14:15:05 -04:00
Shawn Wilsher
4078a2e8c5 Bug 489481 - Get C++ tests for our C++ helper classes
This gets rid of the old, unused native code test file for storage.  It adds two
more test files which test our C++ helper classes to ensure that they behave as
advertised.  Also fixes a bug found in mozStorageTransaction that was uncovered
while writing these tests.
r=asuth
2009-05-13 12:53:57 -04:00
Shawn Wilsher
aaaa6a101b Bug 490833 - mozIStorageStatement::getParameterIndex should only accept :-named parameters
This makes getParameterIndex only work properly with :-named parameters.  This
simplifies the work callers actually have to do.
r=asuth
2009-05-08 20:29:57 -04:00
Shawn Wilsher
64702a4623 Bug 492139 - Expose the Variant publicly so consumers can also use it
This exposes the templated nsIVariant implementation that storage uses
internally so that consumers can use it as well.
r=bsmedberg

--HG--
rename : storage/src/mozStorageVariant.cpp => storage/src/Variant.cpp
rename : storage/src/mozStorageVariant.h => storage/src/Variant.h
2009-05-12 17:08:49 -04:00
Shawn Wilsher
831a3e736d Backed out changeset b6f09258a505 (bug 490833). 2009-05-08 19:57:37 -07:00
Shawn Wilsher
7c59976c6e Bug 490833 - mozIStorageStatement::getParameterIndex should only accept :-named parameters
This makes getParameterIndex only work properly with :-named parameters.  This
simplifies the work callers actually have to do.
r=asuth
2009-05-08 20:29:57 -04:00
Shawn Wilsher
1d46153736 Bug 490084 - Add support for arrays in variantToSQLiteT
This adds support for blobs in variantToSQLiteT which means that functions can
no return blobs, as well as future consumers of variantToSQLiteT.
r=asuth
2009-05-08 20:29:57 -04:00
Shawn Wilsher
ec0d4b9cfb Bug 490083 - Refactor VariantToSQLite3Result to be more abstract
This refactors this refactors a method currently only used by the Connection
object to be more abstract so we can use it in future work.
r=asuth
2009-05-08 20:29:57 -04:00
Shawn Wilsher
6b6f66b054 Bug 489702 - Update mozStorageStatement.* to follow style guidelines
Consistent spacing, consistent naming, and namespaces - OH MY!
r=asuth
2009-05-08 20:29:56 -04:00
Shawn Wilsher
7d4bb15698 Bug 489661 - Update mozStorageStatementWrapper.* to follow style guidelines
Consistent spacing, consistent naming, and namespaces - OH MY!
r=asuth
2009-05-08 20:29:56 -04:00
Shawn Wilsher
3c5f686280 Bug 489624 - Update mozStorageRow.* to follow style guidelines
Consistent spacing, consistent naming, and namespaces - OH MY!
r=asuth
2009-05-08 20:29:56 -04:00
Shawn Wilsher
ee1fec8b27 Bug 489617 - Update mozStorageResultSet.* to follow style guidelines
Consistent spacing, consistent naming, and namespaces - OH MY!
r=asuth
2009-05-08 20:29:56 -04:00
Shawn Wilsher
574cbe4cf7 Bug 489612 - Update mozStoragePrivateHelpers.* to follow style guidelines
Consistent spacing, consistent naming, and namespaces - OH MY!
r=asuth
2009-05-08 20:29:56 -04:00
Shawn Wilsher
24adedb3e9 Bug 489603 - Update mozStorageError.* to follow style guidelines
Consistent spacing, consistent naming, and namespaces - OH MY!
r=asuth
2009-05-08 20:29:55 -04:00
Shawn Wilsher
bf7dd1c3fd Bug 489257 - Rename and update mozStorageEvents.* to mozStorageAsyncStatementExecution.*
Renames the files to be more representative to what they actually contain.  This
also updates the files to follow the storage style guidelines.
r=asuth

--HG--
rename : storage/src/mozStorageEvents.cpp => storage/src/mozStorageAsyncStatementExecution.cpp
rename : storage/src/mozStorageEvents.h => storage/src/mozStorageAsyncStatementExecution.h
2009-04-21 11:27:03 -04:00
Shawn Wilsher
2b997f4443 Bug 489030 - Rename mozStorageValueArray.* to mozStorageArgValueArray.*
Better reflects the contents of the file.  Also updated the file to follow the
storage style guidelines.
r=asuth

--HG--
rename : storage/src/mozStorageValueArray.cpp => storage/src/mozStorageArgValueArray.cpp
rename : storage/src/mozStorageValueArray.h => storage/src/mozStorageArgValueArray.h
2009-04-20 08:01:51 -07:00
Shawn Wilsher
e9ac1028cf Bug 489018 - Rename mozStorageUnicodeFunctions.* to mozStorageSQLFunctions.*
New filename better reflects current (and future) contents.  Also updates the
files to follow the storage style guidelines.
r=asuth

--HG--
rename : storage/src/mozStorageUnicodeFunctions.cpp => storage/src/mozStorageSQLFunctions.cpp
rename : storage/src/mozStorageUnicodeFunctions.h => storage/src/mozStorageSQLFunctions.h
2009-04-20 07:59:52 -07:00
Shawn Wilsher
a37a46bf09 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