Commit Graph

217 Commits

Author SHA1 Message Date
drh 57a0227f8b Merge the MD5 checksum logic into the TCL interface. This facilitates building
a tclsh that contains both SQLite and MD5.  The plan is to use this
augmented tclsh to help build the documentation.

FossilOrigin-Name: a024c0a85b6f2288c455a7192f6ca7a8493b621a
2009-10-22 20:52:05 +00:00
dan 3be7d6eb75 Add fkey.c to the autoconf and amalgamation build systems.
FossilOrigin-Name: aab7a4b3c91e0a149f6499660892d09c17b010e3
2009-09-19 17:59:59 +00:00
dan 1da40a381f Check in implementation of foreign key constraints.
FossilOrigin-Name: d5d399811876391642937edeb9e8434dd9e356f5
2009-09-19 17:00:31 +00:00
dan cca2de4be7 Define SQLITE_TEST when compiling mem5.c for testfixture.
FossilOrigin-Name: 6b16f3c9073e44a2d720a396078f0d71bda66df1
2009-09-10 18:17:10 +00:00
shane 8e283794b6 Updates for test_init.c for configure and other consistency changes.
FossilOrigin-Name: 3ba316e9a32de406a4390fb3f52fccb48da4da30
2009-08-21 02:07:09 +00:00
dan e1ab219309 Add tests to check that sqlite recovers from an error in sqlite3_initialize() correctly.
FossilOrigin-Name: 904a371c6c9d3f20332b37767b06161fa0a78113
2009-08-17 15:16:19 +00:00
drh 47baebc2a6 Incorporate fossil-scm version information into the build. Add the
SQLITE_SOURCE_ID macro to the header.  Add the sqlite3_sourceid() interface.
Add the sqlite_source_id() SQL function.

FossilOrigin-Name: 302dabe98f50b472bccd65c58504bc8a330049c4
2009-08-14 16:01:24 +00:00
danielk1977 2d04deb21d Instead of adding SQLITE_API macros sqlite3.h while creating sqlite3.c, add them as part of generating the sqlite3.h target, while copying from sqlite.h.in to sqlite3.h. This fixes a build problem that was causing multiple SQLITE_API macros to be added to a single line of sqlite3.h, and the problem cited by #4016. (CVS 6971)
FossilOrigin-Name: 7f4810747b0864981f27edbd504bfab2efea1e3c
2009-08-11 05:50:36 +00:00
drh 53bc21b911 Add a version of the Lemon parser template "lempar.c" to the src/ subfolder.
This new parser template contains a couple of NEVER() macros that disable
tests that are needed for general grammars but not for the specific grammar
used by SQLite.  SQLite builds with the modified lempar.c. (CVS 6842)

FossilOrigin-Name: d426cc64f6014e2c2b9bcde0f5440396aec2fa18
2009-07-03 17:09:28 +00:00
drh 856c10375d Add the vdbe-compress.tcl script which automatically refactors the
sqlite3VdbeExec() routine to use less stack space.  Use this script
when constructing the amalgamation. (CVS 6704)

FossilOrigin-Name: 7f43391831b03e53d967acee6ae02089740aaedb
2009-06-02 15:21:42 +00:00
danielk1977 a3f065980e Move the asynchronous IO code from src/test_async.c to ext/async/. Refactor it to be a standalone module and to support windows. (CVS 6539)
FossilOrigin-Name: e71fb0fb8d83b4453c3c1e84606bf58d04926809
2009-04-23 14:58:39 +00:00
drh 1b26c7ccfa Remove the rowhash object from the code. Rowset now fills its role. (CVS 6535)
FossilOrigin-Name: e963bed0fe3ce5fa32f04b930e5ed0956dc2aa47
2009-04-22 02:15:47 +00:00
danielk1977 1d46146b58 Attempt to optimize virtual table queries with 'OR' expressions in the WHERE clause. (CVS 6527)
FossilOrigin-Name: f61e4cd93682fd98bea2a71d346f9eaa68454390
2009-04-21 09:02:45 +00:00
danielk1977 404ca07578 Add the sqlite3_unlock_notify() API. (CVS 6348)
FossilOrigin-Name: b649a6cc5bfefddd6a04b1183647d2923e0a0daa
2009-03-16 13:19:36 +00:00
danielk1977 0410302e58 Commit first version of the 'backup' feature. (CVS 6241)
FossilOrigin-Name: 663479b417fc06ba1790a544f28694f8797cee57
2009-02-03 16:51:24 +00:00
danielk1977 a0fc72967e Add a vfs backend that detects problems like the one addressed by (6043) and (6047). (CVS 6049)
FossilOrigin-Name: 49172e487610268662c39fc4038032779a41c47f
2008-12-20 18:33:59 +00:00
danielk1977 33e8903540 Modify fts3 to support a more complex expression syntax that allows parenthesis. The new syntax is not entirely backwards compatible, so is disabled by default. Use -DSQLITE_ENABLE_FTS3_PARENTHESIS to enable it. (CVS 6034)
FossilOrigin-Name: 7389b9ecb80294569845c40a23e0c832d07f7a45
2008-12-17 15:18:17 +00:00
drh 3d4501e573 Replace the VDBE Fifo object with the new RowSet object. (CVS 5977)
FossilOrigin-Name: 39a0750b49cf55e9c0927169ca47db909f5c16ea
2008-12-04 20:40:10 +00:00
drh b232c23297 Add an alternative application-defined pcache implementation and add test
cases to permutations.test to invoke it.  Added the SQLITE_CONFIG_GETPCACHE
method to sqlite3_config(). (CVS 5920)

