Commit Graph

87 Commits

Author SHA1 Message Date
drh 633e6d57d9 Implement the "lookaside" memory allocation cache. Use of this cache makes
the speed1.test script run about 15% faster.  Added new interfaces to
control the cache. (CVS 5488)

FossilOrigin-Name: e48f9697e9fea339e150ddc32940760027dd07d9
2008-07-28 19:34:53 +00:00
drh 66cccd9b24 Add an SQLITE_OMIT_LOCALTIME around the "utc" modifier in date/time functions. (CVS 5483)
FossilOrigin-Name: 71486e93b274b7ca954314dd3e4146192a8b6d79
2008-07-25 16:39:24 +00:00
danielk1977 59f8c08ecc Implement the 'CONFIG_SINGLETHREAD' and 'CONFIG_MULTITHREAD' configuration modes. (CVS 5234)
FossilOrigin-Name: 5059644c4bc5f6679afd939e0bc26080f42a9918
2008-06-18 17:09:10 +00:00
drh e5ae5735c0 Continuing work on the new memory allocation subsystem.
Added routines for temporary memory allocation.  Right the btree
balance mechanism to only do one temporary allocation at a time. (CVS 5220)

FossilOrigin-Name: 65fe7b62cfe7d11cd667681a64c96fe7b2fe5685
2008-06-15 02:51:47 +00:00
drh 85f477a141 Convert the date/time functions to work with milliseconds since the
julian epoch internally (instead of days since the epoch) in order to avoid
problems with floating-point roundoff error.  The interface is unchanged. (CVS 5215)

FossilOrigin-Name: ed35f8a98323dadb64b423615287fb24ea262ffb
2008-06-12 16:35:38 +00:00
drh 3af5d685d7 Avoid unnecessary float->text->float conversions in date/time processing.
This change necessary to reproduce the problem reported by BareFoot. (CVS 5213)

FossilOrigin-Name: 6ec4d7653b1e67ba0951e909ee23fe774762d646
2008-06-12 13:50:00 +00:00
drh 66147c9715 Add the ability to disable the "localtime" modifier in the date/time
functions.  This might be necessary for systems that do not support
localtime_r() or localtime_s(). (CVS 5212)

FossilOrigin-Name: 12f3ba11e72b2310abf51d040d5344c81fe5ebd3
2008-06-12 12:51:37 +00:00
shane b8109ad375 Updated to use localtime_s() in Windows build environments that support it. Ticket #3126. (CVS 5164)
FossilOrigin-Name: 1518827e48bc3a259b6079a5a4b8dca47b265172
2008-05-27 19:49:21 +00:00
drh bb4957f858 Initial implementation of per-connection limits and the sqlite3_limit() API.
The sqllimits1.test script crashes.  SQLITE_LIMIT_PAGE_COUNT and
SQLITE_LIMIT_VDBE_OP are currently ignored. (CVS 4897)

FossilOrigin-Name: 60c77882b2de9f6a45f8bd87c9c6a0cc613f8373
2008-03-20 14:03:29 +00:00
drh fa4a4b9159 Add a new interface, sqlite3_context_db_handle(), that returns the database
connection pointer for an application-defined function. (CVS 4889)

FossilOrigin-Name: 54c55cae556af5a16c0ce8be1a96d2932db80ad8
2008-03-19 21:45:51 +00:00
drh 8257f0c1da Use the xCurrentTime method of the default VFS instead of stdlib time() to
get the current time when compiling with SQLITE_OMIT_DATETIME_FUNCS. (CVS 4887)

FossilOrigin-Name: 73fbac7cf7b61b23831f62b996fbdd358695b473
2008-03-19 20:18:27 +00:00
drh 1cfdc90b43 Accept "Z" as the zulu timezone at the end of date strings. (CVS 4805)
FossilOrigin-Name: 4c9a7b42b797f42f2b1e2e8d6a260044bd22ef2d
2008-02-21 20:40:43 +00:00
drh 008e476c28 Test coverage for date.c. (CVS 4722)
FossilOrigin-Name: a676f949b68c968d7e71aceb060c1639b42ba680
2008-01-17 22:27:53 +00:00
drh 3334e948cf Improved test coverage in date.c. Report an error if a malloc
fails within strftime(). (CVS 4721)

FossilOrigin-Name: 495fb41626dfbfbeeb748675b9476a4f7cec6c7a
2008-01-17 20:26:46 +00:00
danielk1977 4152e677b8 Fixes for compilation/testing when the various OMIT macros are defined. (CVS 4423)
FossilOrigin-Name: c8405b15c074c94dab5e33272cf1471f458d11df
2007-09-12 17:01:45 +00:00
drh 153c62c461 The win32 driver compiles but does not yet work well. Many bugs
fixed. (CVS 4282)

