SQLite

Timeline
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

100 descendants of 24e769972eb6052b

2008-04-10
16:01
Give file scope to the sqlite3Apis constant. Ticket #3024. (CVS 4980) (check-in: 30c5086068 user: drh tags: trunk)
15:12
Verify that a RAISE(ROLLBACK,...) works like RAISE(FAIL,...) when not inside a transaction. Ticket #3035. (CVS 4979) (check-in: 87dc82d043 user: drh tags: trunk)
14:57
Make sure all memory allocations are 8-byte aligned. Ticket #3040. Note that the mem3.c memory allocator returns 4-byte aligned memory allocations. But as mem3.c is intended for use in 32-bit embedded systems, we are not going to change that. (CVS 4978) (check-in: d11e8e307a user: drh tags: trunk)
14:51
Add source file test_osinst.c. A wrapper vfs with instrumentation capabilities. (CVS 4977) (check-in: d9a6b653d3 user: danielk1977 tags: trunk)
14:00
Make sure changes to virtual tables are counted the same as real tables. Ticket #3038. (CVS 4976) (check-in: 55591fc49c user: drh tags: trunk)
13:42
Fix to the "copy" method in the TCL interface. Ticket #3039. (CVS 4975) (check-in: 6f07968ec4 user: drh tags: trunk)
13:38
Document the fast that the result flag combinations to sqlite3_open_v2() that are not defined in the documentation results in undefined behavior. Ticket #3037. (CVS 4974) (check-in: b390e1f7f8 user: drh tags: trunk)
13:33
First cut at optimizing single-row updates to use a one-pass algorithm. (CVS 4973) (check-in: fba97f7874 user: drh tags: trunk)
13:32
Add three new test cases to speed4p.test. Two of the three do single-row updates based on rowid and on primary key. (CVS 4972) (check-in: a2da7f9ac2 user: drh tags: trunk)
13:20
Fix a bug in the speed4p.test performance testing script. (CVS 4971) (check-in: 8031159414 user: drh tags: trunk)
2008-04-08
03:09
Replace always-true condition with assertion (CVS 4970) (check-in: be7f3240c2 user: mlcreech tags: trunk)
03:07
Add test case for empty VFS list (CVS 4969) (check-in: 6797814ec5 user: mlcreech tags: trunk)
2008-04-05
18:41
Add the sqlite3PutVarint32 routine as an alternative to sqlite3PutVarint. Gives 0.5% speed increase. (CVS 4968) (check-in: b2517a7d8f user: drh tags: trunk)
2008-04-04
15:12
Smaller and hopefully faster routine for converting blob literals into binary. (CVS 4967) (check-in: 92d49499ee user: drh tags: trunk)
12:21
Fix the output labels on the tests in malloc9. (CVS 4966) (check-in: 9987a7b193 user: drh tags: trunk)
12:21
Fix the TCL interface so that it does not use unpublished interfaces. (CVS 4965) (check-in: 046a98a8c8 user: drh tags: trunk)
2008-04-03
21:46
Remove superfluous code from btree.c. (CVS 4964) (check-in: 4017301070 user: drh tags: trunk)
21:42
Make sure the zTail return from sqlite3_prepare() is initialized even if there is a malloc failure. (CVS 4963) (check-in: 040cffe272 user: drh tags: trunk)
20:09
Fix to the previous check-in so that it works on a intel Mac. (CVS 4962) (check-in: 1d67f41c88 user: drh tags: trunk)
19:40
Use an improved RDTSC access routine. (CVS 4961) (check-in: b4eba9c533 user: drh tags: trunk)
17:57
Changes speedtest8 and speedtest16 so that the database file can be specified on the command-line. Allows speed testing against a :memory: database. (CVS 4960) (check-in: 64badc5053 user: drh tags: trunk)
16:28
Instead of calling sqlite3_exec() to evaluate "PRAGMA encoding = UTF16" in sqlite3_open16(), set the connection encoding flag directly. (CVS 4959) (check-in: 33a12e737c user: danielk1977 tags: trunk)
16:01
Add the speedtest8.c and speedtest16.c files to the tools subdirectory. (CVS 4958) (check-in: b8d211a76f user: drh tags: trunk)
14:36
Avoid an out-of-bounds read in sqlite3_prepare() and fix a case where the output variable *pzTail was being set incorrectly. Fix for #3027. (CVS 4957) (check-in: c287a7b294 user: danielk1977 tags: trunk)
10:13
Change the allocator in mem2.c (used when SQLITE_MEMDEBUG is defined) so that allocations are not rounded up to the nearest 4 byte boundary. Fix a couple of errors in malloc.test related to sqlite3OsAccess() returning -1. (CVS 4956) (check-in: fd97f8762c user: danielk1977 tags: trunk)
2008-04-02
18:33
Minor optimizations. (CVS 4955) (check-in: e852945580 user: drh tags: trunk)
16:29
Simplifications to the LockTable opcode. (CVS 4954) (check-in: 66c5d715bb user: drh tags: trunk)
04:23
Set flags = MEM_Null on allocation failure in sqlite3VdbeMemGrow (CVS 4953) (check-in: 846f9739d3 user: mlcreech tags: trunk)
2008-04-01
18:04
Avoid factoring single-instruction constants that end up getting replaced by an SCopy instruction. (CVS 4952) (check-in: e84ff57b62 user: drh tags: trunk)
15:06
Add the testcase() macro. Additional CSE test coverage. (CVS 4951) (check-in: 492490f9c8 user: drh tags: trunk)
12:24
Fix a problem with CASTs and the new CSE mechanism. (CVS 4950) (check-in: e25939fb25 user: drh tags: trunk)
05:07
Fix the CSE mechanism so that it takes into account column affinity changes that might be imposed by comparison operators. (CVS 4949) (check-in: 91cc646e2b user: drh tags: trunk)
03:27
More test cases and bug fixes with CSE. (CVS 4948) (check-in: 7e8156129d user: drh tags: trunk)
02:45
Add a configure option for using gcov (makes things easier for versions of GCC that fail to build otherwise) (CVS 4947) (check-in: 7d1e797162 user: mlcreech tags: trunk)
01:42
Initial test cases and bug fixes in the CSE logic. (CVS 4946) (check-in: e5aff09ac6 user: drh tags: trunk)
00:36
Break up the implementation of OP_Move, OP_Copy, and OP_SCopy to reduce the number of branch instructions. (CVS 4945) (check-in: 53e533d3a7 user: drh tags: trunk)
2008-03-31
23:51
Add the veryquick.test script for a very fast overview test that omits all i/o and malloc testing. (CVS 4944) (check-in: f61df8daa8 user: drh tags: trunk)
23:48
Avoid duplicate OP_Column opcodes by remembering prior results. This is similar to CSE, but only applies to columns. (CVS 4943) (check-in: c29ee0fed2 user: drh tags: trunk)
18:19
Factor constant subexpressions out of loops. (CVS 4942) (check-in: 2126db3985 user: drh tags: trunk)
17:41
In setQuotedToken(), only make a malloced copy if the argument contains one or more " characters. (CVS 4941) (check-in: b266924b89 user: danielk1977 tags: trunk)
2008-03-29
23:25
Minor cleanup: Use size_t for struct size cast (CVS 4940) (check-in: 618df68b8b user: mlcreech tags: trunk)
17:26
Set exclusive locking mode by default on the speed4p test. (CVS 4939) (check-in: 2d9fea9533 user: drh tags: trunk)
16:01
Make the sqlite3BtreeMoveto routine a no-op if the cursor is already pointing at the cell we are trying to move to. (CVS 4938) (check-in: 9b567ab61e user: drh tags: trunk)
12:50
add two missing initializer values (CVS 4937) (check-in: bf28f1c260 user: rse tags: trunk)
12:47
eliminate compile-time warnings related to missing field initializations (CVS 4936) (check-in: d6a34d983e user: rse tags: trunk)
12:39
add three missing initializers (CVS 4935) (check-in: f45f0593cf user: rse tags: trunk)
11:00
Add the --pause option to the main test driver. (CVS 4934) (check-in: 37dfcdf529 user: drh tags: trunk)
2008-03-28
19:16
Fix a problem with min() and descending indexes. (CVS 4933) (check-in: 39705b617a user: danielk1977 tags: trunk)
19:16
Fix a memory leak that can occur when the library API is misused. (CVS 4932) (check-in: 2b6d3e015e user: danielk1977 tags: trunk)
19:15
Do not incorrectly report a malloc() failure when allocating 0 bytes. Fixes a problem in bind.test. (CVS 4931) (check-in: b99d19d651 user: danielk1977 tags: trunk)
18:11
Fix for #3022. Handle queries like "SELECT min(b) FROM T WHERE a = X AND b > X" when there is an index on (a,b). (CVS 4930) (check-in: bce2897535 user: danielk1977 tags: trunk)
17:41
Change the pager's sector size algorithm to the maximum of the size reported by xSectorSize() from the VFS and 512. It was using the maximum of xSectorSize() and the current page size, but that was adding an extra 512 bytes to the size of the journal file in the common case. (CVS 4929) (check-in: 17ea0c97a8 user: drh tags: trunk)
15:44
Changes to the Mem structure to reduce the frequency of freeing and reallocating the dynamic buffer. (CVS 4928) (check-in: d0bf73d814 user: danielk1977 tags: trunk)
12:53
Patch to the new memory tracing logic that allows it to build even if memory debugging is turned off. (CVS 4927) (check-in: 0a9c63b227 user: drh tags: trunk)
07:42
If memory is leaked when running a test script with the --malloctrace option, write out a file called leaks.sql in the same format as mallocs.sql containing th e leaked applications. The same tools can then be used to examine the stack traces associated with leaked allocations. (CVS 4926) (check-in: f1b97ed931 user: danielk1977 tags: trunk)
2008-03-27
22:42
Allow the xAccess method in the VFS to return -1 to signal an I/O error, and in particular an SQLITE_IOERR_NOMEM. (CVS 4925) (check-in: 3cb704c4c4 user: drh tags: trunk)
17:59
Allow creation of ephemeral pseudo-tables - pseudo-tables that copy a pointer to a row when inserted instead of copying the row data. (CVS 4924) (check-in: 1a58a87023 user: danielk1977 tags: trunk)
15:07
Added the speed4p.test script for testing performance of views and triggers. (CVS 4923) (check-in: adf7645f9a user: drh tags: trunk)
2008-03-26
18:34
Changes to delay freeing buffers associated with vdbe memory cells until either sqlite3_finalize() or sqlite3_release_memory() is called. (CVS 4922) (check-in: 8c2f69521f user: danielk1977 tags: trunk)
17:18
Work around problems with compilers that do not allow C preprocessor macros with empty arguments. (CVS 4921) (check-in: afe1963ec5 user: drh tags: trunk)
15:56
Change comment in sqliteLimit.h to correctly describe the SQLITE_MAX_ATTACHED #define. Ticket #3016. (CVS 4920) (check-in: d016d07840 user: drh tags: trunk)
14:56
Make sure ON clause terms of a LEFT JOIN are not used with an index on the right table of the join. Ticket #3015. (CVS 4919) (check-in: 3fafa56259 user: drh tags: trunk)
12:50
Comment change on the previous check-in. No changes to code. (CVS 4918) (check-in: 72ae456239 user: drh tags: trunk)
12:46
Make sure an imbalance in the number of columns on a compound SELECT is detected and reported as an error before it can cause an assertion fault or array-bounds overflow in the code generator. Oops: part of the fix for ticket #3015 got included with this check-in by mistake. (CVS 4917) (check-in: 50de87dc80 user: drh tags: trunk)
2008-03-25
17:23
Modify the {quote: IdxDelete} opcode so that it takes an array of registers rather than a record formed using {quote: MakeRecord.} This avoids a needless packing and unpacking of the record to be deleted. (CVS 4916) (check-in: ee381b4356 user: drh tags: trunk)
16:16
Test string values passed to bind_text() and result_text() for a nul-terminator. (CVS 4915) (check-in: 24c3ebc0c5 user: danielk1977 tags: trunk)
14:24
Have each {quote: BtShared} structure hang on to a buffer of just under page-size bytes for temporary use. This reduces the number of calls to malloc(). (CVS 4914) (check-in: fe1bc0f3b7 user: danielk1977 tags: trunk)
09:56
Fix for memory leak in malloc3.test. (CVS 4913) (check-in: ef0e40e814 user: danielk1977 tags: trunk)
09:47
Use a vdbe memory cell to allocate the space required for vdbe cursors. (CVS 4912) (check-in: 0471536481 user: danielk1977 tags: trunk)
00:22
Removed the direct btree tests - part of the ongoing effort to test by calling only public interfaces. Modify the sqlite3VdbeRecordCompare interface to used a pre-parsed second key - resulting in a 13% performance improvement on speed1p.test. (CVS 4911) (check-in: 0e1d84f2f4 user: drh tags: trunk)
2008-03-24
12:51
Improved documentation of sqlite3_blob_open(). (CVS 4910) (check-in: 1ed695f560 user: drh tags: trunk)
2008-03-23
00:20
Remove redundant tests from the reparenter in the btree module. (CVS 4909) (check-in: a807e7184b user: drh tags: trunk)
2008-03-22
23:59
Bug fix in the newly revised sqllimit1.test script. (CVS 4908) (check-in: 2a89fb3c3e user: drh tags: trunk)
01:08
Add the speed1p.test script. Like speed1.test except that it tries to take advantage of prepared statements. (CVS 4907) (check-in: ece4fb9f7b user: drh tags: trunk)
01:07
Add the SQLITE_OMIT_DECLTYPE compile-time option. Remove more code when SQLITE_ENABLE_COLUMN_METADATA is not defined. (CVS 4906) (check-in: 8ef26646cf user: drh tags: trunk)
2008-03-21
18:01
Defer allocating memory space to hold the array of column values and names in sqlite3_exec() until there is a need to use the array. In the common case where there is no callback, this avoids a malloc() call. (CVS 4905) (check-in: d8686abcdf user: drh tags: trunk)
17:29
Better integrate the new malloc related instrumentation with the test infrastructure. (CVS 4904) (check-in: d2140cae39 user: danielk1977 tags: trunk)
17:13
Make sure the text result of an aggregate function has the correct encoding. Ticket #3009. (CVS 4903) (check-in: 13e388cecf user: drh tags: trunk)
16:45
Add a completely new testing system for the Bitvec object. The new testing system uses sqlite3_test_control() instead of unpublished APIs. Now provides 100% condition/decision coverage. Obscure bugs in Bitvec found and fixed as a result of the enhanced coverage. (CVS 4902) (check-in: 2498d3ea36 user: drh tags: trunk)
14:22
Add some more logging to the malloc system used when SQLITE_MEMDEBUG is defined. (CVS 4901) (check-in: 79738f582f user: danielk1977 tags: trunk)
2008-03-20
18:00
In the sqlite3_limit() interface, take out the feature where zero means use the hard upper bound. If an application wants the hard upper bound, it can set the limit to 0x7fffffff and the bound will be automatically truncated. (CVS 4900) (check-in: d6be1f495e user: drh tags: trunk)
16:30
Reinstate test cases for the limit tests. The sqlite3_limit() API is now tested and working. (CVS 4899) (check-in: 4c4be4c3c8 user: drh tags: trunk)
16:26
Do not run crash7.test as part of a quick test. (CVS 4898) (check-in: 53b4a09040 user: danielk1977 tags: trunk)
14:03
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) (check-in: 60c77882b2 user: drh tags: trunk)
11:04
Allow a VACUUM operation to change the page-size in the same way as it can be used to change a database between auto-vacuum and normal mode. (CVS 4896) (check-in: 871df0e7c3 user: danielk1977 tags: trunk)
10:44
stick everything that sqlite links against into Libs.private (CVS 4895) (check-in: 8b198617f5 user: vapier tags: trunk)
04:45
Write the page-size into the first journal-header of each journal file. (CVS 4894) (check-in: 79f573cc7b user: danielk1977 tags: trunk)
02:25
Make out-of-tree builds work as expected when using configure script (CVS 4893) (check-in: e2d05ea3c3 user: mlcreech tags: trunk)
00:32
Fix the load-extension mechanism so that tests build with or without it. This check-in also includes prototypes for the new sqlite3_limit() interface, but no implementation. (CVS 4892) (check-in: bee38c2dda user: drh tags: trunk)
2008-03-19
23:52
Fix build whether compiling with or without auto-extension enabled (CVS 4891) (check-in: 7b9682c65f user: mlcreech tags: trunk)
23:15
Don't wrongly look for the amalgamation in $(TOP) (CVS 4890) (check-in: 41d6ca31ac user: mlcreech tags: trunk)
21:45
Add a new interface, sqlite3_context_db_handle(), that returns the database connection pointer for an application-defined function. (CVS 4889) (check-in: 54c55cae55 user: drh tags: trunk)
20:42
Undefine the "isView" macro when compiling with SQLITE_OMIT_VIEW so that the macro does not interfer with subsequent modules in the amalgamation. (CVS 4888) (check-in: a42caa8f83 user: drh tags: trunk)
20:18
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) (check-in: 73fbac7cf7 user: drh tags: trunk)
19:55
Update the loadable extension module to include recently added interfaces. (CVS 4886) (check-in: bf1cecede8 user: drh tags: trunk)
19:01
Initialize the MD5 SQL functions from test_func.c instead of using conditional compilation in tclsqlite.c. (CVS 4885) (check-in: 801a0e3c99 user: drh tags: trunk)
16:35
Create the test_destructor16() test SQL function to enhance test coverage. Prior to check-in (4883), the test_destructor() function was sufficient, but we now need separate functions since the implementation is restricted to using the published API. (CVS 4884) (check-in: bb7218657f user: drh tags: trunk)
16:08
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) (check-in: e90c4cc8a8 user: drh tags: trunk)
14:15
Add a new api sqlite3_randomness() for providing access to SQLite's internal PRNG. Add sqlite3_test_control() verbs for controlling the PRNG. (CVS 4882) (check-in: 15110ea027 user: drh tags: trunk)
13:03
When a parse of the sqlite_master table fails, include the name of the object being parsed as part of the error message. (CVS 4881) (check-in: 57805b588f user: drh tags: trunk)
00:21
Remove the dependency on the direct btree interface from as many test scripts as is practical. Fix a bug in the output limiter of the integrity_check pragma that came up while making this change. (CVS 4880) (check-in: 24e769972e user: drh tags: trunk)