FossilOrigin-Name: 16f1e6ec2ad92f68c0079a0c2b5ca08a3b4af816
2008-11-19 01:20:26 +00:00
danielk1977 bc2ca9eb39 Add an API to support custom page cache implementations. (CVS 5899)
FossilOrigin-Name: 47866d6708e9b69e367937fd85f93580fd025447
2008-11-13 14:28:28 +00:00
drh d1370b6d92 Remove the vestigial mem4 and mem6 memory allocators. Add the
SQLITE_ZERO_MALLOC compile-time option and the mem0.c module to
handle memory allocation for that case. (CVS 5848)

FossilOrigin-Name: 4651f590f0b8bf13938b2b15d5082136e763af8d
2008-10-28 18:58:20 +00:00
danielk1977 b3175389c7 Add "pragma journal_mode=memory". Change the way rollback works for in-memory databases so that it reuses the journal_mode=memory code. (CVS 5830)
FossilOrigin-Name: 39ebf01addf9d0867daafd06a38719e725128f9c
2008-10-17 18:51:52 +00:00
danielk1977 a0042db80f Update main.mk so that a couple of fts3 files are compiled with SQLITE_TEST when building testfixture. (CVS 5819)
FossilOrigin-Name: 8eb315ee5c2a15919171b7d495ac4f1c851b2da9
2008-10-14 14:56:01 +00:00
danielk1977 376687518e Modifications to main.mk so that -DSQLITE_ENABLE_FTS3 works. (CVS 5818)
FossilOrigin-Name: a06d226dee0df0df1aedb9c17353332c6a6e712f
2008-10-14 14:28:35 +00:00
drh 18472fa7b8 Remove the SQLITE_MUTEX_APPDEF compile-time option. The SQLITE_THREADSAFE=0
option always removes all mutex code.  For application-defined mutexes only,
use SQLITE_THREADSAFE=1 with SQLITE_MUTEX_NOOP=1.  Ticket #3421. (CVS 5779)

FossilOrigin-Name: 02a12eb1cfe9307c66556105a1a99d657cc01ab5
2008-10-07 15:25:48 +00:00
danielk1977 1c82665040 Add header file sqliteicu.h to the ICU extension. This is analogous to the rtree.h and fts3.h headers used by other extensions to declare their entry points. Fix for ticket #3361. (CVS 5680)
FossilOrigin-Name: 79364b963b348d5433da737b4e21e97952882389
2008-09-08 08:08:09 +00:00
danielk1977 075c23af26 Begin adding support for the SQLITE_OMIT_WSD macro. Some (many) WSD variables still need wrappers added to them. (CVS 5652)
FossilOrigin-Name: 573d92abb9adb1c321ebc2fcadcf14374213b093
2008-09-01 18:34:20 +00:00
drh 70a8ca3c1e Initialize the global built-in function table at start-time
instead of at compile-time.  This is less prone to malfunction when
compile-time parameters very. (CVS 5583)

FossilOrigin-Name: ef6936e50adb9ebea39c890167403fff01bbb5ed
2008-08-21 18:49:27 +00:00
drh 7d10d5a6e1 Refactor the name resolution procedures in the code generator. (CVS 5569)
FossilOrigin-Name: daf730d1defa78fb8b80a78f9108ac35a13e09f6
2008-08-20 16:35:10 +00:00
danielk1977 8c0a791a58 Add the pcache module from the experimental branch. Also change things so that most of the built-in SQL functions are kept in single static hash-table, rather than creating and populating a separate hash table for each open database connection. (CVS 5566)
FossilOrigin-Name: cb494e10d71852024647aaa254203579ad438ea9
2008-08-20 14:49:23 +00:00
danielk1977 0c8a5d0893 Make it easier to build with the icu extension enabled. Include icu.c in the amalgamation source. Ticket #3245. (CVS 5533)
FossilOrigin-Name: e42ff97ba7d9fcda699a63fc8bc609d559498180
2008-08-04 11:49:20 +00:00
danielk1977 2d34081de9 Add mem6.c, a new allocator. More to come. (CVS 5467)
FossilOrigin-Name: 192bc192185a7b475ef9331e2a4a0dc68083ec03
2008-07-24 08:20:40 +00:00
danielk1977 ff3c898d13 Change the makefiles so that "make test" now runs the veryquick.test script instead of quick.test. Also modify veryquick.test to reuse the code in quick.test. veryquick.test is now the same as quick.test except that it omits all testing related to malloc and IO error simulation. (CVS 5308)
FossilOrigin-Name: 8c65146ea0e77e8e31fffc467806b1edf91fb4db
2008-06-25 17:54:53 +00:00
danielk1977 b13dee9900 Run (a subset of) the rtree tests from quick.test. (CVS 5282)
FossilOrigin-Name: e872c78c72eb5976e72123485692a76409bd857f
2008-06-23 15:55:52 +00:00
drh f714199054 Add some test logic to the new memory allocation subsystem. (Lots more needed.)
The test suite is currently indicating memory leaks, though it is unclear if
this is a true code problem or just an instrumentation problem. (CVS 5240)