FossilOrigin-Name: 3a68fcddfa9184e4b310ce0a21312c54b9462ec8
2007-08-24 03:51:33 +00:00
drh b21c8cd4f6 The sqlite3_value object now carries an sqlite3* pointer to use for
recording malloc failures.  This eliminates the need to pass sqlite3*
pointers into many internal interfaces.  Also added more mutexing. (CVS 4263)

FossilOrigin-Name: 9287276191a582c1cf7cf6b71d8399727d8e534d
2007-08-21 19:33:56 +00:00
drh 29278e3dbb Remove unnecessary #includes of "os.h". New mutex implementations. (CVS 4255)
FossilOrigin-Name: fbbd5bda544ffec4e1b43407b12e546235dc7873
2007-08-21 10:44:15 +00:00
danielk1977 fee2d25a70 Further progress on migration to sqlite3_vfs. (CVS 4242)
FossilOrigin-Name: a258c4ec240f96bccfe493e98d0827ec7dd12e67
2007-08-18 10:59:19 +00:00
danielk1977 1e5369531e More work on refactoring of malloc() interfaces. There are still many errors. (CVS 4233)
FossilOrigin-Name: 77b1671351fe94b0ebc126a63140643deae2aa64
2007-08-16 10:09:01 +00:00
drh 174357527a Half-way through a major refactoring of the memory allocation.
I have not even attempted to compile so I am certain there are
countless errors. (CVS 4231)

FossilOrigin-Name: deb7ecd65f7b83eaf0ba610eeef3b0ede61db1c3
2007-08-16 04:30:38 +00:00
drh 37cd66a6a0 Remove a keyword from the header comment in date.c (CVS 3961)
FossilOrigin-Name: 03349ec0be208fd8701d94515a2ed13129cb8422
2007-05-08 21:56:00 +00:00
drh a0206bc81c Introduce the (experimental) sqlite3_result_error_toobig() API that
function implementations can use to signal SQLite that the function
result is too big to represent. (CVS 3949)

FossilOrigin-Name: 17c4235c492f746867c1d2b8621043b93f8aa10e
2007-05-08 15:15:02 +00:00
drh 5bb3eb9b9a Eliminate all uses of sprintf() and strcpy(). These were not being
misused.  But getting rid of them removes a library dependency.  And
it avoids warnings from the OpenBSD compiler.  Ticket #2336. (CVS 3916)

FossilOrigin-Name: ba4845b32bdf38e623c4f7246e6e327715bbba4b
2007-05-04 13:15:55 +00:00
drh 7a521cfb79 Fix segfaults that can occur if a malloc failure happens just before
a built-in function calls sqlite3_value_text(). (CVS 3874)

FossilOrigin-Name: 9cb0ed6ee9827bc6884a0195044d5b6ad0de698e
2007-04-25 18:23:52 +00:00
drh 05f7c19a6e Test coverage improvements. Over 90% of branches are now executed in
both directions. (CVS 3820)

FossilOrigin-Name: a776d93ccae3bfa6e992cdd1387571dd21561f98
2007-04-06 02:32:33 +00:00
drh 2ecad3b443 Make sure the strftime() date conversions put in leading zeros correctly.
Ticket #2276. (CVS 3749)

FossilOrigin-Name: e853067ec4db3eedfb4adcdd4172de2c55b9ac58
2007-03-29 17:57:21 +00:00
drh 622fa9a80e Fix another round-off problem in strftime(). Ticket #2153. (CVS 3574)
FossilOrigin-Name: d49ddc5ff05dd65e73edfa76db7e1af36967d81a
2007-01-08 16:19:07 +00:00
drh c2c9eef6b3 Fix a round-off error in the %W and %j conversions of the strftime() function.
Ticket #2150. (CVS 3570)

FossilOrigin-Name: 52067937803e6b36afc8f11c5d24059414208b77
2007-01-08 13:07:30 +00:00
drh 7f986a651e CVS malfunctioned on the previous check-in. Make sure the revision to
date.c was received.  Ticket #1991. (CVS 3444)

FossilOrigin-Name: 433dac1f2924d00282ef952668b21a9c023c93cb
2006-09-25 18:05:04 +00:00
drh b1f1e6ebd7 Fix a round-off problem in the %f conversion of strftime(). Ticket #1991. (CVS 3443)
FossilOrigin-Name: bf4608406a3246fe7a214cb31b79e51f86b7ee18
2006-09-25 18:01:31 +00:00
drh 8759576540 Add HAVE_GMTIME_R and HAVE_LOCALTIME_R flags and use them if defined.
Unable to modify the configure script to test for gmtime_r and
localtime_r, however, because on my SuSE 10.2 system, autoconf generates
a configure script that does not work.  Bummer.  Ticket #1906 (CVS 3397)

FossilOrigin-Name: 862302eaae7bdad6f1b6431f08439c4ce7e0e4bb
2006-09-08 12:49:43 +00:00
drh f11c34df74 Bug fix in date/time computations. Ticket #1964.
Some unrelated comment typos are also fixed and got accidently
checked in at the same time. (CVS 3396)

FossilOrigin-Name: c81eaa0dc9a327d222e066076c4a2da5e69d8c21
2006-09-08 12:27:36 +00:00
drh 15b9a15a8d Patches to support linux on embedded platforms. (CVS 3049)
FossilOrigin-Name: a088eb6d6eda70d89add1e5d95be5efda6c0de67
2006-01-31 20:49:13 +00:00
danielk1977 f011300000 Rename some variables to avoid hiding others. Also add "static" to two function signatures that were missing it. (CVS 3024)
FossilOrigin-Name: d86f18a4277ebffb644ba2e574e0b697c8bbf8e4
2006-01-24 12:09:17 +00:00
danielk1977 771151b67f Various fixes that allow the malloc() failure tests to pass again. (CVS 2963)
FossilOrigin-Name: 0505405fb9ae1068b7976718efbf2aabd07592d4
2006-01-17 13:21:40 +00:00
drh 029b44bdd3 Documentation updates. Fix to date.c. But most importantly: database
connections are now allowed to change threads as long as they are not
holding a lock. (CVS 2944)

FossilOrigin-Name: 03c422ecb508dd84dfafc8b7a0b790a43f5dadda
2006-01-15 00:13:15 +00:00
drh 24b010fad1 Terminate the va_start in the getDigits function of date.c. (CVS 2931)
FossilOrigin-Name: 94eac140f2363c7c3df68fa6f46728abfbfee1e6
2006-01-13 01:17:21 +00:00
drh 5739103e98 Fix timezone parsing in the date/time functions. Ticket #1587. (CVS 2891)
FossilOrigin-Name: 94c87b70161d4d44fbf1602fc2baae22dca08759
2006-01-09 00:18:02 +00:00
drh 66560adab3 Change the OS interface layer to use traditional direct function call
implementations instead of the more complicated virtual function table.
Omit the asynchronous I/O demo. (CVS 2870)

FossilOrigin-Name: 2529c2e11fa1d345ec61f647e4f6fae20a7133d6
2006-01-06 14:32:19 +00:00
drh 2646da7e52 Clean up annoying (and pointless) compiler warnings about differing signedness. (CVS 2810)
FossilOrigin-Name: 83a59151559d9496d4f546e03e65087ea974717d
2005-12-09 20:02:05 +00:00
drh 054889ec6d Restructure the OS interface yet again. This time make the OsFile object
a virtual base class which is subclassed for unix, windows, and the crash
test simulator.  Add the new file "os.c" for common os layer code.  Move
all OS-specific routines into the sqlite3Os structure. (CVS 2795)

FossilOrigin-Name: bd8740d1aecba69e1b5d64d43db07e8ad8841f07
2005-11-30 03:20:31 +00:00
drh 487e262f44 Remove the blob(), text() and numeric() functions added in (2524) and
replace them with the standard CAST operator.
Ticket #1287. (CVS 2527)

FossilOrigin-Name: 17631785f9ee8ab280c82677eb53886912e085bc
2005-06-25 18:42:14 +00:00
drh 4cb29b4cfc Allow the character "T" between date and time in ISO-8601 date/time formats.
Ticket #1170. (CVS 2408)

FossilOrigin-Name: 2bf88daa57b01216c7bbe67972f479ee12be1193
2005-03-21 00:43:44 +00:00
drh 018d1a4929 Test coverage improvements. (CVS 2215)
FossilOrigin-Name: 92f9d2b2f480fccfa6e8b70a1d19058b92a4ea8f
2005-01-15 01:52:31 +00:00
drh 6c62608fc6 The SQLITE_OMIT_UTF16 macro now removes lots of code and all tests still pass. (CVS 2100)
FossilOrigin-Name: 98c7a55478f7c465b219edc1a33eee222586fd65
2004-11-14 21:56:29 +00:00
danielk1977 2df9fabf3c Add documentation for DEFAULT CURRENT_TIME & co. (CVS 2088)
FossilOrigin-Name: c85f13f8f252faf423f12a3804f1fe2f950da660
2004-11-11 01:50:30 +00:00
danielk1977 e6efa74b9f Ensure tables cannot be created/dropped when btree cursors are open. (CVS 2085)
FossilOrigin-Name: 8e5c2e5df8b824f7efb27e776240f005c6f1f0ff
2004-11-10 11:55:10 +00:00
danielk1977 752e679a1e Have "DEFAULT CURRENT_TIME" & co. work even if SQLITE_OMIT_DATETIME_FUNCS is defined. (CVS 2083)
FossilOrigin-Name: f81b9c1c022772378aad32ec45d0027beeb36574
2004-11-09 16:13:33 +00:00
danielk1977 7977a17f06 Port the "DEFAULT CURRENT_TIME" etc. functionality from an earlier fork of sqlite. (CVS 2082)
FossilOrigin-Name: 0d27c8ff48f327ad82dd5b5b3b47b8d221f119b7
2004-11-09 12:44:37 +00:00