FossilOrigin-Name: cb1f11cd9764cf0275e88e1f6342e366e5536bfd
2008-06-19 00:16:08 +00:00
danielk1977 1a9ed0b27a Add some test infrastructure and cases for the new mutex api. (CVS 5230)
FossilOrigin-Name: 262baee9952b28afe5dc77eb7365ebb11a480906
2008-06-18 09:45:56 +00:00
drh 40257ffd0a Progress toward implementation of sqlite3_config() and a rework of the
mutex and memory allocation subsystems.  This is an incremental check-in. (CVS 5218)

FossilOrigin-Name: a03c5af115889f477e17187a198a7d2d40bc76bf
2008-06-13 18:24:27 +00:00
shane 9bcbdad298 Consolidated inline assembly versions of "hwtime()" into hwtime.h. Provided MSVC version. Modified code for consistent use of hwtime(). Changed implementation to use sqlite_uint64 and sqlite_int64 instead of unsigned long long int and long long int for MSVC compiler support. (CVS 5178)
FossilOrigin-Name: 9883b406ce24eae93942ee5e6aab33fb6b05329f
2008-05-29 20:22:37 +00:00
drh 58f1c8b773 Update the amalgamation builder to incorporate the RTREE extension. (CVS 5160)
FossilOrigin-Name: aa8eba3360c31182f5238e96b83a382374f40fab
2008-05-26 20:19:25 +00:00
danielk1977 ebaecc148f Import 'rtree' extension. (CVS 5159)
FossilOrigin-Name: b104dcd6adadbd3fe15a348fe9d4d290119e139e
2008-05-26 18:41:54 +00:00
mlcreech 1e12d43b48 Only look for config.h if the autoconf-based build is being used, and don't inline it into the amalgamation. (CVS 5093)
FossilOrigin-Name: 7df9ef2c8216133d50bf4737482f51193e8579b0
2008-05-07 02:42:01 +00:00
danielk1977 5d1f5aa6ef Add source file test_osinst.c. A wrapper vfs with instrumentation capabilities. (CVS 4977)
FossilOrigin-Name: d9a6b653d3cb608610f13d2492fe9b3887acb3b9
2008-04-10 14:51:00 +00:00
mlcreech 2379706c79 Make out-of-tree builds work as expected when using configure script (CVS 4893)
FossilOrigin-Name: e2d05ea3c3e4a11bc1c0cc4c4403a445b9c2b64d
2008-03-20 02:25:35 +00:00
drh 984bfaa4c7 Move SQL functions used for testing only out of func.c and into a new
test file named test_func.c.  Use sqlite3_auto_extension() to make sure
the test functions appear in every database connection. (CVS 4883)

FossilOrigin-Name: e90c4cc8a89838161f218739bc821126e247498c
2008-03-19 16:08:53 +00:00
mlcreech 98dc4b1aba Clean up recent autoconf-related additions, add config.h to the amalgamation (CVS 4833)
FossilOrigin-Name: 8044623062e9aa43593c46e3e5d5bc7361ea7418
2008-03-06 16:28:58 +00:00
mlcreech a9e852b667 Handle non-autoconf build correctly with new changes (CVS 4832)
FossilOrigin-Name: e2a9f5f1054f077e4773dd3d2c8f2ce5be118a01
2008-03-06 09:58:50 +00:00
drh f5e7bb513c Add the Bitvec object for tracking which pages have been journalled.
This reduces memory consumption and runs faster than the bitmap approach
it replaced. (CVS 4794)

FossilOrigin-Name: 7c57bdbcdb84d95419ec7029d2e13c593854a8d8
2008-02-18 14:47:33 +00:00
drh 0d18020b80 Add the experimental mem5.c memory allocator. Allocate the content part
of cache pages separately from the header.  (See check-ins (4495) and (4409)). (CVS 4789)

FossilOrigin-Name: 669ece8c82bfa69add852589dd1211751cb26fb2
2008-02-14 23:26:56 +00:00
drh 643167ff21 Add the fault injector module in fault.c. Use it as a basis for memory
allocation failure testing. (CVS 4742)

FossilOrigin-Name: 1a335e180183b414fcc3510ce28b98b21cd134a6
2008-01-22 21:30:53 +00:00
danielk1977 bf2609781b Move the test (sqlite3_simulate_device) functionality out of the main code and into a test vfs. (CVS 4737)
FossilOrigin-Name: 17e7bd6c3f507ffc6b56f54ae8c70730e8246f39
2008-01-22 11:50:13 +00:00