SQLite

Timeline
Login

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

4115 check-ins using file test/notnull.test version 44d600f916

FROM <tble>"). Ticket #3944. (CVS 6838) (check-in: 45fd5419a7 user: danielk1977 tags: trunk), (SELECT ... FROM tbl WHERE rowid > ) FROM ...". (CVS 5855) (check-in: 6c918c4eb9 user: danielk1977 tags: trunk)
2011-06-21
15:34
Backport the localtime() failure patch from trunk. Ticket [bd484a090c8077]. (Leaf check-in: 2f5b37122b user: drh tags: branch-3.6.1)
2011-03-07
16:12
Backport a fix from [6b0cabd017ed25] (version 3.6.16 - 2009-03-05) to the 3.6.1 branch, a fix that prevents a null pointer deref if one of the column access routines such as sqlite3_column_int() is called with a NULL first parameter. (check-in: df3436405e user: drh tags: branch-3.6.1)
2010-10-15
14:45
Cherry-pick the change at [2d4505510032bf9] into the 3.6.1 branch. (check-in: ecb1419e4b user: drh tags: branch-3.6.1)
2010-05-18
12:37
Keep additional state information in the pager in an effort to reduce the number of SQLITE_FCNTL_SIZE_HINTs. (Note: This change was found to make no performance difference and so has been moved onto a side branch. Use the parent check-in instead of this one.) (Closed-Leaf check-in: 97d88a86e4 user: drh tags: branch-3.6.1-exp)
2010-05-17
15:52
An improvement to the SQLITE_FCNTL_SIZE_HINT change that invokes the hint less often and only when really needed. (check-in: a1d20ceb9c user: drh tags: branch-3.6.1)
15:33
Invoke the SQLITE_FCNTL_SIZE_HINT opcode on the sqlite3_file_control() interface for database files before extending the size of the file. The VFS can use this hint to preallocate space. (check-in: 9a08371171 user: drh tags: branch-3.6.1)
2010-03-03
15:49
Fix some extra instances of the problematic constant in util.c on the 3.6.1 branch. (check-in: 527c71d54e user: dan tags: branch-3.6.1)
15:34
Merge change [83e47ca006] into the 3.6.1 branch. (check-in: 96bfaf9c8c user: dan tags: branch-3.6.1)
2010-02-25
14:44
Add some technically unnecessary variable initializations to silence compiler warnings. (check-in: a255059786 user: dan tags: branch-3.6.1)
2010-02-23
10:50
Fix a segfault that can occur if a malloc fails in ATTACH in shared-cache mode. (check-in: d6343d035d user: dan tags: branch-3.6.1)
2010-01-30
23:08
The iInUseDB and iInUseMM variables do not need to be volatile. (Leaf check-in: bb18f57852 user: drh tags: branch-3.5.9)
22:28
Always hold the MEM2 mutex when initially marking a pager as in use by its database connection. (check-in: 622c17177a user: drh tags: branch-3.5.9)
19:17
Avoid a race condition in the sqlite3_release_memory() logic within pager.c. (check-in: a718e66347 user: drh tags: branch-3.5.9)
19:00
Remove all cache pages from the LRU list prior to removing the pager from the pager list when closing a pager. (check-in: 9d13acc449 user: drh tags: branch-3.5.9)
18:22
Add additional pagerMutexHeld() macros to better verify the correct operation of pager.c. (check-in: c50e972f1b user: drh tags: branch-3.5.9)
2010-01-29
21:23
Fix a missing mutex on page cache truncation during vacuum and auto-vacuum when SQLITE_ENABLE_MEMORY_MANAGEMENT is engaged. (check-in: ea3b941a71 user: drh tags: branch-3.5.9)
19:50
Additional changes suggested by Rob Stoddard. (Closed-Leaf check-in: 228b8ad9dd user: drh tags: branch-3.5.9)
19:46
Changes to 3.5.9 proposed by Rob Stoddard. (check-in: 5ed168c48e user: drh tags: branch-3.5.9)
2010-01-05
18:11
Apply fix [9b8acf8319] to the 3.6.1 branch. (check-in: 62b4891b15 user: dan tags: branch-3.6.1)
18:06
Apply fix [097737e368] to the 3.6.1 branch. (check-in: 9f819ea6b2 user: dan tags: branch-3.6.1)
2009-10-30
13:26
Version 3.6.16.1 (Leaf check-in: 2a832b19b6 user: drh tags: release, branch_3_6_16)
2009-10-29
18:38
Fix a 16-bit integer overflow that might occur in statements that use both an EXISTS clause and IN operator with a RHS holding in excess of 32K entries. (check-in: 65a1f1334d user: drh tags: branch_3_6_16)
2009-09-09
11:37
Add a complicated assert() to check that statement transactions are opened when required. (check-in: 28aa1f4ea8 user: dan tags: trunk)
2009-09-08
19:15
Combine the OP_Statement and OP_Transaction opcodes. (check-in: aec9dbd8d2 user: dan tags: trunk)
15:55
If recursive-triggers are enabled, fire DELETE triggers if database rows are removed as a result of OR REPLACE conflict resolution. (check-in: 85cb0c94a6 user: dan tags: trunk)
13:40
Additional simplifications in support of structural testing. (check-in: 4ab8c841f8 user: drh tags: trunk)
02:27
Further simplifications to the VDBE - removing functionality that is no longer used. (check-in: b271e16621 user: drh tags: trunk)
01:14
Code simplifications, especially to the pseudo-table logic, and comment improvements. (check-in: 52449a9569 user: drh tags: trunk)
2009-09-07
18:14
Add the SQLITE_LIMIT_TRIGGER_DEPTH option to sqlite3_limit(). (check-in: d7dc8b4336 user: drh tags: trunk)
17:41
Merge 1958db4493 and 26cd015c0e. (check-in: ecbe0832be user: dan tags: trunk)
17:32
Fix a bug where a condition was incorrectly being compiled out when SQLITE_OMIT_VIRTUALTABLE was defined. (check-in: 1958db4493 user: dan tags: trunk)
04:38
Warning cleanup from the MSVC compile. (check-in: 26cd015c0e user: shane tags: trunk)
03:48
Attempt to handle numbers at the limits of the IEEE 754 range better (nan.test now passes). (check-in: 2a74ae1969 user: shane tags: trunk)
02:46
Changes to internal AtoF to improve "accuracy" when measured against built-in GCC atof(). (check-in: 438e1577d0 user: shane tags: trunk)
2009-09-03
19:43
Fix a VDBE stack overflow issue with the UPDATE statement. (Leaf check-in: 715cecb8c7 user: drh tags: branch-3.3.6)
16:23
Add the "unix-wfl" VFS that does whole-file locking in order to help NFS do better cache coherency. (check-in: 2aeab80e5b user: drh tags: trunk)
01:18
Do not reuse function parameters in subsequent expressions since the function call might have triggered a text encoding change. Fix for ticket [2ea2425d34be]. (check-in: f22e388727 user: drh tags: trunk)
2009-09-02
19:04
Documentation updates for the version info #defines and C interfaces. (check-in: 69055e9b4c user: drh tags: trunk)
2009-09-01
17:28
Fix a problem in main.c. SQLITE_NoRecTriggers -> SQLITE_RecTriggers. (check-in: 5ac69ed608 user: dan tags: trunk)
17:11
Change "PRAGMA disable_recursive_triggers" to "PRAGMA recursive_triggers". Also a fix for compiling with OMIT_TRIGGER defined. (check-in: e016cca363 user: dan tags: trunk)
16:39
Merge in changes to support recursive invocation of triggers (disabled by default). (check-in: c1b388c30d user: dan tags: trunk)
16:19
Add new test script triggerC.test. (check-in: a2a062a4b5 user: dan tags: trunk)
12:16
More fixes and comment updates. (check-in: 38a9327bad user: dan tags: trunk)
2009-08-31
16:09
More thorough initialization of a buffer when writing the rollback journal header, in order to prevent a harmless valgrind warning. CVSTrac ticket #4039 (check-in: 5e2f549683 user: drh tags: trunk)
15:27
More fixes for test cases. (check-in: 85d9f23be1 user: dan tags: trunk)
08:22
Fix some authorization callback problems. (check-in: 8a746fbfd5 user: dan tags: trunk)
05:39
Merge with main branch. (check-in: 6e09e28751 user: dan tags: trunk)
05:23
Fix another test problem and some instances where an OOM may cause a segfault. (check-in: 31199db0f7 user: dan tags: trunk)
2009-08-30
11:42
Fixes for new triggers scheme. (check-in: 9eb91efda5 user: dan tags: trunk)
2009-08-28
18:53
Changes to support recursive triggers. (check-in: 9b9c192115 user: dan tags: trunk)
00:49
Add a new source code logo gif. (check-in: 6abcba1021 user: drh tags: trunk)
2009-08-27
17:56
Patch to the named semaphore locking mechanism used by VxWorks. (check-in: 609c5341be user: drh tags: trunk)
2009-08-26
00:26
Updates to the pluggable page cache documentation. (check-in: 3085ad7612 user: drh tags: trunk)
2009-08-25
16:28
Remove an unreachable branch from where.c in order to restore 100% branch test coverage. Add assert() and testcase() macros to verify that the branch is unreachable. (check-in: 58db7e7166 user: drh tags: trunk)
15:56
Initialize variables differently in the range processing logic of where.c in order to make sure variables are always initialized even following an OOM error. (check-in: 3fb3686a45 user: drh tags: trunk)
14:59
Attempt to clarify the meaning of a "parameter" in the sqlite3_bind() API documentation. (check-in: 9389e6a7da user: drh tags: trunk)
14:24
Make sure that the output of EXPLAIN is right when the P4 argument of an opcode is of type P4_MEM with the MEM having type MEM_Blob. (check-in: 6a623e6cf0 user: drh tags: trunk)
13:53
Avoid calling sqite3VdbeRecordCompare() with uninitialized memory following an OOM. Doing so is harmless, but it worries valgrind. (check-in: d33b9eb256 user: drh tags: trunk)
13:10
Fix an uninitialized variable in sqlite3VdbeIdxRowid(). (check-in: 6e787e18fa user: drh tags: trunk)
12:11
Merge together the os_unix.c fix of [aa6acfa8ca] and the trigger fix of [dee1b8eb40]. (check-in: 1e2c6e134e user: drh tags: trunk)
05:57
Fix a bad interaction between "proxy-locking" and aa6acfa8ca. (check-in: 2a5c9e1dbf user: dan tags: trunk)
2009-08-24
19:37
Update the version number to 3.6.18, even though the actual release of that version is still a few weeks away. (check-in: c0ea4e9a7d user: drh tags: trunk)
18:57
Fix some errors in aa6acfa8ca. (check-in: 82d1934a42 user: dan tags: trunk)
01:35
Run the column cache in a new context when generating code for trigger programs. Fix for ticket [efc02f9779]. (check-in: dee1b8eb40 user: drh tags: trunk)
2009-08-22
19:17
Remove an obsolete documentation file left over from SQLite version 1.0. (check-in: f7eb1efc37 user: drh tags: trunk)
11:39
Fix a problem in os_unix.c where a malloc failure could lead to a leaked file descriptor. (check-in: aa6acfa8ca user: dan tags: trunk)
2009-08-21
17:18
When a database file is opened, try to find an unused file descriptor to reuse. This change affects unix (and other systems that use os_unix.c) only. Fix for cvstrac ticket #4018. (check-in: 9b4d9ab62d user: dan tags: trunk)
13:22
Change the expression code generator to account for the fact that the new sqlite3AtoF() never returns NaN. Also, clarification of a comment in where.c. (check-in: 75f596a04a user: drh tags: trunk)
08:29
Add assert() statements to os_unix.c to check that the mutex is held when it should be. (check-in: 11a669b653 user: dan tags: trunk)
02:13
Updated sqlite3AtoF() that performs slightly better with GCC, and significantly better with MSVC. (check-in: f084f5a8ba user: shane tags: trunk)
02:07
Updates for test_init.c for configure and other consistency changes. (check-in: 3ba316e9a3 user: shane tags: trunk)
2009-08-20
23:05
Remove a redundant OOM test from the sqlite_stat2 analysis loader. (check-in: d30ceeb8b3 user: drh tags: trunk)
20:05
Simplifications to the range-scan logic in support of structural testing. (check-in: bbbee81075 user: drh tags: trunk)
18:14
Continuing refinements of the range-scan optimizations in where.c. The range scores are changed from an integer 1..9 to 0..100. (check-in: f0c24b5fb8 user: drh tags: trunk)
16:11
Change the code that collects samples for sqlite_stat2 so that the first sample taken is the (nRow/(2*SQLITE_INDEX_SAMPLES))th entry in the index, where nRow is the total number of index entries. (check-in: cbfe6e9df3 user: dan tags: trunk)
13:45
Incremental code and comment cleanup in where.c. There is more to be done. (check-in: 4a5d9550bd user: drh tags: trunk)
02:49
Set the "type" correctly of built-in BINARY collating sequences for UTF16. (check-in: 167644f33c user: drh tags: trunk)
02:34
All the sqlite3GetCollSeq() function to specify an arbitrary text encoding. (check-in: 4ee44322ca user: drh tags: trunk)
2009-08-19
22:14
Make sure that sqlite3ValueFromExpr() sets the "type" field of the sqlite3_value object correctly when the value is a floating point number. (check-in: 2467eb68ac user: drh tags: trunk)
17:17
Change the way an Expr that has been converted to TK_REGISTER stores its original opcode. The previous method, overloading Expr.iColumn, did not work in all cases. (check-in: 71ea9d0e14 user: dan tags: trunk)
16:34
Fix an assert() failure that may follow an OOM error. (check-in: 14a715c563 user: dan tags: trunk)
16:21
Merge 29cafcfdcc and a6f39181a7. (check-in: 740a93e89c user: dan tags: trunk)
15:57
Documentation improvements in sqlite.h.in. No changes to code. (check-in: a6f39181a7 user: drh tags: trunk)
15:34
Add some tests that use the sqlite_stat2 table in shared-cache mode. (check-in: 29cafcfdcc user: dan tags: trunk)
14:42
Merge with 709e16145e. (check-in: 6c8a0e2b37 user: dan tags: trunk)
14:34
Clean up sqlite_stat2 related code. Add test cases. (check-in: aa728e06ce user: dan tags: trunk)
09:09
Fix a problem where a buffer allocated from a lookaside pool was being released using the system free(). (check-in: 67207a15bd user: dan tags: trunk)
08:18
Add the SQLITE_ENABLE_STAT2 macro. If this is not defined at build-time, the stat2 table is not created, populated, or used. (check-in: 362665e89c user: dan tags: trunk)
04:24
Adjust sync count for SQLITE_DISABLE_DIRSYNC compiler option. (check-in: 709e16145e user: shane tags: trunk)
2009-08-18
16:24
Change the sqlite_stat2 schema to be more flexible. (check-in: ded9dec645 user: dan tags: trunk)
16:05
Unknown functions in the DEFAULT clause of a table cause an error when the DEFAULT value is needed. Ticket [2d401a94287b5]. (check-in: 093917d7fd user: drh tags: trunk)
15:33
Move the allocation of the memsys5 mutex into the initializer. (check-in: 4e377a09c1 user: drh tags: trunk)
14:48
Fix obscure issues with the memsys5 memory allocator. Arrange that the xRealloc() interface to memory allocators is only called with a value that has been through xRoundup(). (check-in: 577bd6f155 user: drh tags: trunk)
12:16
When shutting down the memsys5 memory allocator, be sure to clear the mutex pointer in case the next startup does not use a mutex because it is configured differently. (check-in: d4e7e2d823 user: drh tags: trunk)
01:54
Fix a bug in mem5.c which would cause an infinite loop on an attempt to allocate more than 1073741824 bytes of contiguous memory. Also, some cleanup of mem5.c. More work to do on this. (check-in: 783b751a38 user: drh tags: trunk)
2009-08-17
17:06
First version of sqlite_stat2 (schema forces exactly 10 samples). (check-in: dd96bda2a8 user: dan tags: trunk)
16:01
Always call sqlite3_malloc() in sqlite3OsInit(), even when not compiled with SQLITE_TEST. (check-in: b98a8706a6 user: drh tags: trunk)
15:52
Move error simulation code from the sqlite3_os_init() functions into a wrapper. (check-in: 67ad21abf8 user: dan tags: trunk)
15:31
More documentation and comment updates for sqlite3_initialize/shutdown interface changes to handle failures. (check-in: 32509bc733 user: shane tags: trunk)
15:16
Add tests to check that sqlite recovers from an error in sqlite3_initialize() correctly. (check-in: 904a371c6c user: dan tags: trunk)
13:42
Enhanced documentation and minor code tweaks in preparation for hardening the sqlite3_initialize/shutdown interfaces against initialization failures. (check-in: 98c49e6135 user: drh tags: trunk)
09:29
Add a test to verify that 3.6.17 releases read-locks obtained to read the database schema even if the connection is not currently in auto-commit mode. (check-in: 78dfe8321d user: dan tags: trunk)
2009-08-14
18:18
Update the amalgamation builder so that it avoids putting redundant SQLITE_API macros on declarations. (check-in: 0d5b058717 user: drh tags: trunk)
17:53
Work around an over-zealous optimization in GCC 4.3.3. See CVSTrac ticket #4027. (check-in: 9cbe365405 user: drh tags: trunk)
17:01
Fix a case where SQLite may write past the end of a buffer as a result of a corrupted database file. (check-in: 43321a5560 user: dan tags: trunk)
16:15
Fix to the "publish.sh" script that was broken by the previous check-in. (check-in: 34c21210eb user: drh tags: trunk)
16:01
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. (check-in: 302dabe98f user: drh tags: trunk)
2009-08-13
20:15
Fix typos in comments used to generate documentation. CVSTrac tickets #4028 and #4029. (check-in: 1fc73b9146 user: drh tags: trunk)
19:54
Tweak to the new whereB.test file to make it more consistent. (check-in: 06098505fc user: drh tags: trunk)
19:21
If a binary operator in a WHERE clause that should be performed with no affinity conversions applied to its operands (see http://www.sqlite.org/datatype3.html) is optimized by index lookup, do not apply any conversions to the key value before looking it up in the index. Fix for [93fb9f89d6]. (check-in: e72186f2d6 user: dan tags: trunk)
18:14
Enhancements to the whereB.test to check more affinity corner cases. (check-in: 1048459824 user: drh tags: trunk)
17:14
Add a test case for the affinity problem reported by ticket [93fb9f89d6]. (check-in: 149ec24e61 user: drh tags: trunk)
15:42
Merge the accidental fork. (check-in: 86a06dd049 user: drh tags: trunk)
15:13
Fix a typo on a comment in sqlite3VdbeIntegerAffinity(). (check-in: b5a709d360 user: drh tags: trunk)
07:09
Changes to the query planner that improve the order in which tables/indexes are scanned in join queries. (check-in: 19f799b32f user: dan tags: trunk)
2009-08-12
15:34
Fixed some compiler warnings in WINCE only sections when using the MSVC compiler. (check-in: 1f0a93e17d user: shane tags: trunk)
11:45
Make sure the large-file support macros occur first in sqliteInt.h. Fix for CVSTrac ticket #4022. (check-in: b0848925ba user: drh tags: trunk, cvs-to-fossil-cutover)
2009-08-11
05:50
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) (check-in: 7f4810747b user: danielk1977 tags: trunk)
2009-08-10
17:48
Reduce the maximum supported sector size to 64KiB. (CVS 6970) (check-in: 8e1e0ba292 user: drh tags: trunk)
15:16
Version 3.6.17 (CVS 6969) (check-in: 3665010228 user: drh tags: trunk, release)
10:18
Update a couple of tests in corrupt7.test to account for a change in the error message text emitted by SQLite. (CVS 6968) (check-in: 3172a29692 user: danielk1977 tags: trunk)
04:37
Exclude a static function in test1.c from the build when OMIT_DEPRECATED is defined. This avoids a compiler warning that occurs with some compilers. (CVS 6967) (check-in: ace499506e user: danielk1977 tags: trunk)
04:26
Change mallocI.test to close a database connection that was being left open. (CVS 6966) (check-in: 4f0096d7ef user: danielk1977 tags: trunk)
03:57
Removed some warnings from the MSVC compile. (CVS 6965) (check-in: ee034cfc71 user: shane tags: trunk)
03:23
Fixed "Interlocked" logic error that prevented the "static" mutexes from being released when sqlite3_shutdown() is called. Ticket #4011. (CVS 6964) (check-in: 04cafb7ee3 user: shane tags: trunk)
2009-08-08
18:01
Suppress various compiler warnings. (CVS 6963) (check-in: 257e9b5750 user: drh tags: trunk)
2009-08-07
16:56
Enhancement to (6844). If sqlite3_exec() is to return SQLITE_NOMEM because it fails to allocate space for an error message, set the database error-code to SQLITE_NOMEM too. (CVS 6962) (check-in: 8293fa19c0 user: danielk1977 tags: trunk)
2009-08-06
18:36
Mark the rtreeUpdate function as static. (CVS 6961) (check-in: b6bdfdc69d user: danielk1977 tags: trunk)
17:43
Alternative fix for ticket #3810. This is a replacement for check-in (6956). (CVS 6960) (check-in: ba1afc0401 user: drh tags: trunk)
17:40
Change a hyperlink label on shared cache mode documentation. No changes to code. (CVS 6959) (check-in: 3d08ca0e54 user: drh tags: trunk)
2009-08-05
04:08
Simplified conditional for read-only lock in winceLockFile() function. Ticket #3991. (CVS 6958) (check-in: a1c184cd2a user: shane tags: trunk)
2009-08-01
18:22
Make sure all database connections are closed at the end of the test case for ticket #3810. (CVS 6957) (check-in: 9bca5a0e8f user: drh tags: trunk)
16:27
Return a better error message when problems are encountered parsing a TEMP trigger or TEMP view that references objects in other databases that have been modified or dropped. Ticket #3810. (CVS 6956) (check-in: 102785b9fb user: drh tags: trunk)
15:54
Add a testcase for ticket #3810. (CVS 6955) (check-in: 29972f7445 user: drh tags: trunk)
15:09
Fix a segfault following OOM that was introduced by check-in (6949) which was a fix for ticket #3997. (CVS 6954) (check-in: 359d78e144 user: drh tags: trunk)
15:04
Increment the version number in preparation for the next release. (CVS 6953) (check-in: 12d9b87316 user: drh tags: trunk)
2009-07-31
06:14
Fix a bug in where.c that could cause SQLite to write to freed memory while compiling a query with many terms in the WHERE clause. (CVS 6952) (check-in: 8161af840e user: danielk1977 tags: trunk)
2009-07-29
06:04
Add a test to mallocI.test to show that a shared lock is correctly released if an OOM condition occurs while parsing a database schema. (CVS 6951) (check-in: 5a82620efa user: danielk1977 tags: trunk)
2009-07-28
16:44
Add the experimental API sqlite3_strnicmp(). Modify fts3 so that in terms like 'column_name:token' the column_name is interpreted in a case-insenstive fashion. Ticket #3996. (CVS 6950) (check-in: 4571aa9e91 user: danielk1977 tags: trunk)
13:30
When flattening a SELECT query, do not discard collation sequences explicitly attached to expressions in the parent query. Fix for #3997. (CVS 6949) (check-in: b2784cf5d8 user: danielk1977 tags: trunk)
08:43
Fixed reversed labels in WHERETRACE() statement. Debugging code only. (CVS 6948) (check-in: 614a8d8315 user: shane tags: trunk)
2009-07-27
14:15
If there is a hot-journal in the file-system, a connection with journal_mode=memory set may have to open it to effect rollback. Account for this in pager_end_transaction(). This prevents an assert from failing in the in-memory journal permutation test. (CVS 6947) (check-in: 224bc69a04 user: danielk1977 tags: trunk)
11:41
Do not simulate OOM conditions in the sqlite3OsXXX() calls if the underlying file is an in-memory journal file. (CVS 6946) (check-in: d486811715 user: danielk1977 tags: trunk)
10:05
When extracting values from a record to use in an UPDATEd version of that record, apply OP_RealAffinity if required. Fix for #3992. (CVS 6945) (check-in: 3616766a6f user: danielk1977 tags: trunk)
2009-07-25
22:13
The noReadlock property on a pager object implies the readOnly property. Use this fact to simplify the logic in sqlite3PagerSharedLock(). (CVS 6944) (check-in: 886e665f6c user: drh tags: trunk)
19:31
Remove obsolete assert and testcase macros related to ticket #2565 (CVS 6943) (check-in: f0024b3189 user: drh tags: trunk)
17:42
Adjust memory size computations to avoid a conditional that is always false on 64-bit systems. (CVS 6942) (check-in: 04211e6af9 user: drh tags: trunk)
17:39
Change an unreachable condition in PagerSharedLock to a NEVER(...). Add an assert to pager_error() to show that it is never called to put an in-memory pager to the error-state. (CVS 6941) (check-in: 1d931f7751 user: danielk1977 tags: trunk)
17:33
Change a condition to a '%' operator in bitvec.c. (CVS 6940) (check-in: 10250fe5c0 user: drh tags: trunk)
17:08
More simplifications to pager.c. (CVS 6939) (check-in: 533d6cc67a user: drh tags: trunk)
15:24
Simplifications and comment improvements to pager.c in support of coverage testing. (CVS 6938) (check-in: 5b70b5c19c user: drh tags: trunk)
14:18
Add a NEVER() on an always-false conditional in pager.c. Make sure the text of the master journal file is zero-terminated before trying to process it - to prevent a buffer overrun in strlen(). (CVS 6937) (check-in: cc9430e334 user: drh tags: trunk)
13:42
Remove the "proc zeroblob" implementation from incrvacuum2.test. It is no longer required as of (6906) and, as #3988 points out, unreliable. (CVS 6936) (check-in: 0315383163 user: danielk1977 tags: trunk)
11:46
Add files that should have gone in with the previous checkin. (CVS 6935) (check-in: 64c7afc704 user: danielk1977 tags: trunk)
11:40
Add a complex assert() that checks a pager invariant. (CVS 6934) (check-in: 2e08ad7bf6 user: danielk1977 tags: trunk)
04:12
Add assert() statements to more tightly constrain the state of pager.c. Remove the three pager*.test scripts since they violate the constraints asserted above by modifying the state of the system in ways that it cannot be modified in a live system. (CVS 6933) (check-in: 3b6d370ed6 user: drh tags: trunk)
00:13
Remove two more overzealous assert() statements. (CVS 6932) (check-in: 788aa9dde9 user: drh tags: trunk)
00:10
Remove an overzealous assert() from pager.c. (CVS 6931) (check-in: 4a924b475a user: drh tags: trunk)
2009-07-24
21:23
Fix an issue with the previous check-in, (6929). (CVS 6930) (check-in: e5165c80ab user: drh tags: trunk)
19:01
Further simplifications to pager.c in support of structural coverage testing. (CVS 6929) (check-in: 866216c0b6 user: drh tags: trunk)
17:58
Allow virtual tables to be used in shared-cache mode. (CVS 6928) (check-in: 5d9e767a05 user: danielk1977 tags: trunk)
16:32
Simplifications to pager.c in support of structural coverage testing. (CVS 6927) (check-in: 7222ad2667 user: drh tags: trunk)
12:35
Simplifications and comment improvements in pager.c. (CVS 6926) (check-in: 2d2f42ca0a user: drh tags: trunk)
2009-07-23
01:44
Simplifications and comment enhancements on btree.c. (CVS 6925) (check-in: 5ba880dde8 user: drh tags: trunk)
2009-07-22
18:24
Modify mksqlite3c.tcl so that it inserts SQLITE_API macros into sqlite3.h. Ticket #3983. (CVS 6924) (check-in: 803ec79f3b user: danielk1977 tags: trunk)
18:07
Simplifications to btree.c in support of coverage testing. (CVS 6923) (check-in: 375fd6f9c5 user: drh tags: trunk)
16:41
Avoid leaving a suspect page in the page-cache if an error occurs during sqlite3PagerAcquire(). (CVS 6922) (check-in: 2594f01c73 user: danielk1977 tags: trunk)
14:08
Fix a double-free that can occur after database corruption is detected. (CVS 6921) (check-in: 5260e8b104 user: danielk1977 tags: trunk)
13:19
Add a NEVER() macro around a pager.c conditional that must always be false in the current implementation. (CVS 6920) (check-in: 1e510d7fc5 user: drh tags: trunk)
07:27
Changes to test code (only) to allow veryquick.test to run with OMIT_UTF16 builsd. Ticket #3985. (CVS 6919) (check-in: 7f3fc7f20f user: danielk1977 tags: trunk)
02:02
Remove an ALWAYS() from a condition that can in fact be false under very obscure circumstances. (CVS 6918) (check-in: 3808322895 user: drh tags: trunk)
00:35
Further simplifications to btree.c, especially the sqlite3BtreeKey() and sqlite3BtreeData() functions. New assert() statements added to verify that these routines are called correctly. (CVS 6917) (check-in: 96cfd07952 user: drh tags: trunk)
2009-07-21
19:25
Change getAndInitPage() (btree.c) to use only PagerAcquire(), not PagerLookup() and PagerAcquire(). (CVS 6916) (check-in: 0b41dfc066 user: danielk1977 tags: trunk)
19:02
Additional simplifications to btree.c in support of coverage testing. (CVS 6915) (check-in: 716fccea58 user: drh tags: trunk)
15:33
Remove an assert() in btree.c which is no longer true due to changes in the error reporting behavior of ptrmapPut(). (CVS 6914) (check-in: 110998f18a user: drh tags: trunk)
11:52
Changes to btree.c in support of coverage testing. (CVS 6913) (check-in: 4cf23e9e86 user: drh tags: trunk)
2009-07-20
19:30
Reverse the order of two conditionals in a test in order to achieve coverage of them both. Also: clarifications to comments in btree.c. (CVS 6912) (check-in: a159e9d247 user: drh tags: trunk)
17:11
Modify various routines inside btree.c to take a pointer to the return-code as a parameter and to no-op if the return-code storage location already contains a non-zero code. (CVS 6911) (check-in: 7dcf2a7872 user: drh tags: trunk)
12:33
Use an ALWAYS() on a conditional in btmutex.c that is always true. (CVS 6910) (check-in: 609022caff user: drh tags: trunk)
12:25
Corrections to the comment that is inserted at the top of the amalgamation. Ticket #3981. (CVS 6909) (check-in: 7572991bc2 user: drh tags: trunk)
11:32
Always provide a name for the TEMP database even if SQLite is compiled using SQLITE_OMIT_TEMPDB. (CVS 6908) (check-in: 0ba17c0483 user: drh tags: trunk)
2009-07-18
20:01
Code tweaks in support of full-coverage testing. (CVS 6907) (check-in: 22c6dbfdce user: drh tags: trunk)
14:36
Add some code to sqlite3VdbeMemSetZeroBlob() so that it works (less efficiently) even when OMIT_INCRBLOB is defined. Ticket #3977. (CVS 6906) (check-in: f5f7259d81 user: danielk1977 tags: trunk)
11:52
When the asynchronous IO backend opens a file with the EXCLUSIVE flag set, make sure only a single file-descriptor is opened (not one for reading and one for writing). This change fixes #3978. (CVS 6905) (check-in: 630e669b97 user: danielk1977 tags: trunk)
08:30
Changes to test scripts so that (make test) works when OMIT_INCRBLOB is defined. (CVS 6904) (check-in: 1dd834a3d6 user: danielk1977 tags: trunk)
2009-07-17
17:25
Fix a subtle problem that can occur when a transaction is automatically rolled back, and afterwards a VM that had opened a statement transaction within the abandoned transaction is finalized. Fixes an assert() that was failing in rtree3.test. (CVS 6903) (check-in: 910df46e0f user: danielk1977 tags: trunk)
16:54
Return a meaningful error message if a keyword is used as an rtree table column name. Ticket #3970. (CVS 6902) (check-in: 046efe46b5 user: danielk1977 tags: trunk)
14:37
Skip all tests in tableapi.test if SQLITE_OMIT_GET_TABLE defined. Ticket #3975. (CVS 6901) (check-in: 0219a54336 user: shane tags: trunk)
11:44
Code simplifications in support of structural testing. (CVS 6900) (check-in: fb1b955dda user: drh tags: trunk)
2009-07-16
18:21
Code simplifications and comment improvements in support of structural coverage testing. (CVS 6899) (check-in: 9452517981 user: drh tags: trunk)
12:41
Remove an unused variable from sqlite3ExprListDup(). Ticket #3973. (CVS 6898) (check-in: 17c05aefd6 user: drh tags: trunk)
2009-07-15
18:15
Fix a potential database corruption following DROP TABLE when the pending byte page corresponds to a ptrmap page. This situation cannot happen in a real deployment - but it still needs to be fixed. (CVS 6897) (check-in: 6242db39f7 user: drh tags: trunk)
17:25
Simplifications to btree.c in support of structural testing. Renamed the "skip" field of the BtCursor object to "skipNext" to make it easier to search for places where it is used. (CVS 6896) (check-in: d3897235d7 user: drh tags: trunk)
16:30
Remove an assert() from vdbeaux.c that might not be true if the database file is corrupt. (CVS 6895) (check-in: a42dc51e3b user: drh tags: trunk)
11:26
Added the SQLITE_TESTCTRL_RESERVE option to sqlite3_test_control(). Simplifications to btree.c to facilitate structural coverage testing. (CVS 6894) (check-in: cfbeda1b31 user: drh tags: trunk)
2009-07-14
18:35
Add comments and assert() statements to show that the return value from sqlite3BtreeKeySize() and sqlite3BtreeData() usually do not matter. Ticket #3968. Also remove a NEVER() macro that can sometimes be true - discovered while testing the previous change. (CVS 6893) (check-in: 0c710c1be5 user: drh tags: trunk)
17:48
Simplifications to the PRAGMA integrity_check logic. Remove unreachable code. (CVS 6892) (check-in: 17749fa548 user: drh tags: trunk)
14:15
Simplifications and tweaks to vdbeaux.c resulting from structural testing. (CVS 6891) (check-in: fa49666fb9 user: drh tags: trunk)
02:33
Make sure the IN operator works with zeroblobs. Ticket #3965. Other simplifications associated with structural testing. (CVS 6890) (check-in: 25dd342283 user: drh tags: trunk)
2009-07-13
15:52
Remove the SQLITE_CommitBusy flag. This was an attempt to block recursion on the sqlite3_commit_hook() interface. But such recursion is explicitly disallowed, so the flag is pointless. (CVS 6889) (check-in: 1c2bfc43a4 user: drh tags: trunk)
13:18
Change an unreachable condition in btree.c to a NEVER(). (CVS 6888) (check-in: 9f800e1139 user: danielk1977 tags: trunk)
11:22
In sqlite3PagerWrite(), do not set the PGHDR_NEED_SYNC flag on a page if an IO error occured while attempting to journal it. (CVS 6887) (check-in: b9be365d85 user: danielk1977 tags: trunk)
09:41
Remove an assert ("assert( subpage>0 )") from btree.c that may not be true for a corrupt database. Also add comments and other assert() statements to btree.c function moveToRoot(). (CVS 6886) (check-in: 3151dab9c7 user: danielk1977 tags: trunk)
07:30
Remove a case from BtreeMovetoUnpacked() that is unreachable as of (6881). (CVS 6885) (check-in: 39ce2097da user: danielk1977 tags: trunk)
2009-07-12
02:32
Simplifications to btree.c to help facilitate coverage testing. (CVS 6884) (check-in: dfb146ef00 user: drh tags: trunk)
02:31
When an OOM fault occurs while moving a page for autovacuum in an in-memory database, be sure to undo the page move prior to returning the error, to avoid corrupting the in-memory database file. (CVS 6883) (check-in: d0964b9366 user: drh tags: trunk)
2009-07-11
18:26
Remove an unused parameter from the accessPayload() function in btree.c. (CVS 6882) (check-in: 7deb6568d8 user: drh tags: trunk)
17:39
Fix a case where deleting a row from a corrupt database could cause an assert to fail. (CVS 6881) (check-in: 6994b41a94 user: danielk1977 tags: trunk)
17:04
Bug fix in the computation of the number of pages to autovacuum when nReserve is greater than zero. (CVS 6880) (check-in: 618a83d65f user: drh tags: trunk)
13:13
Unwind some complex conditions in sqlite3BtreeDelete() into separate "if" statements. (CVS 6879) (check-in: d99bde9ca6 user: drh tags: trunk)
11:45
Remove another unreachable branch from btree.c. (CVS 6878) (check-in: b0853100a9 user: danielk1977 tags: trunk)
06:55
Modify the integrity-check code so that each b-tree page inspected is reinitialized while doing so, even if an initialized copy exists in the cache. This prevents an assert from failing when running integrity_check on a corrupt database. (CVS 6877) (check-in: 709576c670 user: danielk1977 tags: trunk)
05:06
Remove unreachable condition from btree.c. (CVS 6876) (check-in: 47b40fefa6 user: danielk1977 tags: trunk)
2009-07-10
16:51
Fix a pager reference count leak in btree that occurs on an OOM following a database page size change. (CVS 6875) (check-in: c6dfc8bd39 user: drh tags: trunk)
09:24
Fix a double-free that can occur when using the fts3 legacy syntax '-' operator. Add tests for the same operator. Ticket #3960. (CVS 6874) (check-in: c19d419e8c user: danielk1977 tags: trunk)
02:52
Simplifications to the PRAGMA integrity_check logic in btree.c. (CVS 6873) (check-in: 440c573c7e user: drh tags: trunk)
2009-07-09
13:25
Fix two faulty assert() statements btree. (It was possible for the assertions to be false given a corrupt database file as input.) (CVS 6872) (check-in: 9403f04dfd user: drh tags: trunk)
11:36
Remove an unused branch from btree.c. (CVS 6871) (check-in: 45efb78a8a user: danielk1977 tags: trunk)
08:27
In btree.c, have setSharedCacheLock() assume that the b-tree is sharable instead of checking to see if it is. The caller has already performed this check. (CVS 6870) (check-in: 3190eefd5f user: danielk1977 tags: trunk)
05:07
Restore (btree_set_cache_size) to test3.c. This is used on unix for the tcl "crash tests". Make some functions no longer used outside of btree.c static. (CVS 6869) (check-in: 1d96ce8c76 user: danielk1977 tags: trunk)
03:20
removed the test function sqlite3BtreeFlags() (test code only); (CVS 6868) (check-in: 579ba6c83f user: shane tags: trunk)
02:48
removed unused functions from test3.c (test code only); (CVS 6867) (check-in: 0eb69e8dda user: shane tags: trunk)
02:24
Simplifications and additional testcase() macros for btree.c. (CVS 6866) (check-in: 1b8c3a8246 user: drh tags: trunk)
2009-07-08
18:50
Fix a typo in (6861): "ifndef SQLITE_TEST" -> "ifdef SQLITE_TEST". (CVS 6865) (check-in: 890dbab28c user: danielk1977 tags: trunk)
18:45
Revert part of (6860) that was accidentally checked in. (CVS 6864) (check-in: 11e295ccd2 user: danielk1977 tags: trunk)
18:12
Add another boundary-condition testcase() macro to btree.c. Correct the comment on modifyPagePointer(). (CVS 6863) (check-in: fed66e8695 user: drh tags: trunk)
16:54
Improvements to comments in btree.c:freeSpace(). Added a testcase() macro to verify a boundary case is tested in sqlite3BtreeInitPage(). (CVS 6862) (check-in: 5ac991b3ce user: drh tags: trunk)
15:14
Comment out sqlite3BtreeFlags() when not in debug mode. Tweaks to database corruption detection logic in freeSpace(). (CVS 6861) (check-in: 196cbf8229 user: drh tags: trunk)
13:55
Fix error handling in sqlite3BtreePutData(). (CVS 6860) (check-in: 86eba4f16f user: danielk1977 tags: trunk)
08:05
Remove an ALWAYS clause that could be false if an IO error within a statement executed by a virtual table caused an emergency rollback. (CVS 6859) (check-in: 0cc705c2c4 user: danielk1977 tags: trunk)
01:49
Simplifications to sqlite3BtreeInsert() and allocateSpace(). Added many testcase() macros to verify boundary conditions in btree.c. (CVS 6858) (check-in: aab82a229a user: drh tags: trunk)
2009-07-07
17:38
Improvements to corrupt database detection in defragmentPage(). (CVS 6857) (check-in: 87bbc8d6b6 user: drh tags: trunk)
15:47
Do not load the root-page of a b-tree table/index when opening a cursor. Instead, allow it to be loaded when the cursor is first used (in function moveToRoot()). Also move the root-page flags sanity checks that were a part of the OP_OpenRead/OpenWrite opcodes into the moveToRoot() function. (CVS 6856) (check-in: 06dcfe72a6 user: danielk1977 tags: trunk)
13:56
If an error occurs in PagerBegin(), call pager_end_transaction() to reset the internal state of the pager object. (CVS 6855) (check-in: ea7ed16628 user: danielk1977 tags: trunk)
11:39
Fix a reference count problem following database corruption detection in the ptrmapPut() routine of btree.c. (CVS 6854) (check-in: ec1e27e33b user: drh tags: trunk)
02:44
Simplifications to btree.c and vdbeaux.c in support of structural coverage testing. (CVS 6853) (check-in: fc2a40a9db user: drh tags: trunk)
2009-07-06
21:54
Fix the pager so that it remembers the name of the journal for an in-memory database as an empty string. This is important when committing a multi-database transaction that includes one or more attached memory databases. (CVS 6852) (check-in: 31a5e8192e user: drh tags: trunk)
19:03
Fix the backup logic so that it detects a failure to sqlite3BtreeUpdateMeta() and reports that failure back up to the top level. (CVS 6851) (check-in: 471b92f251 user: drh tags: trunk)
18:56
Make the sqlite3BtreeMoveto function static, since it is only used from within btree.c. Remove unused function lockBtreeWithRetry from btree.c. (CVS 6850) (check-in: 30d5ec62ab user: danielk1977 tags: trunk)
00:44
Simplifications and comment cleanup in vdbeaux.c. (CVS 6849) (check-in: 1636e7831a user: drh tags: trunk)
2009-07-04
17:16
Remove unreachable code from function btreeCursor() in btree.c. (CVS 6848) (check-in: c76a366ed4 user: danielk1977 tags: trunk)
15:41
Remove a redundant branch from btree.c. (CVS 6847) (check-in: 133357d2f0 user: danielk1977 tags: trunk)
2009-07-03
22:54
Remove two unused fields from the Parse structure. The TCL interface now removes leading whitespace from SQL statements before parsing them. (CVS 6846) (check-in: 983cb6924b user: drh tags: trunk)
19:19
Remove unused code (that was commented out) from prepare.c. Remove an incorrect NEVER() macro. Fix the comment on schemaIsValid() to correctly describe its return behavior. (CVS 6845) (check-in: 90deb65835 user: drh tags: trunk)
19:18
Cause sqlite3_exec() to return SQLITE_NOMEM if it cannot allocate memory to hold the error message for some other error. (CVS 6844) (check-in: e9849292ab user: drh tags: trunk)
17:23
Remove an unused variable from the test code in test3.c. (CVS 6843) (check-in: 9e35bec9ef user: drh tags: trunk)
17:09
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) (check-in: d426cc64f6 user: drh tags: trunk)
16:25
Simplify the way the read-uncommitted flag is handled to facilitate test coverage. (CVS 6841) (check-in: e2112d6160 user: danielk1977 tags: trunk)
15:37
Make explicit the restrictions on UPDATE, DELETE, and INSERT statement syntax within triggers. Ticket #3947. (CVS 6840) (check-in: c8bf40df7b user: drh tags: trunk)
12:57
Test the result of pthread_create() and do not call pthread_join() if the thread creation failed. Ticket #3933. (CVS 6839) (check-in: 304c5110ad user: drh tags: trunk)
2009-07-02
18:40
Fix to sqlite3AuthRead to accommodate "new" or "old" references that are used in a context where a column reference may also be used (i.e. "SELECT new.
17:21
When a b-tree transaction is committed when there are open cursors, downgrade shared-cache write-locks to read-locks instead of relinquishing all locks. Fix for #3942. (CVS 6837) (check-in: 611e704fdf user: danielk1977 tags: trunk)
07:47
Cause opening a transaction on a sharable b-tree module automatically obtain a read-lock on page 1. This means there is no way for sqlite3BtreeGetMeta() to fail. (CVS 6836) (check-in: e3c055f167 user: danielk1977 tags: trunk)
05:23
Fix for compilation with OMIT_AUTOVACUUM defined. Ticket #3940. (CVS 6835) (check-in: 8f0591ae98 user: danielk1977 tags: trunk)
2009-07-01
18:09
Change to test code and scripts allowing memsys3 to be tested using a build that has both memsys3 and memsys5 enabled. (CVS 6834) (check-in: a00aeec21c user: danielk1977 tags: trunk)
18:04
Fix a 1-byte buffer overwrite that can occur when a virtual table overloads an SQL function. (CVS 6833) (check-in: bfe336a899 user: danielk1977 tags: trunk)
16:12
Report an error if a USING or ON clause is specified following a from-list element that is not to the right of a join operator. Fix for #3846. (CVS 6832) (check-in: 29b48972b6 user: danielk1977 tags: trunk)
14:56
Do not ignore alias "a" in a query of the form "SELECT ... FROM (...) AS a" Fix for #3935. Also expand upon (6751) to fix some similar obscure memory leaks. (CVS 6831) (check-in: 42f9d1e564 user: danielk1977 tags: trunk)
2009-06-29
06:00
Cause incremental-blob read/write operations lock shared-cache tables in the same way as normal SQL read/writes. Add complex assert statements to make sure tehe correct shared-cache locks are held when accessing the database. Eliminate some redundant checks from btree.c. (CVS 6830) (check-in: f17ef37897 user: danielk1977 tags: trunk)
2009-06-27
14:10
Version 3.6.16 (CVS 6829) (check-in: ff691a6b2a user: drh tags: trunk, release)
11:17
Fix an instance where sqlite3JumpHere() might be called with a negative address following an OOM fault. (CVS 6828) (check-in: 49f22e55d6 user: drh tags: trunk)
00:48
Fix a bug in sqlite3_realloc() - if called with a size of more than 2147483392 it returns 0 but it also releases the prior allocation. (CVS 6827) (check-in: 653df0afcc user: drh tags: trunk)
2009-06-26
18:35
Remove incorrect NEVER() macros from malloc.c. The allocations can be exceeded using sqlite3_malloc() and sqlite3_realloc(). (CVS 6826) (check-in: 0d345e5923 user: drh tags: trunk)
16:32
Removed a few compiler warnings under MSVC. (CVS 6825) (check-in: f01a9fc375 user: shane tags: trunk)
15:14
Remove the priorNewRowid field from the sqlite3 structure. Use the last_insert_rowid as the initial value when searching for a new random rowid in the OP_NewRowid opcode. (CVS 6824) (check-in: 96729b2d49 user: drh tags: trunk)
14:17
Skip a couple tests requiring working 64bit int support on platforms without that support. Test code change only. (CVS 6823) (check-in: d8c8145c9d user: shane tags: trunk)
14:04
When sqlite3VdbeAddOp() fails due to an OOM fault, return an address of 1 rather than zero so that there appears to always be a prior instruction. This prevents a negative jump-to address computation in where.c following an OOM fault. (CVS 6822) (check-in: fe02339cb2 user: drh tags: trunk)
12:30
Fix a test script problem in exclusive.test. (CVS 6821) (check-in: a52ef5a421 user: danielk1977 tags: trunk)
12:15
Fix the new pager.c changes so that they compile with IOTRACE defined. Fix an out-of-order variable definition in vdbeaux.c. (CVS 6820) (check-in: ac14502850 user: drh tags: trunk)
10:39
Another change to test_journal.c to account for (6817). Again, only test code has changed. (CVS 6819) (check-in: 58884b6c50 user: danielk1977 tags: trunk)
09:01
Update test_journal.c to account for (6817). Changes to test code only. (CVS 6818) (check-in: 542ee8cced user: danielk1977 tags: trunk)
07:12
Avoid writing the 8-byte journal-header magic until the journal-header is synced. In persistent journal-mode, this prevents any old content that follows an unsynced journal-header from being interpreted as part of the rollback journal. (CVS 6817) (check-in: a5ecffcf02 user: danielk1977 tags: trunk)
2009-06-25
16:11
Fix a problem with a return code being ignored in insertCell(). (CVS 6816) (check-in: bb5f1c0143 user: danielk1977 tags: trunk)
11:50
Get the notify2.test running again by removing an ALWAYS() that was mistakenly inserted and by taking care not to report corruption following an SQLITE_LOCKED failure during schema parsing. (CVS 6815) (check-in: 6e9140a729 user: drh tags: trunk)
09:40
Replace an "if" condition that is always true in btree.c with an assert(). (CVS 6814) (check-in: daadbd9a8f user: danielk1977 tags: trunk)
01:47
Improved handling of oversize string and blob errors. Other simplifications in support of full coverage testing. (CVS 6813) (check-in: 8b34076668 user: drh tags: trunk)
2009-06-24
13:16
Remove an ALWAYS() macro from vdbe.c that sometimes fails on thread tests. (CVS 6812) (check-in: 52eac078c7 user: drh tags: trunk)
13:13
Disable the new malloc-37 test when locking_mode==exclusive. The test basically works, but sometimes reports "database is locked" instead of "out of memory" and that messes up the error reporting. (CVS 6811) (check-in: 3b8f9dec24 user: drh tags: trunk)
11:08
Remove a declaration of the sqlite3Assert() function that was deleted by the previous check-in. (CVS 6810) (check-in: ee20b6a23f user: drh tags: trunk)
10:26
Remove the sqlite3Assert() function. The ALWAYS() and NEVER() macros call assert() directly when compiled with SQLITE_DEBUG. (CVS 6809) (check-in: d8fc373fef user: drh tags: trunk)
05:40
Simplify things by rolling the functionality of balance_shallower() into balance_nonroot(). (CVS 6808) (check-in: 11750c6aee user: danielk1977 tags: trunk)
2009-06-23
20:28
Enhance autoincrement so that it works with triggers that also do autoincrement inserts, even multiple inserts into the same table. Ticket #3928 (CVS 6807) (check-in: 1330993de8 user: drh tags: trunk)
16:40
Remove a condition from balance_nonroot() that is always true. (CVS 6806) (check-in: c5dc80e6bd user: danielk1977 tags: trunk)
15:43
Call balance_shallower() from balance_nonroot() instead of from balance(). This simplifies coverage testing a bit. (CVS 6805) (check-in: da9893e23c user: danielk1977 tags: trunk)
14:39
Update the configure script for version 3.6.16 (CVS 6804) (check-in: b614e554f7 user: drh tags: trunk)
14:18
Update the version number in preparation for the next release. (CVS 6803) (check-in: 207c4a02ba user: drh tags: trunk)
14:15
Simplifications to vdbe.c to promote better test coverage. (CVS 6802) (check-in: 3ffc93d762 user: drh tags: trunk)
11:53
Add a test to verify that #3929 is fixed. (CVS 6801) (check-in: 16c1ae9bde user: danielk1977 tags: trunk)
11:22
Fix a failing assert in btree.c. The same bug was causing a spurious SQLITE_CORRUPT return when compiled without SQLITE_DEBUG. (CVS 6800) (check-in: 47ec874947 user: danielk1977 tags: trunk)
2009-06-22
19:05
Simplifications to vdbe.c and it service routines in support of coverage testing. (CVS 6799) (check-in: 308f2e6152 user: drh tags: trunk)
18:03
Remove a condition that is always true from btree.c. (CVS 6798) (check-in: 3ec8b37a89 user: danielk1977 tags: trunk)
12:05
Make sure sqlite3BtreeCreateTable() returns an error code if the largest rootpage field is invalid in auto_vacuum mode. Update file-format comments to describe all of the "meta" values. (CVS 6797) (check-in: bda38f5e86 user: drh tags: trunk)
11:10
More simplifications to vdbe.c. Remove a NEVER() from vdbe.c that is possible after all. (CVS 6796) (check-in: c8f009bd24 user: drh tags: trunk)
05:43
If an OOM error occurs just after obtaining a shared lock on the database file, release the lock before returning. (CVS 6795) (check-in: 971a9650f6 user: danielk1977 tags: trunk)
00:55
Simplifications to vdbe.c in support of coverage testing. (CVS 6794) (check-in: 16680f05bd user: drh tags: trunk)
2009-06-20
18:52
When recovering from the error-state in pagerSharedLock(), do not search for a hot-journal in the file-system if the pager is configured to use an anonymous temp file as the journal. (CVS 6793) (check-in: 4b46805cbc user: danielk1977 tags: trunk)
11:54
If after obtaining an exclusive lock to rollback a hot-journal file it is found that the journal file has been deleted, do not return an SQLITE_BUSY error. Just downgrade the lock and continue with the current operation. This eliminates a spurious SQLITE_BUSY error caused by a race condition. (CVS 6792) (check-in: 9a06660037 user: danielk1977 tags: trunk)
2009-06-19
22:50
Improved documentation on the VFS methods. Ticket #3925. (CVS 6791) (check-in: f66fc7713e user: drh tags: trunk)
22:23
Do now allow a COMMIT to occur while even a single write operating is in progress. (CVS 6790) (check-in: 605520ec04 user: drh tags: trunk)
18:32
Fix the comment on the sqlite3PExpr() subroutine. Ticket #3924. (CVS 6789) (check-in: 4bb96db6b4 user: drh tags: trunk)
17:50
If a call is made to sqlite3PagerAcquire when there are no outstanding references to any pages and the pager is in the error-state, try to exit the error-state at this point. Previously this was only attempted if the pager was configured to use exclusive mode. (CVS 6788) (check-in: 62db08bc0d user: danielk1977 tags: trunk)
16:44
Make sure group_concat() ignores initial NULL values. (CVS 6787) (check-in: 90c3b23cca user: drh tags: trunk)
14:06
Reorganize and cleanup the prepared statement object. Remove code that has been commented out for ages and is no longer relevant to anything. (CVS 6786) (check-in: 37ae5f5e8f user: drh tags: trunk)
02:25
Fix a possible segfault when backing up an encrypted database. (CVS 6785) (check-in: 7d8f178c81 user: drh tags: trunk)
00:33
Make sure the sqlite3VdbeGetOp() subroutine works even when SQLite is compiled with SQLITE_OMIT_TRACE. (CVS 6784) (check-in: 1c8ec2a6e4 user: drh tags: trunk)
2009-06-18
20:52
Changes to the backup functionality so that it works better with codecs. (CVS 6783) (check-in: 87d6796d98 user: drh tags: trunk)
17:22
Move codec management from database connections into the pager so that it will work together with shared cache. (CVS 6782) (check-in: ed08b53cd6 user: drh tags: trunk)
11:34
Update the filefmt.test test script to conform to the previous check-in. (CVS 6781) (check-in: 40a40e81b3 user: drh tags: trunk)
11:29
Reduce the minimum usable page space to 480 byte from 500 bytes. (CVS 6780) (check-in: db4fb83536 user: drh tags: trunk)
00:41
Remove the P3 operand from OP_IsNull since it was not being used. (CVS 6779) (check-in: 767ef1e4a1 user: drh tags: trunk)
2009-06-17
22:50
Avoid an assertion fault if an out-of-memory error occurs while trying to run the string-concatentation operator on a zero-blob. (This is an absurd thing to do, but even so, we still should not fault.) (CVS 6778) (check-in: 0def0b76b9 user: drh tags: trunk)
21:42
Fix a problem in vdbe.c that could cause a double-free of memory if the SQLITE_LIMIT_LENGTH is changed after a statement is prepared but before it is run. Also remove debugging statements from tkt3841.test. (CVS 6777) (check-in: 3d7327fd6a user: drh tags: trunk)
16:20
Use caution to avoid integer overflow when doing real to integer affinity operations. Ticket #3922. (CVS 6776) (check-in: 392559465d user: drh tags: trunk)
13:57
Fix a potential segfault following database corruption. Problem made visible by check-in (6772). (CVS 6775) (check-in: 69eb0ff817 user: drh tags: trunk)
13:09
Suppress some -Wextra compiler warnings from GCC. (CVS 6774) (check-in: 59ec937ce2 user: drh tags: trunk)
11:49
Fix a bug affecting secure-delete mode introduced by (6768). (CVS 6773) (check-in: a433ca821c user: danielk1977 tags: trunk)
11:13
Fix for #3918. Also, fix the TRACE macros in balance_nonroot(). (CVS 6772) (check-in: 368e44ec2e user: danielk1977 tags: trunk)
01:17
A minor simplification to the tokenizer. (CVS 6771) (check-in: 18f2076ac2 user: drh tags: trunk)
00:35
Changes to prepare.c and callback.c to promote better test coverage. (CVS 6770) (check-in: 08cca219f1 user: drh tags: trunk)
2009-06-16
17:49
Changes sqlite3_prepare_v2() (and related routines) so that if it fails due to a missing table and the schema is out of date, it retries once before returning SQLITE_SCHEMA. Other changes to prepare.c to facilitate coverage testing. (CVS 6769) (check-in: 256ec3c6af user: drh tags: trunk)
16:50
Changes to balance_nonroot() and BtreeDelete() to simplify delete operations and reduce stack/heap usage while balancing b-tree structures. (CVS 6768) (check-in: 092b276e7d user: danielk1977 tags: trunk)
14:15
Fix a link error and warning that can occur in where.c when compiling under MSVC with SQLITE_OMIT_VIRTUALTABLE defined. Ticket #3914. (CVS 6767) (check-in: 793c93be16 user: shane tags: trunk)
04:35
Leave out a redundant line in build.c. Ticket #3916. (CVS 6766) (check-in: d9f997aeb7 user: danielk1977 tags: trunk)
04:31
Remove a duplicate assert from btree.c. Ticket #3915. (CVS 6765) (check-in: d89542cd8b user: danielk1977 tags: trunk)
2009-06-15
23:15
Additional updates to the symbol resolver and expression tree walker to facilitate test coverage. (CVS 6764) (check-in: a49c2d4bef user: drh tags: trunk)
20:45
Changes to allow a clean compile with no floating-point instructions generated when SQLITE_OMIT_FLOATING_POINT is used. (CVS 6763) (check-in: 1591b8322b user: drh tags: trunk)
18:32
Updates to resolve.c to facilitate full coverage testing. (CVS 6762) (check-in: c50f0f28df user: drh tags: trunk)
16:27
Fix compiler warnings with MSVC build. (CVS 6761) (check-in: e1e6430752 user: shane tags: trunk)
03:28
Version 3.6.15 (CVS 6760) (check-in: aff34826aa user: drh tags: trunk, release, version-3.6.15)
00:04
Update the configuration script for version 3.6.15. (CVS 6759) (check-in: 14df65dc04 user: drh tags: trunk)
2009-06-14
12:47
Detect database corruption and abort balance_nonroot() before the corruption causes problems. (CVS 6758) (check-in: 3448b39dcd user: drh tags: trunk)
2009-06-12
17:46
Change lemon so that it does not generate yytestcase() macros on destructor cases since destructors are commonly unreachable in a reasonable grammar. For the reduce-rule switch, gather all no-ops into the "default:" case. (CVS 6757) (check-in: caebfe82cb user: drh tags: trunk)
15:47
The previous check-in ((6755)) put in more yytestcase() macros than are called for. This check-in addresses that problem. (CVS 6756) (check-in: a5b182f93b user: drh tags: trunk)
13:53
The lemon parser generator now inserts yytestcase() macros on reduce action and on each destructor, to verify that all have been executed. yytestcase() is a no-op by default but can be set to something more useful inside of %include. (CVS 6755) (check-in: fe9c917734 user: drh tags: trunk)
12:50
In lemon: omit unused entries from the end of the yyFallback array. (CVS 6754) (check-in: 9cfbe2ba68 user: drh tags: trunk)
12:04
Enable the SQLITE_LIMIT_FUNCTION_ARG limiter. (CVS 6753) (check-in: a17e331717 user: drh tags: trunk)
11:42
Remove a C++-ism from the code. Ticket #3912. (CVS 6752) (check-in: bc729bc3e6 user: drh tags: trunk)
03:47
An additional memory leak in the parser fixed. Ticket #3911. (CVS 6751) (check-in: 6197b49271 user: drh tags: trunk)
03:27
Make sure nested queries with USING clauses do not leak memory. Preliminary fix for ticket #3911. (CVS 6750) (check-in: bd341a103c user: drh tags: trunk)
02:27
Modifications to the parser to eliminate unreachable code. (CVS 6749) (check-in: 457e0b245b user: drh tags: trunk)
2009-06-11
17:32
Honor the SQLITE_OPEN_READONLY flag even on a :memory: or temporary database, even though such a database is pointless. Ticket #3908. (CVS 6748) (check-in: 73ba841ac1 user: drh tags: trunk)
17:04
Add an ALWAYS() to a conditional in where.c. (CVS 6747) (check-in: 1fdb3e1e9a user: drh tags: trunk)
00:47
Changes to reenable codec operation and to handle memory allocation failures within a codec. (CVS 6746) (check-in: 43a6ca98b1 user: drh tags: trunk)
2009-06-10
19:33
Do not let the reverse_unordered_selects pragma force the use of an index that would not otherwise be used. Ticket #3904. Also: remove an test which is always true. (CVS 6745) (check-in: 78a391dca0 user: drh tags: trunk)
11:07
Remove a NEVER() that can sometimes occur on an OOM error. (CVS 6744) (check-in: c27f23bbaf user: drh tags: trunk)
09:11
Minor tweak to balance_quick() to save a few instructions. (CVS 6743) (check-in: 9ace995910 user: danielk1977 tags: trunk)
2009-06-09
19:53
Remove the actual checks that verify that memory pools (such as set up using SQLITE_CONFIG_HEAP) are 8-byte aligned. But document that 8-byte alignment is required. (CVS 6742) (check-in: e9b55ccc8b user: drh tags: trunk)
18:58
Fix compiler warnings with MSVC build. (CVS 6741) (check-in: 0bd84e7387 user: shane tags: trunk)
18:14
Avoid a false failure report in the test scripts caused by the vdbe stack "compression" script. (CVS 6740) (check-in: 9d3329891c user: shane tags: trunk)
18:02
Require that the buffer specified by SQLITE_CONFIG_HEAP be 8-byte aligned. (CVS 6739) (check-in: 18b78068cc user: drh tags: trunk)
18:01
Changes to tokenize.c to facilitate full coverage testing. (CVS 6738) (check-in: 5e8c48cff7 user: drh tags: trunk)
15:25
Change savepoint4.test to limit database growth. Otherwise the test can take a very long time to run, depending on the prng. (CVS 6737) (check-in: ed1d4f47ee user: danielk1977 tags: trunk)
14:27
Modify mkkeywordhash.c so that it puts the original text of each token in a comment beside the "testcase()" macros. (CVS 6736) (check-in: a7d0817c17 user: drh tags: trunk)
13:42
Enable cell overflow checking in sqlite3BtreeInitPage() using the compile-time option SQLITE_ENABLE_OVERSIZE_CELL_CHECK. Change the tests so that they recognize different error messages depending on the setting of this macro. (CVS 6735) (check-in: 56bff6eb2f user: drh tags: trunk)
11:34
Avoid calling fillInCell() to create an internal node intkey cell from balance_nonroot(). A single putVarint() does the same thing more quickly. (CVS 6734) (check-in: 2e5d42aeb4 user: danielk1977 tags: trunk)
10:37
Only do the cell overread checks in sqlite3BtreeInitPage if SQLITE_OVERREAD_CHECK is defined at compile-time. (CVS 6733) (check-in: 49f544ebae user: drh tags: trunk)
09:41
Do not clear the MemPage.nFree variable when insertCell() adds an overflow cell to a page. Not doing this means balance_quick() can avoid a call to sqlite3BtreeInitPage(). (CVS 6732) (check-in: 8f1c1f61f7 user: danielk1977 tags: trunk)
2009-06-08
19:44
Additional comments to clarify the operation of the LIKE optimizer in where.c. (CVS 6731) (check-in: cc9c12170c user: drh tags: trunk)
17:11
Clarification of the operation of the OR-term optimizer in where.c. (CVS 6730) (check-in: 6b42dc3d04 user: drh tags: trunk)
14:49
Change the btree balance code so that it does not call balance_nonroot() recursively. (CVS 6729) (check-in: 7863db904d user: danielk1977 tags: trunk)
12:52
Increase the version number to 3.6.15 in preparation for the next release. (CVS 6728) (check-in: 456ea541d6 user: drh tags: trunk)
2009-06-07
23:45
Disable the LIKE optimization if the affinity of the LHS column is not TEXT. Ticket #3901. (CVS 6727) (check-in: a255c645c4 user: drh tags: trunk)
2009-06-06
19:21
Update the error message on one of the corruption tests to account for the fact that we are finding the corruption sooner. (CVS 6726) (check-in: ba9848e7b8 user: drh tags: trunk)
16:08
Fix an error in the malloc.test test script causing a small buffer overread. (CVS 6725) (check-in: 4d129bee69 user: danielk1977 tags: trunk)
15:17
Make sure the result of sqlite3VdbeGetOp() is not used as an array following an OOM error, since after (6691) it might be a single-entry dummy opcode. (CVS 6724) (check-in: 127b139819 user: drh tags: trunk)
14:13
When building in debug mode with gcc, force the nullMem variable in function columnMem() to be aligned to an 8-byte boundary. Otherwise an assert() statement may fail. (CVS 6723) (check-in: 3fd6c72da5 user: danielk1977 tags: trunk)
2009-06-05
18:44
Detect when database corruption causes an attemp to set the pointer map value for a pointer map page and report the corruption. (CVS 6722) (check-in: 3ae4880bee user: drh tags: trunk)
17:09
Remove leftover "breakpoint" commands from test scripts. Also remove blank lines at the end of scripts. (CVS 6721) (check-in: 1fef16ec2b user: drh tags: trunk)
16:46
Do not cast an unsigned int into an int for comparison. (CVS 6720) (check-in: 302ab855e6 user: drh tags: trunk)
14:17
Take care that a corrupt variable-length integer does not cause 32-bit integer overflow when parsing a record format, nor cause excessively large memory allocations. (CVS 6719) (check-in: 38b20327a8 user: drh tags: trunk)
2009-06-04
19:06
Earlier detection of freelist corruption in the page allocation routines. (CVS 6718) (check-in: e557c8e584 user: drh tags: trunk)
17:02
Fix an assertion fault in balance_quick() that occurs when an interior btree node has zero cells due to database corruption. Also update the corrupt7.test result vectors for a couple of cases where the error report on database corruption changed due to earlier detection. (CVS 6717) (check-in: 1335e4440f user: drh tags: trunk)
16:14
If the root page of a btree is empty and is also not a leaf page and the page is not page 1, then report database corruption. (CVS 6716) (check-in: 52b02ca5f3 user: drh tags: trunk)
14:46
Reduce the stack usage of balance_quick(). (CVS 6715) (check-in: e7ad68e93b user: danielk1977 tags: trunk)
02:47
Minor updates to comments in test scripts. (CVS 6714) (check-in: 453ff88f73 user: shane tags: trunk)
02:46
Minor tweak to test script to ensure every byte in file touched at least once. (CVS 6713) (check-in: bc6c2d894b user: shane tags: trunk)
00:11
Fix two instances where a malformed header in a database file (in other words a corrupt database file) can lead to an assertion fault. (CVS 6712) (check-in: 4e92c7f20a user: drh tags: trunk)
2009-06-03
21:04
Change the pcache1.c implementation so that the "header" occurs at the end of page buffer, not at the beginning. This insures that the 20 bytes immediately following the page buffer are mapped if a read of the page buffer overruns due to a malformed cell. (CVS 6711) (check-in: c54de1f540 user: drh tags: trunk)
17:26
Add corruptD.test, a container for testing the "cell overflow" problem. Also shuffle a small amount of code in BtreeInitPage() to check that the page header pointer to the start of the cell offset array is set to a sane value. (CVS 6710) (check-in: 7fa5d3cb0f user: danielk1977 tags: trunk)
11:25
Define a set of constants to use as the "index" argument to sqlite3BtreeGetMeta and UpdateMeta. This makes some parts of the code easier to follow. (CVS 6709) (check-in: 6dbf4eca00 user: danielk1977 tags: trunk)
01:24
Additional changes to reduce stack usage. The SQLITE_SMALL_STACK compile-time option is now available. (CVS 6708) (check-in: baea79fd0c user: drh tags: trunk)
2009-06-02
21:31
Further reductions in the amount of stack space required. (CVS 6707) (check-in: 04bad9eb6d user: drh tags: trunk)
16:06
Tweaks to vdbe.c to further reduce stack space requirements. (CVS 6706) (check-in: 6f2aab3f7b user: drh tags: trunk)
15:47
Add a test case for ticket #3893 and ticket #3894. (CVS 6705) (check-in: 2472f6db95 user: drh tags: trunk)
15:21
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) (check-in: 7f43391831 user: drh tags: trunk)
2009-06-01
19:53
Avoid allocating large objects on the stack in the incremental BLOB I/O interface. (CVS 6703) (check-in: ea7dfde700 user: drh tags: trunk)
18:18
Malloc for space to hold the Parse object in sqlite3_prepare() and friends. Or, if compiled with SQLITE_USE_ALLOCA, obtain space for the object from alloca(). (CVS 6702) (check-in: c7c0c58e47 user: drh tags: trunk)
17:10
Added assert to verify winMutex system is inited before "static" mutexes are used. (CVS 6701) (check-in: b126013b5a user: shane tags: trunk)
17:06
Ensure that "static" mutexes are deleted on shutdown so that they are not leaked across restarts. (CVS 6700) (check-in: 4e75897ee1 user: shane tags: trunk)
16:53
Fix compiler warnings with MSVC build. (CVS 6699) (check-in: 0791588520 user: shane tags: trunk)
16:42
Fix a couple of Windows only issues with test scripts. (CVS 6698) (check-in: 0f6bc5e1ba user: shane tags: trunk)
2009-05-31
21:21
Code simplifications to facilitate coverage testing following the recent changes to the Expr object. (CVS 6697) (check-in: ee9a144d44 user: drh tags: trunk)
17:16
Fix the ".genfkey" command of the CLI so that it does not leak memory if sqlite3_realloc() fails. Ticket #3891. (CVS 6696) (check-in: a028d69c70 user: drh tags: trunk)
2009-05-30
23:35
Fix typo reported by ticket #3888. Other minor edits to facilitate coverage testing. (CVS 6695) (check-in: 164adf261d user: drh tags: trunk)
20:49
Simplifications to the expr.c source module resulting from structural testing. (CVS 6694) (check-in: f760bb7a03 user: drh tags: trunk)
14:16
Fix for ticket #3887. Other unrelated bits of code cleanup in the expr.c source module. (CVS 6693) (check-in: 00e7250f11 user: drh tags: trunk)
10:46
In vacuum.c use "PagerIsMemdb(X)" instead of "PagerFile(X)->pMethods==0". (CVS 6692) (check-in: 874295ce71 user: danielk1977 tags: trunk)
2009-05-29
19:00
Enhance the sqlite3VdbeGetOp() routine so that it always returns a pointer to VdbeOp, even following an OOM fault. This simplifies error handling in callers. Cleanup to the column cache logic and the expr.c source module. (CVS 6691) (check-in: ede06dacdf user: drh tags: trunk)
14:39
Refinements in expression handling logic that have resulted from recent structural testing. (CVS 6690) (check-in: bd89f2c29b user: drh tags: trunk)
11:57
Still more refinements to the hasHotJournal() fix of ticket #3883. (CVS 6689) (check-in: 726b425e43 user: drh tags: trunk)
10:55
The hasHotJournal() fix of check-in (6687) causes some minor problems in various alternative operating modes, such as locking_mode=EXCLUSIVE. This additional patch attempts to fix those concerns. Ticket #3883. (CVS 6688) (check-in: a2ba61d927 user: drh tags: trunk)
00:30
Modify the hasHotJournal() routine to return a false-positive if it is unable to open the journal file to check its header due to a race condition. Processing downstream of hasHotJournal() already knows how to deal with false-positives. Ticket #3883. (CVS 6687) (check-in: d6b5d8e1ab user: drh tags: trunk)
2009-05-28
21:04
Remove references to deleted function sqlite3ExprRegister(). Changes to the expr.c source module to promote better testing. (CVS 6686) (check-in: 6ae4ad6ebe user: drh tags: trunk)
14:34
Fix a NULL pointer dereference following an OOM error in the column name resolver. (CVS 6685) (check-in: 3b46142532 user: drh tags: trunk)
12:49
Make sure the column name resolver does not try to duplicate Expr.u.zToken when the Expr.u.iValue union member is the element being used. (CVS 6684) (check-in: 376ecf0d87 user: drh tags: trunk)
11:05
Workaround the need for internal API sqlite3BtreeCursorDb(). It was only being used for an assert() statement, which can be done differently. (CVS 6683) (check-in: 5904af6e6d user: danielk1977 tags: trunk)
01:00
Additional refinements to Expr handling. Restore compression of trigger expressions. Change Expr.zToken to Expr.u.zToken and added Expr.u.iValue. Remove an unnecessary ExprDup from CHECK constraint processing. And so forth. (CVS 6682) (check-in: 4ac2bdfbb4 user: drh tags: trunk)
2009-05-27
10:31
Simplifications to the Expr object: Remove Expr.span completely and convert Expr.token into a char* Expr.zToken. Also simplify the Token object by removing the Token.dyn and Token.quoted fields. (CVS 6681) (check-in: 7cb1c3ba07 user: drh tags: trunk)
2009-05-25
15:00
Version 3.6.14.2 (CVS 6680) (Leaf check-in: ab76d1a252 user: drh tags: branch_3_6_14, release)
14:17
Fix the rtree test module so that it works even if the ext/ subfolder is omitted from the tree. (CVS 6679) (check-in: 086206e1f5 user: drh tags: trunk)
12:40
Update the configure script for version 3.6.14.2. (CVS 6678) (check-in: 58373119b7 user: drh tags: branch_3_6_14)
12:02
Port the fix for ticket #3879 (check-in (6676)) to the 3.6.14 branch. (CVS 6677) (check-in: d2fdae8ed1 user: drh tags: branch_3_6_14)
11:46
When pinning a temp register after it is reused by the column cache, make sure all instances of that register in the cache are pinned so that the register is never reused for a different purpose. Ticket #3879. (CVS 6676) (check-in: 5f358e6371 user: drh tags: trunk)
11:46
Add a test case for ticket #3879. (CVS 6675) (check-in: 5b9b66f47b user: danielk1977 tags: trunk)
2009-05-24
21:59
Additional clarification of the 3rd parameter to sqlite3_create_function(). Documentation change only; no changes to code. Ticket #3875. (CVS 6674) (check-in: dd75e376e8 user: drh tags: trunk)
11:08
In the previous, the upper bound on the number of function arguments is 127, not 255. Ticket #3876 (CVS 6673) (check-in: 4fe4c5fac5 user: drh tags: trunk)
11:07
Correct and clarify the documentation on the third parameter to sqlite3_create_function(). (CVS 6672) (check-in: 6b7929ed36 user: drh tags: trunk)
2009-05-22
15:43
Do not transform a WHERE clause of the form "a = ? OR a = ?" to "a IN (?, ?)" if "a" is a column of a virtual table. Ticket #3871. (CVS 6671) (check-in: fad88e71cf user: danielk1977 tags: trunk)
11:12
Add an assert() to pcache1.c to double-check that page cache buffer memory is never allocated if pcache1 is not enabled. Ticket #3872 (CVS 6670) (check-in: 93369d91ab user: drh tags: trunk)
11:10
Additional changes to pcache1 to prevent the page buffer memory from being configured if pcache1 is not enabled. Ticket #3872. (CVS 6669) (check-in: 5153ad19da user: drh tags: trunk)
10:53
Make sure sqlite3_shutdown() completely disables the default pager cache mechanism in pcache1.c. Ticket #3872. Also fix some comments associated with configuring the page cache. (CVS 6668) (check-in: 6240992cef user: drh tags: trunk)
01:02
Add omitted word in the documentation for total_change_count(). ticket #3870. (CVS 6667) (check-in: 3f6fd16f92 user: drh tags: trunk)
01:00
Fix an 8-byte alignment problem on HP/UX. Ticket #3869 (CVS 6666) (check-in: fc64f85092 user: drh tags: trunk)
2009-05-21
20:41
Simplifications to expr.c in support of full coverage testing. (CVS 6665) (check-in: 309adb5e22 user: drh tags: trunk)
15:15
In the CLI in the ".dump" command, do not attempt to clear the sqlite_sequence table until the first row of content of that table is seen. Ticket #3867 (CVS 6664) (check-in: bedd5ad194 user: drh tags: trunk)
14:51
In the CLI, always "dump" the sqlite_sequence table last. Ticket #3867 (CVS 6663) (check-in: a0028d4808 user: drh tags: trunk)
04:42
Add conditional 'extern "C"' block to sqlite3async.h. Ticket #3866. (CVS 6662) (check-in: e4d1b117c9 user: danielk1977 tags: trunk)
2009-05-20
20:10
Fix a memory leak that occurs when an out-of-memory error occurs while preparing a statement that has multiple virtual table updates within triggers. Other virtual table changes to support full-coverage testing. (CVS 6661) (check-in: 02b77a582c user: drh tags: trunk)
16:22
Remove unused, undocumented, and untested error reporting logic from the xFindFunction interface in virtual tables. (CVS 6660) (check-in: 55d6ced262 user: drh tags: trunk)
02:40
Updates to the extension loading logic to support full coverage testing. (CVS 6659) (check-in: 929cfbc66f user: drh tags: trunk)
2009-05-19
19:04
Changes to select.c to facilitate full coverage testing. (CVS 6658) (check-in: f678ed34fa user: drh tags: trunk)
14:21
Improvements to the SQLITE_INT_TO_PTR macro to reduce the number of warnings. For some platforms it might be necessary to compile with the -DHAVE_STDINT_H flag. Ticket #3860. (CVS 6657) (check-in: 1b0ee9d188 user: drh tags: trunk)
03:21
Update the showdb.c utility so that it works with databases larger than 4GiB. (CVS 6656) (check-in: 9675b62236 user: drh tags: trunk)
00:01
Version 3.6.14.1 (CVS 6655) (check-in: e4267c87e5 user: drh tags: branch_3_6_14, release)
2009-05-18
17:11
Port the sqlite3_backup fix of check-in (6632), ticket #3858 onto the 3.6.14.1 branch. (CVS 6654) (check-in: 0d3abee273 user: drh tags: branch_3_6_14)
16:22
Update the configure script for the 3.6.14.1 release. (CVS 6653) (check-in: 4ebb850181 user: drh tags: branch_3_6_14)
16:14
Port patches from the trunk into the 3.6.14.1 branch: the group_concat() fix of check-in (6616), ticket #3841 and the pcache fix of check-in (6619), ticket #3844. (CVS 6652) (check-in: 2a277c55b2 user: drh tags: branch_3_6_14)
16:12
Update the version number for the 3.6.14.1 branch. (CVS 6651) (check-in: f06cae3b5e user: drh tags: branch_3_6_14)
16:04
Fix memdb.test so that it works when OMIT_AUTOVACUUM is defined. (CVS 6649) (check-in: 8c3c0c24c8 user: danielk1977 tags: trunk)
15:46
Changes to select.c in support of full coverage testing. (CVS 6647) (check-in: e225f365bd user: drh tags: trunk)
13:34
Fix a typo on a comment associated with check-in (6641) and ticket #3860. (CVS 6646) (check-in: 43051e0315 user: drh tags: trunk)
2009-05-17
15:29
Remove debugging code accidently left in check-in (6642). Ticket #3862. (CVS 6645) (check-in: 0d97461347 user: drh tags: trunk)
15:26
Take care to free the memory for the ORDER BY clause on SELECT statements containing errors and contained within triggers. Ticket #3863. (CVS 6644) (check-in: dd665eac8c user: drh tags: trunk)
12:07
Fix a typo in the sqlite3_blob_open() documentation. (CVS 6643) (check-in: 92866482ef user: drh tags: trunk)
02:06
Tweaks and simplifications to select.c to facility full coverage testing. (CVS 6642) (check-in: e3ccbc69ba user: drh tags: trunk)
2009-05-16
17:38
Attempt to provide a version of the SQLITE_INT_TO_PTR macro that works on both llvm-gcc-4.2 and MSVC. Ticket #3860. (CVS 6641) (check-in: ddee7ff23e user: drh tags: trunk)
2009-05-15
14:41
Re-enable file locking in async4.test. (CVS 6640) (check-in: f709818728 user: danielk1977 tags: trunk)
2009-05-14
22:37
Documentation enhancements for sqlite3_update_hook(), sqlite3_commit_hook(), and the various incremental blob I/O routines. No changes to code. (CVS 6639) (check-in: e8ca932d8c user: drh tags: trunk)
19:26
Change the sqlite3_backup_finish() interface so that calling it with a NULL pointer is a harmless no-op. One other change to backup.c to facilitate full coverage testing. (CVS 6638) (check-in: 06bc89177b user: drh tags: trunk)
03:21
Documentation updates to better explain the SQLITE_OPEN_EXCLUSIVE flag. Ticket #3855. (CVS 6637) (check-in: 6bd44f36f4 user: shane tags: trunk)
2009-05-13
22:58
Additional simplifications to build.c in support full coverage testing. (CVS 6636) (check-in: 913d111493 user: drh tags: trunk)
17:35
Remove incorrect NEVER() macro in the previous check-in (6634). (CVS 6635) (check-in: c684957991 user: drh tags: trunk)
17:21
Changes to build.c to help facilitate full coverage testing. (CVS 6634) (check-in: 264ace50bb user: drh tags: trunk)
14:46
Do not run async4.test as part of the "journaltest" permutation. It specifically tests that the asynchronous IO backend can be configured to violate the assumptions made by journaltest. (CVS 6633) (check-in: b19bf39bba user: danielk1977 tags: trunk)
07:52
When locking a database file, check if any backup objects need to be restarted even if the page cache is empty. Ticket #3858. (CVS 6632) (check-in: 90309008c3 user: danielk1977 tags: trunk)
2009-05-12
18:00
Remove debugging comments left in the prior check-in by mistake. (CVS 6631) (check-in: 8207056036 user: drh tags: trunk)
17:46
Move the sqlite3MinimumFileFormat() routine from build.c over to alter.c since alter.c is the only code that uses it. Additional changes and cleanup to build.c to facility coverage testing. (CVS 6630) (check-in: 6fe3750a30 user: drh tags: trunk)
13:35
Make sure the SQLITE_OPEN_EXCLUSIVE flag is ignored by sqlite3_open_v2(). That flag is to be used by the VFS interface only. Ticket #3855. (CVS 6629) (check-in: c37f0279eb user: drh tags: trunk)
00:40
Tweaks to build.c to facilitate coverage testing. (CVS 6628) (check-in: 6572b438a0 user: drh tags: trunk)
2009-05-11
23:38
If a virtual table constructor returns SQLITE_NOMEM, set the mallocFailed flag in the corresponding database connection to insure that the error is propagated back to the top layer. (CVS 6627) (check-in: 5635666f20 user: drh tags: trunk)
20:53
Rework the logic that generates a schema for tables created using "CREATE TABLE ... AS SELECT ...". Instead of trying to copy the raw datatype string from the right-hand side, just make the type one of TEXT, INT, REAL, NUM, or nothing. This is much simpler than trying to parse and quote datatype strings. Other minor implifications to build.c are bundled with this change. (CVS 6626) (check-in: 33cf83591e user: drh tags: trunk)
18:22
Enhance the parser to allow nested parentheses in the module argument of a CREATE VIRTUAL TABLE statement. (CVS 6625) (check-in: 93772bd7f5 user: drh tags: trunk)
2009-05-09
23:29
Convert an always-true condition in hash.c into an assert(). (CVS 6624) (check-in: 4237299935 user: drh tags: trunk)
18:59
Add the SQLITE_TESTCTRL_ASSERT and SQLITE_TESTCTRL_ALWAYS codes for the sqlite3_test_control() interface. (CVS 6623) (check-in: 38df91c2ed user: drh tags: trunk)
15:17
Change sqlite_blob_open() so that it zeros the output pBlob pointer when it fails. The other sqlite3_blob interfaces accept a NULL pointer as input. (CVS 6622) (check-in: 999d507b44 user: drh tags: trunk)
00:18
Changes to the trigger.c module that facilitate full coverage testing. (CVS 6621) (check-in: 567ccc68cc user: drh tags: trunk)
2009-05-08
11:34
Fix a warning in the osx-specific part of os_unix.c. Ticket #3847. (CVS 6620) (check-in: 254ca3273c user: danielk1977 tags: trunk)
06:52
Correctly update the cache page-count when discarding pages in the xTruncate() method of the default pcache implementation. Otherwise the effective configured size of the cache shrinks each time xTruncate() is called. Fix for #3844. (CVS 6619) (check-in: 88211ceeec user: danielk1977 tags: trunk)
2009-05-07
14:11
If compiling FTS3 in the amalgamation, include the ctype.h header file. Ticket #3843. (CVS 6618) (check-in: 660108ef7a user: drh tags: trunk)
13:43
Change the sqlite3_create_function() family of routines to return SQLITE_MISUSE instead of SQLITE_ERROR if their parameters are incorrect. (CVS 6617) (check-in: 866f13e28c user: drh tags: trunk)
12:17
Make sure the iteration counter on aggregate functions is reset each time the aggregate is used in an correlated subquery. Ticket #3841. (CVS 6616) (check-in: 4a86de35d5 user: drh tags: trunk)
02:26
Version 3.6.14 (CVS 6615) (check-in: 469ad1ded3 user: drh tags: trunk, release)
2009-05-06
19:03
Fix compiler warning found with gcc -Wextra. (CVS 6614) (check-in: 93bdbc5e2f user: drh tags: trunk)
18:57
Changes to silence compiler warnings under MSVC. (CVS 6613) (check-in: df599237e1 user: shane tags: trunk)
18:42
Fix three variable initialization problems found by valgrind. (CVS 6612) (check-in: 3742843597 user: drh tags: trunk)
15:24
updated vxworks makefile for 3.6.14 release (CVS 6611) (check-in: 5d4bffaabb user: chw tags: trunk)
00:52
Add a short pause to force a context swap while waiting for a separate process to clear its lock in the lock4.test script. (CVS 6610) (check-in: 4357e76d53 user: drh tags: trunk)
00:49
Fix the test case misc3-6.11 so that it works correctly on UTF16 databases after the fix of for ticket #3838, check-in (6603) (CVS 6609) (check-in: c1e739e39b user: drh tags: trunk)
2009-05-05
20:02
Minor changes to the sqlite3_exec() implementation in legacy.c to facility full coverage testing. (CVS 6608) (check-in: 9e3016c184 user: drh tags: trunk)
18:01
Bump the version number up to 3.6.14. (CVS 6607) (check-in: f4549904b2 user: drh tags: trunk)
17:37
Changes to vacuum.c to facilitate full coverage testing. (CVS 6606) (check-in: 866284654c user: drh tags: trunk)
15:46
Make sure the left-shift operator never overflows. (CVS 6605) (check-in: 300da30178 user: drh tags: trunk)
15:46
Changes to update.c to facilitate full coverage testing. (CVS 6604) (check-in: 25a11b9eca user: drh tags: trunk)
12:54
Make sure the default value on a column added using ALTER TABLE has the correct encoding. Ticket #3838. (CVS 6603) (check-in: 7f89a860b7 user: drh tags: trunk)
2009-05-04
20:20
Make sure va_arg() does not occur on the same line as any "if" statement or "?" operator. (CVS 6602) (check-in: 3543be6e34 user: drh tags: trunk)
19:01
Avoid parsing cells that fit entirely on the b-tree page when searching a b-tree index. (CVS 6601) (check-in: 77a8239548 user: danielk1977 tags: trunk)
18:01
Changes to auth.c to promote full coverage testing. (CVS 6600) (check-in: c7615b4458 user: drh tags: trunk)
11:42
Speed up INSERT operations that add data to UNIQUE or PRIMARY KEY indexes by rationalizing duplicate seek operations. (CVS 6599) (check-in: cac4f3d812 user: danielk1977 tags: trunk)
01:58
Work toward cleaning up the authorizer interface. Work is on-going. This is an incremental check-in. (CVS 6598) (check-in: 694662f786 user: drh tags: trunk)
2009-05-03
20:23
Changes to facility full coverage testing of util.c. (CVS 6597) (check-in: a612299092 user: drh tags: trunk)
01:01
More changes to insert.c to facilitate full coverage testing. (CVS 6596) (check-in: 46c4ec968b user: drh tags: trunk)
2009-05-02
15:46
Simplifications to the uniqueness constraint failure error message generation code. (CVS 6595) (check-in: 8f3cac7682 user: drh tags: trunk)
13:29
Remove the aFKey hash table, which was not being used. Simplify the FKey object. Simplify the hash.c module since the copyKey parameter formerly used only by aFKey is now no longer required. (CVS 6594) (check-in: 80c43a355c user: drh tags: trunk)
12:02
Reduce the size of an integer literal in rowhash.tcl so that the test is able to run with the default TCL installation on Mac OS 10.5. (CVS 6593) (check-in: 2229accef3 user: drh tags: trunk)
10:03
When a cursor points at the last entry of an intkey btree after an insert, leave it there (instead of moving it to the tree root node). This speeds up statements of the form "INSERT INTO ... SELECT ..." that use auto-generated rowids. (CVS 6592) (check-in: 9950c0a79c user: danielk1977 tags: trunk)
07:36
Do not reset the cursor before seeking it in sqlite3BtreeInsert(). This speeds up INSERT operations that use auto-generated rowid values. (CVS 6591) (check-in: 20c4acc291 user: danielk1977 tags: trunk)
00:28
When checking indices for xfer compatibility, compare collating sequences by string, not by pointer. (CVS 6590) (check-in: 7d2b80c7ad user: drh tags: trunk)
2009-05-01
21:13
Record within the Token structure itself whether or not the token has been dequoted. This steals one bit from the length of a token and thus limits the size of tokens to 1GiB. (CVS 6589) (check-in: 12bcb03d9b user: drh tags: trunk)
15:17
Fix an error message that is generated if the number of columns do not match on an INSERT into a virtual table with hidden columns. (CVS 6588) (check-in: 795b453c9a user: drh tags: trunk)
13:16
Update PRAGMA integrity_check so that it treats SQLITE_IOERR_NOMEM errors from underlying components the same as SQLITE_NOMEM errors. (CVS 6587) (check-in: 26444f2a44 user: drh tags: trunk)
10:55
Change lock2.test so that it does not enter a busy loop if the child process exists unexpectedly. (CVS 6586) (check-in: 164a7f5a45 user: danielk1977 tags: trunk)
06:19
Remove a NEVER() clause from a condition that is true at least once when running attachmalloc.test. (CVS 6585) (check-in: 514efc7312 user: danielk1977 tags: trunk)
05:23
Fix for tempdb.test so that it passes when running the inmemory_journal permutation test. (CVS 6584) (check-in: 0256187b51 user: danielk1977 tags: trunk)
02:08
Fix processing of BEFORE triggers on INSERT statements with RHS SELECTs that insert a NULL into the INTEGER PRIMARY KEY. Ticket #3832. (CVS 6583) (check-in: 4a1f6a3a9a user: drh tags: trunk)
2009-04-30
17:45
More cleanup, etc. to support MSVC compiles. (CVS 6582) (check-in: 2cd9655e73 user: shane tags: trunk)
17:38
Disable an always-false test in the attach.c module. (CVS 6581) (check-in: 92b69481bd user: drh tags: trunk)
16:41
Fix a problem with in-memory sub-journals and exclusive locking mode. Also a test script problem introduced by (6575). (CVS 6580) (check-in: d67af3f5a2 user: danielk1977 tags: trunk)
15:59
Documentation updates for sqlite3_set_authorizer(). No changes to code. (CVS 6579) (check-in: 41f39c3145 user: drh tags: trunk)
13:30
Disallow attaching the same database multiple times to the same db connection in shared cache mode, since doing so leads to deadlock. (CVS 6578) (check-in: 715f14f1dc user: drh tags: trunk)
12:25
Fix apparent typo on exclusive.test in the (6575) check-in. (CVS 6577) (check-in: 95d22405e0 user: drh tags: trunk)
12:25
Changes sqlite3TempInMemory() to take a const parameter. (CVS 6576) (check-in: aa29a14ca0 user: drh tags: trunk)
09:10
When SQLite is configured to use in-memory temp files (either by setting SQLITE_TEMP_STORE during compilation or using the temp_store pragma at run time), store statement/savepoint journals in memory also. Ticket #3825. (CVS 6575) (check-in: 38f8c5a14c user: danielk1977 tags: trunk)
05:40
Fix a memory leak introduced in the previous check-in. (CVS 6574) (check-in: f082bf3605 user: drh tags: trunk)
05:19
Take care not to leave a zombie attached database if the attachment fails due to an encoding mismatch. Update attach logic to always use dynamically allocated error message strings. (CVS 6573) (check-in: a6cb4002ad user: drh tags: trunk)
01:22
Remove always-true tests from attach.c. In btree.c, always test the return from sqlite3PagerSetPagesize() since it might return SQLITE_NOMEM. (CVS 6572) (check-in: 8bf60b24ff user: drh tags: trunk)
00:11
Remove an always-true test from delete.c. Move the sqlite3OpenTable() routine from delete.c to insert.c since it is not used in delete.c. (CVS 6571) (check-in: 71756dc870 user: drh tags: trunk)
2009-04-29
18:12
Fixed compile for MSVC; removed compiler warnings; changes for NDEBUG build; minor code tweaks. (CVS 6570) (check-in: e98b12425f user: shane tags: trunk)
17:49
Modify the assemblePage() function in btree.c so that it runs slightly faster. (CVS 6569) (check-in: 7ec42e989f user: danielk1977 tags: trunk)
14:33
Update the documentation on the sqlite3_changes() and sqlite3_total_changes() functions. (CVS 6568) (check-in: 58c7bdb21c user: drh tags: trunk)
11:50
Fix a case in where.c where a crash can follow a malloc failure. Also modify test code in test8.c to check a return code that was being dropped (causing a test in vtab_err.test to fail). (CVS 6567) (check-in: 9664e2b6c6 user: danielk1977 tags: trunk)
11:31
Add a version of cellSizePtr() that is faster than using sqlite3BtreeParseCellPtr(). This speeds up balance_nonroot(). (CVS 6566) (check-in: e8f7f7b787 user: danielk1977 tags: trunk)
06:27
Simplify a conditional expression in btree.c. (CVS 6565) (check-in: fc3a5ac235 user: danielk1977 tags: trunk)
2009-04-28
18:00
Fix an out-of-order test number in blob.test. Cosmetic change. No changes to code. Ticket #3830. (CVS 6564) (check-in: e855654283 user: drh tags: trunk)
17:33
Fix asserts in hash.c so that zero-length symbols can be used. (CVS 6563) (check-in: fe9f00aa36 user: drh tags: trunk)
16:37
When testing with TEMP_STORE=3 and the test pcache, only run 20 iterations in trans.test. Otherwise the test pcache runs out of memory. (CVS 6562) (check-in: 0799b729a7 user: danielk1977 tags: trunk)
16:35
Remove an unused function declaration from hash.h. (CVS 6561) (check-in: fcf70bb8b8 user: drh tags: trunk)
15:48
Further adjustment to rowhash.test to account for rowid collisions. (CVS 6560) (check-in: 94a23f9933 user: danielk1977 tags: trunk)
15:43
Simplifications to the symbol table implementation in hash.c. For very small symbol tables (less than 10 entries) a simple linked list is used instead of a hash table. Number of hash table buckets is limited to prevent large allocations. (CVS 6559) (check-in: 5c737835de user: drh tags: trunk)
15:35
Have sqlite3_create_collation() return MISUSE if passed an encoding value other than SQLITE_UTF8, SQLITE_UTF16LE, SQLITE_UTF16BE, SQLITE_UTF16 or SQLITE_UTF16_ALIGNED. (CVS 6558) (check-in: 7975b6f2ec user: danielk1977 tags: trunk)
13:01
Do not store the zero string terminator as part of the name when holding symbols in the symbol table. (CVS 6557) (check-in: 23d67af392 user: drh tags: trunk)
12:08
Another fix to the same assert as in (6555). It can also fail after a malloc error. (CVS 6556) (check-in: e096f90a57 user: danielk1977 tags: trunk)
11:10
Fix an assert that could fail after a parse error in expr.c. (CVS 6555) (check-in: a37d1174eb user: danielk1977 tags: trunk)
05:27
Avoid changing the pager journal-mode once a write-transaction is open, even if no database pages have been modified. (CVS 6554) (check-in: ad8aba3eff user: danielk1977 tags: trunk)
04:51
Add test cases for sqlite3_complete with an EXPLAIN QUERY PLAN on a CREATE TRIGGER statement. Ticket #3828. (CVS 6553) (check-in: 6b86b40eda user: drh tags: trunk)
04:47
Make sure sqlite3_open16() always zeros the db return pointer if SQLite initialization fails. (CVS 6552) (check-in: 057c7d1713 user: drh tags: trunk)
04:46
Enhance sqlite3_complete() so that it understands EXPLAIN QUERY PLAN. Ticket #3828. Testing is done in TH3. (CVS 6551) (check-in: 3ac1b15f55 user: drh tags: trunk)
2009-04-27
18:46
Bring the documenation and implementation of sqlite3_collation_needed() into agreement. Use a more efficient implementation of sqlite3ErrStr(). sqlite3_result_error_code() now calls sqlite3ErrStr() if no prior error string was set. (CVS 6550) (check-in: cb9af82936 user: drh tags: trunk)
2009-04-25
08:39
Tests for the new asynchronous IO API. (CVS 6549) (check-in: 11b2564e71 user: danielk1977 tags: trunk)
2009-04-24
20:32
Add another test case for the "x IS NULL" uniqueness problem of ticket #3824. No changes to code. This just double-checks that everything is working now. (CVS 6548) (check-in: 3ceae3579b user: drh tags: trunk)
18:06
Dequote the "from" table in a FOREIGN KEY definition (affects the output of "pragma foreign_key_list). Fix for #3800. (CVS 6547) (check-in: 600482d161 user: danielk1977 tags: trunk)
15:46
Get rid of the special RowSet processing in where.c and move that into clients. Added the WHERE_DUPLICATES_OK option to eliminate an unnecessary RowSet during DELETE with a WHERE clause containing ORs. (CVS 6546) (check-in: 98606bee9e user: drh tags: trunk)
14:51
Make sure that the optimizer realizes that an "x IS NULL" contraint does not necessarily give a single-row result even on a UNIQUE index. Ticket #3824. (CVS 6545) (check-in: 207335fdbf user: drh tags: trunk)
10:13
Make selecting the asynchronous IO file-locking mode a runtime operation. Still untested. (CVS 6544) (check-in: 577277e84a user: danielk1977 tags: trunk)
09:27
Improve comments and documentation of the asynchronous IO VFS module. (CVS 6543) (check-in: 92bc6be2a8 user: danielk1977 tags: trunk)
2009-04-23
19:08
os_win.c, winOpen(), changed to handle the SQLITE_OPEN_EXCLUSIVE flag and sharing modes in the same manner as os_unix.c. Ticket #3821. (CVS 6542) (check-in: 18fef3fcf6 user: shane tags: trunk)
18:42
Updated misc. test scripts for Windows testing with gcc/cygwin; (CVS 6541) (check-in: 1e2c71596e user: shane tags: trunk)
18:41
Remove some incorrect async tests; (CVS 6540) (check-in: 03af25b3ee user: shane tags: trunk)
14:58
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) (check-in: e71fb0fb8d user: danielk1977 tags: trunk)
13:22
Rework the column-cache mechanism to be more robust (and more correct). The column-alias cache is currently disabled, (CVS 6538) (check-in: dd4d67a674 user: drh tags: trunk)
2009-04-22
17:15
Eliminate the OP_VRowid opcode. The regular OP_Rowid now work for both regular and virtual tables. (CVS 6537) (check-in: ecbef45011 user: drh tags: trunk)
15:32
Change the OP_Rowid opcode so that a deferred OP_Seek is pending, it simply pulls the rowid from the deferred seek target and does not actually move the cursor or do a seek. Other where.c cleanups. (CVS 6536) (check-in: 1c508a9982 user: drh tags: trunk)
02:15
Remove the rowhash object from the code. Rowset now fills its role. (CVS 6535) (check-in: e963bed0fe user: drh tags: trunk)
00:47
Extend the Rowset object to contain all the capabilities of Rowhash in addition to its legacy capabilities. Use Rowset to replace Rowhash. In addition to requiring less code, This removes the 2^32 result row limitation, uses less memory, and gives better bounds on worst-case performance. The Rowhash implementation has yet to be removed. (CVS 6534) (check-in: b101cf70b7 user: drh tags: trunk)
2009-04-21
18:20
Move RowHashBlock.nUsed to RowHash.nUsed. Fix a typo in a comment in test_async.c. (CVS 6533) (check-in: 799d31d99f user: danielk1977 tags: trunk)
17:23
Fix a segfault that followed a malloc failure introduced by (6527). (CVS 6532) (check-in: 08e71b1140 user: danielk1977 tags: trunk)
17:13
Adjust the rowhash.test module so that it recovers gracefully in the rare event of a rowid collision. (CVS 6531) (check-in: 72e1680904 user: drh tags: trunk)
16:15
Allocate the initial RowHash object using lookaside. (CVS 6530) (check-in: 9b30ab7199 user: drh tags: trunk)
15:05
New comments and minor refactoring of rowhash.c. (CVS 6529) (check-in: b8cb4f3e24 user: drh tags: trunk)
12:02
Remove a redundant test from sqlite3_shutdown(). (CVS 6528) (check-in: 6f481ceb50 user: drh tags: trunk)
09:02
Attempt to optimize virtual table queries with 'OR' expressions in the WHERE clause. (CVS 6527) (check-in: f61e4cd936 user: danielk1977 tags: trunk)
2009-04-20
17:43
Change the journal_mode pragma so that it always returns the current journal mode, even on a failed attempt to change the journal mode. Allow the journal mode to be changed as long as there is not a pending transaction. Ticket #3811. (CVS 6526) (check-in: 419e320ae5 user: drh tags: trunk)
13:32
Add new tests to show that journal_mode=OFF works with locking_mode=EXCLUSIVE as long as the journal_mode is set prior to the first transaction. Ticket #3811. (CVS 6525) (check-in: e62ac26f72 user: drh tags: trunk)
12:31
Clarify the documentation to make it clear that sqlite3_interrupt() does not effect new SQL statements that are started after the running statement count reaches zero. Ticket #3815. (CVS 6524) (check-in: 3182e8bf69 user: drh tags: trunk)
12:07
Do not use deprecated interfaces internally when compiling with SQLITE_OMIT_DEPRECATED. Ticket #3813. (CVS 6523) (check-in: 7f17956dfb user: drh tags: trunk)
11:34
Speed improvements by avoiding unnecessary calls to fstat() and ftruncate(). (CVS 6522) (check-in: 5b7e3a411a user: drh tags: trunk)
2009-04-19
20:51
Update comments and remove unused code in btree.c. No functional changes. (CVS 6521) (check-in: bd86018490 user: drh tags: trunk)
12:23
Make extra calls to sqlite3_shutdown() be harmless no-ops. (CVS 6520) (check-in: d80822953c user: drh tags: trunk)
2009-04-17
16:54
Revise the implementation of sqlite3_initialize() slightly in order to make it more easily testable. The functionality should be unchanged. (CVS 6519) (check-in: bb1a390a3d user: drh tags: trunk)
15:18
Get the behavior of SQLITE_HAVE_ISNAN right. It was reversed in check-in (6517). Ticket #3809. (CVS 6518) (check-in: 97c6ea2368 user: drh tags: trunk)
11:57
Add the SQLITE_HAVE_ISNAN compile-time option which, if present, causes SQLite to use the math library isnan() function rather than its own homebrew implementation of isnan(). (CVS 6517) (check-in: 54d23521c3 user: drh tags: trunk)
11:56
Check-in (6514) did not completely remove the obsolete test, resulting in a segfault. This check-in finishes the job. Ticket #3802. (CVS 6516) (check-in: c29b37ea36 user: drh tags: trunk)
2009-04-16
17:45
Add NEVER and ALWAYS tags to conditionals in analyze.c that always false or true. (CVS 6515) (check-in: fbbc80eaf3 user: drh tags: trunk)
16:32
Remove obsolete test from bindxfer.tcl. Ticket #3802. (CVS 6514) (check-in: b1b0961718 user: drh tags: trunk)
16:30
Changes to alter.c to enable full branch coverage testing. (CVS 6513) (check-in: 6a91ab08a5 user: drh tags: trunk)
12:58
Make sure the 'unixepoch' converter in the date and time functions rounds to the nearest millisecond rather than truncating downward to the next smaller millisecond. Ticket #3808. (CVS 6512) (check-in: e6e036b345 user: drh tags: trunk)
00:24
In a 3-fold compound SELECT make sure early code generation of the SELECTs to the right do not dereference non-existant columns in SELECTs on the left. (CVS 6511) (check-in: 414f340809 user: drh tags: trunk)
2009-04-15
15:16
Fix the group_concat() function so that it inserts the separator string even if the initial content strings are empty. Ticket #3806. (CVS 6510) (check-in: b83fbf15a3 user: drh tags: trunk)
14:36
Fix access violation on WinCE platforms. Ticket #3804. (CVS 6509) (check-in: e203ad400d user: shane tags: trunk)
13:39
Mark an branch in alter.c as always false. Only run the assert() on the sqlite3_aggregate_count() function in func.c if the SQLITE_OMIT_DEPRECATED compile-time option is off. (CVS 6508) (check-in: c0bba77ae6 user: drh tags: trunk)
13:07
Disable the temptrigger.test test script when shared cache is disabled. Ticket #3801. (CVS 6507) (check-in: feedbce8f1 user: drh tags: trunk)
2009-04-14
18:44
nMax can be zero and subtracting 1 from an unsigned zero produces undesirable results (CVS 6506) (check-in: a117d82dad user: aswift tags: trunk)
12:58
Change the sqlite3_bind_value() implementation to use a default branch on the type switch so that there are no untested jumps in the switch. (CVS 6505) (check-in: d0a8bd6a53 user: drh tags: trunk)
12:43
Reimplement the sqlite3_bind_value() interface so that it works when the value being bound comes from a different database connection. (CVS 6504) (check-in: 3db0c79806 user: drh tags: trunk)
2009-04-13
14:43
Enhancements to virtual table documentation. Comment changes only. No changes to code. (CVS 6503) (check-in: b0b2b2831c user: drh tags: trunk)
09:29
Version 3.6.13 (CVS 6502) (check-in: 982cc7f4e7 user: drh tags: trunk, release)
09:09
Rerun autoconf in preparation for 3.6.13. (CVS 6501) (check-in: f683e22211 user: drh tags: trunk)
08:14
updated Makefile.vxwSH4 and renamed it to Makefile.vxworks, should now be able to support SH4 and PPC targets. (CVS 6500) (check-in: e4a370c72d user: chw tags: trunk)
2009-04-11
19:09
Fix malloc5.test so it work on both 64-bit and 32-bit systems. The ::tcl_platform(wordSize) variable has to be used to adjust some memory sizes. (CVS 6499) (check-in: ea20f78edb user: drh tags: trunk)
16:27
Fix an obscure problem with recovery from I/O errors while rolling back. (CVS 6498) (check-in: 24ff486125 user: drh tags: trunk)
16:27
Add a comments and an assert() to the virtual table implementation. No functional changes. (CVS 6497) (check-in: ac5d0c0aa1 user: drh tags: trunk)
16:06
Fix a case where a corrupt database could cause an assert() to fail. (CVS 6496) (check-in: 2c560e057e user: danielk1977 tags: trunk)
14:46
Allocate a little extra scratch space for the memsubsys1 tests. The extra space is needed in some configurations. (CVS 6495) (check-in: 5484419294 user: drh tags: trunk)
11:38
Increase the hard upper bound on the number of pcache pages in test_pcache when the test harness is compiled for in-memory temp tables. Some of the test cases need to extra memory to avoid unplanned out of memory errors. (CVS 6494) (check-in: 7f2d6a0bd5 user: drh tags: trunk)
10:25
Replace invocation of (really_finish_test) from async.test with (finish_test). Otherwise a tcl exception may be thrown when running permutations. (CVS 6493) (check-in: e6465e9da3 user: danielk1977 tags: trunk)
09:51
In sqlite3PagerMovepage(), avoid holding a reference to page number X when calling sqlite3PcacheRekey() to move another page to page number X. (CVS 6492) (check-in: 4447c94f45 user: danielk1977 tags: trunk)
2009-04-10
23:11
Remove more unused branches from vdbeapi.c. (CVS 6491) (check-in: 447e959594 user: drh tags: trunk)
20:55
In the async test, make sure procedures do not get renamed over top of one another. (CVS 6490) (check-in: b6430cc429 user: drh tags: trunk)
20:32
Remove unused branches from the vdbeapi.c module. (CVS 6489) (check-in: 7ae0fc7ea5 user: drh tags: trunk)
18:41
Increase the error tolerance when verifying the approximate size of a pseudo-random database in backup_ioerr.test. Otherwise the test could fail depending on the PRNG seed. (CVS 6488) (check-in: deda5ab35e user: danielk1977 tags: trunk)
18:32
Do not run io.test as part of the inmemory_journal permutation. io.test uses the tcl API to test for journal files in the file-system (which of course never exist when running with in-memory journals). (CVS 6487) (check-in: 493f03bd73 user: danielk1977 tags: trunk)
18:21
Re-enable the alt_pcache tests in permutations.test so that they run automatically during a full regression. Fix async.test so that it works with the permutation.test pcacheNN test modules. (CVS 6486) (check-in: 310192cc0f user: drh tags: trunk)
15:42
Fix MSVC compiler warning in vdbeaux.c. (CVS 6485) (check-in: d619465e31 user: shane tags: trunk)
15:38
Disable the select1-15 tests when locking_mode is EXCLUSIVE. Ticket #3771. (CVS 6484) (check-in: 88cefbb4a1 user: drh tags: trunk)
15:02
Changes to jrnlmode.test to account for in-memory temp databases. (CVS 6483) (check-in: c31d4359ae user: danielk1977 tags: trunk)
14:28
Simplifications and additional comments on the sqlite3_get_table() implementation. Changes to facilitate full branch test coverage. (CVS 6482) (check-in: 57e3e6b3cb user: drh tags: trunk)
12:55
Changes to ensure that when running in shared-cache mode with a non-threadsafe build, the correct busy-handler callback is always invoked. (CVS 6481) (check-in: 683e4bd747 user: danielk1977 tags: trunk)
09:47
Always set BtShared.db when entering the BtShared mutex. Ticket #3793. (CVS 6480) (check-in: ed6620ba58 user: danielk1977 tags: trunk)
00:56
Force 8-byte alignment of sqlite3_value objects in the sqlite3VdbeUnpackRecord() primitive. Ticket #3777. (CVS 6479) (check-in: 2cc68272b1 user: drh tags: trunk)
2009-04-09
21:02
Increase the version number to 3.6.13 in preparation for the next release. (CVS 6478) (check-in: 9a09a47495 user: drh tags: trunk)
14:27
Provide dummy DWORD arguments to output parameters of GetDiskFreeSpace(A|W), NULL causes access violations on Windows NT 4.0 (CVS 6477) (check-in: 5350a6586c user: chw tags: trunk)
14:02
Remove misuse detection from the deprecated sqlite3_transfer_bindings() interface. The code was hard to test and was simply taking up space. (CVS 6476) (check-in: 4cd829107c user: drh tags: trunk)
01:23
Enhance sqlite3_shutdown() so that it automatically invokes sqlite3_reset_auto_extension(). This is a harmless no-op if applications are already calling sqlite3_reset_auto_extension() prior to sqlite3_shutdown(). And it prevents possible memory corruption if they do not. So it works either way. Most of the changes are to the test cases. (CVS 6475) (check-in: 0c41f7cff4 user: drh tags: trunk)
2009-04-08
23:05
Simplify the implementation of the columnName() function in vdbeapi.c. This is a code cleanup only - no behavior changes. (CVS 6474) (check-in: 0628f5864f user: drh tags: trunk)
23:04
Add an assert() to the implementation of count(*) that checks the correct operation of the sqlite3_aggregate_count() function. (CVS 6473) (check-in: f322be3833 user: drh tags: trunk)
16:10
Reconfigure the default case for the printf switch in order to improve branch coverage. (CVS 6472) (check-in: 3cc79162db user: drh tags: trunk)
15:45
Remove a pair unnecessary conditions from printf.c. The "db" parameter is now required for sqlite3MPrintf(). (CVS 6471) (check-in: 6fe8b5d702 user: drh tags: trunk)
13:51
Minor refactoring of the expression-compaction logic for clarity of presentation. New comments added. The EXPRDUP_DISTINCTSPAN flag is removed as obsolete. (CVS 6470) (check-in: 44ded2ea67 user: drh tags: trunk)
12:21
Do not attempt to walk a TokenOnly or SpanOnly expression tree node. Ticket #3791. (CVS 6469) (check-in: 8362d88324 user: drh tags: trunk)
11:49
Add a comment to printf.c - no changes to code. (CVS 6468) (check-in: ee5a4a0e59 user: drh tags: trunk)
2009-04-07
22:06
Fix the sqlite3_unlock_notify() interface so that when the callback is NULL it simply cancels any outstanding callbacks. (CVS 6467) (check-in: 9ccfcb7607 user: drh tags: trunk)
22:05
Remove two unused tests from the integrity_check pragma logic. (CVS 6466) (check-in: 22999d3141 user: drh tags: trunk)
14:38
Fix an incorrect assert in btree.c. (CVS 6465) (check-in: 2c1f59834a user: danielk1977 tags: trunk)
14:14
Fix compilation and testing when SQLITE_OMIT_TRIGGER is defined. Ticket #3786. (CVS 6464) (check-in: 277dace43d user: danielk1977 tags: trunk)
13:48
Only enable WHERE-tracing when both TEST and DEBUG are enabled. (CVS 6463) (check-in: 55b9364925 user: drh tags: trunk)
11:21
Change "... myfunction() { ... }" to "... myfunction(void) { ... }" in a few pla ces. Ticket #3783. (CVS 6462) (check-in: 6f79e6ae0d user: danielk1977 tags: trunk)
09:16
Have OP_IdxRowid handle the case where the index entry it is reading from is deleted. (CVS 6461) (check-in: cdad29b582 user: danielk1977 tags: trunk)
05:35
Compile fixes and improvements for vxwork: fixed deadlock in semClose, detect if fcntl is usable, fall back to named semaphores if not. (CVS 6460) (check-in: efd0682b7e user: chw tags: trunk)
00:49
Remove an unused test for EXPLAIN-mode in the PRAGMA processing. (CVS 6459) (check-in: 909683b342 user: drh tags: trunk)
00:43
Always enable WHERE-tracing on a test build. Oops - accidentally included a debugging change to pragma.c in this check-in. The real fix for the pragma problem is in the following checking. (CVS 6458) (check-in: 567cf90b03 user: drh tags: trunk)
00:35
It is OK for a unix file descriptor to be zero. It just can't be negative. Adjust an assert accordingly. Ticket #3781. (CVS 6457) (check-in: 47aa7eb0e0 user: drh tags: trunk)
2009-04-06
17:50
Test cases and minor code changes to increase coverage of btree.c. (CVS 6456) (check-in: def3a01691 user: danielk1977 tags: trunk)
15:55
Updates and clarification to the documentation of the sqlite3_temp_directory global variable. No changes to code. (CVS 6455) (check-in: aea99c572a user: drh tags: trunk)
14:16
Allow "default" to be a keyword used by PRAGMA statements. (CVS 6454) (check-in: ed99d2d97f user: drh tags: trunk)
12:26
Make sure the reverse_unordered_selects pragma works even on unindexed tables that are queried without a WHERE clause (CVS 6453) (check-in: d8c6b28a73 user: drh tags: trunk)
11:11
Check-in (6450) introduced the possibility of calling memset() with a negative 3rd argument. This fixes that bug. Ticket #3777. (CVS 6452) (check-in: 8ca612c42e user: drh tags: trunk)
2009-04-05
15:18
Fix a segfault in Lemon that occurs if the input grammar does not define a type for tokens. This does not effect SQLite since the SQLite grammar does define a type for tokens. (CVS 6451) (check-in: 4424aee958 user: drh tags: trunk)
12:22
Additional code to make sure and to assert that memory allocations have 8-byte alignment. Ticket #3777. (CVS 6450) (check-in: 208382e032 user: drh tags: trunk)
2009-04-04
16:02
Allow the journal_size_limit to be larger than 2147483647 bytes. (CVS 6449) (check-in: 8193125961 user: drh tags: trunk)
15:53
Allow the journal_mode for in-memory databases to be either OFF or MEMORY, not just MEMORY. (CVS 6448) (check-in: 11c77f4c2c user: drh tags: trunk)
14:04
Clarify the meanings of the SQLITE_SYNC_NORMAL and SQLITE_SYNC_FULL flags passed into the xSync method of the VFS. Comment changes only - no changes to code. (CVS 6447) (check-in: c47aeb37a1 user: drh tags: trunk)
2009-04-03
12:12
Remove a blank line in sqlite.h.in that was preventing the SQLITE_LOCKED_SHAREDCACHE constant appears in the automatically-generated documentation. Ticket #3775. (CVS 6446) (check-in: 65f9d3b948 user: drh tags: trunk)
12:04
Use integer rather than floating point compuations in converting from julian day number to unix-time to avoid round-off errors on Borland compilers. Ticket #3769. (CVS 6445) (check-in: c26f97bd85 user: drh tags: trunk)
01:43
Fix the PRAGMA parser so that it can accept negative numbers in parentheses, like the syntax diagrams say it should be able to. (CVS 6444) (check-in: 286e83178d user: drh tags: trunk)
2009-04-02
20:27
Make sure count(*) works on the sqlite_master table of an empty database. Ticket #3774. (CVS 6443) (check-in: e0c1a780f5 user: drh tags: trunk)
20:16
Make sure the VACUUM statement locks down the page_size and auto_vacuum modes after it runs. Otherwise, pragmas might change these settings on a populated database, resulting in problems. (CVS 6442) (check-in: 85e6a4740d user: drh tags: trunk)
18:32
Fix the sqlite3_prepare() family of interfaces so that they zero the *ppStmt value even on an SQLITE_MISUSE return. Make it clear in the documentation that the ppStmt parameter cannot be zero. (CVS 6441) (check-in: 23bf9f2665 user: drh tags: trunk)
18:28
Fix a problem causing the BtShared.isPending flag to be cleared to early. Also coverage improvements for btree.c. (CVS 6440) (check-in: 8f1423445b user: danielk1977 tags: trunk)
17:23
Ensure the required VerifyCookie/Transaction/TableLock opcodes are added for "x IN (SELECT c FROM t)" expressions. Ticket #3771. (CVS 6439) (check-in: 058a2f2093 user: danielk1977 tags: trunk)
17:22
Fix a couple of harmless nuisance warnings. (CVS 6438) (check-in: 53dac0a455 user: drh tags: trunk)
16:59
Disable the query flattening optimization when the subquery is a compound query with an ORDER BY clause. Ticket #3773 shows why that combination does not work. (CVS 6437) (check-in: 23f90d5073 user: drh tags: trunk)
14:05
Change the way that the random() SQL function prevents the maximum negative integer so that it is testable. (CVS 6436) (check-in: 995f2b9b10 user: drh tags: trunk)
13:36
Use ALWAYS and NEVER macros on unchangeable conditions within func.c. (CVS 6435) (check-in: eb65e64e7e user: drh tags: trunk)
10:16
In the built-in SQL function implementations, improve some comments, fix an off-by-one error in detecting over-size strings, and add testcase() macros to verify that boundary values have been tested. (CVS 6434) (check-in: 868a487f5f user: drh tags: trunk)
09:07
Enforce the run-time sqlite3_limit() length limit on zeroblob(), not just the compile-time SQLITE_MAX_LENGTH limit. (CVS 6433) (check-in: a04f9e7959 user: drh tags: trunk)
2009-04-01
23:49
Increase test coverage of bitvec.c slightly. Fix the line length on a comment in bitvec.c. (CVS 6432) (check-in: ca3aa3ba7d user: drh tags: trunk)
23:09
Mark untestable branches of memjournal.c as such. Reduce the size of a single block allocation to a power of two. Reenable the inmemory_journal permutation test. (CVS 6431) (check-in: 05c182a5db user: drh tags: trunk)
20:44
Fix the strftime() function so that the %s format can handle dates outside of the range of 1901 to 2038. Ticket #3769. (CVS 6430) (check-in: a95b843a92 user: drh tags: trunk)
19:35
Change an unreachable error condition test to an assert() in rowset.c. (CVS 6429) (check-in: 36115e4073 user: drh tags: trunk)
19:07
Remove an unreachable branch from lockBtree(). Add comments. (CVS 6428) (check-in: 859792958b user: danielk1977 tags: trunk)
18:40
Fix a bug in the sqlite3Utf16ByteLen() function so that it computes the correct length even for strings that contain surrogate pairs. Ticket #3766. (CVS 6427) (check-in: 766bb7e59c user: drh tags: trunk)
18:25
Test that two database connections that use different VFS implementations may not share a cache. (CVS 6426) (check-in: 3a92c95644 user: danielk1977 tags: trunk)
18:03
Remove the unused SQLITE_Vtab flag. (CVS 6425) (check-in: fdd78962fc user: danielk1977 tags: trunk)
17:13
In pageReinit() in btree.c, only reinitialize a page if there are one or more references to it, not including the transient reference held by pager.c. This was always the intent. (CVS 6424) (check-in: 0c5a7d1117 user: danielk1977 tags: trunk)
16:33
Remove dead code from the UTF conversion routines. Fix a bug in sqlite3_prepare16_v2() in which an out-of-memory error fails to set the statement return pointer to NULL. (CVS 6423) (check-in: 94e2f815eb user: drh tags: trunk)
16:25
Remove an unreachable branch from allocateSpace() in btree.c. Add comments and asserts to the same function. (CVS 6422) (check-in: f8e15a542d user: danielk1977 tags: trunk)
09:41
Add some assert() statements to querySharedCacheTableLock(). (CVS 6421) (check-in: 3e3b5e861a user: danielk1977 tags: trunk)
07:38
add a sanity check to make sure the configure script and VERSION file are always in sync (CVS 6420) (check-in: 1b9da6d73f user: vapier tags: trunk)
2009-03-31
23:29
update configure script so it has proper VERSION in it (CVS 6419) (check-in: ce683cbd32 user: vapier tags: trunk)
13:16
Version 3.6.12 (CVS 6418) (check-in: 0db862a23a user: drh tags: trunk, release)
03:41
Fix compiler warnings from gcc and MSVC; Correct typo in select.c; (CVS 6417) (check-in: 768514179a user: shane tags: trunk)
02:54
Make sure a ROLLBACK that follows an incremental vacuum works. Ticket #3761. (CVS 6416) (check-in: 8c1d0c6ad9 user: drh tags: trunk)
01:32
Remove two unused lines from pcache.c. (CVS 6415) (check-in: d5cab05c9e user: drh tags: trunk)
00:50
Added a test case for ticket #3672. (CVS 6414) (check-in: 7f40576dd7 user: drh tags: trunk)
2009-03-30
18:50
Fix a case where a pointer map page was not being journalled before a file truncation that occurs as part of an incremental vacuum. (CVS 6413) (check-in: c5890935a0 user: danielk1977 tags: trunk)
17:19
Add a comment to the pageReinit() routine explaining why the return code from sqlite3BtreeInitPage() is ignored. Comment change only - no changes to code. (CVS 6412) (check-in: 10f605be8c user: drh tags: trunk)
13:53
Modify integrity-check to prevent a buffer overread when dealing with a corrupted database. (CVS 6411) (check-in: 3c9097f19a user: danielk1977 tags: trunk)
13:04
Make sure recursive calls to winOpen() preserve the pVfs pointer. Fault found while testing a mingw build in VMWare. (CVS 6410) (check-in: 18b44f0df3 user: drh tags: trunk)
12:56
Avoid calls to newer TCL interfaces in the test logic. This helps the TCL test harness compile without warnings and link when using older versions of the TCL library. (CVS 6409) (check-in: 1ad1763757 user: drh tags: trunk)
12:42
Avoid all use of the "LL" suffix for long-long integer literals. Ticket #3759. (CVS 6408) (check-in: 7ef3693542 user: drh tags: trunk)
11:59
Display a warning that the notify2-3 test sometimes fails on single-core machines. (CVS 6407) (check-in: ab7c718dec user: drh tags: trunk)
07:39
Another change related to (6401) and (6402): When an attempt to unlock a file fails in os_unix.c, close all files held open waiting for the unlock event anyway. This prevents a file-descriptor leak when testing IO errors. (CVS 6406) (check-in: 50fbcdea04 user: danielk1977 tags: trunk)
2009-03-29
15:12
Add a comment to the doubleToInt64() routine that explains why returning minInt is in fact correct when it seems like maxInt should be returned. (CVS 6405) (check-in: 7f3be36085 user: drh tags: trunk)
00:15
Turn off the debugging macros in where.c - left on by mistake in the previous check-in. (CVS 6404) (check-in: b601a57582 user: drh tags: trunk)
00:13
Improvements to cost estimation for evaluating the IN operator. Ticket #3757. (CVS 6403) (check-in: 0c438e813c user: drh tags: trunk)
2009-03-28
23:47
Previous commit ((6401)) did not quite fix the problem. This should work better. (CVS 6402) (check-in: 2e7d3cc9f0 user: drh tags: trunk)
23:23
In the unix-backend, when simulating an I/O error on an unlock operation, still mark the connection as unlocked to avoid a future assert(). (CVS 6401) (check-in: fb35cff855 user: drh tags: trunk)
18:56
The test_async.c module must pass an unchanging filename to the underlying VFS. (CVS 6400) (check-in: d1eeee2167 user: drh tags: trunk)
17:21
Fix thread related problems in test modules test_async.c and test_journal.c. (CVS 6399) (check-in: 45df27a22d user: danielk1977 tags: trunk)
15:04
Back out check-in (6380). Replace it with a proper fix to the xFullPathname method in the async VFS. (CVS 6398) (check-in: 767a7f7b55 user: drh tags: trunk)
10:54
The fix in (6395) was not correct. Fix #3756 a different way. (CVS 6397) (check-in: 9278f7b1e1 user: danielk1977 tags: trunk)
07:03
Fix a couple of test script bugs. No changes to SQLite code. (CVS 6396) (check-in: c9fa329f54 user: danielk1977 tags: trunk)
06:59
Fix readDbPage() so that if an SQLITE_IOERR_SHORT_READ is encountered, the page content is zeroed. Ticket #3756. (CVS 6395) (check-in: 647e3b156e user: danielk1977 tags: trunk)
2009-03-27
15:26
When "PRAGMA case_sensitive_like" is invoked, override all existing "LIKE" functions, including UTF-16 versions. (CVS 6394) (check-in: 1c6521e53b user: danielk1977 tags: trunk)
12:44
Fix another compiler warning in the test logic of tclsqlite.c. (CVS 6393) (check-in: 47ffc4dca8 user: drh tags: trunk)
12:32
Fix some compiler warnings in test code. (CVS 6392) (check-in: a43ecc9cb9 user: drh tags: trunk)
09:10
Fix an incompatibility between the test_async.c backend and change (6390). (CVS 6391) (check-in: 6762625d29 user: danielk1977 tags: trunk)
2009-03-26
17:13
Check that the first byte of a potentially hot journal file is non-zero before beginning hot-journal rollback. Fix for #3751 and #3745. (CVS 6390) (check-in: 80241a0502 user: danielk1977 tags: trunk)
14:48
Prevent the tcl test suite from throwing an exception when a threadsafe SQLite is linked against a non-threadsafe Tcl for testing. Print a warning instead. Ticket #3753. (CVS 6389) (check-in: a22e7c818b user: danielk1977 tags: trunk)
12:20
Added new tests of the scratch memory allocator for increased test coverage. (CVS 6388) (check-in: e99e28efbb user: drh tags: trunk)
11:49
Ensure that the test vfs in test_journal.c zeroes sqlite3_file.pMethods if an xOpen() call fails. Similar problem to that fixed by #6384. This was a problem with test code, not SQLite itself. (CVS 6387) (check-in: 45ae830d56 user: danielk1977 tags: trunk)
2009-03-25
16:51
Remove an unused parameter from sqlite3DequoteExpr. Fix another unrelated and harmless compiler warning. (CVS 6386) (check-in: 8589b0fcc5 user: drh tags: trunk)
15:43
Fix a problem preventing sqlite3_extended_errcode() from working correctly. (CVS 6385) (check-in: de469c46f5 user: danielk1977 tags: trunk)
14:24
When a VFS.xOpen fails, make sure the pMethods pointer is zeroed on the sqlite3_file object so that subsequent xClose() operations against that same file handler are no-ops. Bug in the test_async.c module only - not in the core library. Ticket #3744. (CVS 6384) (check-in: c32b454118 user: drh tags: trunk)
01:06
Use fdatasync() only on linux, unless -Dfdatasync=fdatasync is set at compilation time. (CVS 6383) (check-in: cbf2ca4cc4 user: drh tags: trunk)
2009-03-24
18:42
Change OS_UNIX to SQLITE_OS_UNIX in test_thread.c. Modify notify2.test to print out its timings in addition to reporting success or failure. (CVS 6382) (check-in: 940d72d2ba user: drh tags: trunk)
17:43
Get the OOM tester in async2.test working again. (CVS 6381) (check-in: f398a2d1b0 user: drh tags: trunk)
16:55
Adjust the lock.test and lock3.test scripts so that they work with the asynchronous VFS. (CVS 6380) (check-in: 40df926b46 user: drh tags: trunk)
16:27
Include sqliteInt.h in test_async.c so that the asynchronous VFS tests will run even if SQLITE_OS_UNIX is not explicitly defined. (CVS 6379) (check-in: 29b0d6a3fe user: drh tags: trunk)
15:31
New assert()s added to verify that the Expr.token value is used correctly. Ticket #3743. (CVS 6378) (check-in: cf3d84ab73 user: drh tags: trunk)
15:08
Changes to insure that lookaside memory allocations are never used to hold schema content. Ticket #3743. (CVS 6377) (check-in: ea74d8dc62 user: drh tags: trunk)
04:46
Add a comment to prepare.c explaining why the lookaside buffer is disabled before sqlite3_exec() is called to parse a schema statement. No code changes. (CVS 6376) (check-in: 8ca6a66565 user: danielk1977 tags: trunk)
2009-03-23
21:37
Clarify the meaning of a comment. No changes to code. (CVS 6375) (check-in: 7c2df04b52 user: drh tags: trunk)
17:49
Add asserts to make sure that database connection locks are held when accessing the lookaside memory allocation buffers. No defects were found. (CVS 6374) (check-in: 8a9f3e6606 user: drh tags: trunk)
17:11
Fix an obscure race condition that can occur when multiple threads, shared cache and DDL statements are combined. Enhance notify2.test to test this scenario. (CVS 6373) (check-in: 92ec597512 user: danielk1977 tags: trunk)
04:33
Use the ROUND8() macro to round an integer up to the nearest multiple of 8 and ROUNDDOWN8() macro to round down to the nearest multiple of 8. This is a cosmetic change. (CVS 6372) (check-in: db1d4d2f50 user: danielk1977 tags: trunk)
02:34
Fix compiler warning in MSVC. (CVS 6371) (check-in: 83a4d5b3d7 user: shane tags: trunk)
2009-03-22
20:36
Allow the keyword INDEXED to be used as the name of a table or index or column - for backwards compatibility. (CVS 6370) (check-in: 53149c9f5d user: drh tags: trunk)
2009-03-21
16:19
Update comments in build.c to conform to the latest implementation. (CVS 6369) (check-in: a915e8e0a4 user: drh tags: trunk)
14:56
Rig the unix backend to use fdatasync() by default, without having to set the HAVE_FDATASYNC macro. Systems that do not support fdatasync() can be compiled using -Dfdatasync=fsync. (CVS 6368) (check-in: a331562727 user: drh tags: trunk)
14:41
On unix, always use fdatasync() instead of fsync() when available, even if the file size changes, since (we are told) fdatasync() will automatically flush the inode when the file size changes. (CVS 6367) (check-in: 0d6b11bcf6 user: drh tags: trunk)
2009-03-20
15:16
Add a test to try to hit the race-condition fixed by (6363). (CVS 6366) (check-in: 4310411f50 user: danielk1977 tags: trunk)
14:42
Fix an assert failure introduced by (6355). (CVS 6365) (check-in: a08324d16d user: danielk1977 tags: trunk)
14:18
Make sure struct WhereClause is aligned on an 8-byte boundary. Fix for #3613, #3736. (CVS 6364) (check-in: 093a0cf4ad user: danielk1977 tags: trunk)
13:15
Rename the unused MEM2 static mutex to OPEN and reuse it to serialize access to the sqlite3BtreeOpen() routine to prevent a race condition on detection of sharable caches. Ticket #3735. (CVS 6363) (check-in: 19fa5a29b9 user: drh tags: trunk)
10:24
Fix a problem in thread005.test cause errors on osx. (CVS 6362) (check-in: 56e6fca1a9 user: danielk1977 tags: trunk)
09:09
Fix a problem in loadext.test causing an error on OSX. This is not a real problem, just a case of the test script expecting a slightly different error message than the one returned. (CVS 6361) (check-in: 18680989b5 user: danielk1977 tags: trunk)
2009-03-19
18:51
Fix a couple of fairly obscure cases where an assert() could fail following a malloc failure. (CVS 6360) (check-in: cc0d925669 user: danielk1977 tags: trunk)
07:58
Change sqlite3_step() to return SQLITE_LOCKED if a statement cannot be re-compiled due to locks on the shared-cache schema. Also add a blocking wrapper of sqlite3_prepare_v2() to the test code. (CVS 6359) (check-in: e8be1af922 user: danielk1977 tags: trunk)
2009-03-18
18:43
Fix a crash that could occur when creating an index in shared-cache mode with lookaside enabled. (CVS 6358) (check-in: 097737e368 user: danielk1977 tags: trunk)
13:55
Modify test script backup2.test so that it works on OSX. (CVS 6357) (check-in: d82e8cd43f user: danielk1977 tags: trunk)
10:36
Add comments and testcase() macros to the fix for shared-cache schema default value problem of check-in (6353). (CVS 6356) (check-in: 05d8607d44 user: drh tags: trunk)
10:33
Fix some cases where executing SQL from within a user-function callback could cause problems related to statement-transactions. (CVS 6355) (check-in: a60f419179 user: danielk1977 tags: trunk)
2009-03-17
22:33
Move the rowid cache out of VdbeCursor and into BtCursor. When multiple BtCursors are open on the same table, set their rowid cache all at the same time. Ticket #3731. (CVS 6354) (check-in: 189785832a user: drh tags: trunk)
17:49
Fix a problem that could cause a crash when a shared-cache schema contains column default values. (CVS 6353) (check-in: afadddc34e user: danielk1977 tags: trunk)
15:39
Fix test script bugs in the thread002.test and thread_common.tcl. (CVS 6352) (check-in: d137e841ce user: drh tags: trunk)
2009-03-16
17:07
Make sure the finished() array in thread005.test is cleared before the script starts. (CVS 6351) (check-in: ddadc25d55 user: drh tags: trunk)
14:48
Modify quick.test to support the QUICKTEST_INCLUDE environment variable, which can be used to override the built-in EXCLUDE list. (CVS 6350) (check-in: fdfe22f0a5 user: danielk1977 tags: trunk)
13:37
Additional hyperlinks in the sqlite3_unlock_notify() documentation. (CVS 6349) (check-in: 4dae5f6ed1 user: drh tags: trunk)
13:19
Add the sqlite3_unlock_notify() API. (CVS 6348) (check-in: b649a6cc5b user: danielk1977 tags: trunk)
12:30
Bump the version number to 3.6.12. (CVS 6347) (check-in: 2fcccca3e5 user: drh tags: trunk)
10:59
Remove surplus white space from shell.c. Use strlen30() instead of strlen(). (CVS 6346) (check-in: 324a1aff30 user: drh tags: trunk)
2009-03-14
08:37
Fix for #3719. When synthesizing a CREATE TABLE statement as as result of a "CREATE TABLE AS", quote the column type names unless they are simple identifiers or simple identifiers followed by one or two dimensions (e.g. "VARCHAR(10)"). (CVS 6345) (check-in: 7c6437efe0 user: danielk1977 tags: trunk)
2009-03-13
15:32
Do not overrun a buffer in the genfkey code (now part of shell.c). Fix for #3722. (CVS 6344) (check-in: 943b11fb18 user: danielk1977 tags: trunk)
2009-03-12
15:43
Avoid fts3 crash on (MATCH '""') expressions. Ticket #3717. (CVS 6343) (check-in: 03679857a3 user: danielk1977 tags: trunk)
14:43
Make calls to sqlite3BtreeRollbackStmt() no-ops when passed a Btree* handle that does not have an open statement transaction. Ticket #3718. (CVS 6342) (check-in: a1bb1aef0e user: danielk1977 tags: trunk)
2009-03-05
14:59
Begin purging dirty pages from the cache once 90% of the cache is dirty (insteadof waiting until it is 100% dirty). This improves performance in some circumstances by effectively reserving 10% of the configured page-cache for frequently reused read-only pages. (CVS 6341) (check-in: 823fe7f555 user: danielk1977 tags: trunk)
14:53
Comment out a recently added assert statement that is failing. (CVS 6340) (check-in: d0b2015f1c user: danielk1977 tags: trunk)
05:54
Implemented winSectorSize(); Other changes for consistency. os_win.c. Ticket #2931. (CVS 6339) (check-in: 68abcb278c user: shane tags: trunk)
04:27
Changes to cleanup and improve the consistency of tests for large file support in bigfile.test. (CVS 6338) (check-in: 3dbdf68030 user: shane tags: trunk)
04:23
Added some asserts and a check for a null pointer dereference. (CVS 6337) (check-in: 6b0cabd017 user: shane tags: trunk)
04:20
Corrected typos and misspellings. Ticket #3702. (CVS 6336) (check-in: 6404afa0c5 user: shane tags: trunk)
03:48
Removed compiler warnings from MSVC builds. Ticket #3701. (CVS 6335) (check-in: 5477833ec7 user: shane tags: trunk)
2009-03-02
17:18
Converted EXPR_*SIZE macros to use offsetof() to avoid MSVC compiler warnings. (CVS 6334) (check-in: 5e8e16f7d5 user: shane tags: trunk)
14:24
Fix the SQLITE_ENABLE_UPDATE_DELETE_LIMIT option for the new Expr compression logic of check-in (6305). Bug discovered during regression testing. (CVS 6333) (check-in: 91969edac7 user: drh tags: trunk)
01:22
Fix a bug in the GROUP BY alias name resolution. The bug was by check-in (6305). Discovered by regression test on 64-bit linux. Test cases added so that the problems is detected on 32-bit systems. (CVS 6332) (check-in: fa0008502e user: drh tags: trunk)
2009-03-01
22:29
Suppress some compiler warnings (where possible). Ticket #3696. (CVS 6331) (check-in: a2373e5409 user: drh tags: trunk)
19:42
Fix a critical bug in the VDBE opcode array resizer introduced by check-in (6307). Bug detected by regression testing. (CVS 6330) (check-in: ec3b18acae user: drh tags: trunk)
2009-02-28
10:47
Instead of linking temporary triggers on non-temporary tables into the Table.pTrigger list, search the temp schema for them on demand. Fix for #3688. (CVS 6329) (check-in: 3befe1ef7e user: danielk1977 tags: trunk)
2009-02-26
07:15
In sqlite3_table_column_metadata(), hold the mutex on all attached BtShared objects while accessing schema objects. Fix for #3679. (CVS 6328) (check-in: d197afd658 user: danielk1977 tags: trunk)
2009-02-25
19:07
Move the new genfkey shell command out from within #ifdef _WIN32_ (CVS 6327) (check-in: 48ee0e47e2 user: drh tags: trunk)
15:43
Remove genfkey.c. Change genfkey.README to talk about the new shell dot-command, not the old standalone genfkey program. (CVS 6326) (check-in: 36d699660b user: danielk1977 tags: trunk)
15:22
Add the 'genfkey' functionality to the sqlite3 shell. Accessed using a new dot-command - ".genfkey". (CVS 6325) (check-in: 0a59fb28b4 user: danielk1977 tags: trunk)
08:56
Minor changes and coverge tests for "SELECT count(*)" optimization. (CVS 6324) (check-in: a3695b98f6 user: danielk1977 tags: trunk)
2009-02-24
19:21
Additional commands and another procedure name changes for clarity of presentation. No logic changes. (CVS 6323) (check-in: 91d9d51e03 user: drh tags: trunk)
18:57
Changes to comments and functions/procedure names for clarification. No changes to logic. (CVS 6322) (check-in: b99c1815fe user: drh tags: trunk)
18:40
Remove old declaration of sqlite3_pending_byte (which was used by test code). It has been replaced by sqlite3PendingByte. Ticket #3677. (CVS 6321) (check-in: 44f0162ebb user: danielk1977 tags: trunk)
18:33
Fixes and some extra test cases for count(*) optimization. (CVS 6320) (check-in: 3f0baa1b63 user: danielk1977 tags: trunk)
16:18
Enhanced comments on table locking logic as it relates to preparing new statements. Added assert() and testcase() but no other changes to code. (CVS 6319) (check-in: 4a12f5b818 user: drh tags: trunk)
10:48
Add test file test/count.test for testing "SELECT count(*)" statements. It is not properly populated yet. (CVS 6318) (check-in: a195d74ff9 user: danielk1977 tags: trunk)
10:14
Reverse commit (6315) for now. (CVS 6317) (check-in: 0e7c369c23 user: danielk1977 tags: trunk)
10:01
Optimize queries of the form "SELECT count(*) FROM <tbl>" by adding a sqlite3BtreeCount() interface to the btree layer. (CVS 6316) (check-in: d4aa659318 user: danielk1977 tags: trunk)
2009-02-23
17:33
Scan an index instead of a table for "SELECT count(*) FROM <tbl>" queries. Because an index is usually smaller than a table on disk, this saves some IO. (CVS 6315) (check-in: 294ba6f743 user: danielk1977 tags: trunk)
16:52
Add the reverse_unordered_selects pragma. (CVS 6314) (check-in: bc078e0007 user: drh tags: trunk)
14:42
Ensure the return value of sqlite3_errmsg16() is aligned on a 2-byte boundary. Ticket #3665. (CVS 6313) (check-in: 9b8acf8319 user: danielk1977 tags: trunk)
2009-02-21
22:38
The sqlite3.def file is automatically generated and is not suppose to be part of the source code repository. So it is hereby removed. Ticket #3671. (CVS 6312) (check-in: 5dcda15409 user: drh tags: trunk)
2009-02-20
22:27
unbreak Autoconf-based build procedure by added missing backup.lo to the list of library objects (CVS 6311) (check-in: 9494580197 user: rse tags: trunk)
10:58
Instead of using SetNumColumns, specify the number of columns in a table or index using the P4 argument. (CVS 6310) (check-in: e43ed64963 user: danielk1977 tags: trunk)
03:55
Add a count parameter to the OP_Variable opcode and use it to simplify prepared statements that copy consecutive unnamed parameters into consecutive registers (a common case). (CVS 6309) (check-in: 48b77b0493 user: drh tags: trunk)
03:02
Add the OP_HaltIfNull opcode and use it to simplify prepared statements for INSERTs and UPDATEs of tables with NOT NULL columns. (CVS 6308) (check-in: feccad8d0d user: drh tags: trunk)
01:28
Reuse space left-over opcode space at the end of the VDBE opcode array to store memory cells, VDBE cursors, and other content needed by the VDBE. This reduces the memory required by a prepared statement. (CVS 6307) (check-in: 58a1809257 user: drh tags: trunk)
2009-02-19
20:50
Remove code in malloc.c that was already commented out using #if 0. (CVS 6306) (check-in: e1ad757ec0 user: drh tags: trunk)
14:39
Changes to reduce the heap space consumed by triggers, views and tables in the in-memory representation of the schema. Also to reduce the space used by prepared statements slightly. (CVS 6305) (check-in: d9f6ffbc5e user: danielk1977 tags: trunk)
2009-02-18
20:31
Make sure the auto_vacuum=INCREMENTAL setting is preserved across a VACUUM. Ticket #3663. (CVS 6304) (check-in: ded04f12f4 user: drh tags: trunk)
18:37
Move the text of C-API requirements out of the sqlite.h.in source file and into separate files in the "docsrc" CM system. Comment changes only - no changes to code. (CVS 6303) (check-in: 419eb48b6b user: drh tags: trunk)
12:25
Fix the amalgamation builder to mark sqlite3PagerBackupPtr as private. Ticket #3662. (CVS 6302) (check-in: fb281950c5 user: drh tags: trunk)
04:35
run autoconf so the updated version is in the configure script (CVS 6301) (check-in: edbb3586e9 user: vapier tags: trunk)
04:34
break libsqlite3.la install step out so the tcl install step can depend on it as well (CVS 6300) (check-in: 0998c55467 user: vapier tags: trunk)
00:00
Version 3.6.11 (CVS 6299) (check-in: 6abd630c87 user: drh tags: trunk, release)
2009-02-17
18:37
Add tests to double-check that nothing within SQLite ever tries to allocate amounts of memory that are close to the maximum signed integer, leading to an integer overflow within malloc(). This is not currently a problem. The extra tests just insure it never becomes a problem. (CVS 6298) (check-in: f6ba7bb915 user: drh tags: trunk)
17:56
Initialize an uninitialized buffer to silence a valgrind warning during a VACUUM operation. (CVS 6297) (check-in: 8c61968b33 user: danielk1977 tags: trunk)
16:29
Allow sqlite3_shutdown() to be called by a process before sqlite3_initialize() is. Prior to this commit such a call could segfault. (CVS 6296) (check-in: 79431c58d9 user: danielk1977 tags: trunk)
16:17
Make sure result variables are initialized or unused following a failure of the xFullPathname VFS interface. Problem detected by valgrind. (CVS 6295) (check-in: 59a4755185 user: drh tags: trunk)
2009-02-16
17:55
Changes to remove some compiler warnings from MSVC. (CVS 6294) (check-in: 68f15442e8 user: shane tags: trunk)
16:23
Fix a compiler warning in backup.c. (CVS 6293) (check-in: 82222fbf5d user: drh tags: trunk)
2009-02-13
16:59
Make sure OOM errors in the ANALYSIS loader get reported back out to high-level layers. Strange behavior can result otherwise. (CVS 6292) (check-in: 88a6355cd6 user: drh tags: trunk)
03:43
Correctly handle attempts to add a UNIQUE or PRIMARY KEY column using the ALTER TABLE statement. Ticket #3651. (CVS 6291) (check-in: dd179ff298 user: drh tags: trunk)
2009-02-12
17:07
Add additional cross-references from API documentation to other documents. Comment changes only; no changes to code. (CVS 6290) (check-in: 97203a0ad7 user: drh tags: trunk)
17:06
Update thread tests to clear the sqlite_open_file_count counter at the end. This counter is not threadsafe and can end up with an invalid value at the end of the thread tests. (CVS 6289) (check-in: 8c4d71a169 user: drh tags: trunk)
17:01
Fix some edge cases with backing up databases that are exactly PENDING_BYTE bytes in size, or just slightly larger. (CVS 6288) (check-in: 2fc450e8e6 user: danielk1977 tags: trunk)
09:36
Modify lock.test to account for "PRAGMA lock_status" returning "unknown" for in-memory databases. (CVS 6287) (check-in: 9a6e558ba6 user: danielk1977 tags: trunk)
09:11
Fix a case where during a rollback triggered by an IO or malloc error an unjournalled region of the database could be written to (with it's original data). This was causing an assert in test_journal.c to fail. Add a test case in ioerr2.test to trigger this case. (CVS 6286) (check-in: 315a6692f9 user: danielk1977 tags: trunk)
2009-02-11
16:06
Updated for Windows compatibility. Test scripts only. (CVS 6285) (check-in: 2522ad1df3 user: shane tags: trunk)
15:23
Continuing documentation refinements. Comment changes only. (CVS 6284) (check-in: 83e8308435 user: drh tags: trunk)
15:11
Fix the backup.test script so that it works regardless of the value of SQLITE_TEMP_STORE and the initial contents of the file-system. (CVS 6283) (check-in: da660ea73a user: danielk1977 tags: trunk)
15:04
Add hyperlinks from sqlite3_limit() documention to the limits.html page. Comment changes only - no changes to code. (CVS 6282) (check-in: f0189ec8c9 user: drh tags: trunk)
14:27
Fix the crashtest infrastructure so that it doesn't trigger the "don't write to the locking region" assert in os_unix.c. (CVS 6281) (check-in: b7fd4615cd user: danielk1977 tags: trunk)
07:38
Modify the test_journal.c code to (1) account for the backup code writing to parts of the pending-byte page when changing a databases page-size, and (2) to avoid reading from the pending-byte page and triggering the assert in os_unix.c. Changes to test code only. (CVS 6280) (check-in: 4879621658 user: danielk1977 tags: trunk)
05:18
In test_mutex.c, zero the global structure staticly instead of in Sqlitetest_mutex_Init(). This is because Sqlitetest_mutex_Init() is now called by each thread during thread tests ((6193)). Test code changes only. (CVS 6279) (check-in: 8b318b9385 user: danielk1977 tags: trunk)
2009-02-10
18:54
For the "onefile" demo, pass SQLITE_OPEN_TEMP_DB instead of MAIN_DB to the OS layer when opening the single file. This is to work around the assert() in os_unix.c that tests that the locking region is not written to. (CVS 6278) (check-in: 2da076a2c1 user: danielk1977 tags: trunk)
14:45
Reduce the number of iterations in one of the savepoint4.test crash tests. (CVS 6277) (check-in: fafb07b837 user: danielk1977 tags: trunk)
14:28
Prevent code in test6.c from reading the 512 byte locking region (the PENDING_BYTE page) of a database file. Doing so triggers an assert failure in os_unix.c. (CVS 6276) (check-in: 2a6a431692 user: danielk1977 tags: trunk)
13:41
Create links from backup API documentation to the backup application note. Comment changes only - no changes to code. (CVS 6275) (check-in: 85de23fb4e user: drh tags: trunk)
11:17
Reenable triggering vdbe tracing by creating file-system entries. Add a (redundant) test that modifying the temp schema expires all prepared statements. (CVS 6274) (check-in: f6590dac46 user: danielk1977 tags: trunk)
10:44
Do not always open a transaction on the temp database when writing to the main or another attached database. (CVS 6273) (check-in: f76b0b8129 user: danielk1977 tags: trunk)
05:45
Fix a bug in test file misc7.test. No code changes. (CVS 6272) (check-in: d919d2a14c user: danielk1977 tags: trunk)
2009-02-09
18:55
Fix a problem in backup.c causing OsTruncate() to be called with an argument larger than the current file-size. (CVS 6271) (check-in: b34bde80c7 user: danielk1977 tags: trunk)
17:34
Add assert() statements to os_unix.c which fire if there is a read or write for the locking region of a database file. (CVS 6270) (check-in: 93e792ffa8 user: drh tags: trunk)
13:19
Better error message when DISTINCT is used on an aggregate function that takes two or more arguments. Ticket #3641. (CVS 6269) (check-in: e20bf38466 user: drh tags: trunk)
05:32
Ignore the return structure of and F_GETLK fcntl() call on djgpp. Fix for #3642. (CVS 6268) (check-in: 8227af3463 user: danielk1977 tags: trunk)
05:18
Attempt to reproduce ticket #3643. No luck yet. (CVS 6267) (check-in: 8f2f98d247 user: danielk1977 tags: trunk)
2009-02-06
05:59
Changes to the backup API: (1) if a negative number is passed as the second argument to backup_step(), this is interpreted as "copy all remaining pages" and (2) if backup_finish() is called after backup_step() fails with a BUSY or LOCKED error, then this error is also returned by backup_finish() (same handling as for other errors encountered by backup_step()). (CVS 6266) (check-in: 9b8c8b18cf user: danielk1977 tags: trunk)
2009-02-05
17:00
Fix a test case that was still using the old pending_byte mechanism. (CVS 6265) (check-in: 08ec4f2c39 user: drh tags: trunk)
16:53
Fix the declaration of sqlite3PendingByte so that it works with the amalgamation. (CVS 6264) (check-in: 193c871f3d user: drh tags: trunk)
16:31
Make the pending byte adjustable via sqlite3_test_control() on all builds, not just on test builds. (CVS 6263) (check-in: e8f192e2a9 user: drh tags: trunk)
03:16
Fixed error detection in winTrucate() in os_win.c. Windows version only. Ticket #3640. (CVS 6262) (check-in: 82e03f1b54 user: shane tags: trunk)
03:00
Improved overrun detection in mem2.c (SQLITE_MEMDEBUG). Previously was only checking up to 3 extra bytes allocated due to rounding. (CVS 6261) (check-in: a6fe3d6b02 user: shane tags: trunk)
2009-02-04
22:46
Add "backup" and "restore" methods to the TCL interfaces and test cases to exercise those methods. (CVS 6260) (check-in: e420a3cedc user: drh tags: trunk)
20:55
Add ".backup" and ".restore" commands to the CLI - implemented using the new backup API. (CVS 6259) (check-in: 003e1d6218 user: drh tags: trunk)
20:08
Increase the version number to 3.6.11. (CVS 6258) (check-in: 0882a028c8 user: drh tags: trunk)
19:16
If the truncate operation fails in journalmode=TRUNCATE, do not fall back to overwriting the journal header with zeros. Simply fail the operation. (CVS 6257) (check-in: d4af60e52a user: drh tags: trunk)
17:40
Simplify wording of backup API error message. Decapitalize some other error messages. (CVS 6256) (check-in: f92405afb6 user: drh tags: trunk)
16:56
The sqlite3_backup_init() interface must lock the destination in case it needs to change the error message. (CVS 6255) (check-in: 572378d3a2 user: drh tags: trunk)
15:27
Fix a bug in test_malloc.c whereby running multi-threaded test cases could cause subsequent OOM tests to fail. (CVS 6254) (check-in: 03ea9e5913 user: danielk1977 tags: trunk)
11:57
Ensure that thread001.test and thread002.test reset the global shared-cache-enabled setting before they finish. (CVS 6253) (check-in: 416288a9fa user: danielk1977 tags: trunk)
10:09
Do not attempt to use the sub-journal file descriptor if it is not opened (as in journal_mode=off mode). Ticket #3636. (CVS 6252) (check-in: 20bd760554 user: danielk1977 tags: trunk)
08:17
Fix a bug in malloc.test causing the exclusive permutation to fail. Changes to test code only. (CVS 6251) (check-in: 72745bde90 user: danielk1977 tags: trunk)
03:59
Changes to completely remove all floating point ops if SQLITE_OMIT_FLOATING_POINT defined. Note that w/o fp, date/time, round, nan, etc. are all gone or limited in functionality. Updated some of the test scripts to support missing fp and 64-bit functionality. Ticket #3029. (CVS 6250) (check-in: 5cef400023 user: shane tags: trunk)
01:49
Remove compiler warnings under MSVC. (CVS 6249) (check-in: 6301f08a2b user: shane tags: trunk)
2009-02-03
22:51
Correction to check-ins (6246) and (6247): The backup object might not hold a valid destination connection pointer. Also, do not reset the page cache when establishing a read-lock while there is a persistent or truncated journal, only if there is a journal that really needs to rollback. Otherwise backups always reset whenever the source database file is read. (CVS 6248) (check-in: 7f827ba9d7 user: drh tags: trunk)
22:17
A backup must clear the internal schema of the destination database so that the schema will be reloaded for the next sqlite3_prepare() (CVS 6247) (check-in: 76f23a4394 user: drh tags: trunk)
21:13
Must hold mutex on the destination during backups. Add documentation to warn programmers that attempting to use the destination connection during a backup can lead to deadlock. (CVS 6246) (check-in: 5f6c06b974 user: drh tags: trunk)
19:55
Fixed postToParent() return type (Tcl_ThreadCreateType) in test_thread.c to compile with MSVC. Removed a few compiler warnings. Test harness change only. (CVS 6245) (check-in: e9475abaf8 user: shane tags: trunk)
19:52
Fix buffer size in md5_cmd() in test_md5.c. Test harness change only. (CVS 6244) (check-in: c1e15717ff user: shane tags: trunk)
18:47
More adjustments to the backup API documentation. No changes to code. (CVS 6243) (check-in: ca650879d3 user: drh tags: trunk)
18:25
Tweaks to the backup API documentation contained in comments. No changes to code. (CVS 6242) (check-in: 6298bcca14 user: drh tags: trunk)
16:51
Commit first version of the 'backup' feature. (CVS 6241) (check-in: 663479b417 user: danielk1977 tags: trunk)
16:25
Fix the sqlite3_mprintf_long test command (added by check-in (6224) in order to address ticket #3621) so that it works on systems with sizeof(int)==4 and sizeof(long)==8. (CVS 6240) (check-in: 2e45c2a851 user: drh tags: trunk)
15:50
Remove several compiler warnings. (CVS 6239) (check-in: 85e9196d79 user: drh tags: trunk)
15:39
Remove the text of the sqlite3VdbeMemSanity() routine, which was already commented out. (CVS 6238) (check-in: a3c260772b user: drh tags: trunk)
15:27
Check at the write() call to work around the msdos bug in OSX actually succeeds and throw an error if it does not. #ifdef out the work-around for all platforms other than OSX. Ticket #3633. (CVS 6237) (check-in: b054b56917 user: drh tags: trunk)
13:51
Add a special rule to the amalgamation generator to deal with the sqlite3OsDlSym function. Ticket #3631. (CVS 6236) (check-in: 876f874c6e user: drh tags: trunk)
13:19
Fix a problem in check-in (6226) which could cause an assertion fault following a malloc failure. The prior check-in was for ticket #3624. (CVS 6235) (check-in: 1ffe44e9d6 user: drh tags: trunk)
13:10
Check-in (6230) introduced a bugs in SUBSTR() which was caught by the fuzz tester. Fixed by this check-in. Related to ticket #3628. (CVS 6234) (check-in: cd2e7f6c0f user: drh tags: trunk)
2009-02-02
21:57
Make group_concat() a 1- or 2-value function, as the documentation says it should be. Use the md5sum() function to verify ticket #3179, not group_concat(). This undoes the ill-advised group_concat() change of check-in (5233). (CVS 6233) (check-in: f2ae82c4d4 user: drh tags: trunk)
18:03
Omit the TEMP keyword from the schema of TEMP tables created using CREATE TEMP TABLE AS SELECT ..... Ticket #3630. (CVS 6232) (check-in: 3b0a25548c user: drh tags: trunk)
17:30
Minor simplifications to SQL function implementations. (CVS 6231) (check-in: 92e5c27f20 user: drh tags: trunk)
16:32
Update the SUBSTR function so that works consistently when the 2nd parameter is 0. Ticket #3628. (CVS 6230) (check-in: 5fc125d362 user: drh tags: trunk)
01:50
Restrict the RANDOM() function to have zero arguments. Ticket #3627. (CVS 6229) (check-in: b8b546b6ed user: drh tags: trunk)
2009-02-01
19:42
Fix SUBSTR() so that it returns NULL if any argument is NULL. Ticket #3626. (CVS 6228) (check-in: 779fce82b7 user: drh tags: trunk)
19:23
Fix the SUBSTR() function so that when the 3rd argument is negative, it counts backwards from the selected start point. Ticket #3625. (CVS 6227) (check-in: 2217339bad user: drh tags: trunk)
18:08
Change the replace() function to return a copy of its first argument when the 2nd argument is an empty string. Ticket #3624. (CVS 6226) (check-in: ffebf10f6f user: drh tags: trunk)
00:29
Adjust comments in vdbe.c to use OP_MakeRecord instead of the obsolete OP_MakeIdxRec. Ticket #3619. (CVS 6225) (check-in: 0d2abbbff5 user: drh tags: trunk)
00:21
Add a new test command, sqlite3_mprintf_long, for testing the behavior of "long integer" printf formatting. Ticket #3621. (CVS 6224) (check-in: 3ba1a17b13 user: drh tags: trunk)
00:00
Make the TO keyword available even if SQLITE_OMIT_ALTERTABLE is defined. Ticket #3622. (CVS 6223) (check-in: 3890985ca6 user: drh tags: trunk)
2009-01-31
22:28
Better error message when coalesce() has too few arguments. Ticket #3623. (CVS 6222) (check-in: 9cd43c82a3 user: drh tags: trunk)
14:54
Avoid a segfault when running vacuum on an in-memory database. Ticket #3620. (CVS 6221) (check-in: 407830c683 user: danielk1977 tags: trunk)
2009-01-30
17:27
Fix a round-off error when moving dates by negative modifier amounts. Ticket #3618. Enhance the "NNN years" modifier to accept fractional years. (CVS 6220) (check-in: 86be908c5e user: drh tags: trunk)
16:09
Made code to remove unused parameter warning part of the conditional. Ticket #3610. (CVS 6219) (check-in: c5dca1146d user: shane tags: trunk)
06:11
Changes to setupLookaside() in main.c to better handle lookaside buffer configurations of zero-size. Ticket #3616. (CVS 6218) (check-in: 0a2c7f7403 user: shane tags: trunk)
05:59
Implemented the SQLITE_LAST_ERRNO op in the xFileControl() method of os_win.c. Ticket #3615. (CVS 6217) (check-in: 9ea871f3e8 user: shane tags: trunk)
05:47
In test case incrvacuum-15.1 close both db handles (db and db2) before attempting to delete test.db. Ticket #3614. (CVS 6216) (check-in: e764a7c5d3 user: shane tags: trunk)
05:40
Minor changes to remove a few MSVC compiler warnings at /W3. Ticket #3610. (CVS 6215) (check-in: c74c78e4eb user: shane tags: trunk)
2009-01-29
19:27
Add test cases to make sure that keywords that we say can be used as identifiers really can be used as identifiers. These tests were inspired by ticket #3612, but they do not directly address ticket #3612. (CVS 6214) (check-in: 6041ca87a1 user: drh tags: trunk)
02:54
add a cvsignore file (CVS 6213) (check-in: 68c8cdd73b user: vapier tags: trunk)
2009-01-28
20:21
Fix a segfault that can occur when attempting to insert into a corrupt database file. Need a test case. (CVS 6212) (check-in: 68957cf0c4 user: drh tags: trunk)
04:46
regenerate autotools (CVS 6211) (check-in: 813a3c9686 user: vapier tags: trunk)
04:46
unify TCLLIBDIR handling with libtclsqlite3.so and use libtool to install it rather than custom tclinstaller.tcl ... this integrates better with autotools and avoids relinking issues (RPATH pointing to builddir) (CVS 6210) (check-in: 3a049ca761 user: vapier tags: trunk)
02:55
Add testcase() macros for coverage in date.c. (CVS 6209) (check-in: 90b42eba8e user: drh tags: trunk)
2009-01-26
21:43
use AC_MSG_xxx funcs rather than `echo` (CVS 6208) (check-in: ed08025ad2 user: vapier tags: trunk)
21:39
(#3449) search for tclConfig.sh first by asking tclsh itself where it is (CVS 6207) (check-in: ff2912dc14 user: vapier tags: trunk)
21:25
(#1428) installed shared libs with exec perms (CVS 6206) (check-in: 3f2a3414d0 user: vapier tags: trunk)
20:59
(#3583) add a rule for sqlite3.pc in case the .in file is updated (CVS 6205) (check-in: 4d03b69317 user: vapier tags: trunk)
2009-01-24
15:23
Remove obsolete files from the tools subfolder. (CVS 6204) (check-in: d74560803e user: drh tags: trunk)
11:30
Fix some minor compiler warnings. Added sqlite3Isalpha() for use in the soundex() function. (CVS 6203) (check-in: bfc71edca4 user: drh tags: trunk)
09:56
Remove incorrect ALWAYS macro associated with empty IN() sets. Ticket #3602. (CVS 6202) (check-in: f3c09a0cb8 user: danielk1977 tags: trunk)
2009-01-23
16:45
Optimization: When loading a new page into the cache, avoid redundant memset() calls to zero it. (CVS 6201) (check-in: 9c0b9f8813 user: danielk1977 tags: trunk)
2009-01-22
23:04
Fix the VACUUM command so that it does not commit a transaction when it is mistakenly run within a transaction - it should leave the transaction open. (CVS 6200) (check-in: 75cc709be4 user: drh tags: trunk)
17:12
Silence a C++ builder warning by writing "if( (rc = function())!=SQLITE_OK )" instead of "if( (rc = function()) )" in two places in pager.c. Ticket #3605. (CVS 6199) (check-in: 78ae96def5 user: danielk1977 tags: trunk)
2009-01-21
17:45
Add a comment to fts3_tokenizer.h to make it clear how the xNext() method is supposed to set its output variables. Make sure the output variables of xNext() are only used if SQLITE_OK is returned. Ticket #3604. (CVS 6198) (check-in: 5b3c075f96 user: danielk1977 tags: trunk)
2009-01-20
17:06
Big change to make pager.c easier to follow. Unused variables removed, comments improved, etc. (CVS 6197) (check-in: 12f7346c13 user: danielk1977 tags: trunk)
16:53
When not compiling for an EBCDIC system, use built-in alternatives to the tolowe r(), toupper() and other ctype.h library functions. Ticket #3597. (CVS 6196) (check-in: 1041abd678 user: danielk1977 tags: trunk)
2009-01-19
20:49
Make sure the *pzErrMsg return from sqlite3_get_table() is aways zeroed. Ticket #3598. (CVS 6195) (check-in: 7035c35dbe user: drh tags: trunk)
18:18
Fix the --enable-tempstore option on the configure script. Ticket #3599 (CVS 6194) (check-in: c2eabb99fe user: drh tags: trunk)
17:40
Make sure mutexes are fully enabled for thread001.test. Take steps to ensure that the thread tests run during regression testing. (CVS 6193) (check-in: 6242f113eb user: drh tags: trunk)
2009-01-17
16:59
Fix a bug that was preventing SQLite from releasing locks properly under obscure circumstances. (CVS 6192) (check-in: 502c66df8b user: danielk1977 tags: trunk)
15:53
Back out the Makefile.in changes from check-in (6181) because of reports (ticket #3594) that they do not work on NetBSD. Separately, documentation is updated to make clear that configure and Makefile.in are unsupported. (CVS 6191) (check-in: 2d79aaab13 user: drh tags: trunk)
2009-01-16
23:47
Remove a harmless UMR that occurs inside some debugging code. (CVS 6190) (check-in: 191c399fc6 user: drh tags: trunk)
16:40
Fix a change-counter bug similar to #3584. This one is much more obscure though, requiring a transient IO or malloc error to occur while running in exclusive mode. (CVS 6189) (check-in: 9f07d2d922 user: danielk1977 tags: trunk)
16:23
Revert (6187). (CVS 6188) (check-in: a353c1ab37 user: danielk1977 tags: trunk)
15:21
This commit is an error. Reverted by (6188). (CVS 6187) (check-in: aa67fd0cdb user: danielk1977 tags: trunk)
11:04
Allow recently added keywords 'savepoint' and 'release' to be used as database object names. Just as they could be prior to 3.6.8. Ticket #3590. (CVS 6186) (check-in: 54ab8326a1 user: danielk1977 tags: trunk)
2009-01-15
17:40
Treat "or" as an ANSI-C keyword, even though it is not. Ticket #3588. (CVS 6185) (check-in: ed4e308caa user: drh tags: trunk)
17:04
Version 3.6.10 (CVS 6184) (check-in: 21b720cc9b user: drh tags: trunk, release, version-3.6.10)
15:23
Disable test case select2-2.0.3. This was a timing test that sometimes fails due to CPU contention with other processes on the same host. (CVS 6183) (check-in: ffdf91fec9 user: drh tags: trunk)
04:30
Avoid using ENOTSUP on systems that do not define that symbol. Ticket #3512. (CVS 6182) (check-in: fcb6c67712 user: drh tags: trunk)
2009-01-14
23:38
Make some changes requested by Fedora. (CVS 6181) (check-in: 7bc08bc719 user: drh tags: trunk)
23:17
Fix the shell so that the ".schema" command works regardless of the pragma settings. Ticket #3585. (CVS 6180) (check-in: 6f6b638e44 user: drh tags: trunk)
23:03
Add asserts to detect if a transaction commits without first incrementing the transaction counter. These asserts are intended to prevent future problems similar to ticket #3584. (CVS 6179) (check-in: b676ccfd90 user: drh tags: trunk)
18:59
Fix typos in comments in FTS3 implementation. (CVS 6178) (check-in: b0f066630c user: drh tags: trunk)
18:59
Increment the version number in preparation for yet another release. (CVS 6177) (check-in: dce60ea764 user: drh tags: trunk)
17:45
Fix a problem with committing a transaction while there are other active statements. Sometimes, the database change counter was not being updated. (CVS 6176) (check-in: b7d2a477aa user: danielk1977 tags: trunk)
04:09
Version 3.6.9 (CVS 6175) (check-in: b6ce8199a9 user: drh tags: trunk, release)
01:10
Here is the test case to prove that ticket #3581 is fixed. (CVS 6174) (check-in: f5f5ef646b user: drh tags: trunk)
00:55
Make sure the OR-clause optimizer takes the cost of sorting into account. Reset the rowid cache on the OP_Rewind and OP_Last opcodes. Bump the version number so that we can do an emergency release. Ticket #3581. (CVS 6173) (check-in: d28b58209b user: drh tags: trunk)
2009-01-13
20:14
Updates to comments as suggested by tickets #3578 and #3579. (CVS 6172) (check-in: b5927213b6 user: drh tags: trunk)
16:03
If the journal file is open when unlocking the database, close it just before unlocking the database file instead of just after. This may fix #3572. (CVS 6171) (check-in: 36fe9a7a51 user: danielk1977 tags: trunk)
2009-01-12
15:46
Version 3.6.8 (CVS 6170) (check-in: 8ca0b7c136 user: drh tags: trunk, release)
14:01
Only run tests that depend on SQLITE_PREFER_PROXY_LOCKING builds when said symbol is set. (CVS 6169) (check-in: 5d88f8be73 user: danielk1977 tags: trunk)
2009-01-11
18:24
Sometimes a single byte is written to the main database file. Make sure that journaltest knows this. (CVS 6168) (check-in: e0af5a43f3 user: drh tags: trunk)
17:00
Fix an assert() so that it works correctly with SQLITE_TEMP_STORE=3. (CVS 6167) (check-in: fd2bbcf8d8 user: drh tags: trunk)
05:54
Fix jrnlmode.test so that it does not run tests involving in-memory journals during the "journaltest" permutation. (CVS 6166) (check-in: b47ddefc77 user: danielk1977 tags: trunk)
00:44
The crash8.test depends on auto_vacuum being off. Make sure that is the case. (CVS 6165) (check-in: 3538d2a981 user: drh tags: trunk)
00:42
In io.test, reset the connection after manually deleting the journal file, so that the connection does not continue to use the old deleted journal file. (CVS 6164) (check-in: 1e79f4f9e5 user: drh tags: trunk)
00:18
Adjust savepoint.test so that it can deal with SQLITE_TEMP_STORE=3. (CVS 6163) (check-in: 3cb910f0ce user: drh tags: trunk)
2009-01-10
18:51
Do not run crash8.test as part of the "journaltest" permutation. crash8.test uses "PRAGMA synchronous=off", which is incompatible with journaltest. (CVS 6162) (check-in: 5f184da675 user: danielk1977 tags: trunk)
17:57
Remove the unused Pager.alwaysRollback flag. Fix a couple of comments in pager.c. (CVS 6161) (check-in: 8f0672af8d user: danielk1977 tags: trunk)
17:02
Remove an faulty assertion inserted a few days ago. (CVS 6160) (check-in: 495f017e03 user: drh tags: trunk)
16:15
When compiled with SQLITE_DEBUG (in other words, when assert() is enabled) the ALWAYS and NEVER macros will throw an assertion if their arguments are not true or false, respectively. (CVS 6159) (check-in: 64a8dcd8d6 user: drh tags: trunk)
16:15
Improve coverage of pager.c. (CVS 6158) (check-in: 855c4093cf user: danielk1977 tags: trunk)
15:34
Fix a bug caused by overzealous code test coverage simplifications. Bug found by TH3. (CVS 6157) (check-in: 3da5578726 user: drh tags: trunk)
13:24
Remove some unused code from expr.c in order to increase test coverage. (CVS 6156) (check-in: 2cbea64fb0 user: drh tags: trunk)
11:13
Fix a bug in the previous commit - use SQL comments instead of Tcl comments in SQL blocks. (CVS 6155) (check-in: 3d7a8de248 user: danielk1977 tags: trunk)
11:10
Add a malloc failure test case that covers a few previously untested lines in pager.c (CVS 6154) (check-in: 000aedb047 user: danielk1977 tags: trunk)
2009-01-09
21:41
Coverage improvements in pragma.c. Change the __DARWIN__ macro to __APPLE__, which is available by default on Leopard. (CVS 6153) (check-in: 64c56226b9 user: drh tags: trunk)
17:11
Increase pager.c coverage a bit. Fix an assert failure that can occur following a "PRAGMA omit_readlock" command on a read-only database. (CVS 6152) (check-in: 0f3f9011fa user: danielk1977 tags: trunk)
14:29
Fix two problems in test instrumentation that show up on some fulltests. (CVS 6151) (check-in: c917961743 user: drh tags: trunk)
14:11
Simplifications to btree.c to improve test coverage. (CVS 6150) (check-in: ac84f106d5 user: drh tags: trunk)
10:49
Add a couple of coverage tests. (CVS 6149) (check-in: 6a64109d1f user: danielk1977 tags: trunk)
02:49
More coverage improvements. (CVS 6148) (check-in: 6e171c0a64 user: drh tags: trunk)
01:12
Increased test coverage. (CVS 6147) (check-in: 45bb5703d7 user: drh tags: trunk)
2009-01-08
21:00
Increased test coverage in where.c. (CVS 6146) (check-in: 1e5725c517 user: drh tags: trunk)
18:04
Fix a comment in pager.c. No actual code changes. (CVS 6145) (check-in: 44d3bfddf4 user: danielk1977 tags: trunk)
17:57
Avoid an 'invalid cast' warning in test_osinst.c. (CVS 6144) (check-in: 931f3a21bd user: danielk1977 tags: trunk)
17:50
Fix a couple of potential corruption problems in pager.c. (CVS 6143) (check-in: 5a39525ba3 user: danielk1977 tags: trunk)
15:24
Add a test script for ticket #2565. Change the assert() in pager.c into a testcase() macro. (CVS 6142) (check-in: 1e53e382e5 user: drh tags: trunk)
14:36
Allow database files to be created in the root directory on unix. Ticket #3570. (CVS 6141) (check-in: 81014334ad user: drh tags: trunk)
12:05
Clean up test_journal.c to make it easier to follow. (CVS 6140) (check-in: 5a28c7c7b4 user: danielk1977 tags: trunk)
03:11
Increase test coverage of where.c. Make sure OR-optimization works on UPDATE and DELETE in addition to SELECT. (Bug found by coverage tests.) (CVS 6139) (check-in: 4b2c08e898 user: drh tags: trunk)
2009-01-07
20:58
Add new test cases to increase coverage of where.c. (CVS 6138) (check-in: 2e1ab51f05 user: drh tags: trunk)
18:24
Fix a bug in the LIKE query optimization. (Found by coverage testing.) (CVS 6137) (check-in: fe90e9116b user: drh tags: trunk)
18:08
Make the same change as (6121) (accidentally reverted). Also enhance test_journal.c to catch this kind of bug. (CVS 6136) (check-in: ccc9c211a2 user: danielk1977 tags: trunk)
17:06
Add a "synchronous = off" variant to savepoint6.test. (CVS 6135) (check-in: 0f57011e3b user: danielk1977 tags: trunk)
16:15
Change SQLITE_MAX_FUNCTION_ARG from 100 to 127 to match invariant H16124. Ticket #3567. (CVS 6134) (check-in: 1fe79ffd77 user: danielk1977 tags: trunk)
15:52
For archival purposes, add the TCL script that was used to generate many of the test cases for where7.test. (CVS 6133) (check-in: 0e01cdc8d2 user: drh tags: trunk)
15:33
Conjecture: a journal header with nRec==0 must be the last header in the journal. Add asserts to make this conjecture explicit. (CVS 6132) (check-in: 15b5b5f90c user: drh tags: trunk)
15:18
Fix for 'truncate file' operations on in-memory databases. (CVS 6131) (check-in: 83d1eafbde user: danielk1977 tags: trunk)
10:52
Add a comment to the openSubjournal() function in pager.c. (CVS 6130) (check-in: 04387ae10a user: danielk1977 tags: trunk)
10:35
Fix a problem with reverting a 'DROP TABLE' command executed inside of a savepoint on an auto-vacuum database. (CVS 6129) (check-in: 3a4bb83235 user: danielk1977 tags: trunk)
08:12
Fix savepoint related bugs. A rollback caused by an IO error or "OR ROLLBACK" clause while one or more savepoints were open was leaving the sqlite3 structure in an invalid state. (CVS 6128) (check-in: e5d42c69a3 user: danielk1977 tags: trunk)
03:59
Add a HIGHSTRESS parameter to the sqlite3_config_alt_pcache debugging command in the test harness - to force calling pagerStress() more frequently. (CVS 6127) (check-in: e426860b94 user: drh tags: trunk)
02:03
Pager changes attempting to verify that ticket #2565 cannot recur. (CVS 6126) (check-in: 15b9dac455 user: drh tags: trunk)
2009-01-06
18:43
Now that we have permutations.test, it is really only necessary to run all.test for a single cycle. So make that the default. (CVS 6125) (check-in: 3c2f292fb7 user: drh tags: trunk)
18:21
Reduce the number of paths in btreeCopyFile(). (CVS 6124) (check-in: df2c285cb9 user: danielk1977 tags: trunk)
17:52
Modify test_journal.c to verify the page data being written to the journal file. (CVS 6123) (check-in: 0d258956f8 user: danielk1977 tags: trunk)
15:58
Cleanup of the PAGERTRACE macro. Other comment changes in pager.c. (CVS 6122) (check-in: ee7b4b6088 user: drh tags: trunk)
15:28
The fix in (6120) wasn't quite right. This fixes it. (CVS 6121) (check-in: ddc2ebfa52 user: danielk1977 tags: trunk)
15:20
Fix a recently introduced problem in "permutations.test autovacuum_crash". (CVS 6120) (check-in: 2cdbb468ed user: danielk1977 tags: trunk)
14:50
Update permutations.test so that it does not show an error when running the singlethread and multithread test cases on THREADSAFE=0 builds. (CVS 6119) (check-in: 301b57b7ba user: drh tags: trunk)
14:34
Fix a memory leak in test_journal.c (test code). Also remove function pager_truncate_cache(), a wrapper around sqlite3PCacheTruncate(), from pager.c. (CVS 6118) (check-in: a64f3db0b3 user: danielk1977 tags: trunk)
14:19
Fix compiler warnings. (CVS 6117) (check-in: da770a8dff user: drh tags: trunk)
13:40
Add some savepoint related test cases and fix a few problems. (CVS 6116) (check-in: 8c62ea4fde user: danielk1977 tags: trunk)
00:11
Remove leftover "breakpoint" from the fuzz.test script. (CVS 6115) (check-in: c2482d8877 user: drh tags: trunk)
00:08
Fix a problem in the WHERE clause generator when the FROM clause is empty. (CVS 6114) (check-in: a701562561 user: drh tags: trunk)
2009-01-05
22:30
The fix in (6111) was not quite right. This version works better. (CVS 6113) (check-in: 5f80140a2d user: drh tags: trunk)
19:36
Reenable fuzz testing for all.test. Make sure the query flattener copies over aggregate information from expressions on outer query terms while flattening. (CVS 6112) (check-in: e02323b362 user: drh tags: trunk)
18:02
Make sure the MEM_Zero flags is cleared whenever removing MEM_Blob. (CVS 6111) (check-in: b2131e868a user: drh tags: trunk)
17:19
Include fuzz3.test in all.test. Get fuzz3.test working again. (CVS 6110) (check-in: 77dc19cfab user: drh tags: trunk)
17:15
Fix some test code problems in "permutations.test journaltest pager.test". (CVS 6109) (check-in: cf627752c4 user: danielk1977 tags: trunk)
2009-01-03
15:06
Add some tests with attached databases to savepoint.test. Also tests of creating and dropping tables in auto-vacuum mode inside of a savepoint. (CVS 6108) (check-in: ca7f11d50d user: danielk1977 tags: trunk)
14:04
When the commit_hook calls a query recursively, make sure the commit_hook is not invoked recursively. Ticket #3564. (CVS 6107) (check-in: 27ae406537 user: drh tags: trunk)
12:55
Fix a typo in a comment. (CVS 6106) (check-in: 50f57cd145 user: drh tags: trunk)
10:41
Add test file savepoint6.test. Contains pseudo random tests of savepoint related commands. (CVS 6105) (check-in: 2946fbb718 user: danielk1977 tags: trunk)
2009-01-02
21:39
Memory allocation failure in Bitvec are probably all benign. Still, add code to check this, just to be sure. (CVS 6104) (check-in: 4688e1c8b1 user: drh tags: trunk)
21:08
Reinitialize page 1 of the database file following a ROLLBACK TO of a transactional SAVEPOINT on an initially empty database. (CVS 6103) (check-in: 3e9efb7638 user: drh tags: trunk)
18:10
Fix compiler warnings in pager.c (CVS 6102) (check-in: 78dd7909da user: drh tags: trunk)
17:33
Modify the (transaction) method of the tcl interface to use savepoints. This makes nested calls to (transaction) work more intuitively. (CVS 6101) (check-in: f047758de9 user: danielk1977 tags: trunk)
15:47
Add fts_expr.* files to Makefile.in. (CVS 6100) (check-in: 524c8634df user: shane tags: trunk)
15:45
Many of the boundary tests depend on a working 64-bit implementation of TCL, so skip them if this is not available. (CVS 6099) (check-in: b1a4a17f87 user: shane tags: trunk)
12:35
Increment the version number to 3.6.8. (CVS 6098) (check-in: 7509641a4c user: drh tags: trunk)
01:10
Do not display matches against the right-hand side of a NOT operator in the output of the FTS snippet() or offsets() functions. (CVS 6097) (check-in: d44c84c0f7 user: drh tags: trunk)
2009-01-01
15:20
Fix a (benign) valgrind error that can occur following malloc failure while executing a 'ROLLBACK TO savepoint' command. (CVS 6096) (check-in: 9ff8598f3b user: danielk1977 tags: trunk)
14:06
Fix some problems in the fts3 expression parser with mismatched parenthesis. (CVS 6095) (check-in: ccfe4580ac user: danielk1977 tags: trunk)
12:34
Additional test cases and cleanup of FTS3 parenthesis processing. (CVS 6094) (check-in: afac429300 user: drh tags: trunk)
07:42
Add a couple of extra tests for the fts3 expression parser to improve mcdc coverage. (CVS 6093) (check-in: 13146b3493 user: danielk1977 tags: trunk)
07:08
Add pseudo-random tests of the fts3 expression parser. Revise the fix in (6091). (CVS 6092) (check-in: 11c2d46861 user: danielk1977 tags: trunk)
04:19
Fix a bug parsing "<expr> AND (abc NEAR def)" in fts3_expr.c. (CVS 6091) (check-in: d1a6a2edd7 user: danielk1977 tags: trunk)
2008-12-31
21:52
Avoid surplus bytes at the end of the keyword string table. Add testcase() macros to make sure all keywords are used during testing. (CVS 6090) (check-in: 73958060aa user: drh tags: trunk)
19:27
Fix the name in the documentation of the compile-time macro for enabling FTS3 parenthesis processing. (CVS 6089) (check-in: ac8258da6e user: drh tags: trunk)
16:27
Fix the FTS3 expression parser so that it works in the amalgamation when FTS3 is disabled. (CVS 6088) (check-in: 7e238e8604 user: drh tags: trunk)
16:01
Fix the FTS3 module with parenthesis syntax so that it will work in the amalgamation. (CVS 6087) (check-in: c2b9891fc0 user: drh tags: trunk)
2008-12-30
17:55
Fix a bug in the multi-index OR cost estimator. Remove leftover "breakpoint" commands from test scripts. (CVS 6086) (check-in: b090d5736d user: drh tags: trunk)
16:35
Add LEFT JOIN test cases for multi-index OR in where9.test. (CVS 6085) (check-in: 96f3b62914 user: drh tags: trunk)
16:18
Get EXPLAIN QUERY PLAN working with the multi-index OR optimization. Added new test script "where9.test". (CVS 6084) (check-in: 4b64602210 user: drh tags: trunk)
16:13
Add further pseudo-randomly generated test cases to where8.test. (CVS 6083) (check-in: e01f6ef9d9 user: danielk1977 tags: trunk)
15:51
Fix a bug in where8.test causing a tcl exception. (CVS 6082) (check-in: 495b569a39 user: danielk1977 tags: trunk)
15:26
Add a few more tests to where8.test. (CVS 6081) (check-in: ac28aa8b61 user: danielk1977 tags: trunk)
14:40
Still more test cases in where7.test. (CVS 6080) (check-in: eb9ba5fe70 user: drh tags: trunk)
14:14
Add many new test cases to where7.test. (CVS 6079) (check-in: 174985831f user: drh tags: trunk)
13:21
Do not run savepoint4.test (crash simulation tests) in permutations.test. It slows things down too much. (CVS 6078) (check-in: 2df02b543e user: danielk1977 tags: trunk)
12:00
Add a couple of extra tests for the "WHERE ... OR" optimization. (CVS 6077) (check-in: 35c87585b8 user: danielk1977 tags: trunk)
09:45
Fix a bug in where.c causing a malfunction when an INDEXED BY clause specified an unusable index on other than the leftmost table in the FROM clause. Ticket #3560. (CVS 6076) (check-in: f8ff021212 user: danielk1977 tags: trunk)
06:36
Fix a bug in README.tokenizers. Ticket #3559. (CVS 6075) (check-in: b8898d132e user: danielk1977 tags: trunk)
06:24
Invoke the authorization callback when compiling SAVEPOINT, ROLLBACK TO and RELEASE commands. (CVS 6074) (check-in: e49807b16f user: danielk1977 tags: trunk)
2008-12-29
23:45
Always make sure WhereClause objects are initialized to zero when they are first allocated. (CVS 6073) (check-in: 7d0ae55d6b user: drh tags: trunk)
18:33
Add test file where8.test. (CVS 6072) (check-in: bff460ec2c user: danielk1977 tags: trunk)
14:51
Remove an old variable declaration that was commented out using a C++ comment. (CVS 6071) (check-in: 0b972f14f0 user: danielk1977 tags: trunk)
10:39
Set the OPFLG_IN1 flag on a couple of extra opcodes. (CVS 6070) (check-in: 03d0350441 user: danielk1977 tags: trunk)
2008-12-28
20:47
Multi-index OR optimizer response to ORDER BY rowid. But fix in sqlite3_stmt_status(): report a full table scan when "ORDER BY rowid" is used without constraints. (CVS 6069) (check-in: 3464d369d3 user: drh tags: trunk)
18:35
Optimize WHERE clauses that constain AND, BETWEEN, and LIKE terms as operands of an OR. (CVS 6068) (check-in: 67cf24b30e user: drh tags: trunk)
16:55
Simplify the VM code that implements WHERE claues. (CVS 6067) (check-in: fa95f843e1 user: drh tags: trunk)
2008-12-27
15:23
Fix a problem with savepoint and incremental-vacuum. (CVS 6066) (check-in: 08352f9ea9 user: danielk1977 tags: trunk)
2008-12-26
07:56
Reset the column cache before coding each step of a trigger program. Candidate fix for #3554. (CVS 6065) (check-in: a1b1f6cd7d user: danielk1977 tags: trunk)
2008-12-24
11:25
Fix a virtual table related assert() that can fail following a malloc failure. (CVS 6064) (check-in: c6fd3b8f29 user: danielk1977 tags: trunk)
09:30
Fix a couple of problems in test file test_journal.c that were causing segfaults when running all.test. (CVS 6063) (check-in: 416c9efb49 user: danielk1977 tags: trunk)
2008-12-23
23:56
Continuing improvements to the multi-index OR-clause optimizer. Added a few simple test cases. (CVS 6062) (check-in: 55d4f493e7 user: drh tags: trunk)
19:15
Fix a problem with the savepoint code and in-memory journals. (CVS 6061) (check-in: 26ceebf38e user: danielk1977 tags: trunk)
16:23
Fix an OOM problem in where.c. (CVS 6060) (check-in: d2105f617e user: drh tags: trunk)
15:58
Make sure nOverflow is always cleared when a page is released. (CVS 6059) (check-in: 8d0f724477 user: drh tags: trunk)
13:35
Multi-index OR-clause optimization now works for simple tests. There are no test scripts for it yet, though. And it is disabled by default, pending further testing and optimization. We need a lot of both. (CVS 6058) (check-in: d77a702358 user: drh tags: trunk)
11:46
Add a test to savepoint.test that tests that nothing goes wrong if an incremental vacuum occurs inside a savepoint. (CVS 6057) (check-in: fc4f062153 user: danielk1977 tags: trunk)
11:11
In sqlite3AddColumn(), use local variable 'db' instead of 'pParse->db'. (CVS 6056) (check-in: 0c53a4c2da user: danielk1977 tags: trunk)
10:37
Fix a couple of assert() failures that can occur in btree.c and pager.c. (CVS 6055) (check-in: ae44e74824 user: danielk1977 tags: trunk)
2008-12-22
15:04
Fix a reference counting bug in rtree. Ticket #3549. (CVS 6054) (check-in: bbdc0e9f24 user: danielk1977 tags: trunk)
11:43
Changes to test scripts so that veryquick.test runs with SQLITE_TEMP_STORE=3 defined. Also a fix to stop the same switch causing a crash in the savepoint code. (CVS 6053) (check-in: ee0e6eae9f user: danielk1977 tags: trunk)
10:58
Add a case to permutations.test to run tests with the test_journal.c backend installed. Also many fixes to test_journal.c and one quite obscure fix to pager.c. (CVS 6052) (check-in: bb177e3072 user: danielk1977 tags: trunk)
03:37
Fix a variable type to prevent a warning in the proxy-locking code. (CVS 6051) (check-in: d9595b9618 user: danielk1977 tags: trunk)
2008-12-21
03:51
Continue refactoring where.c in preparation for installing OR-clause optimizations. (CVS 6050) (check-in: 778e91ddb8 user: drh tags: trunk)
2008-12-20
18:33
Add a vfs backend that detects problems like the one addressed by (6043) and (6047). (CVS 6049) (check-in: 49172e4876 user: danielk1977 tags: trunk)
13:18
Do not use long long constants in code. Ticket #3547. (CVS 6048) (check-in: 51b3bfc3b9 user: drh tags: trunk)
08:39
Fix the crash-followed-by-corruption bug revealed by savepoint4.test. This is actually the same bug as was fixed by (6043). The fix was not entirely correct. (CVS 6047) (check-in: 688336266f user: danielk1977 tags: trunk)
02:14
Specify type "void" in the parameter list of functions that take no parameters. Tickets #3545 and #3546. (CVS 6046) (check-in: c2228bd14a user: drh tags: trunk)
02:06
Enhanced analysis of OR terms in a WHERE clause. Another step toward being able to use indices with OR-connected WHERE clause terms. (CVS 6045) (check-in: c3f7aa019c user: drh tags: trunk)
2008-12-19
18:45
Add extra crash test cases that stress the savepoint mechanism to savepoint4.test. Currently, these tests are causing database corruption which (obviously) needs to be fixed. (CVS 6044) (check-in: e06a968aa5 user: danielk1977 tags: trunk)
16:31
Add some crash-tests for savepoint. Fix a bug revealed by these tests. (CVS 6043) (check-in: 6f36c16678 user: danielk1977 tags: trunk)
11:37
Add the file ext/fts3/README.syntax, containing documentation describing the two query syntaxes now supported by fts3. (CVS 6042) (check-in: ed81ad5a5d user: danielk1977 tags: trunk)
2008-12-18
22:25
Fix the Oracle and MS-Sql command-line terminator logic in the CLI. Ticket #3544. (CVS 6041) (check-in: dcc8935fa0 user: drh tags: trunk)
18:31
Increase test coverage of new savepoint code. (CVS 6040) (check-in: d915718d0b user: danielk1977 tags: trunk)
15:45
Add savepoint2.test, a file containing savepoint tests similar to tests in trans.test and avtrans.test. And a few savepoint bug fixes. (CVS 6039) (check-in: 98a53d91f6 user: danielk1977 tags: trunk)
05:30
Fix a bug in icuOpen() in fts2. (CVS 6038) (check-in: b9c722bd96 user: danielk1977 tags: trunk)
2008-12-17
19:22
Update the WHERE clause processing infrastructure in preparation for adding multi-index OR evaluation. (CVS 6037) (check-in: 78401b33fe user: drh tags: trunk)
17:30
Add the savepoint feature. This feature is largely untested at this point. (CVS 6036) (check-in: 34b56600ec user: danielk1977 tags: trunk)
15:49
Fix some strict-aliasing problems in fts3_expr.c. (CVS 6035) (check-in: 20a4ca5d36 user: danielk1977 tags: trunk)
15:18
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) (check-in: 7389b9ecb8 user: danielk1977 tags: trunk)
2008-12-16
18:15
Version 3.6.7 (CVS 6033) (check-in: f4f40370fb user: drh tags: trunk, release)
17:20
Fix a compile error in an assert() and a warning with MSVC builds. (CVS 6032) (check-in: 8b8f6a6ab5 user: shane tags: trunk)
13:46
Make sure the memory returned from sqlite3ScratchMalloc() is 8-byte aligned. Ticket #3542. (CVS 6031) (check-in: 13b56b7ff9 user: drh tags: trunk)
2008-12-15
22:51
New hyperlinks added to C interface documentation. No changes to working code. (CVS 6030) (check-in: 230cb68e07 user: drh tags: trunk)
16:33
Add test cases that verify evaluation of randomly generated SQL expressions. (CVS 6029) (check-in: 4685ffccd3 user: drh tags: trunk)
15:27
Convert the "~" and "NOT" operators to be two-address instructions. Ticket #3541. (CVS 6028) (check-in: ea9b747efb user: drh tags: trunk)
2008-12-14
14:45
Add the example from #3359 to the test suite. (CVS 6027) (check-in: 84f8417c07 user: danielk1977 tags: trunk)
02:55
Fix the name of the source algorithm in the comments of the script generators for the recently checked-in test cases for integer boundary-value testing. (CVS 6026) (check-in: adba0f3c01 user: drh tags: trunk)
2008-12-12
19:19
Add many new integer boundary value tests. Ticket #3536. (CVS 6025) (check-in: 45277238d3 user: drh tags: trunk)
17:56
Rework the rowid lookup logic in the query optimizer to fix various boundary value problems. Ticket #3536. Renamed the OP_MoveXX opcodes to OP_SeekXX. (CVS 6024) (check-in: e545490a28 user: drh tags: trunk)
2008-12-11
20:03
Previous change to the OP_ForceInt opcode did not work correctly when the input is a negative floating point value. This change is the fix. Ticket #3536. (CVS 6023) (check-in: f6c50f357c user: drh tags: trunk)
19:50
Make sure the OP_ForceInt vdbe opcode does not cause a rowid overflow. Ticket #3536. Tests to verify this change will be checked in separately. (CVS 6022) (check-in: 6a049c6595 user: drh tags: trunk)
16:17
Guard against attacks from deliberately corrupted database files. (CVS 6021) (check-in: da2ec96422 user: drh tags: trunk)
13:08
Increase the version number to 3.6.7. (CVS 6020) (check-in: 7c367515f8 user: drh tags: trunk)
13:05
Initialize a local variable so as to avoid a valgrind warning. (CVS 6019) (check-in: 0d316160fc user: drh tags: trunk)
02:58
Removed a few more harmless warnings from MSVC. (CVS 6018) (check-in: 72fd92bd67 user: shane tags: trunk)
02:56
Fix the TCL test harness so that it compiles and runs on OSX with SQLITE_ENABLE_LOCKING_STYLE. (CVS 6017) (check-in: 561d5de16e user: drh tags: trunk)
02:20
Initialize the yyzerominor constant generated by lemon. (CVS 6016) (check-in: 76c8f6ba87 user: drh tags: trunk)
2008-12-10
23:04
More code obfuscation designed to thwart compiler warning messages. (CVS 6015) (check-in: 0a1888a7e6 user: drh tags: trunk)
22:32
Try to remove compiler warnings from vdbe.c. (CVS 6014) (check-in: 50352950df user: drh tags: trunk)
22:30
Work to remove harmless MSVC compiler warnings. (CVS 6013) (check-in: 715dcd52c1 user: shane tags: trunk)
22:18
The strlen30 function in tclsqlite.c should be defined regardless of whether or not the amalgamation is used. (CVS 6012) (check-in: d8e8c7e51c user: drh tags: trunk)
22:15
Fix an issue with the new sqlite3Strlen30() introduced by check-in (6007). Additional casts for compiler warnings. (CVS 6011) (check-in: 258722b617 user: drh tags: trunk)
21:19
Additional work at eliminating silly compiler warnings. (CVS 6010) (check-in: ea01d43788 user: drh tags: trunk)
20:11
Fixed typo in comment in mkkeywordhash.c. (CVS 6009) (check-in: b7dd05b403 user: shane tags: trunk)
20:10
Added option (-l) to lemon parser to have it skip printing line numbers (#line ... ). (CVS 6008) (check-in: ccb9393a7a user: shane tags: trunk)
19:26
Never use strlen(). Use our own internal sqlite3Strlen30() which is guaranteed to never overflow an integer. Additional explicit casts to avoid nuisance warning messages. (CVS 6007) (check-in: c872d55493 user: drh tags: trunk)
18:03
More explicit type casting to silence VC++. (CVS 6006) (check-in: 14e6d19c31 user: drh tags: trunk)
17:20
Remove or rename local variables that shadow other variables or parameters. (CVS 6005) (check-in: e7e9fa4fa1 user: drh tags: trunk)
16:45
Add explicit casts to silence nuisance warnings from VC++. (CVS 6004) (check-in: da1cbfa766 user: drh tags: trunk)
11:49
Use memcpy() rather than "=" to copy a structure, in order to work around a bug in the XLC compiler on AIX. Ticket #3344. (CVS 6003) (check-in: 18bbcafc16 user: drh tags: trunk)
11:44
Remove some obsolete markup from sqlite.h.in. (CVS 6002) (check-in: d1d05e2a8a user: drh tags: trunk)
2008-12-09
14:46
Return an appropriate out-of-memory message when sqlite3_errmsg() is called following an SQLITE_NOMEM error. (CVS 6001) (check-in: 228ebe4115 user: drh tags: trunk)
14:03
Finish incomplete edit of resolve.c from check-in (5998). (CVS 6000) (check-in: 0d7e150e8c user: drh tags: trunk)
13:12
Additional test cases for nested subqueries in a WHERE clause. (CVS 5999) (check-in: 4f10f19dd1 user: drh tags: trunk)
13:04
A subquery in the result set of a SELECT should be able to look into outer queries to find variable references. But a subquery in the FROM clause should not be able to do this. Ticket #3530. (CVS 5998) (check-in: be03fa0543 user: drh tags: trunk)
04:59
Removed some harmless compiler warnings and converted some "double" ops to "int" in date.c. (CVS 5997) (check-in: 5eb648a0b5 user: shane tags: trunk)
03:55
Get rid of more silly compiler warnings. (CVS 5996) (check-in: 59ae002068 user: drh tags: trunk)
02:51
Suppress more silly compiler warnings. (CVS 5995) (check-in: 1522c2c667 user: drh tags: trunk)
01:32
Fix compiler warnings in where.c and in the TCL test harness. (CVS 5994) (check-in: 680755dbf0 user: drh tags: trunk)
2008-12-08
21:37
Some minor name refactoring in where.c. Avoid declaring variables before initializing them in the amalgamation because VC++ doesn't like that. (CVS 5993) (check-in: 6ed696e7c0 user: drh tags: trunk)
18:27
Fix a bug in win32 command-line client introduced during efforts to reduce the number of harmless compiler warnings (check-in (5982).) (CVS 5992) (check-in: 6c0b2e7579 user: drh tags: trunk)
18:19
The amalgamation now compiles cleanly on GCC with options -pedantic-errors -Wno-long-long. (CVS 5991) (check-in: 73c7302c5f user: drh tags: trunk)
16:01
Fix two unused-parameter warnings in the parser. (CVS 5990) (check-in: cf419d0b01 user: drh tags: trunk)
13:42
Fix a segfault associated with the column cache that occurs on nested VIEWs. Ticket #3527. (CVS 5989) (check-in: 490138a201 user: drh tags: trunk)
2008-12-06
16:46
Make sure a memory allocation error did not prevent UTF16 to UTF8 conversion prior to doing a string comparison. (CVS 5988) (check-in: 9d061e20d8 user: drh tags: trunk)
16:10
Make sure the KeyInfo object attached to a transient table used for sorting records the sqlite3 object used for memory allocation, so that memory allocation failures on UTF16 to UTF8 conversion can be recorded. (CVS 5987) (check-in: 76246d9f0d user: drh tags: trunk)
14:34
Mark the hash table enlargement in pcache1.c as a benign-failure malloc. (CVS 5986) (check-in: 5c0fe63a63 user: drh tags: trunk)
2008-12-05
23:40
Make the minimum allocate size for RowSet objects large enough to accommodate 8-byte pointers. (CVS 5985) (check-in: b74885e085 user: drh tags: trunk)
22:40
Fix integrity check so that it always reports memory allocation errors that it encounters. (CVS 5984) (check-in: 2a3f5ce14c user: drh tags: trunk)
20:01
Make sure the nOverflow flag in MemPage is reset to zero after every insert. (CVS 5983) (check-in: bfde3dae0c user: drh tags: trunk)
17:17
Fix harmless compiler warnings. Improved comments in the query optimizer. (CVS 5982) (check-in: adedd697b4 user: drh tags: trunk)
15:24
Make use of sqlite3DbMallocSize to maximize the size of growable buffers after each reallocation. Added new comments and testcase() macros to where.c. (CVS 5981) (check-in: 46f2d08959 user: drh tags: trunk)
02:36
Variable name changes in the query optimizer for disambiguation and clarification. Clear space in boolean vectors for new bit values to encode new query plan templates. (CVS 5980) (check-in: 81bd0b5ce8 user: drh tags: trunk)
00:00
Expand table.* properly on a USING or a NATURAL join. Ticket #3522. (CVS 5979) (check-in: 06d206ef7d user: drh tags: trunk)
2008-12-04
22:17
Fix a segfault that can occur in the RowSet object following a malloc failure. (CVS 5978) (check-in: cb0f1658d3 user: drh tags: trunk)
20:40
Replace the VDBE Fifo object with the new RowSet object. (CVS 5977) (check-in: 39a0750b49 user: drh tags: trunk)
12:34
Make sure dot-lock is fully enabled when SQLITE_ENABLE_LOCKING_STYLE is disabled. Fix compiler warnings when SQLITE_ENABLE_LOCKING_STYLE is disabled. (CVS 5976) (check-in: 4697249fcc user: drh tags: trunk)
12:26
Fix a memory leak in the shell that occurs when a ".import" command fails. Ticket #3517 (CVS 5975) (check-in: cb9c15431c user: drh tags: trunk)
12:17
Always enable the OP_Blob opcode in the VDBE even when SQLITE_OMIT_BLOB_LITERAL is defined, since that opcode is used for other purposes as well. Ticket #3518. (CVS 5974) (check-in: 760333de65 user: drh tags: trunk)
2008-12-03
23:23
Allow the entire FROM clause of a SELECT statement to be in parentheses. (CVS 5973) (check-in: 72ebc8cbe0 user: drh tags: trunk)
22:48
Fix a missing forward declaration that is needed when SQLITE_PREFER_PROXY_LOCKING is defined. (CVS 5972) (check-in: 24235300b3 user: drh tags: trunk)
22:32
Reorganize the proxy-locking method in os_unix.c. Additional cleanup. (CVS 5971) (check-in: 31f6090e22 user: drh tags: trunk)
21:26
Make os_unix compile with SQLITE_ENABLE_PROXY_LOCKING (CVS 5970) (check-in: 3efedac6aa user: aswift tags: trunk)
19:34
Continue with the cleanup of os_unix.c. (CVS 5969) (check-in: 215d36ea89 user: drh tags: trunk)
2008-11-29
22:49
Fully initialize the unused bytes of the buffer that will become the journal file header, in order to silence a complaint from valgrind. (CVS 5968) (check-in: 2822cbb960 user: drh tags: trunk)
02:20
Continuing to refactor os_unix.c. This is an incremental check-in. (CVS 5967) (check-in: c13df0311e user: drh tags: trunk)
00:56
Continuing work on the os_unix.c refactoring. Removed all of the LOCKING_STYLE_* constants and instead pass around pointers to the underlying sqlite3_io_method objects. (CVS 5966) (check-in: 1017d2fb19 user: drh tags: trunk)
2008-11-28
15:37
First step in refactoring os_unix.c. This is work in progress. The code compiles and runs on Linux and MacOSX (as long as SQLITE_ENABLE_LOCKING_STYLE is turned off), but there are a few test failures. (CVS 5965) (check-in: 7825cd63e5 user: drh tags: trunk)
2008-11-27
02:22
Add 19 new assert() statements in btree.c that attempt to detect writing to a cache page which is not writeable. (CVS 5964) (check-in: f9c7359065 user: drh tags: trunk)
2008-11-26
20:09
expected error message has trailing space (CVS 5963) (check-in: 165bc2d765 user: pweilbacher tags: trunk)
20:03
remove warning in os2Sync() with SQLITE_NO_SYNC set (CVS 5962) (check-in: 68a51f67af user: pweilbacher tags: trunk)
19:56
make os2Randomness() act the same as other platforms with SQLITE_TEST (all zeroed buffer) (CVS 5961) (check-in: 5d189df39a user: pweilbacher tags: trunk)
18:01
Version 3.6.6.2 (CVS 5960) (Leaf check-in: 30a2080777 user: drh tags: branch_3_6_6)
17:52
Version number to 3.6.6.2. (CVS 5959) (check-in: 7e010be8e3 user: drh tags: branch_3_6_6)
14:55
Port check-ins (5955) and (5956) into the 3.6.6 branch. (CVS 5958) (check-in: 8c0edbef7e user: drh tags: branch_3_6_6)
13:44
Fix the test condition for the test cases added to prevent regressions of ticket #3508. (CVS 5957) (check-in: 4e94aa3bed user: drh tags: trunk)
07:40
Fix an obscure memory leak that can follow an IO error. (CVS 5956) (check-in: 8271229c66 user: danielk1977 tags: trunk)
07:25
Fix a couple of assert() failures provoked by running with a small default cache-size (64 pages). (CVS 5955) (check-in: 1a66481a37 user: danielk1977 tags: trunk)
2008-11-25
12:07
Move the definition of function transferOwnership() in os_unix.c to below the static functions it calls. (CVS 5954) (check-in: 622cb59791 user: danielk1977 tags: trunk)
2008-11-24
20:05
Added cast to PAGE_TO_PGHDR1 macro to remove warning. It looks like despite the warning, the compiler (tested with VS2005 and GCC on Windows) was doing the right thing. Ticket #3510. (CVS 5953) (check-in: e93cec0a72 user: shane tags: trunk)
20:01
Fixed some spelling errors in sqliteInt.h. Ticket #3509. (CVS 5952) (check-in: 7e134a5c1a user: shane tags: trunk)
15:32
Added test case to in4.test to try and duplicate crash reported on the mailing list. (CVS 5951) (check-in: 8502fba37b user: shane tags: trunk)
2008-11-22
19:50
fix the compile warnings on OS/2 (CVS 5950) (check-in: b7d0ec838b user: pweilbacher tags: trunk)
18:28
Make sure the error message handler is able to deal with NULL expression spans. Ticket #3508. (CVS 5949) (check-in: ce36b6474a user: drh tags: trunk)
15:51
Version 3.6.6.1 (CVS 5948) (check-in: c2266aa094 user: drh tags: branch_3_6_6)
14:07
Port the corruption bug fix of check-in (5938) into a branch off of version 3.6.6. (CVS 5947) (check-in: 15d88edf76 user: drh tags: branch_3_6_6)
2008-11-21
23:35
Fix testfixture linking problem by marking unix-only symbol as such. (CVS 5944) (check-in: 2ca8b82247 user: pweilbacher tags: trunk)
22:21
Factor out and simplify the canonical pathname logic in the VxWorks OS interface. (CVS 5943) (check-in: adb0aafaa6 user: drh tags: trunk)
20:32
Work toward cleaning up and refactoring the os_unix.c VFS module. Change IS_VXWORKS to OS_VXWORKS. The VxWorks implementation can now be built and tested on Linux using -DOS_VXWORKS=1 -Dsem_t=int -DPATH_MAX=512 -DNO_GETTOD=1. (CVS 5942) (check-in: 30a0132a83 user: drh tags: trunk)
16:58
Fix the OOM handling for explain statements so that it is the same as for regular statements if the OOM error occurs from within a call to sqlite3_column_text() or text16(). (CVS 5941) (check-in: 891b14e138 user: danielk1977 tags: trunk)
16:22
Fix a segfault that can be caused by an INSTEAD OF trigger on a view that includes an expression of the form "table.column" in the select list. (CVS 5940) (check-in: 88a09dbb4b user: danielk1977 tags: trunk)
09:43
Fix an assert() failure that can occur after an OOM error. (CVS 5939) (check-in: 4c765758c1 user: danielk1977 tags: trunk)
09:09
Fix the problems demonstrated in tkt35xx.test in a different way to (5936). (CVS 5938) (check-in: ddf980a501 user: danielk1977 tags: trunk)
08:50
Add another test case to tkt35xx.test showing that a statement rollback can also trigger the problem. (CVS 5937) (check-in: 74c08b8dd9 user: danielk1977 tags: trunk)
03:23
On a ROLLBACK, if there page cache entries which are dirty but not in the rollback journal, make sure they get reinitialized in the btree layer. (CVS 5936) (check-in: faded96f36 user: drh tags: trunk)
00:24
Fixes to the proxy locking so that os_unix.c compiles on linux with proxy locking omitted. (CVS 5935) (check-in: 6f910b7036 user: drh tags: trunk)
00:10
Added support for proxy file locking style Added pragma support for controlling proxy file locking Added file control access to last errno and proxy locking Added support for TMPDIR environment variable Extended unit tests to cover new proxy locking pragmas and file control features (CVS 5934) (check-in: b9bc36d3d5 user: aswift tags: trunk)
2008-11-20
18:20
When a memory allocation fails on the %Q conversion in sqlite3_mprintf(), make sure the error is reported back up the call stack. (CVS 5933) (check-in: eebacbc9d7 user: drh tags: trunk)
2008-11-19
21:35
In os_win.c, if SQLITE_TEST defined, winRandomness() should return all zeroes like os_unix.c. (CVS 5932) (check-in: 00b68a1e31 user: shane tags: trunk)
21:03
Version 3.6.6 (CVS 5931) (check-in: 01a6e2820a user: drh tags: trunk, release)
18:43
Force the corruptC.test script to use file format 1. (CVS 5930) (check-in: deadc2548d user: drh tags: trunk)
18:30
In bitvec.c: removed some of the recursion, minor optimizations, added comments, improved consistency. (CVS 5929) (check-in: 54d714fba6 user: shane tags: trunk)
18:30
Update the SECURE_DELETE code to track the latest changes in the pager. (CVS 5928) (check-in: e058f50937 user: drh tags: trunk)
16:52
Fix some compiler warnings that show up when building the amalgamation only. (CVS 5927) (check-in: d1abe8a1c9 user: danielk1977 tags: trunk)
14:35
Fix a few more compiler warnings. (CVS 5926) (check-in: 70b2f6839c user: danielk1977 tags: trunk)
13:52
In os_unix.c, use "IS_VXWORKS" instead of "defined(__RTP__) || defined(_WRS_KERNEL)". Purely because it's easier on the eyes. (CVS 5925) (check-in: 92c91a6cd7 user: danielk1977 tags: trunk)
12:43
Version number to 3.6.6. (CVS 5924) (check-in: 8cc120fb3a user: drh tags: trunk)
11:35
Eliminate some of the "unused parameter" warnings in os_unix.c. (CVS 5923) (check-in: 2f5aaad90b user: danielk1977 tags: trunk)
10:22
Simplify the way the pager layer invokes the busy-handler callback. (CVS 5922) (check-in: 7bd1ac1899 user: danielk1977 tags: trunk)
09:05
Changes to avoid "unused parameter" compiler warnings. (CVS 5921) (check-in: 88134322c3 user: danielk1977 tags: trunk)
01:20
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) (check-in: 16f1e6ec2a user: drh tags: trunk)
2008-11-18
23:25
Fix to the lemon parser template when YYSTACKSIZE is 0 (dynamically allocated stack space). (CVS 5919) (check-in: 00ccc5967f user: drh tags: trunk)
23:03
Add support for SQLITE_NO_SYNC for OS/2, too. (CVS 5918) (check-in: 2990b5b8e7 user: pweilbacher tags: trunk)
19:18
Expose the MBCS->UTF8 convert routine in the Win32 backend. (CVS 5917) (check-in: f4411f0c80 user: drh tags: trunk)
19:18
Application-defined page cache documentation updates. (CVS 5916) (check-in: db0f120359 user: drh tags: trunk)
07:27
Reduce the number of "missing initializer" warnings. (CVS 5915) (check-in: d68e2795e7 user: danielk1977 tags: trunk)
2008-11-17
19:18
Modifications to avoid unsigned/signed comparisons in various files. (CVS 5914) (check-in: 8009220c36 user: danielk1977 tags: trunk)
16:42
Modifications to avoid unsigned/signed comparisons in where.c. (CVS 5913) (check-in: f35606d1d8 user: danielk1977 tags: trunk)
15:31
Modifications to avoid signed/unsigned warnings in vdbe.c. (CVS 5912) (check-in: 9939dd839a user: danielk1977 tags: trunk)
14:20
Changes to btree.c to avoid the unsigned/signed comparison warnings. (CVS 5911) (check-in: 24469dbace user: danielk1977 tags: trunk)
08:05
Added support for vxworks >= 6.4; RTP mode tested, kernel mode untested. (CVS 5910) (check-in: f45a149363 user: chw tags: trunk)
04:56
Modifications to pager.c to avoid the unsigned/signed warnings. (CVS 5909) (check-in: cb6be84dfc user: danielk1977 tags: trunk)
2008-11-15
11:22
Fix compiler warnings in pcache1.c related to comparison of unsigned and signed values. (CVS 5908) (check-in: ce77ea989e user: danielk1977 tags: trunk)
04:54
Add a line to genfkey.README showing how to link against a shared library. Ticket #3502. (CVS 5907) (check-in: 800274b769 user: danielk1977 tags: trunk)
2008-11-13
19:12
Fix a couple of memory leaks that may follow malloc failures. (CVS 5906) (check-in: 4cf8a8e1bf user: danielk1977 tags: trunk)
18:29
Fixed several more crashes due to corrupt db files. Added corruptC.test to soak.test. (CVS 5905) (check-in: 9b7a52e952 user: shane tags: trunk)
18:20
Added support for -DSQLITE_NO_SYNC to os_win.c. (CVS 5904) (check-in: 2649337937 user: shane tags: trunk)
18:02
Fixed typo in tkt3472.test that prevented the test from running. (CVS 5903) (check-in: 428a547920 user: shane tags: trunk)
18:00
Avoid committing a transaction from within the xSync() method of a virtual table. Fix for #3497. (CVS 5902) (check-in: eabb8b7591 user: danielk1977 tags: trunk)
16:21
Minor changes to get memsys5 compiling and its tests passing. Ticket #3495. (CVS 5901) (check-in: 96453ca16e user: danielk1977 tags: trunk)
14:42
Update mksqlite3c.tcl to include new file pcache1.c. (CVS 5900) (check-in: 00442e0f57 user: danielk1977 tags: trunk)
14:28
Add an API to support custom page cache implementations. (CVS 5899) (check-in: 47866d6708 user: danielk1977 tags: trunk)
2008-11-12
18:21
Avoid some buffer overreads detected by valgrind while running corruptC.test. (CVS 5898) (check-in: faa6bd7b61 user: danielk1977 tags: trunk)
15:38
Version 3.6.5 (CVS 5897) (check-in: 369f74983b user: drh tags: trunk, release)
15:24
Do not redefine the MIN and MAX macros if they are already defined. (CVS 5896) (check-in: f41dd2053c user: drh tags: trunk)
14:22
In corruptC.test, explicitly set "PRAGMA auto_vacuum = 0". (CVS 5895) (check-in: b6563af8f9 user: danielk1977 tags: trunk)
14:21
Update the version number to 3.6.5. (CVS 5894) (check-in: f150b870e3 user: drh tags: trunk)
14:07
Omit the threadOverrideEachOthersLocks tests for builds that non-unix or non-threadsafe. (CVS 5893) (check-in: ab418656db user: drh tags: trunk)
12:27
Fix a faulty assert in select.c. Ticket #3494. (CVS 5892) (check-in: e89f9c8063 user: drh tags: trunk)
11:57
Modify a failing test case in corruptC.test. The test case was failing only because the integrity_check was returning a slightly different error message than expected. (CVS 5891) (check-in: 0953f300f8 user: danielk1977 tags: trunk)
08:49
Fix a database corruption related crash uncovered by corruptC.test. (CVS 5890) (check-in: 395084acbb user: danielk1977 tags: trunk)
08:07
Make sure affinities and implicit collation sequences are correctly used by comparison expressions in the select-list or having clause of an aggregate query. Ticket #3493. (CVS 5889) (check-in: b8ceaa0050 user: danielk1977 tags: trunk)
04:55
Fixed a few more crashes when dealing with corrupt db files. (CVS 5888) (check-in: f8bb34e409 user: shane tags: trunk)
2008-11-11
22:18
Fixed crash during an UPDATE when free cell size is corrupt. (CVS 5887) (check-in: ec18667e2d user: shane tags: trunk)
20:51
Prevent a crash during an UPDATE when the cell offset is corrupt. (CVS 5886) (check-in: 99d4172ed6 user: shane tags: trunk)
18:55
Send the "Incomplete SQL" error message of the CLI to stderr instead of stdout. Ticket #3476. (CVS 5885) (check-in: dacae20047 user: drh tags: trunk)
18:43
Remove some asserts that refer to variables removed in (5830). (CVS 5884) (check-in: 9d880a6fd2 user: danielk1977 tags: trunk)
18:34
Change the way threadsOverrideEachOthersLocks() works to avoid trying to write-lock a (potentially) read-only files. Also, assume that on non-linux systems threads do override each others locks. Ticket #3472. (CVS 5883) (check-in: 8ecae0943b user: danielk1977 tags: trunk)
18:28
Cleanup in flattenSubquery. Add OOM tests for flattenSubquery. Fix issues with OOM errors causes problems for flattenSubquery. Ticket #3485. (CVS 5882) (check-in: ea5f4baa04 user: drh tags: trunk)
17:36
Fixed crash in integrity_check with corrupt content offset size in page header. (CVS 5881) (check-in: 0659a666ff user: shane tags: trunk)
15:48
Avoid signed/unsigned comparison warnings in bitvec.c by changing the types of loop variables to unsigned int. (CVS 5880) (check-in: da869446c5 user: drh tags: trunk)
00:36
When an assignment occurs in a boolean, always test the result using "!=0" to avoid confusion and make it clear that assignment is intended, not an equality test. Ticket #3491. (CVS 5879) (check-in: 89ee5295bd user: drh tags: trunk)
00:30
Fix the CLI so that it does not terminate input when an Oracle or MS-SQL command terminator mark is seen in the middle of a string literal. Ticket #3490. (CVS 5878) (check-in: 68662e3b48 user: drh tags: trunk)
00:21
When an OOM error occurs while resizing an sqlite_value object, make sure the value of the object is set to NULL. Ticket #3488. (CVS 5877) (check-in: 7b9c9b35ff user: drh tags: trunk)
2008-11-10
23:54
Fix the documentation of the SQLITE_FUNCTION authorizer code so that it agrees with how SQLite has always behaved. Ticket #3489. (CVS 5876) (check-in: 806b6ed202 user: drh tags: trunk)
20:01
#ifdef out unused static function mutexIsNT(). Ticket #3481. (CVS 5875) (check-in: 239186804c user: shane tags: trunk)
19:24
Updated comment in source. Ticket #3453. (CVS 5874) (check-in: 83caa22087 user: shane tags: trunk)
18:20
Add check for ifcapable autovacuum to vacuum2-3.3 test. Ticket #3435. (CVS 5873) (check-in: fc36f2fc45 user: shane tags: trunk)
18:05
Removed a few more small parts of memsys6 code, including some config and test code for it; (CVS 5872) (check-in: a11241d6fb user: shane tags: trunk)
17:14
In btree.c, omit calls to setChildPtrmaps() if SQLITE_OMIT_AUTOVACUUM is defined. Ticket #3439. (CVS 5871) (check-in: e0f07323e8 user: shane tags: trunk)
17:08
Fixed typos; Consistent use of Mac OS X name; (CVS 5870) (check-in: dfc9474337 user: shane tags: trunk)
2008-11-07
03:29
Prevent buffer overruns when converting malformed UTF16 to UTF8. Ticket #3482. (CVS 5869) (check-in: 3f657e8876 user: drh tags: trunk)
00:24
Prevent a rollback from crashing if the sector-size field of the rollback journal is corrupted. (CVS 5868) (check-in: cf9d1d933f user: drh tags: trunk)
00:06
Add documentation to make it clear that short reads from xRead in the VFS must be zero-filled. (CVS 5867) (check-in: fb311d6f40 user: drh tags: trunk)
2008-11-06
15:33
Fix a bug in the CAST operator associated with the column cache. (CVS 5866) (check-in: 1b6a514044 user: drh tags: trunk)
2008-11-05
17:41
Fix memory allocation problems when string length exceeds limits. (CVS 5865) (check-in: b568e32520 user: drh tags: trunk)
16:37
The COMMIT command now works even if there are pending queries, as long as the pending queries are reading and not writing the database. (CVS 5864) (check-in: 51f04aaff2 user: drh tags: trunk)
2008-11-04
21:51
Should be 'memjournal.lo' instead of 'memjournal.o'. Ticket #3480. (CVS 5863) (check-in: 8b86860421 user: shane tags: trunk)
14:55
Add test cases for sqlite3_db_mutex(). (CVS 5862) (check-in: f818e8e5cb user: danielk1977 tags: trunk)
14:48
Enhance documentation of sqlite3_db_mutex(). (CVS 5861) (check-in: 3aed410ab0 user: drh tags: trunk)
14:25
Avoid a segfault when OOM on a simple EXPLAIN query. Ticket #3478. (CVS 5860) (check-in: acf26cc0f7 user: drh tags: trunk)
13:46
Add the sqlite3_db_mutex() interface. No test cases yet. (CVS 5859) (check-in: d95de32e8d user: drh tags: trunk)
2008-11-03
21:40
Test cases to verify that COMMIT and ROLLBACK return SQLITE_BUSY when there are active statements. (CVS 5858) (check-in: cedfa214e4 user: drh tags: trunk)
20:55
Change the name of the Cursor object to VdbeCursor. (CVS 5857) (check-in: fdb98fd8c1 user: drh tags: trunk)
09:39
Modify an assert() statement to fix #3473. No other code changes. (CVS 5856) (check-in: aca6b260c0 user: danielk1977 tags: trunk)
09:06
Fix a bug reported on the mailing list triggered by the pattern "SELECT
2008-10-31
13:57
Test that single byte corruptions in increasingly larger quantities are handled gracefully. (CVS 5854) (check-in: c73d915923 user: shane tags: trunk)
10:53
Change the way sqlite3VdbeSetColName() is called so as to remove a few lines of code. This also fixes #3470. (CVS 5853) (check-in: bfce91429b user: danielk1977 tags: trunk)
2008-10-30
22:13
Fix a faulty assert() in the merge implementation of the UNION operator. Ticket #3467. (CVS 5852) (check-in: cd1662e964 user: drh tags: trunk)
17:21
Fix a crash that can follow a malloc failure in sqlite3ValueFromExpr(). Ticket #3468. (CVS 5851) (check-in: 0996783b1b user: danielk1977 tags: trunk)
15:03
Add the sqlite3_extended_errcode() interface. Change to return SQLITE_BUSY instead of SQLITE_ERROR when a COMMIT is attempted and one or more queries are still pending. (CVS 5850) (check-in: 4c6a90a166 user: drh tags: trunk)
2008-10-29
07:01
If a hot-journal file is detected but the application does not have the required read/write permissions, return SQLITE_CANTOPEN. Prior to this change, SQLITE_BUSY was returned. Ticket #3457. (CVS 5849) (check-in: dc5308c762 user: danielk1977 tags: trunk)
2008-10-28
18:58
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) (check-in: 4651f590f0 user: drh tags: trunk)
18:12
Add data structure description comments to memjournal.c. (CVS 5847) (check-in: e9c2adbcbf user: drh tags: trunk)
17:52
Avoid exposing internal interfaces sqlite_attach() and sqlite_detach() as SQL scalar functions. Ticket #3466. (CVS 5846) (check-in: 679c0b35aa user: danielk1977 tags: trunk)
2008-10-27
15:34
If an SQLITE_DELETE authorization callback returns SQLITE_IGNORE, proceed with the delete operation but disable the truncate optimization. (CVS 5845) (check-in: 65a2e13173 user: danielk1977 tags: trunk)
13:59
Make sqlite3_count_changes() and total_changes() work with "DELETE FROM ". (CVS 5844)
(check-in: e68e4282ad user: danielk1977 tags: trunk)
08:24
Remove some if() conditions that are always true from delete.c. (CVS 5843) (check-in: 297ad90dd3 user: danielk1977 tags: trunk)
2008-10-25
17:10
Remove unused parameter from function rtreeInit() (part of the r-tree extension). (CVS 5842) (check-in: 3224ea5981 user: danielk1977 tags: trunk)
15:03
Disable the result-set alias cache when on conditional code branches. Ticket #3461. The column cache and result set alias cache mechanisms are prone to this kind of error and need to be refactored. This check-in should be considered a temporary fix in advance of a more general redesign of the whole mechanism. (CVS 5841) (check-in: 1fa3bbd822 user: drh tags: trunk)
09:35
Add file tkt3461.test with a few examples of bug #3461. Because these tests currently fail they are disabled for now. (CVS 5840) (check-in: f2cc159159 user: danielk1977 tags: trunk)
2008-10-23
05:45
Fix a bug in pragma table_info. Column default values specified as negative numbers (col DEFAULT -1) were being reported as NULL by the pragma. (CVS 5839) (check-in: 0e448bc609 user: danielk1977 tags: trunk)
2008-10-22
18:27
Updated configure/makefiles to handle SQLITE_ENABLE* compile options. Made sure makefile passes command line options (OPTS=-Dfoo) to the compiler. Add -DSQLITE_COVERAGE_TEST=1 if gcov being used. (CVS 5838) (check-in: acb106e51f user: shane tags: trunk)
16:55
Removed some more dead code and fixed some unresolved externals for WINCE. Ticket #3420. (CVS 5837) (check-in: 5276e31d42 user: shane tags: trunk)
16:26
Make sure variable declarations occur first in code blocks. (CVS 5836) (check-in: b78f44c91f user: shane tags: trunk)
16:04
Test cases for ticket #3442. (CVS 5835) (check-in: a8bb5acf70 user: shane tags: trunk)
10:45
Fix an assert() failure that can occur following a malloc() failure. Ticket #3455. (CVS 5834) (check-in: e0d3aa75b4 user: danielk1977 tags: trunk)
2008-10-21
04:30
Update the autoconf build system to include memjournal.c. (CVS 5833) (check-in: a3c810f0c8 user: danielk1977 tags: trunk)
2008-10-19
21:03
When a name in double quotes falls back to being a string literal, make sure it has no affinity. Ticket #3442. (CVS 5832) (check-in: 81cfee5c14 user: drh tags: trunk)
2008-10-17
19:13
Add the memjournal.c file that should have been with the previous checkin. (CVS 5831) (check-in: 0509eff0e6 user: danielk1977 tags: trunk)
18:51
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) (check-in: 39ebf01add user: danielk1977 tags: trunk)
15:10
Fix a typo in documentation. Ticket #3447. (CVS 5829) (check-in: 5ce2ddffea user: drh tags: trunk)
2008-10-16
13:27
Fix an error in (5826). (CVS 5828) (check-in: 8065a92f70 user: danielk1977 tags: trunk)
2008-10-15
19:03
Fix a naming problem when SQLITE_MUTEX_NOOP is used. (CVS 5827) (check-in: 35ce71c6f1 user: drh tags: trunk)
16:02
Do not open and sync the directory in unixDelete() if the SQLITE_DISABLE_DIRSYNC option is defined. (CVS 5826) (check-in: 8ef141644e user: danielk1977 tags: trunk)
11:59
Version 3.6.4 (CVS 5825) (check-in: cd73cffab3 user: drh tags: trunk, release)
11:43
After running speed1.test and speed1p.test, reset the size of the lookaside buffer. Otherwise, subsequent runs of malloc5.test may report an error. Changes to test code only. (CVS 5824) (check-in: 9283478e69 user: danielk1977 tags: trunk)
2008-10-14
19:21
Disable the page-cache at the end of pcache2.test. (CVS 5823) (check-in: 3d2d05b628 user: danielk1977 tags: trunk)
18:21
Fix the amalgamation generator to recognize indented #include directives. Ticket #3438. (CVS 5822) (check-in: 494510d8f2 user: drh tags: trunk)
17:58
Fix the xRandomness() method on the unix VFS to return the number of bytes of randomness obtained. (CVS 5821) (check-in: b7687e2f2d user: drh tags: trunk)
15:54
Make sure malloc3.test runs even if a CREATE TABLE transaction commits prior to the last OOM error. (CVS 5820) (check-in: 603c40e5b4 user: drh tags: trunk)
14:56
Update main.mk so that a couple of fts3 files are compiled with SQLITE_TEST when building testfixture. (CVS 5819) (check-in: 8eb315ee5c user: danielk1977 tags: trunk)
14:28
Modifications to main.mk so that -DSQLITE_ENABLE_FTS3 works. (CVS 5818) (check-in: a06d226dee user: danielk1977 tags: trunk)
2008-10-13
21:46
fix a few return codes in the OS/2 VFS (CVS 5817) (check-in: 4e978a40f7 user: pweilbacher tags: trunk)
17:09
Get the load extension tests working on amd64. Needed for test coverage. (CVS 5816) (check-in: 119b69fba0 user: drh tags: trunk)
15:35
Fix the SQLITE_OMIT_DATETIME_FUNCS compile-time option so that it builds successfully. (CVS 5815) (check-in: c3f9164515 user: drh tags: trunk)
14:16
In rollback.test, do not check for journal deletion if the journal mode is not DELETE. Call show_memstats after each test module in all.test and quick.test. (CVS 5814) (check-in: df2c28dc73 user: drh tags: trunk)
10:56
Use one less temporary table in genfkey.c. The retired table was being used to workaround the bug fixed by (5812). (CVS 5813) (check-in: 73efca985a user: danielk1977 tags: trunk)
10:37
If sqlite3_column_value() is called to obtain a value with the MEM_Static flag set, clear it and set the MEM_Ephem flag before returning. Otherwise, if the value is passed to sqlite3_bind_value() or sqlite3_result_value(), sqlite may attempt to use the buffer after the statement has been finalized. This is not always valid, as MEM_Static only guarantees that a MEM.z buffer will be valid for the lifetime of the owner statement, not that it is actually a static buffer. (CVS 5812) (check-in: b055bfc4e5 user: danielk1977 tags: trunk)
2008-10-12
02:27
Check for failures in winTruncate. Ticket #3415. (CVS 5811) (check-in: 500c50561f user: shane tags: trunk)
02:03
Added -DSQLITE_ENABLE_RTREE=1 to the mkdll.sh script. Ticket #3427. (CVS 5810) (check-in: 66f57ecb16 user: shane tags: trunk)
01:49
Add gcov compile options to link line when GCOV option enabled. (CVS 5809) (check-in: 3ddda11186 user: shane tags: trunk)
00:27
Added SQLITE_OMIT_DEPRECATED compile time option to leave out deprecated functions. Updated test scripts to skip tests of deprecated functions if they are compiled out. (CVS 5808) (check-in: ba3711acee user: shane tags: trunk)
2008-10-11
18:11
Add macros tests so that the compiler always recognizes that x86_64 is little endian. (CVS 5807) (check-in: b201e7093c user: drh tags: trunk)
17:51
When transfering an error message from a statement handle to the database handle so that it can be accessed by sqlite3_errmsg(), a malloc may fail. If this malloc fails, it is considered benign. (CVS 5806) (check-in: 311003aff8 user: danielk1977 tags: trunk)
17:42
Conditionally omit prototypes in pcache.h when the corresponding routines are not used. Ticket #3430. (CVS 5805) (check-in: 977ae12c36 user: drh tags: trunk)
17:35
Fix to sqlite3DbMallocRaw() when SQLITE_OMIT_LOOKASIDE is defined so that once it fails it continues to fail. Add a comment explaining why this is important. (CVS 5804) (check-in: 63dd8be70d user: drh tags: trunk)
17:06
Fix a OOM segfault in the BETWEEN operator parsing - discovered while using SQLITE_OMIT_LOOKASIDE. Add SQLITE_OMIT_LOOKASIDE to test_config.c and bypass lookaside.test when defined. (CVS 5803) (check-in: 2a21d52c65 user: drh tags: trunk)
17:04
Add "nolookaside" case to permutations.test. (CVS 5802) (check-in: 56fb7a2286 user: danielk1977 tags: trunk)
16:47
Fix a memory leak on ORDER BY of a compound select caused by the resolver on a flattened query. Also fix a OOM segfault in WHERE clause processing. (CVS 5801) (check-in: d2c252d6bb user: drh tags: trunk)
15:38
Added an assert() to detect lookaside memory leaks. Also added the SQLITE_OMIT_LOOKASIDE compile-time option which is useful in trying to track down lookaside memory leaks. (CVS 5800) (check-in: 0c4c66071a user: drh tags: trunk)
15:20
Fix an assertion fault that occurs with SQLITE_THREADSAFE=0. (CVS 5799) (check-in: 28bba42b33 user: drh tags: trunk)
2008-10-10
23:48
Add the SQLITE_OMIT_TRUNCATE_OPTIMIZATION option. Other unrelated documentation enhancements. (CVS 5798) (check-in: fab4940d54 user: drh tags: trunk)
18:25
Further simplifications of the code for the LIMIT clause on an UPDATE or DELETE. Added a few test cases to wherelimit.test. (CVS 5797) (check-in: 282c6a46b2 user: shane tags: trunk)
17:58
Add the genfkey program to the tool/ directory. (CVS 5796) (check-in: 84e73fe8a6 user: danielk1977 tags: trunk)
17:47
Change 'pragma foreign_key_list' to return some extra information. (CVS 5795) (check-in: 3bb33cf59d user: danielk1977 tags: trunk)
17:41
Simplify the symbol hash table to use only a single key class. Other changes to improve code coverage. (CVS 5794) (check-in: ff50a8a7e5 user: drh tags: trunk)
17:26
Documentation updates. No changes to code. (CVS 5793) (check-in: 07b5f70317 user: drh tags: trunk)
14:27
Simplify the parser reduction code for the LIMIT clause on an UPDATE or DELETE. (CVS 5792) (check-in: 3de179630e user: drh tags: trunk)
13:35
Re-factored memory allocation failure handling in the sqlite3LimitWhere() function based on failures in the mallocJ.test script. (CVS 5791) (check-in: 43507bbefb user: shane tags: trunk)
13:34
Added mallocJ.test to test allocation failure handling of the new LIMIT/OFFSET support for UPDATE/DELETE. (CVS 5790) (check-in: 5375b348b1 user: shane tags: trunk)
06:02
Initial test cases for the new LIMIT/OFFSET support for DELETE/UPDATE. (CVS 5789) (check-in: d9f5e15ca0 user: shane tags: trunk)
04:34
Updated LIMIT support for DELETE/UPDATE. Omit option changed to SQLITE_ENABLE_UPDATE_DELETE_LIMIT. (CVS 5788) (check-in: c10e8a3c7a user: shane tags: trunk)
2008-10-09
18:48
Fix an assert() failure that can occur if the user attempts to set an into an integer primary key column to a text value in a table that has a BEFORE UPDATE trigger. (CVS 5787) (check-in: c2cf9d60d6 user: danielk1977 tags: trunk)
17:57
New speed testing tools. (CVS 5786) (check-in: 2d427746d5 user: drh tags: trunk)
15:56
Add a test to verify the sqlite3_column_name() interface returns the correct value when the query is of the form: "SELECT rowid,* FROM...". Ticket #3429. (CVS 5785) (check-in: e90d5a5515 user: drh tags: trunk)
15:56
Update the version number to 3.6.4. (CVS 5784) (check-in: 4b973ac98d user: drh tags: trunk)
14:45
Minor cleanup of the new "status" command on the TCL bindings. (CVS 5783) (check-in: ec01bd72ee user: drh tags: trunk)
2008-10-08
17:58
After an OP_NullRow is executed on a cursor, cause any subsequent OP_Next or OP_Prev to behave as if there were no more rows to traverse. Ticket #3424. (CVS 5782) (check-in: af679f6170 user: danielk1977 tags: trunk)
2008-10-07
23:46
Add the experimental sqlite3_stmt_status() interface. (CVS 5781) (check-in: de473efb35 user: drh tags: trunk)
19:53
Raise the hard upper bound on SQLITE_MAX_FUNCTION_ARG to 1000 from 100. The default upper bound is still 100, but it can now be raised as high as 1000 at compile-time. (CVS 5780) (check-in: 79df72ee83 user: drh tags: trunk)
15:25
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) (check-in: 02a12eb1cf user: drh tags: trunk)
15:00
Fix a recently introduced test script bug causing rollback.test to throw an exception when run using the "onefile" variation. (CVS 5778) (check-in: 7d55ec374d user: danielk1977 tags: trunk)
14:06
Have sqlite3_bind_value() call sqlite3ApiExit() before returning. Otherwise the db->mallocFailed flag may not be cleared. (CVS 5777) (check-in: 6b7c8d5640 user: danielk1977 tags: trunk)
12:32
Do not use double unnecessarily in date+time functions. Ticket #3422. (CVS 5776) (check-in: b03231323a user: drh tags: trunk)
11:51
Fix a problem with hot-journal rollback. SQLITE_CANTOPEN was being returned if the hot-journal file contained a pointer to a master journal file that did not exist. (CVS 5775) (check-in: 22d1feb9b2 user: danielk1977 tags: trunk)
05:27
Initial support for LIMIT clause on DELETEs and UPDATEs. Changes likely with more testing. The code can be omitted with the define SQLITE_OMIT_UPDATE_DELETE_LIMIT. (CVS 5774) (check-in: 9c8b132e34 user: shane tags: trunk)
01:18
Removed redundant assert(). (CVS 5773) (check-in: 486b1124f7 user: shane tags: trunk)
2008-10-06
16:18
Allow INDEXED BY and NOT INDEXED to be used in UPDATE and DELETE statements. (CVS 5772) (check-in: 83a7e446b2 user: danielk1977 tags: trunk)
15:31
Add a test script to verify that ticket #3419 stays fixed. (CVS 5771) (check-in: c3cf54a1b6 user: drh tags: trunk)
15:18
Fix a typo in check-in (5769) (CVS 5770) (check-in: 24891902fa user: drh tags: trunk)
13:54
Expression nodes of type TK_ROW mean the rowid of the first table in the source list. (CVS 5769) (check-in: 2f7db6c98f user: drh tags: trunk)
12:46
In sqlite3_bind() interfaces, avoid acquiring the mutex until after the statement handle has been validated. Ticket #3418. (CVS 5768) (check-in: 693503e241 user: drh tags: trunk)
11:29
Add a test to indexedby.test to check that automatic indexes (sqlite_autoindex_xxx) can be used with the INDEXED BY syntax. (CVS 5767) (check-in: bb51c34506 user: danielk1977 tags: trunk)
05:32
Allow INDEXED BY and NOT INDEXED clauses in SELECT statements. (CVS 5766) (check-in: 98ca5580f5 user: danielk1977 tags: trunk)
2008-10-03
09:10
Modifications to bind.test to account for different values of SQLITE_MAX_VARIABLE_NUMBER. Ticket #3409. (CVS 5765) (check-in: 1a91f3fd58 user: danielk1977 tags: trunk)
08:44
Change one of the test cases in incrblob2.test to avoid allocating a 10MB block of heap memory. (CVS 5764) (check-in: 83b7dd737a user: danielk1977 tags: trunk)
2008-10-02
16:42
Change to reduce the number of OP_Null opcodes in "WHERE <rowid> IN (x,y,z)" queries. (CVS 5763) (check-in: 33b59a3db0 user: danielk1977 tags: trunk)
14:49
Fix for sqlite3_blob_write(): If either 3rd or 4th argument is less than zero, return SQLITE_ERROR. H17879. (CVS 5762) (check-in: f6074c0b9b user: danielk1977 tags: trunk)
14:33
Fix a typo that prevents the sqlite3_sql() interface from appearing in the official documentation. (CVS 5761) (check-in: b46814b202 user: drh tags: trunk)
13:50
Optimize queries that contain "WHERE rowid IN (x, y, z...)" by using an intkey btree to store the (x, y, z...) set instead of an index btree. (CVS 5760) (check-in: 803a1736d5 user: danielk1977 tags: trunk)
2008-10-01
13:55
Adjust the memory usage bounds on the memsubsys1.test script so that it works on amd64. (CVS 5759) (check-in: aabde23fe1 user: drh tags: trunk)
08:43
Fix a bug in where.c where a non-temp register was being incorrectly deallocated. Ticket #3408. (CVS 5758) (check-in: 59d2e89e21 user: danielk1977 tags: trunk)
2008-09-30
17:18
Add some testcase() and assert() macros to btree.c to aid with testing recent changes. (CVS 5757) (check-in: fb461b78df user: drh tags: trunk)
16:48
Fix a comment in btree.c. No code changes. (CVS 5756) (check-in: 0f3c56330b user: danielk1977 tags: trunk)
14:06
Change leading tabs into spaces. (CVS 5755) (check-in: 4e536463c1 user: drh tags: trunk)
09:31
Fix a recently introduced problem with deleting entries from index tables. (CVS 5754) (check-in: 83c064cae4 user: danielk1977 tags: trunk)
04:20
Misc clean up. Wrapped a CE only variable in if-defs. Changed to only provide cache hint for CE builds (as this prevents CE from compressing the file.) Performance testing on XP and Vista showed caching hint had little effect when the DB size was much smaller than the O/S disk cache size, and provided only marginal benefit when the DB size was much larger than the cache. On Vista, overall system performance was hurt for very large DBs. Ticket #3387. (CVS 5753) (check-in: 15dd0169a4 user: shane tags: trunk)
00:31
A few minor changes to test scripts so that they work on linux-amd64. (CVS 5752) (check-in: 78d075ff38 user: drh tags: trunk)
2008-09-29
16:41
Remove the reparentPage() and reparentChildPages() functions from btree.c. All calls to these functions can now be replaced by a call to setChildPtrmaps(). (CVS 5751) (check-in: 35e8e4dcd2 user: danielk1977 tags: trunk)
15:53
Remove the MemPage.idxShift variable. It is no longer required. (CVS 5750) (check-in: 7354abd03b user: danielk1977 tags: trunk)
14:27
Do not run vacuum.test as part of the "exclusive" permutation test. (CVS 5749) (check-in: 2fb15ae9e9 user: danielk1977 tags: trunk)
14:12
Update shared_err.test to work with (5668) (return SQLITE_CORRUPT if rollback fails). (CVS 5748) (check-in: 292acaf7c4 user: danielk1977 tags: trunk)
11:49
Instead of storing a pointer to the parent page in the MemPage structure, have each B-Tree cursor keep track of the ancestry of the current page. (CVS 5747) (check-in: 40425e9342 user: danielk1977 tags: trunk)
00:11
fix #3077: use full version in pkg-config files (CVS 5746) (check-in: efe095e0cb user: vapier tags: trunk)
2008-09-26
21:08
Add the "truncate" journal mode which commits transactions by truncating the rollback journal file to zero length and not calling fsync(). (CVS 5745) (check-in: 7c561f2e92 user: drh tags: trunk)
20:02
Make sure the queueMutex is held prior to writing the pQueueLast field of the write queue in the async demonstration code. Ticket #3405. (CVS 5744) (check-in: 5622a1e285 user: drh tags: trunk)
17:31
Performance enhancement: avoid calling reparentChildPages() from balance_nonroot(). (CVS 5743) (check-in: 28fd0a50ca user: danielk1977 tags: trunk)
2008-09-24
14:03
On windows, avoid running those tests in exclusive.test that require the journal file to be externally accessed while SQLite is holding it open. This doesn't work on windows. (CVS 5742) (check-in: 5debf12fa4 user: danielk1977 tags: trunk)
09:58
Add file fts3_icu.c to the amalgamation. Because of the way header files are included into sqlite3.c, fts3_icu.c has to appear after all the other fts3 and icu extension files. Ticket #3398. (CVS 5741) (check-in: 0acca5842f user: danielk1977 tags: trunk)
09:12
Fix some function declarations (change "int foo()" to "int foo(void)"). Ticket #3399. (CVS 5740) (check-in: 0fb98c3535 user: danielk1977 tags: trunk)
2008-09-23
17:39
Catch another case where SQLITE_IOERR could be returned instead of SQLITE_NOMEM following an out-of-memory error. (CVS 5739) (check-in: 18d030da0c user: danielk1977 tags: trunk)
16:41
Always transform error code SQLITE_IOERR_NOMEM to SQLITE_NOMEM before returning. This was already happening in most places. (CVS 5738) (check-in: 046ef07261 user: danielk1977 tags: trunk)
10:23
Enable the LOCKING_STYLE extensions by default on a Mac. Leave them disabled on all other posix platforms. (CVS 5737) (check-in: bae1d5b169 user: drh tags: trunk)
10:16
Remove an unused variable from the test logic. (CVS 5736) (check-in: 309ba380d9 user: drh tags: trunk)
10:12
Fix the TCL installer so that it omits the release number. Ticket #3396. Use strcmp() instead of sqlite3StrICmp() in the "copy" method of the SQLite object in the TCL interface. (CVS 5735) (check-in: a886062457 user: drh tags: trunk)
09:58
Add no-op Unload entry points to the TCL interface. Ticket #3397. (CVS 5734) (check-in: b31dd1e3f1 user: drh tags: trunk)
09:36
Fix for ticket #3382 was mistakenly removed by (5712). Add an assert to prevent it from being removed again. (CVS 5733) (check-in: 01d26b3df7 user: drh tags: trunk)
2008-09-22
17:54
Get rid of all of the compiler magic associated with SQLITE_EXPERIMENTAL and SQLITE_DEPRECATED. It was causing more problems than it was solving. Ticket #3395 et al. (CVS 5732) (check-in: bc040073c7 user: drh tags: trunk)
17:22
Fix a memory leak that can follow a malloc failure in sqlite3_initialize. (CVS 5731) (check-in: 118dc0ba08 user: danielk1977 tags: trunk)
11:46
Add instrumentation to os_unix.c to test that a return value of SQLITE_FULL from an xSync() callback is handled correctly. (CVS 5730) (check-in: 7bd2da93c6 user: danielk1977 tags: trunk)
10:44
Version 3.6.3 (CVS 5729) (check-in: 1634fd223d user: drh tags: trunk, release)
06:13
Remove unused macro Release() from vdbe.c. (CVS 5728) (check-in: 915679431a user: danielk1977 tags: trunk)
2008-09-21
15:14
Give file scope to non-API routines in pcache. Ticket #3392. (CVS 5727) (check-in: 6521f98ac3 user: drh tags: trunk)
2008-09-19
18:32
Speed up releaseMemArray() a bit by handling the most common types of memory cells inline. (CVS 5726) (check-in: ce07508550 user: danielk1977 tags: trunk)
16:39
In function moveToRoot(), use the MemPage.pParent pointers to find the root page if they are valid. This is slightly faster than requesting a new reference to the root page from the pager layer. (CVS 5725) (check-in: 0c8b74e668 user: danielk1977 tags: trunk)
15:10
In sqlite3BtreeGetMeta(), if BtShared.pPage1 is available use it instead of requesting a new reference from the pager layer. (CVS 5724) (check-in: 59be34cfa4 user: danielk1977 tags: trunk)
09:14
Remove an obsolete layer of redirection in pager.c. (CVS 5723) (check-in: 75deaa442f user: danielk1977 tags: trunk)
2008-09-18
18:18
Do not run the async tests if the async module is not installed. (CVS 5722) (check-in: 4de71a4e2f user: drh tags: trunk)
18:17
Fix a segfault introduced by (5720) that can follow an IO error. (CVS 5721) (check-in: 05d3462688 user: danielk1977 tags: trunk)
17:34
Avoid parsing the structure of b-tree pages (in sqlite3BtreeInitPage) more than is necessary. (CVS 5720) (check-in: 6b998f3066 user: danielk1977 tags: trunk)
13:49
Update the version number to 3.6.3. (CVS 5719) (check-in: 419764b35c user: drh tags: trunk)
11:30
Changes to test script nan.test to work on symbian. (CVS 5718) (check-in: 0889b22a29 user: danielk1977 tags: trunk)
11:18
Changes to test script io.test to work on symbian. (CVS 5717) (check-in: 2b41c4959d user: danielk1977 tags: trunk)
01:08
Performance improvements in getAndInitPage(): omit the upper bound check on page number if the page is already in cache. (CVS 5716) (check-in: badd0873e6 user: drh tags: trunk)
2008-09-17
20:06
Speed improvements for in-memory databases by omitting flag clearing on pages where it is impossible for the flag to be set and by avoiding assert()s on non-debugging builds. Ticket #3384. (CVS 5715) (check-in: a7fd9e622b user: drh tags: trunk)
16:14
Changes to test scripts to support running on symbian. (CVS 5714) (check-in: 6ef34e9d31 user: danielk1977 tags: trunk)
11:02
Add a type identifier to argument sz to sqlite3PageMalloc() in pcache.c. Ticket #3383. (CVS 5713) (check-in: 94fde77b9a user: danielk1977 tags: trunk)
00:13
Fix for tickets #3378 and #3381 that preserves the aliasing optimization. And yet, this fix feels uncomfortable. Seeking an alternative... (CVS 5712) (check-in: f8b759f197 user: drh tags: trunk)
2008-09-16
18:02
Add test cases for ticket #3378 and #3381. Add a temporary hack to get those to problems fixed. The hack causes failures in alias.test, but those are much less serious than the aforementioned tickets. This is a stop-gap until we can figure out a proper fix. (CVS 5711) (check-in: a67da9dd2f user: drh tags: trunk)
15:55
Initialize variable pKeyDup in multiSelectOrderBy(). Technically it doesn't need to be initialized, but the reasoning required to come to that conclusion is too complicated for some automated systems. So it is initialized to keep some compilers happy. Ticket #3382. (CVS 5710) (check-in: bd58be6ecf user: danielk1977 tags: trunk)
15:50
Use (file nativename (pwd)) instead of just (pwd) to find the name of the current directory to pass to "PRAGMA temp_store_directory" in pragma.test. This helps the test pass on non-unix systems. (CVS 5709) (check-in: 50feaa3707 user: danielk1977 tags: trunk)
15:09
Add test script selectC.test which demonstrates ticket #3381. (CVS 5708) (check-in: 3847faff55 user: drh tags: trunk)
14:38
If the xAccess() call used by "PRAGMA temp_store_directory = /new/path/" to determine if the supplied directory is writable returns an error, assume the directory is not writable. (CVS 5707) (check-in: e8418588f2 user: danielk1977 tags: trunk)
12:06
Modify the sqlite3VdbeMemCompare() routine so that it does not modify any Mem.z values. Ticket #3376. (CVS 5706) (check-in: 2d45055100 user: danielk1977 tags: trunk)
11:58
Add test case for ticket #3376. (CVS 5705) (check-in: c64260579d user: drh tags: trunk)
09:09
Set the type of the "comment" field to SQLITE_TEXT when outputing the results of an EXPLAIN query. (CVS 5704) (check-in: 5dff20f4bc user: danielk1977 tags: trunk)
05:12
Do not attempt to change the page size after a pager has entered the error state (Pager.errCode!=SQLITE_OK). This prevents an assertion failure in vacuum3.test. (CVS 5703) (check-in: aa5c9455be user: danielk1977 tags: trunk)
2008-09-15
15:49
Minor comment change to test_async.c. No code changes. (CVS 5702) (check-in: b134106000 user: danielk1977 tags: trunk)
15:36
Adjust the page recycling algorithm so that the number of pages allocated to each connection does not exceed its cache_size limit. (CVS 5701) (check-in: 3bc221b940 user: drh tags: trunk)
14:47
Fix the async.test test script so that it invokes (finish_test) even if the asynchronous backend is not included in the build (and no tests are run). (CVS 5700) (check-in: 5c954b40ec user: danielk1977 tags: trunk)
14:42
Fix the shared_err.test script so that it works if the device supports SQLITE_IOCAP_SAFEAPPEND. (CVS 5699) (check-in: 38e5ea070a user: danielk1977 tags: trunk)
14:08
Modify test_async.c to avoid using internal SQLite APIs. There are still some comments that need updating. (CVS 5698) (check-in: 1d4fcaafd0 user: danielk1977 tags: trunk)
04:20
Check if error code ENOTSUP is supported before using it. Ticket #3375. (CVS 5697) (check-in: c32cb106c5 user: danielk1977 tags: trunk)
2008-09-13
01:20
Fix issues with bizarrely quoted column names. Tickets #3370, #3371, and #3372. (CVS 5696) (check-in: ced6bbd228 user: drh tags: trunk)
2008-09-12
18:25
Fix the NEAR connector in FTS3 so that it can take ranges in excess of 9. The maximum range is now 32767. (CVS 5695) (check-in: 8e9b955311 user: drh tags: trunk)
16:03
Declare the isInterrupted field of the sqlite3 structure to be volatile. Ticket #3369. (CVS 5694) (check-in: 414da4ebce user: drh tags: trunk)
10:22
Add a case to permutations.test to run tests with the IOCAP_SAFEAPPEND property set. (CVS 5693) (check-in: 80bdaafa77 user: danielk1977 tags: trunk)
2008-09-11
11:28
Add a couple of (fconfigure) commands to configure the incremental blob channels used by test file incrblob.test. This is required so that the tests work on windows and other platforms that have a default -translation mode other than 'lf'. (CVS 5692) (check-in: 753caa20ca user: danielk1977 tags: trunk)
10:29
Fix a couple of problems with variable initializations picked up by stricter compilers. (CVS 5691) (check-in: f4293d1480 user: danielk1977 tags: trunk)
2008-09-10
17:53
Fix some trivial cases where database corruption was causing an error code other than SQLITE_CORRUPT to be returned. (CVS 5690) (check-in: 89fda074f6 user: danielk1977 tags: trunk)
14:45
Fix for handling database files corrupted in such a was as to make a b-tree page a direct or indirect descendant of itself. (CVS 5689) (check-in: 93545861a7 user: danielk1977 tags: trunk)
13:09
Documentation updates: Describe recursion capabilities for the various callbacks. (CVS 5688) (check-in: edd80811d7 user: drh tags: trunk)
11:28
Avoid deleting a file while it is still open in corrupt2.test. Not all platforms support this. (CVS 5687) (check-in: 099adfd311 user: danielk1977 tags: trunk)
10:57
Fix some test script details so that the test suite runs with an SQLITE_DEFAULT_AUTOVACUUM=2 build. (CVS 5686) (check-in: 300a64b725 user: danielk1977 tags: trunk)
2008-09-09
18:28
Add fuzz3.test. For testing the library's response to corrupted database files. (CVS 5685) (check-in: 7fd4dd9579 user: danielk1977 tags: trunk)
12:31
Calling sqlite3_create_function with nArg==(-1) does not override prior calls on the same function name with nArg>=0. Ticket #3345. Add the new -argcount option to the "function" method in the TCL interface. (CVS 5684) (check-in: 5aa5b8044a user: drh tags: trunk)
2008-09-08
15:35
Fix a C++ism in pager.c (variable useAtomicWrite not declard at the top of its scope). (CVS 5683) (check-in: a6dee85b82 user: danielk1977 tags: trunk)
11:07
Fix a bug in r-tree related to internal nodes with one or more dimensions of size zero. Ticket #3363. (CVS 5682) (check-in: 8b600ed083 user: danielk1977 tags: trunk)
09:06
If the 'rootpage' column of the sqlite_master table contains a NULL value, return SQLITE_CORRUPT to the caller. (CVS 5681) (check-in: a7b7b126e9 user: danielk1977 tags: trunk)
08:08
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) (check-in: 79364b963b user: danielk1977 tags: trunk)
2008-09-06
14:19
Deallocate a temp register allocated by codeEqualityTerm() in where.c. If it is not deallocated, its value may be reused by the column-cache mechanism. However, by the time it is used, the value may have been clobbered by a sub-routine that also uses the same temp register. Fix for #3357. (CVS 5679) (check-in: 7c0f638ef3 user: danielk1977 tags: trunk)
2008-09-05
05:29
Change pcache.test so that it works if sqlite is configured to create auto-vacuum databases by default. (CVS 5678) (check-in: 55e677569e user: danielk1977 tags: trunk)
05:02
Fix a problem in btree.c preventing an OOM error from being propagated up to the caller. (CVS 5677) (check-in: 0b8ee83f2e user: danielk1977 tags: trunk)
2008-09-04
17:17
Add support for the SQLITE_THREADSAFE=2 and SQLITE_DEFAULT_MEMSTATUS compilation options. (CVS 5676) (check-in: 85c2a58901 user: danielk1977 tags: trunk)
12:03
Missing implementation for sqlite3TransferBindings(). (CVS 5675) (check-in: 56d6189575 user: shane tags: trunk)
06:22
If SQLITE_ENABLE_LOCKING_STYLE is defined, have the os_unix.c module offer the following extra VFS implementations for explicitly selecting a locking-style: "unix-none", "unix-afp", "unix-posix", "unix-flock" and "unix-dotfile". (CVS 5674) (check-in: 6e8fb64639 user: danielk1977 tags: trunk)
05:53
Temporarily revert to using sqlite3_transfer_bindings() internally. (CVS 5673) (check-in: 690ff3853b user: danielk1977 tags: trunk)
04:32
Modified core to not call deprecated functions sqlite3_memory_alarm() and sqlite3_transfer_bindings() by adding sqlite3MemoryAlarm() and sqlite3TransferBindings(). sqlite3_memory_alarm() and sqlite3_transfer_bindings() are now simple wrappers for the new functions. In prep for adding SQLITE_OMIT_DEPRECATED. (CVS 5672) (check-in: 821c387d15 user: shane tags: trunk)
2008-09-03
17:11
Work around an issue with the WINSCW compiler. (CVS 5671) (check-in: e333c3f4c3 user: drh tags: trunk)
01:08
Make the default threading mode multithread (-nomutex) in the TCL interface. (CVS 5670) (check-in: d9e8269426 user: drh tags: trunk)
00:43
Add support for SQLITE_OPEN_FULLMUTEX. (CVS 5669) (check-in: f2f361a5e2 user: drh tags: trunk)
00:08
If a rollback fails, mark the database as corrupt. (CVS 5668) (check-in: c8b24bd1be user: drh tags: trunk)
2008-09-02
21:35
API documentation updates for threading mode. (CVS 5667) (check-in: fa237c14c8 user: drh tags: trunk)
17:52
Explicitly initialize at least the first field of every struct. This is to work around compilers that don't like the syntax "struct XXX { ... } yyy = {};". (CVS 5666) (check-in: 88bfdc8747 user: danielk1977 tags: trunk)
17:18
Fix the position of the SQLITE_WSD macro in the declaration of global variable vfsList. (CVS 5665) (check-in: e869446119 user: danielk1977 tags: trunk)
16:22
Fine tune the hard-coded values passed to sqlite3_init_wsd(). (CVS 5664) (check-in: af5763eb65 user: danielk1977 tags: trunk)
15:44
Add an extra 'const' qualifier to two arrays (in func.c and pragma.c) to ensure that they do not consume space in the data segment of the compiled object files. (CVS 5663) (check-in: 43f757c9f0 user: danielk1977 tags: trunk)
14:07
Move the sqlite3SharedCacheEnabled global and the inProgress static variable (function sqlite3_initialize()) into the global sqlite3Config structure. This is required for the OMIT_WSD feature to work on some platforms. (CVS 5662) (check-in: 88c8275994 user: danielk1977 tags: trunk)
11:05
Add a 'const' to the opcodeProperty array in vdbe.c. (CVS 5661) (check-in: 29c9a80294 user: danielk1977 tags: trunk)
10:22
Change some more global variables to work with OMIT_WSD. (CVS 5660) (check-in: 46acaf58e1 user: danielk1977 tags: trunk)
09:38
Modify pcache.c to work with OMIT_WSD. (CVS 5659) (check-in: 44def90d1b user: danielk1977 tags: trunk)
00:52
Continuing work on adding full support for the SQLITE_OMIT_WSD compile-time option. (CVS 5658) (check-in: ef26ea5c46 user: drh tags: trunk)
2008-09-01
22:15
Add define for INVALID_FILE_ATTRIBUTES if it is not already defined, as some older Windows compilers do not define it. (CVS 5657) (check-in: e0461f8755 user: shane tags: trunk)
22:06
Added (_MSC_VER>1200) to SQLITE_DEPRECATED and SQLITE_EXPERIMENTAL defines since __declspec(deprecated) isn't supported by VC 6 or earlier. Ticket #3347. (CVS 5656) (check-in: 4bcaed08a1 user: shane tags: trunk)
21:59
Omit prototype for and calls to sqlite3MaterializeView() if !defined(SQLITE_OMIT_VIEW) && !defined(SQLITE_OMIT_TRIGGER). (CVS 5655) (check-in: 9cf484fc17 user: shane tags: trunk)
20:38
Converted strcasecmp to sqlite3StrICmp. Test code only. (CVS 5654) (check-in: bdeefe3760 user: shane tags: trunk)
19:14
Modify the aBuiltinFunc array in func.c to use the WSD macros. (CVS 5653) (check-in: 846fff5f09 user: danielk1977 tags: trunk)
18:34
Begin adding support for the SQLITE_OMIT_WSD macro. Some (many) WSD variables still need wrappers added to them. (CVS 5652) (check-in: 573d92abb9 user: danielk1977 tags: trunk)
17:23
Remove an unused function declaration from a header file. Ticket #3349. (CVS 5651) (check-in: 7a577428b2 user: drh tags: trunk)
15:52
Defer deleting Table objects associated with flattened subqueries until all code has been generated, in case some expression node still references the Table object. Ticket #3346. (CVS 5650) (check-in: d04d703367 user: drh tags: trunk)
12:47
Have the rtree module set the estimatedCost output variable. Ticket #3312. (CVS 5649) (check-in: 483932c4e0 user: danielk1977 tags: trunk)
2008-08-31
00:29
Changed to used sqlite3_snprintf instead of snprintf (test code only). (CVS 5648) (check-in: d68791e35d user: shane tags: trunk)
2008-08-30
16:34
Version 3.6.2 (CVS 5647) (check-in: 88c51b9f15 user: drh tags: trunk, release)
16:07
Run permutation subtests in sorted order. (CVS 5646) (check-in: 4cd1bdf3ce user: drh tags: trunk)
13:25
Add some code to permutations.test to make sure no test file modifies the shared-cache setting. (CVS 5645) (check-in: 8565b7c665 user: danielk1977 tags: trunk)
09:10
Make sure thread003.test waits for all spawned threads to finish before continuing. (CVS 5644) (check-in: 87c7e82f54 user: danielk1977 tags: trunk)
2008-08-29
18:42
remove private declaration of sqlite3_snprintf() in sqliteInt.h as there is already a public declaration in sqlite3.h (CVS 5643) (check-in: 4113e778be user: rse tags: trunk)
18:40
remove a doubled function declaration (the second just is just two lines below) (CVS 5642) (check-in: e5793110d5 user: rse tags: trunk)
17:56
Move a call to sqlite3_mutex_leave() to protect calls to sqlite3StatusAdd() related to scratch (SQLITE_CONFIG_SCRATCH) memory. (CVS 5641) (check-in: 4e011ddf9e user: danielk1977 tags: trunk)
15:54
Modify tclsqlite.test so that it works reliably with tcl 8.5.4. (CVS 5640) (check-in: 790d329f5d user: danielk1977 tags: trunk)
12:00
In permutations.test, disable tests that depend on soft-heap-limit functionality when running the memsubsys2 variant. It disables the soft-heap-limit. (CVS 5639) (check-in: 047c7bdb9f user: danielk1977 tags: trunk)
09:10
If a page is made eligible for recycling when more than the configured maximum number of pages are allocated, free it immediately instead of adding it to the LRU list. (CVS 5638) (check-in: 4b12922dcb user: danielk1977 tags: trunk)
02:14
Avoid reevaluating WHERE and ORDER BY expressions that alias terms in the result set. Ticket #3343. Note that aliased GROUP BY expressions are still evaluated twice. (CVS 5637) (check-in: ab0292caa5 user: drh tags: trunk)
2008-08-28
18:35
Fix ioerr5.test so that it works with the new pcache module. (CVS 5636) (check-in: 83e6a75e7d user: danielk1977 tags: trunk)
17:46
Partial fix for a bug in recovery from xStress failures in pcache. (CVS 5635) (check-in: 44193b9277 user: drh tags: trunk)
13:55
Avoid using (clock seconds) in thread003.test. It is not available if testfixture is linked to tcl 8.5. (CVS 5634) (check-in: b606263d08 user: danielk1977 tags: trunk)
13:15
Use ckfree() instead of sqlite3_free() to free an allocation made by ckalloc() in test_thread.c (test code only). (CVS 5633) (check-in: 677ac144c8 user: danielk1977 tags: trunk)
11:12
Fix mutex related bug in pcache.c to do with handling IO errors. (CVS 5632) (check-in: 5e304fed27 user: danielk1977 tags: trunk)
10:21
Enable the disabled asserts added by (5629). Add extra tests to thread003.test. And the required modifications to pcache.c. (CVS 5631) (check-in: 473c09fac2 user: danielk1977 tags: trunk)
08:31
Fix a threads/mutex problem in pcache.c. (CVS 5630) (check-in: 1928f15b78 user: danielk1977 tags: trunk)
02:26
Miscellaneous cleanup in the new pcache code. (CVS 5629) (check-in: da1777259f user: drh tags: trunk)
2008-08-27
19:01
If any error occurs during sqlite3_open(), move the database handle into "sick" state. When in the sick state the user can use sqlite3_errcode() and sqlite3_errmsg(), but not much else. (CVS 5628) (check-in: ce9c74eaab user: danielk1977 tags: trunk)
18:56
Add the trans2.test script designed to stress statement rollback and no-write optimizations on large transactions with a small cache. (CVS 5627) (check-in: 39c34e2238 user: drh tags: trunk)
18:03
Do not mark pages as clean when doing a statement journal rollback. (CVS 5626) (check-in: 9d7722f4f3 user: drh tags: trunk)
16:38
Modifications to malloc5.test to account for the fact that sqlite3_release_memory() no longer reclaims dirty pages. (CVS 5625) (check-in: b01c65b065 user: danielk1977 tags: trunk)
16:14
Clear the $result variable prior to using it in corrupt2.test. (CVS 5624) (check-in: 12f2d24f88 user: drh tags: trunk)
15:21
In the test logic: load the md5sum() SQL function as a separate autoloaded extension. (CVS 5623) (check-in: d4438251dd user: drh tags: trunk)
15:16
Use a bitvec object to store the set of pages with the 'always-rollback' property for a transaction. (CVS 5622) (check-in: 9e9325997e user: danielk1977 tags: trunk)
13:31
Remove obsolete file: md5.c. This file had been removed years ago. It is unclear how it got back into the repository. (CVS 5621) (check-in: 45fc70bd92 user: drh tags: trunk)
09:44
Remove unreachable branches from pcache.c. (CVS 5620) (check-in: 7de32498b3 user: danielk1977 tags: trunk)
2008-08-26
23:08
Fix an issue with the permutation test script. (CVS 5619) (check-in: 2e12aa3e07 user: drh tags: trunk)
21:33
In the TCL interface, disable the authorizer when during a BEGIN, COMMIT, or ROLLBACK associated with the transaction method. Ticket #3336. (CVS 5618) (check-in: 7e1032ab00 user: drh tags: trunk)
21:07
All the page_size pragma to change the page size on a new :memory: database, but not a vacuumed :memory: database. Ticket #3335 (CVS 5617) (check-in: 226a905678 user: drh tags: trunk)
19:08
Disable some very expensive asserts in pcache.c that are too slow for all.test. (CVS 5616) (check-in: 555dad900f user: danielk1977 tags: trunk)
18:05
Simplify the pcache module by only recycling clean pages from 'other' caches. This commit causes errors in test files ioerr5.test and malloc5.test because they test recycling dirty pages from other caches. (CVS 5615) (check-in: 9e511e161b user: danielk1977 tags: trunk)
14:42
Implement a "counter" SQL function that can be used to insert a sequence number each row of a result set. Currently in the test harness only, but a candidate to move into the core. (CVS 5614) (check-in: c84d46c712 user: drh tags: trunk)
12:56
Do not flatten subqueries where the subquery has a LIMIT and the outer query has a WHERE clause. Ticket #3334. (CVS 5613) (check-in: 4995a1d1c9 user: drh tags: trunk)
2008-08-25
21:23
Add the SQLITE_OPEN_FULLMUTEX definition to sqlite3.h. It currently is not valid for anything. This is merely to reserve the number. (CVS 5612) (check-in: 3b6ffb4492 user: drh tags: trunk)
19:09
Fix obscure permutation test problems. (CVS 5611) (check-in: aa92a1bec3 user: drh tags: trunk)
17:23
Fix bug in the premutation testing that was causing many permutations from begin skipped. There are now 16 errors reported by the permutation test. (CVS 5610) (check-in: 4ad096bda1 user: drh tags: trunk)
14:49
Pick up a small performance increase by eliminating the pcacheRef() function. (CVS 5609) (check-in: e3840fbf0a user: danielk1977 tags: trunk)
12:14
Additional coverage testing in the new name resolver module. (CVS 5608) (check-in: 0d61960afd user: drh tags: trunk)
12:08
Two if statements should be asserts. GCC was silently ignoring them, hence the problem did not show up in coverage testing. Ticket #3333. (CVS 5607) (check-in: 635933b1ca user: drh tags: trunk)
11:57
Fix a segfault that can occur when running integrity_check on a corrupt db. (CVS 5606) (check-in: eae959ede1 user: danielk1977 tags: trunk)
07:12
If the sector size is greater than the database page size, SQLite journals all pages that lie within a sector before writing to any of them. This change ensure that a journal sync does not occur halfway through journalling the set of pages that belong to a single sector. (CVS 5605) (check-in: 16f612d61e user: danielk1977 tags: trunk)
2008-08-23
18:53
Instead of marking a page as clean when sqlite3PagerDontWrite() is called, set a dedictated flag - PGHDR_DONT_WRITE. (CVS 5604) (check-in: a323bd29a6 user: danielk1977 tags: trunk)
16:17
Do not incorrectly detect corruption when an auto-vacuum database is converted to a non-auto-vacuum database within a vacuum. Ticket #3332. (CVS 5603) (check-in: cb869946d6 user: danielk1977 tags: trunk)
2008-08-22
18:41
quieting compiler warning about pointer/int conversion size mismatch (CVS 5602) (check-in: f8a70501c2 user: aswift tags: trunk)
17:34
Remove dead code. (CVS 5601) (check-in: 6de9c084fc user: drh tags: trunk)
17:28
add legacy.lo back (in alphabetical order) (CVS 5600) (check-in: a861aa73c4 user: pweilbacher tags: trunk)
17:09
Relinquish the pcache mutex before calling an xStress callback. This ensures that the pcache mutex is never held while IO is performed. (CVS 5599) (check-in: 8fe234b2ca user: danielk1977 tags: trunk)
16:29
Enhanced test coverage. (CVS 5598) (check-in: cc36b4e016 user: drh tags: trunk)
16:22
When recycling a page, try to find one that does not require a call to xSync() on the journal file. Also simplify some of the mutex related things in pcache. (CVS 5597) (check-in: 93dbc5427b user: danielk1977 tags: trunk)
14:41
Make sure the function context is fully initialized before invoking the function finalizer. Ticket #3326. (CVS 5596) (check-in: 8496f4a00a user: drh tags: trunk)
14:08
Remove unused variable from printf.c. Ticket #3331. (CVS 5595) (check-in: 7fd11f4ad8 user: drh tags: trunk)
13:58
remove OS/2 compiler flags that aren't really necessary (CVS 5594) (check-in: b688c68c3d user: pweilbacher tags: trunk)
13:57
fix some tests to take the right branch on OS/2 (hope I got the Tcl syntax right) (CVS 5593) (check-in: 10e62d4700 user: pweilbacher tags: trunk)
13:47
Hide (for non-debugging builds) and remove DELETEONCLOSE files on OS/2, following the Windows example. Ticket #3328. (CVS 5592) (check-in: 8aaa77000f user: pweilbacher tags: trunk)
12:57
Fix nuisance compiler warnings. Ticket #3309. (CVS 5591) (check-in: 2a365e2994 user: drh tags: trunk)
12:46
Add test case to verify that Ticket #3301 was fixed by (5569) (CVS 5590) (check-in: 73b2606862 user: drh tags: trunk)
12:30
Allow the WHERE clause in an UPDATE or DELETE against a view with an INSTEAD OF trigger to refer to the view by name. Ticket #3298. (CVS 5589) (check-in: 7360e5d1f3 user: drh tags: trunk)
00:47
Fix os_unix.c so that it will compile on Linux again. (CVS 5588) (check-in: 2416708208 user: drh tags: trunk)
00:25
Deferring file descriptor closing to avoid trashing locks when directly manipulating sqlite db file contents (causes errors on AFP testing) (CVS 5587) (check-in: e28a2870b4 user: aswift tags: trunk)
00:22
Added SQLITE_IOERR_LOCK extended error code and support for detecting and returning errors in the os_unix lock, unlock and check reserved lock variants, also added support for populating and returning system error codes so that they can be accessed via xGetLastError, unfortunately xGetLastError can't seem to access the unixFile structure where the lastErrno is recorded. (CVS 5586) (check-in: c1af14e2b6 user: aswift tags: trunk)
2008-08-21
20:21
Move date+time functions to start-time initialization. Additional start-time function cleanup. (CVS 5585) (check-in: 80d6a31cb3 user: drh tags: trunk)
19:28
Remove references to OP_MoveTo in comments of vdbe.c - that opcode no longer exists. Ticket #3327. (CVS 5584) (check-in: 30077ece45 user: drh tags: trunk)
18:49
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) (check-in: ef6936e50a user: drh tags: trunk)
15:54
Fix soft-heap-limit related test suite failures. (CVS 5582) (check-in: 2091d9a526 user: danielk1977 tags: trunk)
15:13
Increase the version number in preparation for the next release. (CVS 5581) (check-in: d68dad73d0 user: drh tags: trunk)
14:54
Make sure "rowid" columns in views are named correctly. Ticket #3308. (CVS 5580) (check-in: 8593218c7c user: drh tags: trunk)
14:24
Add test cases to verify that ticket #3314 has been fixed. (CVS 5579) (check-in: b46267ff07 user: drh tags: trunk)
14:15
Reinsert an SCopy operation that was removed in (5523) because coverage testing indicated that it was dead code. Ticket #3324 shows that the code was not as dead as we thought it was. (CVS 5578) (check-in: 6855711595 user: drh tags: trunk)
12:32
Patch to mkfunction to try and detect miscompiles. Add an unimportant assert back to pcache.c. (CVS 5577) (check-in: a2f375fffb user: drh tags: trunk)
12:19
Fix the functionality associated with sqlite3_release_memory() and sqlite3_soft_heap_limit(). It is automatically disabled if the SQLITE_CONFIG_PAGECACHE option is used. (CVS 5576) (check-in: d025866b09 user: danielk1977 tags: trunk)
04:41
Move an assert() in sqlite3PcacheDirtyPage() so that it does not occur before local variable declarations. Ticket #3325. (CVS 5575) (check-in: 899fa19d1a user: danielk1977 tags: trunk)
04:35
Remove leftover PGHDR_TO_DATA macro from pager.c. Ticket #3323. (CVS 5574) (check-in: 5e9559c049 user: danielk1977 tags: trunk)
2008-08-20
22:06
Modify the sqlite3VdbeUnpackRecord() interface to force the temporary space to be 8-byte aligned. This might be important for Sparc. Ticket #3318. (CVS 5573) (check-in: 00b177985e user: drh tags: trunk)
21:47
Comment and function naming tweaks to pcache. No functionality changes. (CVS 5572) (check-in: 4b0e67d397 user: drh tags: trunk)
17:48
Modify the lemon parser template to avoid using zero-initialized constants when compiled with C++. Ticket #3288. (CVS 5571) (check-in: 71992f4a37 user: drh tags: trunk)
17:19
Fix a problem in Makefile.in causing the static function hash-table to be constructed incorrectly (segfault). (CVS 5570) (check-in: aef5b909e9 user: danielk1977 tags: trunk)
16:35
Refactor the name resolution procedures in the code generator. (CVS 5569) (check-in: daf730d1de user: drh tags: trunk)
16:34
When a "pragma main.table_info(...)" is issued, consider only tables from the main database, not the temp db. Ticket #3320. (CVS 5568) (check-in: d0cfbbbaee user: danielk1977 tags: trunk)
16:21
Fix typo in main.c: SQLITE_MAX_ATTACH -> SQLITE_MAX_ATTACHED. Ticket #3319. (CVS 5567) (check-in: 66ff55efd6 user: danielk1977 tags: trunk)
14:49
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) (check-in: cb494e10d7 user: danielk1977 tags: trunk)
2008-08-14
00:19
Do not flatten the right term of a LEFT join. Ticket #3300. (CVS 5565) (check-in: 8947c72f93 user: drh tags: trunk)
2008-08-13
20:09
Explicit casts of the return from strlen() to int in lemon. This has no effect on SQLite. It has no effect on any lemon-generated parser with a grammar that is less than 2GB in size. Ticket #3293. (CVS 5564) (check-in: a519cdb2f4 user: drh tags: trunk)
20:04
Fix token destructors in lemon generated parsers. Does not effect SQLite. Ticket #3299. (CVS 5563) (check-in: 4887e8fc4a user: drh tags: trunk)
19:11
Additional changes toward fixing ticket #3292. (CVS 5562) (check-in: 0b92cbf525 user: drh tags: trunk)
14:07
A partial fix for ticket #3292. This fixes the original problem but there are other similar problems lurking in the code still. (CVS 5561) (check-in: 055f173ab1 user: drh tags: trunk)
2008-08-12
15:48
Make sure the lookaside test script saturates the lookaside buffer even when SQLITE_DEBUG is off. Ticket #3289 (CVS 5560) (check-in: d6aacc5dc7 user: drh tags: trunk)
15:21
Revise the initialization and shutdown logic so that it no longer keeps a recursive mutex allocated for the whole interval but instead releases the mutex as soon as possible. Do not reset status values upon initialization. (CVS 5559) (check-in: 697fe7a316 user: drh tags: trunk)
15:04
Fix further warnings/compilation errors in test code. (CVS 5558) (check-in: 42247b917a user: danielk1977 tags: trunk)
14:51
Documentation updates and clarifications in sqlite.h.in. (CVS 5557) (check-in: e3935502fd user: drh tags: trunk)
14:48
Fix warnings and a compilation error in test code. (CVS 5556) (check-in: 80c129e63e user: danielk1977 tags: trunk)
2008-08-11
20:07
GCC attribute warning first appears in the 4.3.0 docs, so updated #if to specify at least that version. (CVS 5555) (check-in: 46defad516 user: shane tags: trunk)
19:12
Make the CLI more tolerant of malformed schemas by setting the writable_schema pragma prior to running the ".dump" command. (CVS 5554) (check-in: 860babd841 user: drh tags: trunk)
18:44
Do not allow indexing of any table whose name begins with "sqlite_". Ticket #3284. Improve handling of databases with malformed schemas - just in case somebody has actually indexed a system table. (CVS 5553) (check-in: 0e1d8d14a1 user: drh tags: trunk)
18:29
The GCC magic to warn about experimental interfaces does not work on gcc version 4.1.0. Add #ifdefs to work around this. (CVS 5552) (check-in: 90cae83169 user: drh tags: trunk)
17:27
Added SQLITE_EXPERIMENTAL and SQLITE_DEPRECATED tags to APIs to take advantage of compiler warnings (with the necessary function attributes.) Ticket #3142. (CVS 5551) (check-in: 5f4b547aba user: shane tags: trunk)
14:26
Disallow empty triggers. Ticket #3283. This does not present a backwards compatibility problem because prior to this change, an empty trigger would segfault. (CVS 5550) (check-in: 571adab9d2 user: drh tags: trunk)
2008-08-08
18:06
Move a variable initialization earlier to work around MS compiler complaints. (CVS 5549) (check-in: 02232e7144 user: drh tags: trunk)
15:06
Back out part of (5546): Even though ON CONFLICT clauses on CHECK constraints are no-ops, if a schema includes them, the database will be unreadable if we do not at least parse and ignore the clause. (CVS 5548) (check-in: efcaeb68f9 user: drh tags: trunk)
14:33
Round lookaside buffer sizes in the right direction. Ticket #3277. (CVS 5547) (check-in: c1a9bf3863 user: drh tags: trunk)
14:19
Disallow the ON CONFLICT clause on CHECK constraints. The syntax used to be allowed but never worked, so this should not present compatibility problems. Other internal grammar simplifications. (CVS 5546) (check-in: 4cedc641ed user: drh tags: trunk)
2008-08-07
13:05
Improved clarity of presentation in the tokenizer. (CVS 5545) (check-in: 732657c6a6 user: drh tags: trunk)
2008-08-06
13:47
Fix compilation with SQLITE_OMIT_FOREIGN_KEY defined. Ticket #3273. (CVS 5544) (check-in: ce8cbeea51 user: danielk1977 tags: trunk)
13:40
Fix typo in comments in sqlite.h.in. Ticket #3271. (CVS 5543) (check-in: 18030631e8 user: danielk1977 tags: trunk)
10:50
Version 3.6.1 (CVS 5540) (check-in: 65ab777fd0 user: drh tags: trunk, release)
10:47
Trying again to fix the publish.sh script. (CVS 5542) (check-in: 01fb8a0d2c user: drh tags: trunk)
10:43
Fix the tarball builder in publish.sh to exclude CVS and Fossil files. (CVS 5541) (check-in: 43896f1008 user: drh tags: trunk)
2008-08-05
21:42
Revise build scripts in set SQLITE_ENABLE_COLUMN_METADATA on DLLs. (CVS 5539) (check-in: ce5daa0359 user: drh tags: trunk)
21:36
Remove a reference to snprintf() in test8.c. (CVS 5538) (check-in: 32d32b7436 user: drh tags: trunk)
17:53
Add SQLITE_STATUS_PAGECACHE_SIZE and SQLITE_STATUS_SCRATCH_SIZE. (CVS 5537) (check-in: c4e9b82406 user: drh tags: trunk)
2008-08-04
20:13
Separate verbs of sqlite3_config() and sqlite3_db_config() into their own namespaces. Allow SQLITE3_DBCONFIG_LOOKASIDE to specific an external memory buffer. (CVS 5536) (check-in: 5dd865da5e user: drh tags: trunk)
14:50
Modify the configure script to avoid using the += operator. Not all shells support it. (CVS 5535) (check-in: f167b2745d user: danielk1977 tags: trunk)
13:44
Enhanced markings for experimental and deprecated interfaces. (CVS 5534) (check-in: 7e6ec5d53d user: drh tags: trunk)
11:49
Make it easier to build with the icu extension enabled. Include icu.c in the amalgamation source. Ticket #3245. (CVS 5533) (check-in: e42ff97ba7 user: danielk1977 tags: trunk)
04:39
Add an assert() statement that will alert us if the potential problem identified by #3243 ever becomes a reality. (CVS 5532) (check-in: 34208f0ba4 user: danielk1977 tags: trunk)
04:28
Add the pkgconfigdir variable to Makefile.in. Ticket #3242. (CVS 5531) (check-in: 540c9d4c0d user: danielk1977 tags: trunk)
03:51
Fix (make test) with SQLITE_OMIT_COMPOUND_SELECT. Ticket #3235. (CVS 5530) (check-in: 9ca975c8fd user: danielk1977 tags: trunk)
01:46
removed some extraneous blank lines. made sure to use only LF line endings. (CVS 5529) (check-in: 358bd6609e user: shane tags: trunk)
2008-08-02
20:09
Test scripts revised to work when auto_vacuum defaults on. (CVS 5528) (check-in: e63186b0b6 user: drh tags: trunk)
17:36
Fix a reference count leak introduced by (5526). (CVS 5527) (check-in: f653995c32 user: danielk1977 tags: trunk)
17:03
Avoid doing IO purely to check assert() constraints. (CVS 5526) (check-in: fb26ae7239 user: danielk1977 tags: trunk)
15:32
Fix a bug introduced by (5519) causing builds with SQLITE_OMIT_VIRTUALTABLE to malfunction. (CVS 5525) (check-in: 761e73ceab user: danielk1977 tags: trunk)
15:10
Increase the ref-count on the sqlite3_vtab structure before calling either the xNext or xFilter methods. (CVS 5524) (check-in: 6e41455f2c user: danielk1977 tags: trunk)
03:50
Additional coverage testing. Fix a segfault following OOM in sqltie3_load_extension(). (CVS 5523) (check-in: f1e44eb323 user: drh tags: trunk)
2008-08-01
20:10
Bring test coverage up to 99%. (CVS 5522) (check-in: 2cd6bae809 user: drh tags: trunk)
18:47
Fix problems in test scripts. Add new test cases to improve test coverage. (CVS 5521) (check-in: b65f493c75 user: drh tags: trunk)
17:51
Also test that setting sqlite3_vtab.zErrMsg works from within the xRename method. (CVS 5520) (check-in: 4f4a9ccae7 user: danielk1977 tags: trunk)
17:37
Test that virtual table methods xBestIndex, xOpen, xFilter, xNext, xColumn, xRowid, xUpdate, xSync and xBegin can all return error messages using the sqlite3_vtab.zErrMsg variable. (CVS 5519) (check-in: 007359b770 user: danielk1977 tags: trunk)
16:31
Test cases for sqlite3_db_config() and sqlite3_db_status(). (CVS 5518) (check-in: 6a6b94302a user: drh tags: trunk)
15:06
Add a permutation test case for running all OOM tests with lookaside disabled. (CVS 5517) (check-in: 3f70e03ae8 user: drh tags: trunk)
14:33
Applied patch to fix failure with build on gcc-powerpc (provide sqlite3Hwtime). Ticket #3256. (CVS 5516) (check-in: c9ecd88e27 user: shane tags: trunk)
10:50
If xAccess() fails while attempting to detect a hot-journal file, do not assume that the error was an out-of-memory condition. (CVS 5515) (check-in: 70f20425e8 user: danielk1977 tags: trunk)
2008-07-31
17:35
Define _GNU_SOURCE only if it is not already defined. Ticket #3263. (CVS 5514) (check-in: bc5abd31a7 user: drh tags: trunk)
17:20
Update the memsubsys1 test script to take into account the buffer size changes of the previous check-in. (CVS 5513) (check-in: d43ff7bb8f user: drh tags: trunk)
17:16
Change the definition of SQLITE_CONFIG_PAGECACHE and SQLITE_CONFIG_SCRATCH to omit the magic "+4" in the buffer size calculation. (CVS 5512) (check-in: e7ed0fe640 user: drh tags: trunk)
14:47
Documentation updates. (CVS 5511) (check-in: e7fdd813cc user: drh tags: trunk)
02:43
Updated omittest.tcl. Updated OMIT list. Updated for Windows. (CVS 5510) (check-in: f94239933e user: shane tags: trunk)
02:05
Omit calls to test_get_table_printf() if SQLITE_OMIT_GET_TABLE defined. (CVS 5509) (check-in: 524a4075dd user: shane tags: trunk)
01:47
Omit calls to test_destructor16() if SQLITE_OMIT_UTF16 defined. (CVS 5508) (check-in: 2d5cec53c2 user: shane tags: trunk)
01:43
Fixed comment to use right function names for sqlite3VdbeSerialPut() and sqlite3VdbeSerialGet(). (CVS 5507) (check-in: 820c37ec52 user: shane tags: trunk)
01:40
Omit calls to sqlite3Pragma() if SQLITE_OMIT_PARSER defined. Not technically needed, as the entire generated parse.c file should not be included. (CVS 5506) (check-in: 10e0450896 user: shane tags: trunk)
01:34
Improved retry logic for winDelete() when in "pending delete" state. (CVS 5505) (check-in: 03a7973477 user: shane tags: trunk)
2008-07-30
17:28
When opening a zero-size database on unix, write one byte into the file before interrogating the inode number. This works around issues with msdos filesystems mounted on OS-X. Ticket #3260. (CVS 5504) (check-in: a480a8845f user: drh tags: trunk)
15:27
In the unix OS implementation, replace inode hash tables with linked lists. (CVS 5503) (check-in: db4022db64 user: drh tags: trunk)
13:27
Implicit string->numeric conversion should go to an integer value when possible. Ticket #3257. (CVS 5502) (check-in: da0e4bff30 user: drh tags: trunk)
13:15
Make sure everything is deallocated before calling sqlite3_shutdown(). Ticket #3259. (CVS 5501) (check-in: 4a6ee88697 user: drh tags: trunk)
13:14
Remove unused sqlite3VdbeMemDynamicify() function from the VDBE. (CVS 5500) (check-in: aee6330831 user: drh tags: trunk)
2008-07-29
20:38
Backport http://www.sqlite.org/cvstrac/chngview?cn=5489 from fts3. Re-used prepared statement from fts2 cursor. (CVS 5499) (check-in: 02870ed21d user: shess tags: trunk)
20:24
Add some simple tests to make sure that the different fulltextFilter query paths are being exercised. (CVS 5498) (check-in: ae96d960e6 user: shess tags: trunk)
18:49
finally make temporary and journal files hidden in release builds on OS/2 (CVS 5497) (check-in: c449a95c4f user: pweilbacher tags: trunk)
18:38
recursively call os2Open() with the incoming VFS pointer, in case it gets used in the future (CVS 5496) (check-in: 6eac49f046 user: pweilbacher tags: trunk)
18:35
move os2FullPathname() so that it can be used in os2Open() directly (CVS 5495) (check-in: 2455e45484 user: pweilbacher tags: trunk)
14:29
Enhancements to the pagecache malloc test configuration. Changes to the speed test scripts to use the new test enhancements. (CVS 5494) (check-in: 0ce39c21f3 user: drh tags: trunk)
14:28
Increase the version number to 3.6.1. (CVS 5493) (check-in: ec09b551e8 user: drh tags: trunk)
11:25
Use a macro to make sure that the calls to sqlite3Utf8Read() from MemTranslate() are inlined. This speeds up converting from utf8 to utf16. (CVS 5492) (check-in: 78a623bbb1 user: danielk1977 tags: trunk)
10:26
Add a missing "finish_test" to the end of misc5.test. (CVS 5491) (check-in: 89216b1669 user: danielk1977 tags: trunk)
10:18
Speed up OP_Column by eliminating some double handling. (CVS 5490) (check-in: 9ebee8401b user: danielk1977 tags: trunk)
01:13
Re-used prepared statement from fts3 cursor. Previously, each call to fulltextFilter() finalized any existing prepared statement and prepared a new one. In the case where idxNum has not changed, simply reseting the statement suffices. This provides an order of magnitude speedup in incoming joins against docid. (CVS 5489) (check-in: a08a5f2b12 user: shess tags: trunk)
2008-07-28
19:34
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) (check-in: e48f9697e9 user: drh tags: trunk)
05:26
Add mem6.c to Makefile.in. Ticket #3253. (CVS 5487) (check-in: 51be2e4463 user: danielk1977 tags: trunk)
05:22
In the documentation for SQLITE_CONFIG_MEMSTATUS, make it clear that the 'boolean' argument passed to sqlite3_config() is actually of type int. Ticket #3252. (CVS 5486) (check-in: 1ffdd46f0b user: danielk1977 tags: trunk)
2008-07-26
18:47
Remove a branch that could not be taken from OP_IsUnique. (CVS 5485) (check-in: 75c2a532f4 user: danielk1977 tags: trunk)
18:26
Fix a case where database corruption was causing an invalid reference. (CVS 5484) (check-in: 7aecabacf9 user: danielk1977 tags: trunk)
2008-07-25
16:39
Add an SQLITE_OMIT_LOCALTIME around the "utc" modifier in date/time functions. (CVS 5483) (check-in: 71486e93b2 user: drh tags: trunk)
16:07
Further performance improvements to mem6.c. (CVS 5482) (check-in: 4528f7b1cc user: danielk1977 tags: trunk)
15:39
Add the capability to track the maximum depth of the LALR(1) parser stack so that critical applications can check to see if they are getting close to limits. (CVS 5481) (check-in: ef0250f3dc user: drh tags: trunk)
14:53
Fix the corrupt7 tests to track changes in the integrity check error message. (CVS 5480) (check-in: 22177dac2e user: drh tags: trunk)
13:39
Increase limits on memsubsys1 tests to accomodate the larger structure sizes on 64-bit platforms. (CVS 5479) (check-in: f7720f1bfc user: drh tags: trunk)
13:32
Require the SQLITE_ENABLE_INSTVFS symbol in order to compile testfixture with sqlite3_instvfs enabled. This allows fulltest to run on platforms for which we do not have a working hwtime.h (ex: ppc, s390). Change requested from the SuSE team. (CVS 5478) (check-in: 16c164e79c user: drh tags: trunk)
12:49
Make the libtclsqlite3.la shared library depend on a separate libsqlite3.la shared library. I think this flies in the face of the whole SQLite philosophy of minimal dependencies, but on the other hand, few people use that shared library and the capability has been requested from the SuSE team. (CVS 5477) (check-in: 83484b42bf user: drh tags: trunk)
12:39
Fix a build problem on tclsqlite in Makefile.in. (CVS 5476) (check-in: e7a604807f user: drh tags: trunk)
10:40
Speed up the xFree() method of the mem6.c allocator by storing the offset from the pointer to the start of its chunk in a header field. (CVS 5475) (check-in: 0de54891d4 user: danielk1977 tags: trunk)
09:24
Change mem6.c to use the malloc() and free() functions directly, instead of going via another sqlite3_mem_methods structure. (CVS 5474) (check-in: cfa65e23df user: danielk1977 tags: trunk)
08:49
Updates to mem6.c allocator. (CVS 5473) (check-in: 43a4cae2ac user: danielk1977 tags: trunk)
2008-07-24
23:34
Reduce the size of the parser allocation. Add additional instrumentation to mem2. speed1*.test uses scratch malloc. (CVS 5472) (check-in: 599a9dea8f user: drh tags: trunk)
17:06
Use a new algorithm for sqlite3Strlen that is slightly slower but is more like to work on a mixture of 32- and 64-bit systems. Ticket #3237, #3248. (CVS 5471) (check-in: cb1876d8dc user: drh tags: trunk)
15:50
Update the implementation of sqlite3ResultSetOfSelect() to (hopefully) make it clearer that malloc failures cannot possibly result in a crash. Ticket #3247. (CVS 5470) (check-in: 7455310931 user: drh tags: trunk)
10:32
Do not run capi3.test or capi3c.test when testing memsys6. (CVS 5469) (check-in: e0a101117c user: danielk1977 tags: trunk)
10:11
Add a mutex to mem6.c to make it threadsafe. (CVS 5468) (check-in: 9b97ce60c6 user: danielk1977 tags: trunk)
08:20
Add mem6.c, a new allocator. More to come. (CVS 5467) (check-in: 192bc19218 user: danielk1977 tags: trunk)
2008-07-23
21:07
Error messages from virtual tables store on the sqlite3_vtab->zErrMsg field are reported back up to the application interface and memory is reclaimed. (CVS 5466) (check-in: 4a9dd5e782 user: drh tags: trunk)
20:28
Remove stray breakpoints from test scripts. (CVS 5465) (check-in: cb5e75dfa5 user: drh tags: trunk)
18:25
Clarify in the documentation that the database connection pointer to sqlite3_next_stmt() must not be NULL. Ticket #3244. (CVS 5464) (check-in: a7d64e86e8 user: drh tags: trunk)
18:17
Read the sqlite3_vtab.zErrMsg after each call to a virtual table method and transfer any error into the database connection. Fix the fts2.test and fts3.test scripts to that they return silently rather than failing the test sequence if the appropriate FTS implementation is unavailable. (CVS 5463) (check-in: e2c6771d44 user: drh tags: trunk)
15:40
Update requirements derivation information in sqlite.h.in. (CVS 5462) (check-in: d6202907e7 user: drh tags: trunk)
13:42
Quick typo fix. No changes to code. (CVS 5461) (check-in: dfa8b45663 user: mihailim tags: trunk)
00:52
Documentation updates. (CVS 5460) (check-in: fe8e9f53f4 user: drh tags: trunk)
2008-07-22
23:54
Be a bit more susicious of invalid results from the tokenizer. Backports check-in (4514) from fts3. (CVS 5459) (check-in: 311aeb9c2b user: shess tags: trunk)
23:49
Implement optimize() function. Backports check-in (5417) from fts3. (CVS 5458) (check-in: c16900dc76 user: shess tags: trunk)
23:41
Delete all fts2 index data the table becomes empty. Backports check-in (5413) from fts3. (CVS 5457) (check-in: 4c98179be2 user: shess tags: trunk)
23:32
fts2 functions for testing scripts. Backports (5340) from fts3. (CVS 5456) (check-in: 4e47394be9 user: shess tags: trunk)
23:08
Change prefix search from O(N*M) to O(NlogM). Backports (4599) from fts3. (CVS 5455) (check-in: 3f614453d2 user: shess tags: trunk)
22:57
Changes fts2 to use only sqlite3_malloc() and not system malloc. Backports (4554) and (4555) from fts3. (CVS 5454) (check-in: ecf2dec66c user: shess tags: trunk)
22:20
fts2.c buildTerms() passes -1 for nInput. Backports (4511) from fts3. (CVS 5453) (check-in: d562515e1c user: shess tags: trunk)
22:15
Cleanup the hash functions in FTS2. Backports (4440) from fts3. (CVS 5452) (check-in: e31d2f875c user: shess tags: trunk)
18:45
Documentation updates. No changes to code. (CVS 5451) (check-in: e58b49779b user: drh tags: trunk)
05:32
winGetLastError support added. Consolidated getLastErrorMsg() support. Removed some more WINCE dead code similar to instance in ticket #3232. Added error return on SystemTimeToFileTime() failure. (CVS 5450) (check-in: c0a5cf38ee user: shane tags: trunk)
05:18
Changed a few loop counters to unsigned ints to remove compiler warnings. (CVS 5449) (check-in: 16f51f9b39 user: shane tags: trunk)
05:15
Added comment on floating point precision compile option for MSVC. (CVS 5448) (check-in: e20f2b8c6a user: shane tags: trunk)
05:13
Add assertion check for NaN support at startup. (CVS 5447) (check-in: 8474cde34b user: shane tags: trunk)
05:05
"configure" support updated. Removed unused features. Added parsing of CFLAGS and CPPFLAGS to extract OMIT options to pass to lemon and mkkeywordhash. (CVS 5446) (check-in: c67aa5057d user: shane tags: trunk)
05:00
flattenSubquery() needed if either SQLITE_OMIT_SUBQUERY or SQLITE_OMIT_VIEW not defined. (CVS 5445) (check-in: 1ffe7a9957 user: shane tags: trunk)
2008-07-19
14:25
Reduce the number of "#ifndef SQLITE_OMIT_AUTOVACUUM" conditions in btree.c by using the ISAUTOVACUUM macro instead. (CVS 5444) (check-in: a560c61849 user: danielk1977 tags: trunk)
13:43
To ensure SQLITE_THREADSAFE is always defined, have test_mutex.c include sqliteInt.h. (CVS 5443) (check-in: d8be91e2d2 user: danielk1977 tags: trunk)
11:49
Improve the performance of balance_nonroot() on auto-vacuum databases by reducing the number of calls to ptrmapPut(). (CVS 5442) (check-in: 9992b1aecd user: danielk1977 tags: trunk)
2008-07-18
23:47
Remove dead code from os_win.c. Ticket #3232. (CVS 5441) (check-in: 5c5c1f7279 user: drh tags: trunk)
18:56
Use the actual size of memory allocations to update the memory status counters. Fix the roundup() function of mem3 to be much closer to the actual allocation size. Ticket #3226. (CVS 5440) (check-in: 5c22132eb1 user: drh tags: trunk)
17:16
Fix SQLITE_OMIT_AUTOVACUUM so that it works again. Ticket #3228. (CVS 5439) (check-in: 3b2dd417f9 user: drh tags: trunk)
17:03
Make sure expression spans are set correctly for "x.*" expressions in the result set of a SELECT. Ticket #3229. (CVS 5438) (check-in: 17a9984e76 user: drh tags: trunk)
09:34
Performance improvement: reduce the number of calls to ptrmapPageno() made by ptrmapPut() and ptrmapGet(). (CVS 5437) (check-in: d807fb2713 user: danielk1977 tags: trunk)
08:10
Speed up sqlite3_finalize() by removing redundant code. (CVS 5436) (check-in: c94318b982 user: danielk1977 tags: trunk)
05:36
Init zFullCp to prevent crashes in case DosQueryPathInfo() fails. (CVS 5435) (check-in: 70685b2ae8 user: pweilbacher tags: trunk)
03:32
The zeroPage() routine in btree.c need not actually zero the whole page, just the header. (CVS 5434) (check-in: c69633ec69 user: drh tags: trunk)
02:44
Omit the check for cell-pointer consistency in sqlite3BtreeInitPage() for a 2.5% performance gain. (CVS 5433) (check-in: b88087e69d user: drh tags: trunk)
00:57
Optimization to sqltie3BtreeParseCellPtr. 0.3% performance increase. (CVS 5432) (check-in: 77e099ad7d user: drh tags: trunk)
2008-07-17
18:39
Simplify the b-tree logic by taking advantage of the fact that all b-trees are either intkey+leafdata or zerodata. (CVS 5431) (check-in: 29d3bfd7c9 user: drh tags: trunk)
17:34
Fix the test harness so that it does not try to link against sqlite3_mutex_alloc() if compiled with -DSQLITE_THREADSAFE=0. (CVS 5430) (check-in: 26a203d894 user: drh tags: trunk)
2008-07-16
19:30
Get rid of the debug output, and make pre-C99 compilers happy with sqlite3_os_init() on OS/2. (CVS 5429) (check-in: 08fe49f62f user: pweilbacher tags: trunk)
18:35
Make sure the auxiliary database connection is closed after every test. (CVS 5428) (check-in: e60bb6a179 user: drh tags: trunk)
18:20
More improvements to the 64-bit integer conversion testing in func.test. (CVS 5427) (check-in: 632bb3c734 user: drh tags: trunk)
18:17
Eliminate some unnecessary IO during a commit in full auto-vacuum mode. (CVS 5426) (check-in: 1d01c02ab0 user: danielk1977 tags: trunk)
18:04
Fix a test in func.test so that it works on machines that lack long double. (CVS 5425) (check-in: 8686959d42 user: drh tags: trunk)
14:44
Version 3.6.0 (CVS 5423) (check-in: 1841aee604 user: drh tags: trunk, release)
14:43
Allow the r-tree extension to be compiled as part of the amalgamation. (CVS 5424) (check-in: 5c26f63e47 user: drh tags: trunk)
14:02
Fix a bug in the error reporting of sqlite3_table_column_metadata(). (CVS 5422) (check-in: 7eba18c3a5 user: drh tags: trunk)
13:29
Update the "experimental" markings on C/C++ interfaces. (CVS 5421) (check-in: 96e95aa5e6 user: drh tags: trunk)
12:33
Fix a bug in the HOMEGROWN_RECURSIVE_MUTEX implementation for unix. Ticket #3224. (CVS 5420) (check-in: 9af2514c83 user: drh tags: trunk)
12:25
Activate testing of mem3 and mem5. Fix problems found. Tickets #3223 and #3225. Other test configuration changes. (CVS 5419) (check-in: a3a7820540 user: drh tags: trunk)
2008-07-15
22:59
Work around bugs in older versions of the OS/2 conversion library by trying to minimize calls to UniCreateUconvObject() etc. Use global uconv objects instead. (CVS 5418) (check-in: 80e4218306 user: pweilbacher tags: trunk)
21:32
Implement optimize() function. This merges all segments in the fts index into a single segment, including dropping delete cookies. (CVS 5417) (check-in: b22e187bc2 user: shess tags: trunk)
20:56
Update column naming rules. Ticket #3221. Rules for column naming are still subject to change (except for the AS rule which we promise to keep the same) but are more consistent now. And the rules are tested using a new test script. (CVS 5416) (check-in: 61f6e19755 user: drh tags: trunk)
14:47
Continuing work on improved test coverage. (CVS 5415) (check-in: c942a38e9a user: drh tags: trunk)
00:27
Increased test coverage. (CVS 5414) (check-in: 7cf91e08c0 user: drh tags: trunk)
2008-07-14
20:43
Delete all fts3 index data the table becomes empty. Previously, deleting all rows from an fts3 table would leave a bunch of index data describing the terms of the original data, plus deletions of those terms, perhaps with some amount of it merged together so the deletions knocked out the originals. Even when all rows were deleted that original data would hang out, though eventually it would mostly be overwritten if new data contained the same set of terms. (CVS 5413) (check-in: 8b872e4260 user: shess tags: trunk)
19:39
Add a new test script to exercise the deadlock avoidance code in the btree mutex logic. (CVS 5412) (check-in: 7d5e1c4375 user: drh tags: trunk)
18:38
Fix a typo in the documentation. Ticket #3219. (CVS 5411) (check-in: 3dc72a4617 user: drh tags: trunk)
15:37
Have the rtree extension publish two virtual table types: "rtree" and "rtree_i32". rtree_i32 stores coordinate data as 32-bit signed integers. rtree uses 32-bit real (floating point) values. (CVS 5410) (check-in: c060a9a6be user: danielk1977 tags: trunk)
15:11
Remove the malloc2.test script since it was designed for use in versions of SQLite that predate SQLite's ability to recover from out-of-memory errors automatically. Removing this script causes no reduction in test coverage and removes potential problems reported by ticket #3213. (CVS 5409) (check-in: 5bfc962533 user: drh tags: trunk)
12:52
Write sqlite3_initialize() calls in sqlite3_malloc() within SQLITE_OMIT_AUTOINIT. Ticket #3217. (CVS 5408) (check-in: 4961b0bbe8 user: drh tags: trunk)
12:38
Fix a bug introduced by check-in (5406). Ticket #3216. (CVS 5407) (check-in: 518a24aa3e user: drh tags: trunk)
12:30
Work around a bug in Borland C. Ticket #3216. (CVS 5406) (check-in: 2c24e50da6 user: drh tags: trunk)
12:27
Fix additional typos in comments within lemon. Ticket #3215. (CVS 5405) (check-in: 3721476995 user: drh tags: trunk)
12:21
Fix a bug in the #line generator of lemon. Ticket #3214. (CVS 5404) (check-in: dc697c2666 user: drh tags: trunk)
2008-07-13
03:55
Fix a typo in the documentation. (CVS 5403) (check-in: d618a88330 user: drh tags: trunk)
2008-07-12
20:35
Documentation updates. No changes to code. (CVS 5402) (check-in: 8be28aa0f2 user: drh tags: trunk)
15:55
Fix the test script --binarylog option. (CVS 5401) (check-in: 03e3cfc4cc user: danielk1977 tags: trunk)
14:52
Remove leftover debugging commands (breakpoint and btree_breakpoint) from test scripts. (CVS 5400) (check-in: dcb160249f user: drh tags: trunk)
2008-07-11
21:02
Detect and handles the case where a row is modified or deleted while it is being read during SELECT processing. (CVS 5399) (check-in: c80a5d0993 user: drh tags: trunk)
17:23
Tweak to the ".timer" command in the CLI to help it work better with GCC. (CVS 5398) (check-in: 1041deb6ae user: drh tags: trunk)
16:39
Added corruptA.test for testing malformed database headers. (CVS 5397) (check-in: 6dcce6b974 user: drh tags: trunk)
16:19
Improved NaN testing for highly optimized GCC on x86. Tickets #3202 and #3194. (CVS 5396) (check-in: a8a2fe45b2 user: drh tags: trunk)
16:15
Additional test coverage for the btree module. Remove the failsafe() macro and replace it with ALWAYS() and NEVER(). (CVS 5395) (check-in: d7e2f0d2d4 user: drh tags: trunk)
13:53
Fix minor problems in the test scripts and harness. (CVS 5394) (check-in: c9ffbfe343 user: drh tags: trunk)
03:38
Remove an extra zeroPage() call that was left in the previous check-in by mistake. Ticket #3209. (CVS 5393) (check-in: c45d578e44 user: drh tags: trunk)
03:34
Make the btree layer robust when faced with a corrupt database that contains duplicate entries on the freelist. Ticket #3209. (CVS 5392) (check-in: 30825f74d6 user: drh tags: trunk)
02:21
Additional test coverage in btree.c. Added corruption tests for the ptrmap pages of an autovacuumed database (corrupt8.test). (CVS 5391) (check-in: 620b472133 user: drh tags: trunk)
2008-07-10
20:41
Fix a bug in the mutex-testing logic introduced by check-in (5389). (CVS 5390) (check-in: 8fc462b6b7 user: drh tags: trunk)
18:13
Enhancements to the testing logic for malloc and mutex. Only permit one of MEMSYS3/5 to be compiled-in at a time. Omit the SQLITE_CONFIG_MEMSYS3/5 configuration options. (CVS 5389) (check-in: ed8b252500 user: drh tags: trunk)
17:59
Fix a crash in flattenSubquery(). (CVS 5388) (check-in: 9c8b97ef59 user: danielk1977 tags: trunk)
17:52
Add the SQLITE_OPEN_NOMUTEX flag. Used for opening connections that are not protected by an internal mutex. (CVS 5387) (check-in: 7e58b78712 user: danielk1977 tags: trunk)
00:32
Remove unused code. Test coverage enhancements. Modify the algorithm used to select column names for VIEWs of joins so that the constructed column names omits the underlying table names. (CVS 5386) (check-in: 636cd72329 user: drh tags: trunk)
2008-07-09
16:51
Test coverage improvements on printf. (CVS 5385) (check-in: 2d8f7bebf0 user: drh tags: trunk)
14:47
Add a test case to join.test. No code changes, no bugs found. (CVS 5384) (check-in: 417aa1580a user: danielk1977 tags: trunk)
13:28
Begin adding the failsafe() macro. (CVS 5383) (check-in: 8aae4fe7e7 user: drh tags: trunk)
11:49
Coverage testing for balance_quick() and balance_deeper(). (CVS 5382) (check-in: 491f8f9613 user: danielk1977 tags: trunk)
01:39
Additional test coverage in select.c and expr.c. (CVS 5381) (check-in: c6cf08477c user: drh tags: trunk)
2008-07-08
23:40
Remove obsolete code from select.c, including the "affinity" parameter to the sqlite3Select() module. (CVS 5380) (check-in: cbd3c1585b user: drh tags: trunk)
22:34
Handle sqlite3_temp_directory on OS/2. (CVS 5379) (check-in: 9da0b32c8c user: pweilbacher tags: trunk)
22:28
Added macros to convert between 32-bit ints and 64-bit ptrs to avoid compiler warnings. (CVS 5378) (check-in: 6cdb6841ff user: shane tags: trunk)
22:15
Added test_mutex.c (for testfixture) to input file for configure script. (CVS 5377) (check-in: bfca089dbf user: shane tags: trunk)
19:46
make OS/2 VFS functions static (CVS 5376) (check-in: b40d9496d0 user: pweilbacher tags: trunk)
19:45
Fix a bug in where.c introduced by check-in (5373). (CVS 5375) (check-in: 1ed98f9e61 user: drh tags: trunk)
19:34
Completely rework the sqlite3SetString() primitive so that it honors the SQLITE_LIMIT_LENGTH and avoids the use of strlen(). (CVS 5374) (check-in: 8ed04b1e26 user: drh tags: trunk)
18:05
Improved testing of the min/max optimization. (CVS 5373) (check-in: fa07c360b7 user: drh tags: trunk)
17:43
Prevent the flattening optimization from transforming a to a query with an illegal ORDER BY clause. (CVS 5372) (check-in: 6c2adade34 user: danielk1977 tags: trunk)
17:13
Test another corruption case in btree.c. And an IO error related scenario. (CVS 5371) (check-in: d74fbb81ca user: danielk1977 tags: trunk)
15:59
3 more coverage tests for btree.c. (CVS 5370) (check-in: 96df0a5fa4 user: danielk1977 tags: trunk)
15:26
Tests for SQLITE_LIMIT_LENGTH enforcement in sqlite3_bind. (CVS 5369) (check-in: c5e45dd664 user: drh tags: trunk)
14:52
Improved enforcement of the SQLITE_LIMIT_LENGTH limit. (CVS 5368) (check-in: ee93150878 user: drh tags: trunk)
14:31
Another corruption related test case. (CVS 5367) (check-in: f781a68127 user: danielk1977 tags: trunk)
14:17
Fix a compilation bug with SQLITE_OMIT_AUTOINIT. (CVS 5366) (check-in: 94c95fad56 user: danielk1977 tags: trunk)
12:07
Extra coverage tests for btree.c. (CVS 5365) (check-in: 08334f6030 user: danielk1977 tags: trunk)
12:02
Make sqlite3_shutdown() a no-op if the library is not initialized. (CVS 5364) (check-in: d725d3bbce user: danielk1977 tags: trunk)
10:19
Improve coverage of btree.c. (CVS 5363) (check-in: f6d9cb835b user: danielk1977 tags: trunk)
07:35
Prohibit the user from changing the temporary storage medium (pragma temp_store) while there is a read transaction open on the temporary database. Add tests to shared.test to cover a few more lines in btree.c. (CVS 5362) (check-in: 92e0cf9a08 user: danielk1977 tags: trunk)
03:04
change to use sqlite_uint64 for MSVC compile; (CVS 5361) (check-in: 369118ca2e user: shane tags: trunk)
02:24
Test coverage improvements in printf.c. (CVS 5360) (check-in: 6f2629c783 user: drh tags: trunk)
02:12
Add tests to verify correct behavior when mutex initialization fails. (CVS 5359) (check-in: 65875005ac user: drh tags: trunk)
00:06
Testing coverage enhancements. (CVS 5358) (check-in: fe80aa58a4 user: drh tags: trunk)
2008-07-07
19:52
Make check-in (5356) compatible with builds that do not enable memory management. Remove unnecessary code from main.c. Add out-of-memory tests for sqlite3_complete16(). (CVS 5357) (check-in: 28f8b6bfcc user: drh tags: trunk)
18:42
Fix an error introduced by (5346). The list could become corrupted when the database was truncated. (CVS 5356) (check-in: fbd320ed27 user: danielk1977 tags: trunk)
17:55
Fix a problem in shared_err.test preventing it from running properly and add a test to corrupt2.test to cover another corruption detection case. (CVS 5355) (check-in: 2dcd5287a0 user: danielk1977 tags: trunk)
17:53
When sqlite3_create_collation is called with an invalid encoding, return SQLITE_MISUSE. (CVS 5354) (check-in: eae4105d8a user: drh tags: trunk)
17:13
Fix an error checked in as part of (5350). (CVS 5353) (check-in: acfb2b41ae user: danielk1977 tags: trunk)
17:04
Another test case to test a specific kind of database corruption. (CVS 5352) (check-in: 38e04d6763 user: danielk1977 tags: trunk)
15:39
Add a test case to test corruption discovered as part of the ptrmapPut() routine. (CVS 5351) (check-in: cbb9536fc4 user: danielk1977 tags: trunk)
14:56
Test a couple of specific malloc() failures that were not tested before. (CVS 5350) (check-in: b96bcaa197 user: danielk1977 tags: trunk)
14:50
Additional test cases added on the sqlite3_create_function() interface. (CVS 5349) (check-in: 4e941f3d43 user: drh tags: trunk)
13:31
Add the vfs_unregister_all and vfs_reregister_all test commands. Use them to test the sqlite3_sleep() interface when no VFSes are registered. (CVS 5348) (check-in: 024d439299 user: drh tags: trunk)
12:44
Fix a comment in alter.c. No changes to code. (CVS 5347) (check-in: 3e558acd5e user: drh tags: trunk)
11:18
Make the Pager.pAll linked-list doubly linked when ENABLE_MEMORY_MANAGEMENT is defined. This is used to speed up sqlite3_release_memory(). (CVS 5346) (check-in: 71d699de36 user: danielk1977 tags: trunk)
2008-07-06
00:21
Fail to build if the -ffast-math option is specified in GCC. Ticket #3202. (CVS 5345) (check-in: aa5be9ee93 user: drh tags: trunk)
2008-07-04
17:52
Fix a bug in btree.c that caused it to report a database as being corrupt if it used one of the last 6 slots in a freelist trunk page. Continue to never use those last 6 slots so that databases from newer versions are still readable with older versions. (CVS 5344) (check-in: b8ff6b0a3d user: drh tags: trunk)
10:56
Fix for explicitly inserting a NULL value into the rowid column of a virtual table. (CVS 5343) (check-in: a7f3b43166 user: danielk1977 tags: trunk)
09:41
Remove redundant code from sqlite3GetTempReg(). (CVS 5342) (check-in: 212d05d38c user: danielk1977 tags: trunk)
09:15
Remove references to temporary registers from the compiler column-cache when such registers are released. Fix for #3201. (CVS 5341) (check-in: f099d6773a user: danielk1977 tags: trunk)
2008-07-03
19:53
fts3 functions for testing scripts. These are a first step towards being able to write test script which verify that fts3 is internally building indices in the expected way. Both new functions are only defined if fts3.c is compiled with SQLITE_TEST defined, as when building testfixture. These functions are not intended to be part of the exposed fts3 API.

dump_terms() generates a TEXT result of all the terms in the index (or a specified segment), sorted and joined with spaces.

dump_doclist() generates a TEXT representation of the doclist associated with a given term in the index (or a specified segment). (CVS 5340) (check-in: a48e3d95f7 user: shess tags: trunk)

2008-07-02
16:10
Fix a memory leak that can occur following a malloc failure. (CVS 5339) (check-in: cec4eba1a1 user: danielk1977 tags: trunk)
13:13
Call the authorizer callback the same number of times whether or not the query flattening occurs. (CVS 5338) (check-in: 8b88b64bb3 user: danielk1977 tags: trunk)
2008-07-01
18:26
Fix errors in in.test. Also add a few tests to selectB.test. (CVS 5337) (check-in: 8f9d1abb31 user: danielk1977 tags: trunk)
17:39
Fix another memory leak related to UNION ALL and sub-selects. (CVS 5336) (check-in: 56109b9a1f user: danielk1977 tags: trunk)
17:13
In lemon: coalesce identical destructors. (CVS 5335) (check-in: 3447086cd3 user: drh tags: trunk)
16:34
In Lemon, if a non-terminal has the same type as a terminal, then reuse the terminal type in the YYMINORTYPE union for the non-terminal. This gives better table compression. (CVS 5334) (check-in: 5c9cc22cd8 user: drh tags: trunk)
16:05
Fix a memory leak to do with the recent UNION ALL sub-select optimization. (CVS 5333) (check-in: 6ee71f4ddb user: danielk1977 tags: trunk)
14:39
Fix a problem with LIMIT and OFFSET clauses on the parent query when optimizing a UNION ALL sub-select. (CVS 5332) (check-in: a79786a961 user: danielk1977 tags: trunk)
14:09
Optimize sub-selects and views that use UNION ALL. This optimization isn't very well tested yet. (CVS 5331) (check-in: 3ef468e704 user: danielk1977 tags: trunk)
2008-06-30
18:12
Call the query flattener while processing the parent query. Previously, it was called while processing the sub-queries. (CVS 5330) (check-in: 6fcb3bffe2 user: danielk1977 tags: trunk)
15:09
Changes to loadext.test so that it works on osx as well as linux. (CVS 5329) (check-in: 189cd85413 user: danielk1977 tags: trunk)
10:16
Fix a malloc() failure related problem in os_unix.c. (CVS 5328) (check-in: ba8819a6f3 user: danielk1977 tags: trunk)
07:53
Add a couple of tests to see if the new compound select optimizations work when the compound select is hidden inside a view. (CVS 5327) (check-in: 1a711249c2 user: danielk1977 tags: trunk)
2008-06-28
15:33
Remove an assert() that was failing if there were any open incremental blob handles when a statement transaction was rolled back. (CVS 5326) (check-in: f66491ab2b user: danielk1977 tags: trunk)
11:29
Added reminder message to terminate SQL statements with a semicolon on shell startup. This closes #3099. (CVS 5325) (check-in: 0ab0b030de user: mihailim tags: trunk)
11:23
Rearrange some ENABLE_LOCKING_STYLE related code in os_unix.c. (CVS 5324) (check-in: f70d552bcd user: danielk1977 tags: trunk)
2008-06-27
18:59
Changed copy-paste error in comment. Fixes #3193. (CVS 5323) (check-in: 00eee53e86 user: mihailim tags: trunk)
14:51
Documentation tweaks. (CVS 5322) (check-in: fcbd39344c user: drh tags: trunk)
14:05
Fix mem3.c (broken by (5320)). (CVS 5321) (check-in: fef90a21ae user: danielk1977 tags: trunk)
13:27
Change mem5.c so that the minimum allocation size is runtime configurable. (CVS 5320) (check-in: 4f95f4cdf7 user: danielk1977 tags: trunk)
00:52
Remove unused variable. Fix a compiler warning. (CVS 5319) (check-in: 0b01ec5cf7 user: drh tags: trunk)
00:47
Tweaks to the IN expression code generator. Fix an an unrelated bug in the compound SELECT code generator. (CVS 5318) (check-in: a400578269 user: drh tags: trunk)
2008-06-26
21:45
Fix a bug introduced by check-in (5316). Add some VDBE comments to the IN expression code generator. (CVS 5317) (check-in: 1043a605e2 user: drh tags: trunk)
20:06
Avoid generating unnecessary SCopy instructions with the RHS of an IN operator is a list of values. (CVS 5316) (check-in: ec80474b1c user: drh tags: trunk)
18:16
Documentation updates in sqlite.h.in. No changes to code. (CVS 5315) (check-in: 168fd6f83e user: drh tags: trunk)
18:04
Fix handling of "x IN (...)" and "x NOT IN (...)" expressions when the set contains an SQL NULL value. (CVS 5314) (check-in: d45a97be71 user: danielk1977 tags: trunk)
15:04
Document the rules for when an sqlite3_blob object expires. (CVS 5313) (check-in: e1de2287fd user: drh tags: trunk)
10:54
Change the TEMP_STORE preprocessor symbol to SQLITE_TEMP_STORE. (CVS 5312) (check-in: 1e3b830802 user: danielk1977 tags: trunk)
10:41
Change the OS_XXX pre-processor symbols to SQLITE_OS_XXX. Symbols "OS_UNIX", "OS_WIN", "OS_WINCE", "OS_OS2" and "OS_OTHER" are now "SQLITE_OS_UNIX", "SQLITE_OS_WIN", "SQLITE_OS_WINCE", "SQLITE_OS_OS2" and "SQLITE_OS_OTHER", respectively. (CVS 5311) (check-in: cdd4cf4ce2 user: danielk1977 tags: trunk)
08:29
Fix a race condition in sqlite3_initialize(). (CVS 5310) (check-in: 70b2ed2afc user: danielk1977 tags: trunk)
02:53
Documentation updates. No changes to code. (CVS 5309) (check-in: cdc4e75a9f user: drh tags: trunk)
2008-06-25
17:54
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) (check-in: 8c65146ea0 user: danielk1977 tags: trunk)
17:19
Remove internal function sqlite3OsDefaultVfs(). The built-in VFS layers now register their VFS implementations by calling sqlite3_vfs_register() from within sqlite3_os_init(). (CVS 5307) (check-in: 8fa33b79d7 user: danielk1977 tags: trunk)
14:57
Have mem3.c and mem5.c grab a mutex when required. Include them both in the amalgamation again. (CVS 5306) (check-in: 9e3c95ff40 user: danielk1977 tags: trunk)
14:31
Test enhancements, especially to the new compound-SELECT merge logic. (CVS 5305) (check-in: edf7f51836 user: drh tags: trunk)
14:26
Fix the allocator in mem5.c so that it can be enabled at run time using the sqlite3_config() function. (CVS 5304) (check-in: 30ff6bb0b2 user: danielk1977 tags: trunk)
10:34
Fix up some details to do with the mem3.c (memsys3) allocator. If the library is compiled with SQLITE_ENABLE_MEMSYS3, the memsys3 allocator can be selected at runtime. (CVS 5303) (check-in: 9c6c8e01b3 user: danielk1977 tags: trunk)
08:02
Fixed typo to close #1731. (CVS 5302) (check-in: 9902be8d66 user: mihailim tags: trunk)
02:47
If a unique index covers any prefix of the ORDER BY clause then let it satisfy the ORDER BY clause. (CVS 5301) (check-in: e53403b6d7 user: drh tags: trunk)
02:22
Add new test script for compound select statements. (CVS 5300) (check-in: a193b1612e user: drh tags: trunk)
00:12
The compound-select merge optimization passes quick.test with no errors. (CVS 5299) (check-in: 8bbfa97837 user: drh tags: trunk)
2008-06-24
22:50
OS/2 fixes for pre-C99 compilers and a return code correction in os2Access(). (CVS 5298) (check-in: 3241a3bdd0 user: pweilbacher tags: trunk)
19:02
Modify the memory allocation system in mem3.c so to fit in with the new sqlite3_mem_methods scheme. At this point it only "mostly" works. (CVS 5297) (check-in: 3febef548f user: danielk1977 tags: trunk)
15:39
Add a few extra tests to select9.test. (CVS 5296) (check-in: 37b084fd7d user: danielk1977 tags: trunk)
12:46
Fix a problem in sqlite3ExprIsInteger() causing failures on select1-4.9.2. Other bug fixes in compound-merge. The compound-merge is still disabled in this check-in using "#if 0" due to additional bugs. (CVS 5295) (check-in: 95037e6dbf user: drh tags: trunk)
12:28
Remove a surplus "breakpoint" from select4.test. (CVS 5294) (check-in: 3117238ce9 user: drh tags: trunk)
11:21
Add start of new test file "select9.test". To test LIMIT, OFFSET and ORDER BY on compound SELECT statements. (CVS 5293) (check-in: 3a13e943d8 user: danielk1977 tags: trunk)
09:52
Fix a typo in the documentation for the sqlite3_bind_XXX() APIs. (CVS 5292) (check-in: 839457f128 user: danielk1977 tags: trunk)
00:32
The compound-select merge optimization is mostly working with this check-in. But there are still a few problems and so the optimization is disabled by and "#if 0". This check-in is to synchronize with the other changes happening in parallel. (CVS 5291) (check-in: e2ba324cbc user: drh tags: trunk)
2008-06-23
22:13
Update OS/2 mutex implementation: make methods static and don't use them by the old names any more. Held/Notheld should be debug only. (CVS 5290) (check-in: d92418ca50 user: pweilbacher tags: trunk)
21:26
Reverted previous checkin (on second thought, changing case could break badly written homegrown parsers such as sometimes encountered in embedded firmware.) (CVS 5289) (check-in: bf2e283d6f user: mihailim tags: trunk)
21:18
Changed HTML mode output to use lowercase tags making good on the XHTML output promise (the DTDs indeed mandate lowercase) and closing #450. (CVS 5288) (check-in: e07ed82caf user: mihailim tags: trunk)
20:55
Added ldconfig invocations for postinstall and postuninstall. Updated package URL and description to match the current website. (CVS 5287) (check-in: 66529ae3a2 user: mihailim tags: trunk)
18:49
Fix a bug in handling queries on the sqlite_master table with an empty (0 bytes in size) database file. (CVS 5286) (check-in: f8238770bf user: danielk1977 tags: trunk)
17:56
Additional tests added to capi3.test. (CVS 5285) (check-in: 1fdab2c65b user: drh tags: trunk)
17:44
Fix a failure to report a failed malloc() within sqlite3_create_module(). (CVS 5284) (check-in: 3ca7dab88e user: danielk1977 tags: trunk)
16:53
Fix a bug causing the pager-cache size to be reset to its default value whenever the database schema was reloaded. (CVS 5283) (check-in: 6dbe67da5c user: danielk1977 tags: trunk)
15:55
Run (a subset of) the rtree tests from quick.test. (CVS 5282) (check-in: e872c78c72 user: danielk1977 tags: trunk)
15:10
Handle a real system malloc() failure in mem1.c. (CVS 5281) (check-in: 006fd69bf5 user: danielk1977 tags: trunk)
14:40
Remove a non-ansi construct from mem1.c - an assert() statement before the variable declarations in a function. (CVS 5280) (check-in: 1de98da6b4 user: danielk1977 tags: trunk)
14:15
Avoid passing "void(*)(void)" as an argument to va_arg(). Codewarrior doesn't like it. (CVS 5279) (check-in: edae76d6ff user: danielk1977 tags: trunk)
14:03
Fix some codewarrior compilation problems. (CVS 5278) (check-in: e6ea8f87c1 user: danielk1977 tags: trunk)
13:57
Fix a compilation problem with SQLITE_OMIT_VIRTUAL_TABLE is defined. (CVS 5277) (check-in: 0421c09967 user: danielk1977 tags: trunk)
11:23
Fixed wrong type in sqlite3_create_collation16 declaration and definition (UTF-16 string had been passed as const char* instead of const void*) (CVS 5276) (check-in: 4215e3e5ae user: mihailim tags: trunk)
11:11
Correct comments above sqlite3_release_memory() and sqlite3_soft_heap_limit(). Ticket #3138. (CVS 5275) (check-in: 3240446853 user: danielk1977 tags: trunk)
09:50
Fix a bug whereby opening a connection to an existing shared-cache caused the cache-size (the value configured by "PRAGMA cache_size") to revert to its default value. (CVS 5274) (check-in: 0492aa8ed3 user: danielk1977 tags: trunk)
2008-06-22
16:35
Removed INVARIANTS sections in the experimental extension loading API that I should not have added in the first place. No changes to code. (CVS 5273) (check-in: e7610890b4 user: mihailim tags: trunk)
12:37
Fix a bug in the KEYINFO handling within select.c. Change the OP_Move opcode to take a count and to move multiple registers. Initial code for the compound-select merge optimization is added but is incomplete and is commented out. (CVS 5272) (check-in: 663a590e30 user: drh tags: trunk)
10:21
Readded erroneously deleted {END} tag and doublechecked {(F,U,X)*}-{END} tag balancing. Minor documentation cleanup. No changes to code. (CVS 5271) (check-in: b55590501b user: mihailim tags: trunk)
09:55
More documentation spellcheck and cleanup. No changes to code. (CVS 5270) (check-in: 3a88e3ded9 user: mihailim tags: trunk)
08:58
More documentation spellcheck and cleanup. No changes to code. (CVS 5269) (check-in: d96b9bcd10 user: mihailim tags: trunk)
2008-06-21
20:11
More documentation spellcheck and cleanup. No changes to code. (CVS 5268) (check-in: 65edead166 user: mihailim tags: trunk)
19:20
Prevent veryquick.test and all.test from running permutations.test directly. (CVS 5267) (check-in: ae9e4c0e4d user: danielk1977 tags: trunk)
19:10
Fix a bug in permutations.test causing the utf-16 tests to fail. (CVS 5266) (check-in: 710621f373 user: danielk1977 tags: trunk)
18:07
Add test file permutations.test, which runs various other test files with sqlite configured in various ways. This adds a few new tests and replaces test files autovacuum_crash.test, autovacuum_ioerr.test, exclusive3.test, jrnlmode2.test, jrnlmode3.test, jrnlmode4.test, mutex2 and onefile.test. (CVS 5265) (check-in: 0e9df3507b user: danielk1977 tags: trunk)
18:02
More documentation spellcheck and cleanup. No changes to code. (CVS 5264) (check-in: 9ae03f5629 user: mihailim tags: trunk)
16:47
More documentation spellcheck and cleanup. No changes to code. (CVS 5263) (check-in: 3edfc64f27 user: mihailim tags: trunk)
13:35
More documentation spellcheck and cleanup. No changes to code. (CVS 5262) (check-in: 47b7b05e55 user: mihailim tags: trunk)
12:15
Remove mutex2.test. It will be replaced later today by permutations.test. (CVS 5261) (check-in: 98a6a0a30f user: danielk1977 tags: trunk)
11:20
More documentation spellcheck and cleanup. No changes to code. (CVS 5260) (check-in: 8c457fb08b user: mihailim tags: trunk)
08:12
Fix a problem in the test suite that could cause a crash if using a pre-allocated block of memory for pages (the problem was that sqlite3_shutdown() was being called while there were still open database connections). (CVS 5259) (check-in: 3d413e9b46 user: danielk1977 tags: trunk)
06:16
Documentation spellcheck and cleanup. No changes to code. (CVS 5258) (check-in: 2904d26ba4 user: mihailim tags: trunk)
2008-06-20
18:13
Add new Compare and Jump codes to the virtual machine. Use them in the implementation of aggregate queries. (CVS 5257) (check-in: 083113652f user: drh tags: trunk)
17:51
Add a test to check that opening a second connection to a shared cache does not reset the cache size to its default value. (CVS 5256) (check-in: 3546e245aa user: danielk1977 tags: trunk)
15:24
Change the SRT_Subroutine mode into SRT_Coroutine. Use co-routines in the INSERT processing logic. (CVS 5255) (check-in: 6b9d92fc3f user: drh tags: trunk)
14:59
Add a mode to the sqlite3_test_control() interface to register hooks called at the beginning and end of "benign malloc failure" blocks. This allows malloc() failure testing to be done using public APIs only. (CVS 5254) (check-in: 56c8af1452 user: danielk1977 tags: trunk)
11:05
Move (almost all) malloc failure test logic from fault.c to test_malloc.c. (CVS 5253) (check-in: 4ae21e3419 user: danielk1977 tags: trunk)
00:03
Patch to memsubsys1.test in order to avoid a segfault in tableapi.test. (CVS 5252) (check-in: 62411a6e60 user: drh tags: trunk)
2008-06-19
18:39
Unset global TCL variables in the func.test script prior to use to avoid conflicts from other scripts. (CVS 5251) (check-in: 9b04e10f6c user: drh tags: trunk)
18:17
Move the malloc() failure simulation out of malloc.c and into a separate sqlite3_mem_methods interface. Still some related changes to come. (CVS 5250) (check-in: d22cd2a59f user: danielk1977 tags: trunk)
17:54
Documentation and test-script updates. (CVS 5249) (check-in: 68d4f79541 user: drh tags: trunk)
16:07
Fix some minor compile problems. (CVS 5248) (check-in: 7d38da3eea user: drh tags: trunk)
15:44
Additional test cases for loadable extensions. (CVS 5247) (check-in: 9d73a68c30 user: drh tags: trunk)
15:06
Add recent API additions to the loadable extension interface. (CVS 5246) (check-in: 12ba27d94e user: drh tags: trunk)
13:20
Check in the missing status.c source file. (CVS 5245) (check-in: 298113d4a7 user: drh tags: trunk)
08:51
Shuffle some of the mutex related documentation in sqlite.h.in to match the new sqlite3_mutex_methods based API. (CVS 5244) (check-in: 9cd7f8669a user: danielk1977 tags: trunk)
02:52
Add the sqlite3_next_stmt() interface, including test cases. (CVS 5243) (check-in: 565a530896 user: drh tags: trunk)
01:50
Fix a bug in the noop-mutex implementation. (CVS 5242) (check-in: eec9a54dc3 user: drh tags: trunk)
01:03
Bug fixes: Plug a memory leak introduced by the previous check-in. Get the amalgamation to the point where it will compile. (CVS 5241) (check-in: 005f8eaef5 user: drh tags: trunk)
00:16
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) (check-in: cb1f11cd97 user: drh tags: trunk)
2008-06-18
21:08
fix OS/2 files to compile again (looking at Windows equivalents for guidance) (CVS 5239) (check-in: 8b14a220f2 user: pweilbacher tags: trunk)
18:57
Remove public APIs sqlite3_mutex_init() and sqlite3_mutex_end(). This commit only changes the code, documentation is not updated yet. (CVS 5238) (check-in: 42a2a8f493 user: danielk1977 tags: trunk)
18:12
Added support for scratch-memory lookaside allocations. Largely untested. Added calls to sqlite3_initialize() within malloc APIs. (CVS 5237) (check-in: 383a78601c user: drh tags: trunk)
18:08
Add a call to sqlite3_initialize() to sqlite3_mutex_alloc() (CVS 5236) (check-in: 8b23b71944 user: danielk1977 tags: trunk)
17:59
Fix a test case in mutex1.test that was failing when sqlite was compiled with SQLITE_THREADSAFE=0. (CVS 5235) (check-in: d1a87c3bcc user: danielk1977 tags: trunk)
17:09
Implement the 'CONFIG_SINGLETHREAD' and 'CONFIG_MULTITHREAD' configuration modes. (CVS 5234) (check-in: 5059644c4b user: danielk1977 tags: trunk)
15:34
Make sure aggregate functions can take any number of arguments up to the limit imposed by SQLITE_LIMIT_FUNCTION_ARGS. Ticket #3179. Modify the group_concat() function to take an unlimited number of arguments in order to facilitate testing this behavior. (CVS 5233) (check-in: 70c6739f4e user: drh tags: trunk)
13:47
Add documentation on the sqlite3_mutex_methods object. (CVS 5232) (check-in: c3c7bfc9db user: drh tags: trunk)
13:27
Added new configuration options to query the low-level malloc interface and to provide memory buffers for scratch, page-cache, and heap memory allocators. (CVS 5231) (check-in: e36201a352 user: drh tags: trunk)
09:45
Add some test infrastructure and cases for the new mutex api. (CVS 5230) (check-in: 262baee995 user: danielk1977 tags: trunk)
02:01
Remove mem3.c and mem5.c from the amalgamation for the time being, since they do not currently work. We will add them back later once they are fixed. (CVS 5229) (check-in: 39b4e1ff4e user: drh tags: trunk)
2008-06-17
18:57
Add the SQLITE_CONFIG_MUTEX symbol for use with sqlite3_config(). (CVS 5228) (check-in: af1835bb5f user: danielk1977 tags: trunk)
17:21
Change the mutex interface to be pluggable. This is an incremental checkin, there are still changes to come. (CVS 5227) (check-in: 597283637b user: danielk1977 tags: trunk)
15:12
Add internal interfaces: PageMalloc/PageFree and ScratchMalloc/ScratchFree. (CVS 5226) (check-in: 3e797d0ffe user: drh tags: trunk)
01:03
Do not allow a VACUUM to try to change the page_size on an encrypted database. (CVS 5225) (check-in: d49e502001 user: drh tags: trunk)
2008-06-16
20:51
Clean up obfuscated code in sqlite3_table_column_meta_data(). Be sure to invoke sqlite3_initialize() within sqlite3_mprintf(). (CVS 5224) (check-in: bb4edb5396 user: drh tags: trunk)
14:36
Fix a recently introduced resource leak in test file incrblob2.test (forgot to close a blob handle). (CVS 5223) (check-in: 88e1c6092e user: danielk1977 tags: trunk)
14:19
Fix a problem with the incremental blob API. sqlite3_blob_open() was always reading the data for the leftmost column of the row that the opened blob was stored in. If this column happened to contain a (the) large blob, sqlite would make a large memory allocation to read the data into. Which defeats the purpose of using incremental blobs. (CVS 5222) (check-in: 1b9478da2f user: danielk1977 tags: trunk)
06:31
Add a test to verify that IN(...) WHERE clause terms are not handled by virtual table implemetations. (CVS 5221) (check-in: 85483c8fb3 user: danielk1977 tags: trunk)
2008-06-15
02:51
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) (check-in: 65fe7b62cf user: drh tags: trunk)
2008-06-14
16:56
Continuing progress on the new memory allocation subsystem. Added the sqlite3_mem_methods structure for defining new memory allocators at run-time. (CVS 5219) (check-in: f00305f4cd user: drh tags: trunk)
2008-06-13
18:24
Progress toward implementation of sqlite3_config() and a rework of the mutex and memory allocation subsystems. This is an incremental check-in. (CVS 5218) (check-in: a03c5af115 user: drh tags: trunk)
2008-06-12
18:17
Enhance zeroblob tests to use the sqlite3_memory_highwater in order to double-check that no large allocations are occurring. (CVS 5217) (check-in: e93079be83 user: drh tags: trunk)
18:05
Fix a typo in the date/time function tests. Add additional cases to the zeroblob tests to make sure sqlite3_bind_zeroblob() does not use excess memory. (CVS 5216) (check-in: c1006fb1c8 user: drh tags: trunk)
16:35
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) (check-in: ed35f8a983 user: drh tags: trunk)
14:42
Add another test to incrblob2.test. This test failed to reveal any new bugs. (CVS 5214) (check-in: 20d8ea45af user: danielk1977 tags: trunk)
13:50
Avoid unnecessary float->text->float conversions in date/time processing. This change necessary to reproduce the problem reported by BareFoot. (CVS 5213) (check-in: 6ec4d7653b user: drh tags: trunk)
12:51
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) (check-in: 12f3ba11e7 user: drh tags: trunk)
12:40
Remove obsolete code from the test_osinst.c module. (CVS 5211) (check-in: 699cec66cd user: drh tags: trunk)
12:38
Copy the latest VFS changes into the OS/2 implementation. This is a blind edit - I have no way to compile or test OS/2. (CVS 5210) (check-in: b60508ccbc user: drh tags: trunk)
05:16
Added additional testcases for julianday calculations with midnight boundary for UTC time. (CVS 5209) (check-in: edd2cb00ae user: shane tags: trunk)
02:24
Added x86_64 version of hwtime function. Ticket #3156. (CVS 5208) (check-in: 0729f5c3d0 user: shane tags: trunk)
02:16
Removed all C++ style comments. Ticket #3172. (CVS 5207) (check-in: 59f72425eb user: shane tags: trunk)
00:07
Additional refinements to the new sqlite3_initialize() interface design. (CVS 5206) (check-in: 14a9b9453b user: drh tags: trunk)
2008-06-11
18:56
Adjust the error-message text in corrupt7.test. (CVS 5205) (check-in: 4a77ff5b58 user: drh tags: trunk)
18:27
Fix an error in the previous commit found by corrupt7.test. (CVS 5204) (check-in: afcfba0a8a user: danielk1977 tags: trunk)
18:15
Check that the offsets in the cell-offset array of a b-tree page are within range in sqlite3BtreeInit(). (CVS 5203) (check-in: 82f27e28ee user: danielk1977 tags: trunk)
18:01
Add a test case for the database corruption in the form of cell offsets out of range in an otherwise valid btree page. (CVS 5202) (check-in: c569a6cf66 user: drh tags: trunk)
11:00
Update utility program speedtest8inst1.c. (CVS 5201) (check-in: 98bdc7b44d user: danielk1977 tags: trunk)
2008-06-10
17:41
A completely new design for the sqlite3_initialize() and sqlite3_shutdown() interfaces. (CVS 5200) (check-in: 7dfcd73dc8 user: drh tags: trunk)
17:30
Invalidate sqlite3_blob* handles whenever an SQL statement is used to delete or modify the rows containing the open blob. Previously, modifying the table containing the open blob in any way invalidated the handle. This was too restrictive. (CVS 5199) (check-in: e339c91f87 user: danielk1977 tags: trunk)
2008-06-09
21:57
Initial attempt at defining the sqlite3_initialize() and sqlite3_shutdown() interfaces. (CVS 5198) (check-in: 220bfd1f5c user: drh tags: trunk)
19:27
Moved declaration of int nPage; to top of block to silence picky compilers (MSVC). (CVS 5197) (check-in: 120bffff74 user: shane tags: trunk)
15:51
Add test file incrblob2.test to test opening two blob handles on a single database blob. (CVS 5196) (check-in: c1d877feb5 user: danielk1977 tags: trunk)
2008-06-07
08:58
Change the signature of sqlite3PagerPagecount() so that it can return an error code. (CVS 5195) (check-in: e9f01c0186 user: danielk1977 tags: trunk)
05:19
Do not call xSync() from zeroJournalHdr() if the Pager.noSync flag is set (i.e. for temp files). (CVS 5194) (check-in: 9f5cbe2922 user: danielk1977 tags: trunk)
2008-06-06
16:14
Avoid attempting to delete the journal file of a temporary pager when closing the pager. It will be deleted automatically by the OS layer. (CVS 5193) (check-in: de8b87d65a user: danielk1977 tags: trunk)
15:49
Add the xGetLastError() member function to the sqlite3_vfs structure. It is neither called nor implemented at this point. (CVS 5192) (check-in: b8f1da52c3 user: danielk1977 tags: trunk)
15:04
Remove the subroutine return stack from the VDBE. Return addresses for subroutines are now stored in registers. (CVS 5191) (check-in: ef1956eebc user: drh tags: trunk)
11:11
Remove the xGetTempname() method from the vfs structure. Temp files are now opened by passing a NULL pointer as the filename to xOpen(). (CVS 5190) (check-in: 5173b3e816 user: danielk1977 tags: trunk)
2008-06-05
16:47
Reorganize some of the code that detects expression trees with a depth greater than EXPR_MAX_DEPTH so that they are detected earlier. This further reduces the opportunities for stack overflow. (CVS 5189) (check-in: 16d4c53a8e user: danielk1977 tags: trunk)
11:39
Modify the signatures of the sqlite3_vfs.xAccess and sqlite3_vfs.xCheckReservedLock functions. (CVS 5188) (check-in: 4226ac54be user: danielk1977 tags: trunk)
2008-06-04
15:09
Fix another typo in the rtree README file. (CVS 5187) (check-in: 9ab87b7b0d user: drh tags: trunk)
14:20
Fix a bug in the R-Tree documentation. (CVS 5186) (check-in: bb445a4b1f user: drh tags: trunk)
06:45
Add "pragma journal_size_limit", used to limit the space consumed by persistent journal files left in the file-system after a transaction has concluded in exclusive (or journal_mode=persist) mode. (CVS 5185) (check-in: 5c59f469d0 user: danielk1977 tags: trunk)
2008-06-03
07:34
Ensure that vacuum3.test closes all opened database connections. Fix for #3157. (CVS 5184) (check-in: 654e3b3de8 user: danielk1977 tags: trunk)
2008-06-02
13:00
Avoid passing a null pointer to sqlite3SetString in sqlite3RunParser. Fix for #3155. (CVS 5183) (check-in: 03b5e4581a user: danielk1977 tags: trunk)
2008-05-30
15:59
Fix typos in comments in vdbe.c. (CVS 5182) (check-in: 0613569424 user: shane tags: trunk)
15:35
Fix typos in comments in sqlite.h.in. (CVS 5181) (check-in: 47956f8ee9 user: shane tags: trunk)
14:58
Fix typos in comments in where.c. (CVS 5180) (check-in: 7cadb223cb user: drh tags: trunk)
2008-05-29
20:22
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 5179) (check-in: 19f5f571dd user: shane tags: trunk)
20:22
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) (check-in: 9883b406ce user: shane tags: trunk)
05:23
Fix cosmetic issues spotted while working on ticket #3146 (CVS 5177) (check-in: 5f6eab65db user: drh tags: trunk)
03:54
Moved check and define for OS_WINCE from os_win.c to os.h (with the other OS_* defines). This allows OS_WINCE to be available for mutex_w32.c which is included earlier than os_win.c in the almagamation. (CVS 5176) (check-in: ad6a782e7c user: shane tags: trunk)
03:20
When initializing the sqlite_sequence entry for an AUTOINCREMENT table, make sure the value is an reasonable integer even if the initial insert failed. Ticket #3148. (CVS 5175) (check-in: 7e6847852d user: drh tags: trunk)
03:12
Fix an obsolete comment on the OP_Rowid opcode in the VDBE. (CVS 5174) (check-in: 0d55328e68 user: drh tags: trunk)
03:01
Omit declaration for functions that are only used by asserts if asserts aren't being used (NDEBUG). (CVS 5173) (check-in: 5afc445a0e user: shane tags: trunk)
02:57
Unused functions in testfixture.exe with certain defines. (CVS 5172) (check-in: 5e3ff1bb37 user: shane tags: trunk)
02:53
sqlite3OsDl*() APIs can be omitted if SQLITE_OMIT_LOAD_EXTENSION defined. (CVS 5171) (check-in: 7c51a97dc1 user: shane tags: trunk)
2008-05-28
18:01
Use %llx instead of %x for 64 bit values (this only affects a debugging statement). (CVS 5170) (check-in: c81efc97bc user: shane tags: trunk)
17:31
Update makefile.in so that makefiles generated by configure correctly copy in rtree source files to tsrc. (CVS 5169) (check-in: e015fa4458 user: shane tags: trunk)
16:00
Add another test case to vacuum3.test. (CVS 5168) (check-in: d895e85e2f user: danielk1977 tags: trunk)
14:08
Add a test to vacuum3.test to try to trick sqlite into using the wrong database page-size. Turns out there was no problem. (CVS 5167) (check-in: 281589a22f user: danielk1977 tags: trunk)
13:49
Allow the SQLITE_MAX_EXPR_DEPTH compile-time parameter to be set to 0 in order to disable expression depth checking. Ticket #3143. (CVS 5166) (check-in: 5ceef40e39 user: drh tags: trunk)
2008-05-27
20:17
In test3.c, use type 'u32' instead of 'unsigned int' to remove a warning/error from native x86_64 compile. (CVS 5165) (check-in: 02447e4e47 user: shane tags: trunk)
19:49
Updated to use localtime_s() in Windows build environments that support it. Ticket #3126. (CVS 5164) (check-in: 1518827e48 user: shane tags: trunk)
18:11
Explicitly typedef Pgno as 'u32' instead of 'unsigned int' to remove a few warnings/errors from native x86_64 compile. (CVS 5163) (check-in: b5fd8a239d user: shane tags: trunk)
00:06
Fix a bug in rtree that occurs when too many constraints are passed in on a query. (CVS 5162) (check-in: 54b84a3ddb user: drh tags: trunk)
2008-05-26
20:49
Use %w instead of %q when constructing shadow table names for rtree. (CVS 5161) (check-in: 78f4ba974d user: drh tags: trunk)
20:19
Update the amalgamation builder to incorporate the RTREE extension. (CVS 5160) (check-in: aa8eba3360 user: drh tags: trunk)
18:41
Import 'rtree' extension. (CVS 5159) (check-in: b104dcd6ad user: danielk1977 tags: trunk)
18:33
Fix the LIKE query optimizer so that it works with LIKE patterns ending in '@%' on NOCASE columns. Ticket #3139. (CVS 5158) (check-in: 3354874436 user: drh tags: trunk)
2008-05-23
17:21
Fixed various typos, spelling, grammar, and formatting mistakes. Ticket #3124. (CVS 5157) (check-in: 77d5a7aa1c user: shane tags: trunk)
14:49
Add a test case of preparing a statement with an nBytes parameter of 0 and where the previous byte of the string is zero. Ticket #3134. (CVS 5156) (check-in: 846a69acb5 user: drh tags: trunk)
14:32
Do not references zSql(-1) if nBytes==0 in sqlite3_prepare(). Ticket #3134. (CVS 5155) (check-in: 2d2c53e505 user: drh tags: trunk)
2008-05-22
13:56
Ensure that the db.mallocFailed flag is cleared before sqlite3_errmsg16() returns. (CVS 5154) (check-in: 0d47653a3c user: danielk1977 tags: trunk)
2008-05-21
15:38
Add the "volatile" keyword to variables in the Pager structure used for synchronization when memory management is enabled. (CVS 5153) (check-in: 25b9f3b9b2 user: drh tags: trunk)
15:01
Update sqlite3_open*() documentation on shared cache/filename matching relationship. Ticket #3132. (CVS 5152) (check-in: 235e384eca user: shane tags: trunk)
13:44
Fix the VACUUM command so that it does not modify the changes counts reported by sqlite3_changes() or sqlite3_total_changes(). Update documentation on sqlite3_changes() and sqlite3_total_changes() to state that "DELETE FROM table" records a change count of zero. (CVS 5151) (check-in: f5d61d7d98 user: drh tags: trunk)
2008-05-20
19:08
Fix OS/2 compilation for pre-C99 compilers. (CVS 5150) (check-in: de8e67182d user: pweilbacher tags: trunk)
18:43
Corrections to the documented behavior of sqlite3_last_insert_rowid(). (This change is unrelated to the problem reported by Bram de Jong. That comes next.) (CVS 5149) (check-in: 894085a59c user: drh tags: trunk)
15:44
Changes to the error handling policies of sqlite3_exec() to make them more consistent. Changes to the documentation on the error handling polices of sqlite3_exec() so that the documentation and code agree. (CVS 5148) (check-in: a0376c7907 user: drh tags: trunk)
14:01
Added more DST boundary checks for 2006 and 2007. Added check for suspect Windows DST implementations and warning about them. Ticket #2322. (CVS 5147) (check-in: 14226ff0a7 user: shane tags: trunk)
13:17
Updated test case for Windows to get around problems in ticket #3129. (CVS 5146) (check-in: 2faf69ca1d user: shane tags: trunk)
07:05
Do not attempt to write a master journal name to the (non-existent) journal file in "no-journal" mode. Fix for #3127. (CVS 5145) (check-in: ffd4e50ab9 user: danielk1977 tags: trunk)
2008-05-19
23:51
Improvements to API documentation. The sqlite3_exec() function now sets the result returned by sqlite3_errcode() when it receives an SQLITE_ABORT. (CVS 5144) (check-in: f1df19ca17 user: drh tags: trunk)
20:11
SQLite stores native file names and paths for the database file. Under Windows, (file normalize test.db) is expanded using UNIX type path separators which TCL recognizes interchangeably. However, this means that the path reported by sqlite3_shared_cache_report doesn't match which causes the test case to fail. Made minor change to test case to hopefully correct this on all platforms. (CVS 5143) (check-in: 5ef6170139 user: shane tags: trunk)
15:54
Fix sqlite3Atoi64 to return true if handed a number of all zeros. The failure to do this is benign as sqlite3Atoi64() is current used, but that might change in the future so it is good to go ahead and fix the function to return the correct result. (CVS 5142) (check-in: bc90787583 user: drh tags: trunk)
15:53
In the CLI, handle the compilation option -DOS_OS2=0 correctly. (CVS 5141) (check-in: 70793be63c user: drh tags: trunk)
15:37
Added test cases for corrupt 2-10 byte SerialTypeLen values. (CVS 5140) (check-in: 97ed2dd1dc user: shane tags: trunk)
2008-05-16
15:40
Disable the column cache when coding values that will be passed to the xFilter() method of a virtual table, in case the xFilter() implementation modifies the type or encoding of the value. Ticket #3121. (CVS 5139) (check-in: ecbc0d5ded user: danielk1977 tags: trunk)
15:24
Check that the encoding of values passed to sqlite3_bind_value() matches that of the database. (CVS 5138) (check-in: e94a288306 user: danielk1977 tags: trunk)
04:51
Add more version tags to files that lack them. Ticket #3120. (CVS 5137) (check-in: 81a8c70ed7 user: danielk1977 tags: trunk)
2008-05-15
19:43
Add version tag comments to source files that lack them. Tickets #3118 and #3119. (CVS 5136) (check-in: cf1fb2d850 user: drh tags: trunk)
17:48
Add the "page_count" pragma. Returns a single integer - the number of pages in the specified database file. (CVS 5135) (check-in: eb6985e69c user: danielk1977 tags: trunk)
11:08
If a pager is already in the error-state when CommitPhaseOne() is called, exit early. (CVS 5134) (check-in: 443cf1056c user: danielk1977 tags: trunk)
09:07
Fix a test script bug - not all database handles were being closed by ioerr5.test. (CVS 5133) (check-in: 47652e7b16 user: danielk1977 tags: trunk)
08:34
Do not write pages to disk to free memory after an IO error occurs. (CVS 5132) (check-in: 10ea8287d0 user: danielk1977 tags: trunk)
2008-05-14
16:18
Version 3.5.9 (CVS 5131) (check-in: b6129f4cc2 user: drh tags: trunk)
2008-05-13
19:41
On instruction from DRH, only do malloc failure tests for O/S ops on non-Windows systems. Better test fixture code will be introduced in 3.6.0 to add this coverage back in for Windows. (CVS 5130) (check-in: e4aab15004 user: shane tags: trunk)
16:41
Do a slow-path in GetVarint32() for varints that do not fit in 32 bits. This will only happen when trying to interpret a corrupt database file so speed is not critical. (CVS 5129) (check-in: 6a6b943736 user: drh tags: trunk)
13:27
Make the benign-fault setting recursive. Make all malloc failures during a rollback benign since there is nothing we can do about them. (CVS 5128) (check-in: a9d1d93135 user: drh tags: trunk)
00:58
Update the pager so that it does not try to commit a transaction if there have been no changes to the database. (CVS 5127) (check-in: f1ed368923 user: drh tags: trunk)
00:57
Update the autoconf makefile so that it includes -lpthread. (CVS 5126) (check-in: bd654ebdbe user: drh tags: trunk)
2008-05-12
16:56
check that DosWrite() was successful before trying again (CVS 5125) (check-in: 1ef6458bee user: pweilbacher tags: trunk)
16:17
Add "b" to fopen() in the hexio tests so that extra carriage returns are not inserted on win32 and OS/2. Test harness change only - no changes to the core SQLite code. (CVS 5124) (check-in: 68cbc6b45c user: drh tags: trunk)
12:41
Temporarily disable extended IO error code tests. (CVS 5123) (check-in: f204df3c31 user: danielk1977 tags: trunk)
12:39
Fix typo in documentation of sqlite3_step(). Ticket #3110. (CVS 5122) (check-in: 4d397f57c4 user: drh tags: trunk)
10:57
Make test function do_ioerr_test more robust. No code changes. (CVS 5121) (check-in: f532692ec9 user: danielk1977 tags: trunk)
07:42
Modify logging code in test_osinst.c. No changes to production code. (CVS 5120) (check-in: 85c54a16c7 user: danielk1977 tags: trunk)
00:32
Use short timeout for locking operations by default to be more in sync with the other platforms. (CVS 5119) (check-in: d00a015dbc user: pweilbacher tags: trunk)
00:29
Correctly test DosWrite() for failure return code (CVS 5118) (check-in: 3eff0ef2cf user: pweilbacher tags: trunk)
2008-05-11
17:22
Use memcpy() instead of casting to copy the content of a long long int into a double. Ticket #3101. (CVS 5117) (check-in: 88e12caca9 user: drh tags: trunk)
11:07
New test cases to verify that SQLite handles bound NaN, +Inf, and -Inf floating point values correctly. Improvements to the text->real conversion routine so that it generates +Inf and -Inf at appropriate times. Tickets #3101 and #3060. (CVS 5116) (check-in: 3ff2f1cdc9 user: drh tags: trunk)
2008-05-09
19:38
Fix leaked filename in case DosOpen() fails. (CVS 5115) (check-in: ecc6c73906 user: pweilbacher tags: trunk)
18:03
Re-enable tests that were accidentally disabled by (5112). (CVS 5114) (check-in: bf45a3ab7a user: danielk1977 tags: trunk)
18:03
Reformulate the constants for the minimum and maximum 64-bit signed integer to work better with some compilers. Ticket #3105. (CVS 5113) (check-in: 18b1ee10b8 user: drh tags: trunk)
16:57
Fix a problem with recovering from an IO error in exclusive-locking mode. (CVS 5112) (check-in: 7a44fb965b user: danielk1977 tags: trunk)
14:39
Do not clear the error code or error message in sqlite3_clear_bindings(). Ticket #3063. (CVS 5111) (check-in: 069f456010 user: drh tags: trunk)
14:17
Fix the ALTER TABLE RENAME algorithm so that it is not confused by comments in the CREATE TABLE statement. Ticket #3102. (CVS 5110) (check-in: ab18b4e759 user: drh tags: trunk)
13:47
Back out check-in (5108). The original isnan() implementation is preferred. Ticket #3101 and #3060. (CVS 5109) (check-in: 2349ae75df user: drh tags: trunk)
03:07
Change the implementation of sqlite3IsNaN() so that it works even if compiled using -ffinite-math-only. Tickets #3101 and #3060. (CVS 5108) (check-in: 19ee2b3324 user: drh tags: trunk)
2008-05-08
16:51
Fix recently introduced bug in tester.tcl. (CVS 5107) (check-in: 4b573d4e7d user: danielk1977 tags: trunk)
15:58
Add extra instrumentation to test_osinst.c. Also the --binarylog option to the test scripts. (CVS 5106) (check-in: 8a99efc07f user: danielk1977 tags: trunk)
15:18
Use a 6-byte rather than an 8-byte encoding for integers between 17592186044416 and 140737488355327. Ticket #3100. (CVS 5105) (check-in: 0a4d26dede user: drh tags: trunk)
13:54
Increment the version number. (CVS 5104) (check-in: ed06d90d8c user: drh tags: trunk)
01:11
Fix the new ioerr4.test so that it plays well with others. (CVS 5103) (check-in: 75df2d3d50 user: drh tags: trunk)
2008-05-07
19:11
Fix some problems with multi-file transactions in persistent journal mode. (CVS 5102) (check-in: e98a7f87f9 user: danielk1977 tags: trunk)
18:59
Added test cases for corrupt SerialTypeLen header values, and additional check to improve detection of corrupt values. (CVS 5101) (check-in: 530c636061 user: shane tags: trunk)
15:44
Modify the header comment in jrnlmode2.test. No code or test changes. (CVS 5100) (check-in: ed728104c8 user: danielk1977 tags: trunk)
15:42
Change the header comment in jrnlmode4.test. No changes to any code or tests. (CVS 5099) (check-in: 0bf656a401 user: danielk1977 tags: trunk)
14:49
If an error occurs within xAccess(), it should return -1. Remove an assert() that was preventing it from doing so. (CVS 5098) (check-in: 3fbcef46f7 user: danielk1977 tags: trunk)
13:28
Add a new I/O error test: ioerr4. (CVS 5097) (check-in: c3ab1a7e2e user: drh tags: trunk)
12:45
Fix a null-pointer dereference that can occur following a DISKFULL error while running VACUUM. (CVS 5096) (check-in: 438d77a762 user: drh tags: trunk)
12:29
Omit mutex variables in the pager when threadsafe is disabled. (CVS 5095) (check-in: d15d0bbab0 user: drh tags: trunk)
07:13
Fix a problem causing the database to be truncated to the wrong size after an incremental-vacuum is performed on a database in full auto-vacuum mode. (CVS 5094) (check-in: ed98df24a3 user: danielk1977 tags: trunk)
02:42
Only look for config.h if the autoconf-based build is being used, and don't inline it into the amalgamation. (CVS 5093) (check-in: 7df9ef2c82 user: mlcreech tags: trunk)
2008-05-06
22:22
Fix most remaining testsuite failures on OS/2 by switching to exclusive locks that we meant to use from the start. (CVS 5092) (check-in: 5f682c9a68 user: pweilbacher tags: trunk)
22:15
The pathToDel element of the os2File structure should be in the local codepage instead of UTF-8 to make DosForceDelete() work. (CVS 5091) (check-in: 76028b5e5d user: pweilbacher tags: trunk)
21:42
Remove delOnClose flag from os2File structure, use pathToDel==NULL for the same check. (CVS 5090) (check-in: 02e123bb9b user: pweilbacher tags: trunk)
18:13
Fix a bug whereby the database file was not always being extended to its original size when rolling back an incremental-vacuum operation. (CVS 5089) (check-in: 4a1ae9d032 user: danielk1977 tags: trunk)
02:28
Add defines for _FILE_OFFSET_BITS and _LARGE_FILES if needed for large file support. Ticket #3094. (CVS 5088) (check-in: 729e2f06ba user: mlcreech tags: trunk)
2008-05-05
22:52
Add AC_SYS_LARGEFILE to ensure large file support, update autotools-related files. Ticket #3094. (CVS 5087) (check-in: 2b1e455c46 user: mlcreech tags: trunk)
17:14
Fix recently introduced test script error causing a failure in incrblob_err.test. (CVS 5086) (check-in: 5e7c8ebd21 user: danielk1977 tags: trunk)
16:56
Better error messages when trying to open a large file using a version of SQLite that omits large file support. Tickets #3096 and #3094. (CVS 5085) (check-in: bdd89cd231 user: drh tags: trunk)
16:27
Do not segfault in the CLI if sqlite3_open() fails to create a database connection object. Ticket #3096. (CVS 5084) (check-in: 0bec7ebf41 user: drh tags: trunk)
16:23
If an IO error occurs while locking the database and checking the cache validity, unlock the database before returning. Ticket #3030. (CVS 5083) (check-in: 4ad1809192 user: danielk1977 tags: trunk)
15:26
Avoid leaking page references after an IO error is encountered. (CVS 5082) (check-in: 198c395b01 user: danielk1977 tags: trunk)
13:23
Fix a couple of minor problems with transactions in virtual tables. (CVS 5081) (check-in: 2275fc6ee0 user: drh tags: trunk)
12:09
Avoid leaking page references when database corruption is encountered. (CVS 5080) (check-in: 270d47e8d0 user: danielk1977 tags: trunk)
11:33
Fix to test code to build when ENABLE_IOTRACE is not defined. (CVS 5079) (check-in: 8fa2bda4c5 user: danielk1977 tags: trunk)
2008-05-02
14:23
Make sure that when a connection is blocking on a RESERVED lock that it continues after the lock is released. Ticket #3093. (CVS 5078) (check-in: 3dc334aa4a user: drh tags: trunk)
14:08
Add a test case for ticket #3093. (CVS 5077) (check-in: 288a7655c9 user: drh tags: trunk)
02:00
Add another test case to verify that ticket #3092 has been fixed. (CVS 5076) (check-in: 1906d2dadc user: drh tags: trunk)
2008-05-01
18:01
Fix a problem with journal files being created unnecessarily when doing an atomic write in exclusive access locking mode. Fix a test script problem. (CVS 5075) (check-in: 70e708660f user: drh tags: trunk)
17:16
Fix more compiler warnings. (CVS 5074) (check-in: 59568844e7 user: drh tags: trunk)
17:03
Fix harmless compiler warnings. (CVS 5073) (check-in: 227a6f67c2 user: drh tags: trunk)
02:47
Test versions of getVarint functions. The updates essentially utilize loop unrolling and some shifting/anding tricks to minimize the number of logical operations required. (CVS 5072) (check-in: 682dc24dbe user: shane tags: trunk)
2008-04-30
16:38
Add comment to speculate when setting journal_mode=OFF on VACUUM does not help performance. No changes to code. (CVS 5071) (check-in: 9c8b4babb2 user: drh tags: trunk)
15:55
Improved option handling in speedtest8.c. Added -quiet and -priority options. Added reporting of total user and system time. (CVS 5070) (check-in: aa59974ec1 user: shane tags: trunk)
08:56
Fix test for buffer overrun in unixGettempname(). Fix for #3091. (CVS 5069) (check-in: fc0ca647bd user: danielk1977 tags: trunk)
2008-04-29
15:38
Zero the per-pager temporary space allocation to avoid warnings from valgrind. (CVS 5068) (check-in: f854ae576e user: drh tags: trunk)
15:22
Fix a potential buffer overrun in sqlite3_mprintf() when a non-terminated string is passed to a "%s" format with a precision specifying the number of bytes to copy. (CVS 5067) (check-in: 1f5b18419b user: drh tags: trunk)
00:15
Always convert IEEE NaN into NULL. Ticket #3060. Add test cases to verify that this is happening. (CVS 5066) (check-in: 9b07e59e51 user: drh tags: trunk)
2008-04-28
20:35
Allow SQLITE_MAX_COLUMN to be set to zero at compile-time in order to disable the checks. Also SQLITE_MAX_EXPR_DEPTH. Ticket #3069. (CVS 5065) (check-in: e6f71abb22 user: drh tags: trunk)
20:27
Add test cases to verify that multiple virtual tables can be updated within a trigger and that xSync, xCommit, and xRollback are never called except following xBegin or xCreate. Ticket #3083. (CVS 5064) (check-in: 76175199ac user: drh tags: trunk)
18:46
Make sure that transactions are started on all virtual tables that changes in a single statement, not just the first. Ticket #3083. Need to add test cases. (CVS 5063) (check-in: 133b7ee50e user: drh tags: trunk)
17:41
Modified Varint32 functions to disable code for single-byte handling as it is already handled by their respective macro forms. (CVS 5062) (check-in: be10f5dda6 user: shane tags: trunk)
17:12
Add tests to create and drop a virtual table during a recursive call from an application-defined function. Ticket #3080. (CVS 5061) (check-in: d4d6eff353 user: drh tags: trunk)
16:55
Change the implementation of the NaN recognition to be more cross-platform. Ticket #3089. (CVS 5060) (check-in: 07fd9a8c6c user: drh tags: trunk)
16:19
Fix a shared-cache mode problem triggered when sqlite3_open16() was used to open the second or subsequent connections to a utf-8 database. (CVS 5059) (check-in: 20946bf6dd user: danielk1977 tags: trunk)
15:23
Work around a NaN bug in some versions of Tcl. (CVS 5058) (check-in: 7bf8213ce9 user: drh tags: trunk)
13:02
Changes to test scripts to accommodate different architectures and different versions of Tcl. (CVS 5057) (check-in: 8eb2c07c52 user: drh tags: trunk)
12:54
Restore the #include of stdint.h removed in (5051). (CVS 5056) (check-in: e96e8b9b41 user: drh tags: trunk)
2008-04-27
22:48
Delete requirement F12764 as it has never been implemented and the same effect can be easily achieved by other means. Ticket #3085. (CVS 5055) (check-in: fadeed998e user: drh tags: trunk)
22:29
Fix the documentation to agree with long-standing behavior for the sqlite3_bind_parameter_name() interface on an ?NNN parameter. Ticket #2975. (CVS 5054) (check-in: df9991d5bb user: drh tags: trunk)
22:19
Allow multiple occurrances of %include in lemon input files. Ticket #3001. (CVS 5053) (check-in: f22fa11bde user: drh tags: trunk)
18:45
Fix the lemon parser generator so that it works again with the "error" symbol. Ticket #3079 (CVS 5052) (check-in: 20ed749266 user: drh tags: trunk)
18:40
Remove all references to sqlite3_intptr_t. (CVS 5051) (check-in: 6a94d19747 user: drh tags: trunk)
2008-04-26
13:39
Use "(void)" function arguments in declarations instead of "()". Both are legal but some pedantic compilers complain about the latter. Ticket #3086. (CVS 5050) (check-in: a4149ca317 user: drh tags: trunk)
2008-04-25
12:25
Clarify some comments. No changes to code. (CVS 5049) (check-in: 7f80539225 user: drh tags: trunk)
12:10
Add test cases to prove that ticket #3082 has been fixed. (CVS 5048) (check-in: 776e702410 user: drh tags: trunk)
00:08
Candidate fix for ticket #3082. Test cases needed. (CVS 5047) (check-in: f6313311dd user: drh tags: trunk)
2008-04-24
22:57
Remove two more unused files. (CVS 5046) (check-in: a400faf519 user: drh tags: trunk)
19:15
Consolidated varint macro usage from btreeInt.h, vdbe.c, and vdbeaux.c into sqliteInt.h and made their use consistent. Slight improvements to varint32 macros. (CVS 5045) (check-in: 0d04ccd978 user: shane tags: trunk)
12:38
Fix a problem with the test scripts caused by not cleaning up the global tcl namespace. (CVS 5044) (check-in: 4404923958 user: danielk1977 tags: trunk)
12:37
Fix an assert() failure that can occur if "journal_mode=off" is used in a build with the atomic-write optimization enabled. (CVS 5043) (check-in: 709d17b19d user: danielk1977 tags: trunk)
12:36
Fix a crash that can follow a malloc() failure in malloc7.test. (CVS 5042) (check-in: 85eedad186 user: danielk1977 tags: trunk)
09:49
Ensure that it is not possible to open either virtual table or view columns using the blob API. Ticket #3078. (CVS 5041) (check-in: 6039328fe0 user: danielk1977 tags: trunk)
08:56
Minor change to comment on sqlite3_blob_read(). No code changes. Ticket #3072. (CVS 5040) (check-in: adb4bc5a7d user: danielk1977 tags: trunk)
08:36
Remove redundant assert() statement from vdbeaux.c. Ticket #3065. (CVS 5039) (check-in: 3cba116607 user: danielk1977 tags: trunk)
08:31
Add version comment to vdbeaux.c. No code changes. Ticket #3066. (CVS 5038) (check-in: d667add44b user: danielk1977 tags: trunk)
2008-04-23
23:03
We should better not pass open file handles to child processes, so add respective flag for DosOpen(). (CVS 5037) (check-in: 1518e8542c user: pweilbacher tags: trunk)
2008-04-22
17:15
Always sync the journal file after zeroing out the header. (CVS 5036) (check-in: 5896ae3d68 user: drh tags: trunk)
14:31
Avoid non-contiguous writes when creating a journal header. (CVS 5035) (check-in: dfacddbb50 user: danielk1977 tags: trunk)
2008-04-19
20:53
Add some tests for journal_mode=off. Need to come up with a way of handling rollback attempts when there is no journal. (CVS 5034) (check-in: e29b870ed0 user: drh tags: trunk)
20:34
Continuing work on journal_mode. Journal_mode=persist now appears to be working, though additional testing would be welcomed. (CVS 5033) (check-in: 277e4099ce user: drh tags: trunk)
14:40
Comment and variable-name cleanup in where.c. Add testcase() macros to insure adequate test coverage of table-driven logic. (CVS 5032) (check-in: adcef73b39 user: drh tags: trunk)
14:06
Fix a typo in the documentation on sqlite3_open_v2(). (CVS 5031) (check-in: f7b62daa9f user: drh tags: trunk)
2008-04-18
11:31
Remove unused code from OP_IdxLt and OP_IdxGE. (CVS 5030) (check-in: df02175ec0 user: danielk1977 tags: trunk)
10:25
Combine cases 3 and 4 in where.c, since case 4 is now a special case of case 3. (CVS 5029) (check-in: 9a97681924 user: danielk1977 tags: trunk)
09:01
Allow OP_MoveGt and similar to use an array of registers instead of a serialized record. Modify one type of index range scan to use this. (CVS 5028) (check-in: c448f15aa5 user: danielk1977 tags: trunk)
2008-04-17
20:59
Continuing progress on the journal_mode pragma. It still does not work. (CVS 5027) (check-in: 4a72a7bb9c user: drh tags: trunk)
19:14
Additional work on ticket #3015. The previous fix (check-in (4919)) did not appear to work in all cases and it disabled indexing in some places where it should not have. New test cases added to help insure that the current fix is better. (CVS 5026) (check-in: 0d2e258e1a user: drh tags: trunk)
17:03
Fix a typo in the documentation for sqlite3_bind_text. Ticket #3056. (CVS 5025) (check-in: 79571e2c74 user: drh tags: trunk)
17:02
Add the journal_mode pragma. This is currently just syntax - it is not operational. (CVS 5024) (check-in: 8eaa0c7102 user: drh tags: trunk)
14:16
In exclusive locking mode, commit by zeroing the first 28 bytes of the journal file, not by truncating the journal. Overwriting is much faster than truncating. (CVS 5023) (check-in: 8efb7f4ffb user: drh tags: trunk)
2008-04-16
23:50
Add the -overwrite option to speedtest8.c. (CVS 5022) (check-in: 6765ea52b3 user: drh tags: trunk)
23:39
Clear a global variable in the incrblob.test script. Ticket #3062. (CVS 5021) (check-in: 1c19854ae7 user: drh tags: trunk)
16:11
Fix the bind.test test script so that the tests for zeros embedded in strings work correctly for UTF-16 encoded databases. (CVS 5020) (check-in: 7c094c80b2 user: drh tags: trunk)
15:39
Version 3.5.8 (CVS 5019) (check-in: 6a2e3eb26a user: drh tags: trunk)
12:58
Add tests to verify that strings may use embedded zero characters. Ticket #3056. (CVS 5018) (check-in: bb0f9e92e4 user: drh tags: trunk)
12:57
Add speed-test scripts that also show EXPLAIN output. (CVS 5017) (check-in: d11f5dafda user: drh tags: trunk)
00:49
Make sure the database connection mutex is held before calling sqlite3SafetyOn() or sqlite3SafetyOff(). Ticket #3059. (CVS 5016) (check-in: d35dea059e user: drh tags: trunk)
00:28
Back out the zero-terminator optimization introduced in check-in (4915). Ticket #3056. (CVS 5015) (check-in: cce8deae2d user: drh tags: trunk)
2008-04-15
18:50
Support UTF-8 filenames on OS/2 by converting them to and from the local codepage. Ticket 3052. (CVS 5014) (check-in: cafa8ac268 user: pweilbacher tags: trunk)
14:37
Increment the version number. (CVS 5013) (check-in: a12fa0252c user: drh tags: trunk)
14:36
Do not attempt to omit unused columns of a view in an instead-of trigger since sometimes those columns can be used in ways that we do not expect. Ticket #3055. (CVS 5012) (check-in: f5fc42e96d user: drh tags: trunk)
12:14
Fix a code generator bug caused by the new CSE optimization. Add test cases to prevent a recurrence. (CVS 5011) (check-in: d04246a463 user: drh tags: trunk)
04:02
Fix a bug in the RTRIM collating sequence discovered while working on condition/decision branch coverage. Increase test coverage of the date/time functions. (CVS 5010) (check-in: c5435f71ef user: drh tags: trunk)
02:36
Add out-of-range tests on the first parameter to sqlite3_limit(). Add the ability to record tests that have been skipped due to configuration limitations. (CVS 5009) (check-in: b7ffc6f0f3 user: drh tags: trunk)
00:02
Add a test case to cover the bug fixed in check-in (5007). (CVS 5008) (check-in: 1863e87c40 user: drh tags: trunk)
2008-04-14
23:13
Do not attempt to write to temporary database files that have never been opened. (CVS 5007) (check-in: 7bb9a4165a user: drh tags: trunk)
22:57
Fix #3053: bashism (CVS 5006) (check-in: 7217cecee7 user: mlcreech tags: trunk)
17:42
Fix alignment issue in instrumentation code. (CVS 5005) (check-in: c9e0d625bc user: danielk1977 tags: trunk)
16:37
Do not set the pager to persistent error state if a call to OsAccess() fails. (CVS 5004) (check-in: aa16eb5729 user: danielk1977 tags: trunk)
15:27
Make sure the page size in crash6.test does not exceed the maximum configured page size. (CVS 5003) (check-in: 36b6610b25 user: drh tags: trunk)
15:15
Free Mem.z buffers when a vdbe statement is reset. (CVS 5002) (check-in: 0bedbe092a user: danielk1977 tags: trunk)
14:34
Cleanup some #ifdefs to make their meaning clearly. No logical changes. (CVS 5001) (check-in: b8bc5f3a83 user: drh tags: trunk)
13:42
Disable auto_vacuum during the vacuum3 test. (CVS 5000) (check-in: e2e1ca818c user: drh tags: trunk)
01:00
Get the SQLITE_SECURE_DELETE compile-time option working again. Ticket #3050. (CVS 4999) (check-in: 40ba51fd4c user: drh tags: trunk)
2008-04-13
23:13
Fix build errors in test_osinst (CVS 4998) (check-in: f047399799 user: mlcreech tags: trunk)
2008-04-12
16:03
Modify speedtest8.c so that it can use the logging from test_osinst.c when HAVE_OSINST is defined. (CVS 4997) (check-in: 7622d74ad6 user: danielk1977 tags: trunk)
13:06
Remove all instances of sprintf() from the FTS modules. Ticket #3049. (CVS 4996) (check-in: 062bf5d44d user: drh tags: trunk)
11:30
Modify test_osinst.c so that it only uses public interfaces. (CVS 4995) (check-in: 3866a5da2b user: danielk1977 tags: trunk)
10:53
Add a logfile option to test_osinst.c. (CVS 4994) (check-in: f97d894582 user: danielk1977 tags: trunk)
2008-04-11
21:20
Add the speedtest8inst1.c program for running speed tests with an instrumented VFS. (CVS 4993) (check-in: baa8056c67 user: drh tags: trunk)
19:37
Faster implementation of hexToInt that uses not branches. Ticket #3047. (CVS 4992) (check-in: a70e958756 user: drh tags: trunk)
19:18
Avoid the use of uninitialized variables in sqlite3GenerateRowIndexDelete. Ticket #3048. (CVS 4991) (check-in: a93b7a344a user: drh tags: trunk)
17:15
Remove a recently added assert() that is failing with certain compilers on 32-bit platforms. Ticket #3043. (CVS 4990) (check-in: 03c0279d7b user: danielk1977 tags: trunk)
17:11
Remove entries from the sqlite_stat1 table whenever an index is dropped. Related to #3033. (CVS 4989) (check-in: 349aab42c7 user: danielk1977 tags: trunk)
15:36
Additional reductions in the use of memset(). (CVS 4988) (check-in: 38746c5438 user: drh tags: trunk)
14:56
Speed improvements by removing unnecessary memset() operations. Also: do not resize the opcode array of a virtual machine to its minimum size after code generation completes. The extra resize merely uses time. (CVS 4987) (check-in: 2589955507 user: drh tags: trunk)
2008-04-10
18:44
Enhancements to the change counter tests. Ticket #3013. (CVS 4986) (check-in: 1aaed6a469 user: drh tags: trunk)
18:35
Correctly handle virtual tables that are created and dropped all within a single transaction. Ticket #2994. (CVS 4985) (check-in: 0acb1b428d user: drh tags: trunk)
17:27
Add the --ostrace and --ossummary options to tester.tcl. To log calls the vfs layer from within test scripts. (CVS 4984) (check-in: e1322415d0 user: danielk1977 tags: trunk)
17:14
Enhanced testing and documentation of sqlite3_result_error_code(). Ticket #2940. (CVS 4983) (check-in: 5be56dbe87 user: drh tags: trunk)
16:47
Disable nuisance warnings on borland compilers. ticket #2936. (CVS 4982) (check-in: 1e094ecfd7 user: drh tags: trunk)
16:42
Make sure check-in (4976) also fixes ticket #2935. (CVS 4981) (check-in: e3f798b1ca user: drh tags: trunk)
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)
2008-03-18
13:47
Update the documentation to distinguish between protected and unprotected sqlite3_value objects. (CVS 4879) (check-in: 074ee55ffd user: drh tags: trunk)
13:46
Test script changes that go with the coverage enhancements of the previous check-in. (CVS 4878) (check-in: f87ddf83a5 user: drh tags: trunk)
13:01
Minor test coverage enhancements. (CVS 4877) (check-in: edd207b9a9 user: drh tags: trunk)
00:54
Fix a memory leak introduced by the previous bug fix. (CVS 4876) (check-in: b9c5dce349 user: drh tags: trunk)
00:07
Add the ability to simulate out-of-memory errors when using the default memory allocator, mem1.c. Fix a bug that this enhancement revealed. (CVS 4875) (check-in: d55a5e1c11 user: drh tags: trunk)
2008-03-17
19:03
Version 3.5.7 (CVS 4874) (check-in: 9a6583d375 user: drh tags: trunk)
17:18
Fix an uninitialized variable in the Prev and Next opcodes. (CVS 4873) (check-in: fcf3d0a3d5 user: drh tags: trunk)
17:08
Abandon the OR optimization following a memory allocation failure, to avoid referencing uninitialized memory. (CVS 4872) (check-in: 9d2afbb543 user: drh tags: trunk)
16:54
Detect the failure to zero-terminate a result string due to a malloc failure. (CVS 4871) (check-in: 57db14067f user: drh tags: trunk)
16:23
Label test case bindxfer-1.9 as a misuse test case, since it is one. (CVS 4870) (check-in: 7b99122632 user: drh tags: trunk)
15:09
Modify the tableapi.test script so that it works under windows. (CVS 4869) (check-in: 89e06b4e08 user: drh tags: trunk)
13:50
Put the statement journal in the temp-file directory since that directory is often on optimized storage such as RAM disk and because unlike the main journal, the statement journal does not need to be colocated with the database file. (CVS 4868) (check-in: 72c4072693 user: drh tags: trunk)
09:36
Return an error when an xBestIndex() method indicates that it intends to use the value of an unusable constraint. Related to #2998. (CVS 4867) (check-in: ffd4702795 user: danielk1977 tags: trunk)
2008-03-15
14:53
Skip tests that require setting detailed unix permissions on files when running on filesystems such as AFP that do not support that capability. (CVS 4866) (check-in: 5589b9d395 user: drh tags: trunk)
02:09
Add tests to make sure the busy handler resets. (CVS 4865) (check-in: 5e4df44181 user: drh tags: trunk)
2008-03-14
19:33
Reset the busy callback iteration counter at the beginning of each lock test loop. (CVS 4864) (check-in: 66777f0481 user: drh tags: trunk)
19:17
Change an instance of intptr_t to sqlite3_intptr_t. (CVS 4863) (check-in: 6db7186c30 user: drh tags: trunk)
13:02
Revise Bitvec struct sizing to prevent assertion failure on 64-bit systems (CVS 4862) (check-in: a3c12dbe95 user: mlcreech tags: trunk)
08:57
Fix a second race condition in lock4.test. (CVS 4861) (check-in: e62858b9b8 user: danielk1977 tags: trunk)
04:11
Allow the testfixture to be built even when using the amalgamation (CVS 4860) (check-in: 8a726e3731 user: mlcreech tags: trunk)
2008-03-13
23:34
One additional intptr_t conversion (in the same vein as check-in 4824) (CVS 4859) (check-in: 2777ca7882 user: mlcreech tags: trunk)
23:28
Apply patch for #2915 to add target extension for executables (CVS 4858) (check-in: 63fc7b7207 user: mlcreech tags: trunk)
19:55
Specify installation lib in 'rpath' options for sqlite3 executable (CVS 4857) (check-in: 5076d48033 user: mlcreech tags: trunk)
18:28
Add/move files in Makefile.in to bring it more in line with main.mk (CVS 4856) (check-in: b57fc81c3d user: mlcreech tags: trunk)
04:53
Eliminate a race condition from lock4.test. (CVS 4855) (check-in: 85585f1104 user: danielk1977 tags: trunk)
2008-03-12
10:39
Do not segfault after a parse error in a sub-select in a statement of the form "DELETE WHERE ... IN(sub-select)". Ticket #2991. (CVS 4854) (check-in: 3f9f81e908 user: danielk1977 tags: trunk)
2008-03-11
18:03
If tclsh is not found, don't default to building the amalgamation (CVS 4853) (check-in: cbc0167556 user: mlcreech tags: trunk)
15:41
Increase the version number to 3.5.7 in anticipation of the next release. (CVS 4852) (check-in: c85e97e4f0 user: drh tags: trunk)
2008-03-10
16:17
Remove the #includes of stdlib.h and sys/types.h from sqliteInt.h since they are never used and because they broke the build. (CVS 4851) (check-in: 2668000fc8 user: drh tags: trunk)
14:12
Add explicit !=0 tests in order to suppress warning messages in Borland-C. Ticket #2985 (CVS 4850) (check-in: d4ab14b974 user: drh tags: trunk)
2008-03-09
02:51
Fix for #2981 - specifically use "tclsh8.4" if it's available (CVS 4849) (check-in: 8ced1d6464 user: mlcreech tags: trunk)
02:20
Fix for #1802, #2041, and #2270 - link libsqlite with -lrt (CVS 4848) (check-in: ccd70a6ee4 user: mlcreech tags: trunk)
02:00
Change <sqlite3.h> to "sqlite3.h" in #includes (CVS 4847) (check-in: 98e55fa4d3 user: mlcreech tags: trunk)
01:38
Use autoconf to detect presence of gmtime_r() and localtime_r() (CVS 4846) (check-in: 9894d2ce41 user: mlcreech tags: trunk)
01:14
Replace SQLITE_EXTERN with SQLITE_API in exported variables when generating the amalgamation. Should fix #2982 (CVS 4845) (check-in: f134c282ea user: mlcreech tags: trunk)
2008-03-08
12:37
Clarify the language in the sqlite3_create_function() documentation. Ticket #2980. (CVS 4844) (check-in: 2db43738bf user: drh tags: trunk)
12:23
Fix asserts in prepare.c to handle the misuse case of ppStmt==0. (CVS 4843) (check-in: 788b2c6b53 user: drh tags: trunk)
06:16
Move a comment within the Parse structure to make it more accurate. No actual code changes. (CVS 4842) (check-in: 0ca14399b1 user: danielk1977 tags: trunk)
2008-03-07
21:37
Make sure all necessary mutexes are held prior to initializing the schema in sqlite3_table_column_metadata(). (CVS 4841) (check-in: 4996ff9357 user: drh tags: trunk)
21:04
Fix an alignment problem in test_async.c. (CVS 4840) (check-in: 752d8e21bb user: drh tags: trunk)
20:14
Another fix to the OsUnlock I/O error logic. (CVS 4839) (check-in: 22bd537ee2 user: drh tags: trunk)
19:51
Correctly handle I/O errors that occur during OsUnlock(). Before this fix, an I/O error during OsUnlock() could lead to database corruption. That is not a serious problem, though, since errors during OsUnlock() are not possible on most systems. (CVS 4838) (check-in: b4c1258edb user: drh tags: trunk)
15:34
Cleanup the locking-style code in os_unix.c. (CVS 4837) (check-in: 40f55c09db user: drh tags: trunk)
03:20
Trivial documentation fixes (CVS 4836) (check-in: 9819cefbd7 user: mlcreech tags: trunk)
02:20
Add missing prefix & exec_prefix to Makefile - fixes #2979. (CVS 4835) (check-in: 4cda019b63 user: mlcreech tags: trunk)
00:27
Updates to the locking-style code in os_unix.c. Not yet working. (CVS 4834) (check-in: 6ebce3b798 user: drh tags: trunk)
2008-03-06
16:28
Clean up recent autoconf-related additions, add config.h to the amalgamation (CVS 4833) (check-in: 8044623062 user: mlcreech tags: trunk)
09:58
Handle non-autoconf build correctly with new changes (CVS 4832) (check-in: e2a9f5f105 user: mlcreech tags: trunk)
09:19
Typo in amalgamation non-x86 builds (CVS 4831) (check-in: a8424e0606 user: mlcreech tags: trunk)
09:16
Don't try and include common.h on stand-alone amalgamation builds (CVS 4830) (check-in: 9898320be0 user: mlcreech tags: trunk)
09:03
Remove amalgamation on "make clean" (fixes #2559) (CVS 4829) (check-in: e03802f362 user: mlcreech tags: trunk)
08:54
Miscellaneous autoconf cleanups - get rid of TARGET_CFLAGS, fix header list (CVS 4828) (check-in: a674f76db9 user: mlcreech tags: trunk)
08:09
Respect user's configured bindir/libdir/includedir if present (fixes #558) (CVS 4827) (check-in: 48c9fa97b9 user: mlcreech tags: trunk)
07:51
Actually use TARGET_CFLAGS on autoconf-driven builds (CVS 4826) (check-in: dda3d65899 user: mlcreech tags: trunk)
07:36
Add headers for use with autoconf (missing from previous checkin) (CVS 4825) (check-in: 4513a5f493 user: mlcreech tags: trunk)
07:35
Use intptr_t definition to silence warnings about ptr-int casts (CVS 4824) (check-in: 54839a84e6 user: mlcreech tags: trunk)
07:19
Include inttypes.h when available, add support for intptr_t (CVS 4823) (check-in: 88698fbdd5 user: mlcreech tags: trunk)
04:14
Make extension loading more easily configurable. Fixes #2977 (CVS 4822) (check-in: fc401ad9d1 user: mlcreech tags: trunk)
04:14
Make extension loading more easily configurable. Fixes #2977 (CVS 4821) (check-in: 2a2e8b64df user: mlcreech tags: trunk)
2008-03-04
19:03
Build amalgamation by default on autoconf-driven builds, add --disable-amalgamation option to configure script (CVS 4820) (check-in: f9391fa06f user: mlcreech tags: trunk)
17:45
Various renames & cleanups to limit exported symbols on amalgamation build (CVS 4819) (check-in: 9c6694bb61 user: mlcreech tags: trunk)
2008-03-03
18:47
Additional documentation and tests making it clear that whenever sqlite3_prepare() fails it sets *ppStmt to NULL. (CVS 4818) (check-in: 39769f00c5 user: drh tags: trunk)
2008-03-02
05:40
Add fts2/3 files to autoconf-generated Makefile (needed for amalgamation) (CVS 4817) (check-in: 89666f9490 user: mlcreech tags: trunk)
05:34
Add mem5.c to source files in autoconf-generated Makefile (CVS 4816) (check-in: 8c1b6357f0 user: mlcreech tags: trunk)
03:32
Trivial text cleanups (CVS 4815) (check-in: bbf9f0e6e2 user: mlcreech tags: trunk)
2008-03-01
23:34
Fix typo for #2968 (CVS 4814) (check-in: d1f6b24382 user: mlcreech tags: trunk)
2008-02-27
03:22
Add bitvec.lo to LIBOBJS and corresponding make rule (CVS 4813) (check-in: 1d68f3af36 user: mlcreech tags: trunk)
2008-02-26
18:40
Fix a math error when computing how much memory to allocate for a new pager. (CVS 4812) (check-in: 690d05ceda user: drh tags: trunk)
16:16
Add commentary to clarify what is happening when an I/O error occurs while writing dirty pages to the database file. (CVS 4811) (check-in: afe49d81f4 user: drh tags: trunk)
14:46
Add an assert() to verify that the dirty-page list in the pager is valid before using it. (CVS 4810) (check-in: 942daf94ef user: drh tags: trunk)
06:05
Have sqlite3PagerPagecount() return -1 when the pager is in error state. Fix for #2961. (CVS 4809) (check-in: 427e7f8b4a user: danielk1977 tags: trunk)
03:46
Add bitvec to build (CVS 4808) (check-in: c690dd68f2 user: mlcreech tags: trunk)
2008-02-23
21:55
Fix a bug in the LIKE optimizer that occurs when the last character before the wildcard is an upper-case 'Z'. Ticket #2959. (CVS 4807) (check-in: 610574b23b user: drh tags: trunk)
2008-02-21
21:30
Additional test cases. (CVS 4806) (check-in: 74126bf4e6 user: drh tags: trunk)
20:40
Accept "Z" as the zulu timezone at the end of date strings. (CVS 4805) (check-in: 4c9a7b42b7 user: drh tags: trunk)
20:17
Updates to API documentation contained in comments of sqlite.h.in. (CVS 4804) (check-in: 08276df3fd user: drh tags: trunk)
02:09
Test coverage and documentation improvements. (CVS 4803) (check-in: e0baceac41 user: drh tags: trunk)
2008-02-20
00:00
Make multiple attempts to delete files marked DELETE_ON_CLOSE under WinCE. Ticket #2950. (CVS 4802) (check-in: 5bc8e564e3 user: drh tags: trunk)
2008-02-19
18:29
Remove instances of strcpy() from test code. Use memcpy() or sqlite3_snprintf() instead. (CVS 4801) (check-in: 7b50140dc0 user: drh tags: trunk)
18:28
Remove an instance of sprintf() from the VM implementation. SQLite should not use sprintf() from the C library - it has its own implementation. (CVS 4800) (check-in: 68f5ddddf0 user: drh tags: trunk)
15:44
Avoid the use of UTF16 functions in code that is part of a build when UTF16 support is omitted. Ticket #2949. (CVS 4799) (check-in: 9db346dede user: drh tags: trunk)
15:20
Make sure SQLITE_OPEN_DELETEONCLOSE is ignored by sqlite3_open_v2(). (CVS 4798) (check-in: 33e26f6adf user: drh tags: trunk)
15:15
Change non-exported memory interfaces to following the naming conventions. (CVS 4797) (check-in: 94774b4142 user: drh tags: trunk)
14:59
Use 16-bit integers for indexing within a page in btree. Tighter bounds on the maximum number of cells within one page. (CVS 4796) (check-in: 8fdbe4abab user: drh tags: trunk)
2008-02-18
22:24
Add the memory fault simulator to mem5.c. Enable soft heap limit on mem5.c. Limit the size of hash tables and the vdbefifo when using mem5.c. (CVS 4795) (check-in: 63da5d9754 user: drh tags: trunk)
14:47
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) (check-in: 7c57bdbcdb user: drh tags: trunk)
2008-02-16
16:21
The power-of-two first-fit memory allocator is now working. (CVS 4793) (check-in: d134d29cea user: drh tags: trunk)
2008-02-15
17:38
Fix a bug in the ".show" command of the CLI. Ticket #2942. (CVS 4792) (check-in: dedf5f230b user: drh tags: trunk)
14:33
Do not apply the query flattening optimization when the outer query is an aggregate and the inner query contains an ORDER BY clause. Ticket #2943. (CVS 4791) (check-in: 6d33cbd99c user: drh tags: trunk)
2008-02-14
23:44
Fix a bug in EXPLAIN growing out of the new Mem implementation. (CVS 4790) (check-in: 4df62a55d6 user: drh tags: trunk)
23:26
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) (check-in: 669ece8c82 user: drh tags: trunk)
23:24
Fix a typo in a comment used to generate documentation. (CVS 4788) (check-in: 65e66dd81c user: drh tags: trunk)
15:31
Fix some VdbeMemCopy() related problems. (CVS 4787) (check-in: aca2bee866 user: danielk1977 tags: trunk)
05:44
Fix a problem in the ptrchng.test script. (CVS 4786) (check-in: 30a45f0784 user: danielk1977 tags: trunk)
00:00
small correctness fix for os2CheckReservedLock() (CVS 4785) (check-in: f364d93423 user: pweilbacher tags: trunk)
2008-02-13
23:48
always use random access mode when opening files (like on Windows) (CVS 4784) (check-in: 9f4da1013b user: pweilbacher tags: trunk)
18:25
Where possible, avoid freeing buffers allocated for vdbe memory cells in case they can be reused. (CVS 4783) (check-in: 990237e27e user: danielk1977 tags: trunk)
2008-02-12
16:52
When materializing a view for an UPDATE or DELETE make use of the WHERE clause to limit the number of rows materialized. Ticket #2938. (CVS 4782) (check-in: 5ab71c3a79 user: drh tags: trunk)
2008-02-09
14:30
ALTER TABLE uses double-quotes for quoting table names. (CVS 4781) (check-in: 607247c27b user: drh tags: trunk)
2008-02-08
18:25
Modify shared.test to do case independent comparison of filenames. To account for the fact that "c:/test.db" and "C:/test.db" are the same file. (CVS 4780) (check-in: 63915b54cf user: danielk1977 tags: trunk)
18:25
Change the test code used for speed tests so that it does not throw an exception if the time command returns "0 microseconds per iteration". (CVS 4779) (check-in: f37e8637d2 user: danielk1977 tags: trunk)
2008-02-06
23:52
Do not release registers used to hold the results of a compound select after just the first select has run. Ticket #2927. For now, we will never release the registers used to hold the result set, since the same register set will be used for each select. This is not an unacceptable register leak and it is the safest approach. (CVS 4778) (check-in: e9fcb79399 user: drh tags: trunk)
16:58
Version 3.5.6 (CVS 4777) (check-in: 1d82ab6987 user: drh tags: trunk)
14:14
Bump the version number to 3.5.6. (CVS 4776) (check-in: 3444efabfc user: drh tags: trunk)
14:11
Add the sqlite3_result_error_code() application interface. Use it in the ATTACH function so that a failed attach returns a proper error code. Ticket #2914. (CVS 4775) (check-in: c246162043 user: drh tags: trunk)
2008-02-02
20:47
Delete unused "pager3_refinfo_enable" flag and its associated debugging macros. Ticket #2923. (CVS 4774) (check-in: fccb217d91 user: drh tags: trunk)
04:47
When OMIT_TRIGGER is defined, provide a no-op macro for sqlite3SelectMask(). Fix for #2918. (CVS 4773) (check-in: 1d478e9091 user: danielk1977 tags: trunk)
02:48
Add more test cases to prove that ticket #2920 does not exist in CVS HEAD. The problem was previously fixed by the changes to ticket #2686. Ticket #2920 is a duplicate of #2686. (CVS 4772) (check-in: b3259e8721 user: drh tags: trunk)
2008-02-01
19:44
Use the buffer size as limit for temp file names. This is done for windows too, see check-in (4595). (CVS 4771) (check-in: 99275bcd62 user: pweilbacher tags: trunk)
19:42
fix broken OS/2 mutex implementation (Ticket #2905) (CVS 4770) (check-in: 05afd86e2d user: pweilbacher tags: trunk)
15:34
Minor fixes to FTS3 so that it works better when appended to the end of the amalgamation. (CVS 4769) (check-in: 62ede6699d user: drh tags: trunk)
13:44
Fix the build scripts for windows binaries. ticket #2916. (CVS 4768) (check-in: c336b2318a user: drh tags: trunk)
01:19
Modify the printf test script so that it does not depend on the platform printf, so that we do not spurious test failures when moving from one platform to another. (CVS 4767) (check-in: 514d7e4743 user: drh tags: trunk)
00:31
make os2Truncate() actually do something and fix os2FullPathname() to be more elegant and work more correctly in all cases (Ticket #2904) (CVS 4766) (check-in: 921c7a0ac4 user: pweilbacher tags: trunk)
2008-01-31
19:34
Fix a problem with virtual tables and left joins introduced by check-in (4761). Ticket #2894 and #2913. (CVS 4765) (check-in: ebeac2a499 user: drh tags: trunk)
17:25
Version 3.5.5 (CVS 4764) (check-in: cb5bf4642f user: drh tags: trunk)
17:21
Remove a broken hyperlink from the API documentation. (CVS 4763) (check-in: 5fbda12174 user: drh tags: trunk)
16:36
Fixes to API definition comments in sqlite.h.in. Updates to the build script - ticket #2874. (CVS 4762) (check-in: c23f51de61 user: drh tags: trunk)
15:53
Make sure virtual table interfaces are not invoked after EOF when the virtual table appears in an outer join. Ticket #2894. (CVS 4761) (check-in: face510bc1 user: drh tags: trunk)
15:31
Add "return rc;" to the end of sqlite3_test_control(). (CVS 4760) (check-in: b547e7ea75 user: danielk1977 tags: trunk)
14:54
Fix assertion fault in sqllimits1.test encountered when auto_vacuum is enabled. Correct the sqllimit1 tests to account for extra pages inserted by auto_vacuum. (CVS 4759) (check-in: 9b207d1a66 user: drh tags: trunk)
14:43
Add the sqlite3_test_control() API. Use it to control the fault injector. (CVS 4758) (check-in: 413ddade6a user: drh tags: trunk)
13:35
Version number to 3.5.5. Include FTS3 in the amalgamation by default (but disabled unless compiled with -DSQLITE_ENABLE_FTS3). Fix a memory allocation problem. (CVS 4757) (check-in: 72411043e6 user: drh tags: trunk)
12:26
Additional API documentation updates in sqlite.h.in. (CVS 4756) (check-in: 9b6ab9faad user: drh tags: trunk)
2008-01-30
16:16
Improvements to the API documentation found in comments in the sqlite.h.in source file. (CVS 4755) (check-in: 0b8b5c2e83 user: drh tags: trunk)
16:14
Disable the likely() and unlikely() macros as they do not work some older versions of GCC. (CVS 4754) (check-in: e01f9ed945 user: drh tags: trunk)
2008-01-28
22:09
Committed changes for ticket #2909 (CVS 4753) (check-in: 29ce204dbf user: aswift tags: trunk)
15:19
Fix an incorrect comment on the Mem object in vdbeInt.h. (CVS 4752) (check-in: 50c9cf9bbb user: drh tags: trunk)
2008-01-27
10:35
remove an unused variable (CVS 4751) (check-in: 8884619547 user: rse tags: trunk)
2008-01-25
15:04
Error messages says "no such view" instead of "no such table" when trying to DROP a VIEW that does not exist. (CVS 4750) (check-in: 50815a82e0 user: drh tags: trunk)
2008-01-24
14:27
Fix a segfault that may follow a malloc failure during compilation of an INSTEAD OF trigger. (CVS 4749) (check-in: c6635a71db user: danielk1977 tags: trunk)
2008-01-23
17:13
Fix another segfault that can occur following a malloc failure in the SQL compiler. (CVS 4748) (check-in: 9d98a3f0dd user: danielk1977 tags: trunk)
15:44
Fix a couple of segfaults that could occur after a malloc() failure in the SQL compiler. (CVS 4747) (check-in: 6bd8db3839 user: danielk1977 tags: trunk)
14:51
Testing coverage enhancements to sqlite3_get_table() and to the SELECT code generator. (CVS 4746) (check-in: 45c59802f6 user: drh tags: trunk)
12:52
Improvements to test coverage in the lemon-generated parser and in the sqlite3_get_table() interface. (CVS 4745) (check-in: 9f95d79dae user: drh tags: trunk)
03:03
Make sqlite3SafetyOn() and sqlite3SafetyOff() macros which disappear when compiling without -DSQLITE_DEBUG=1. (CVS 4744) (check-in: 5375ad6b4b user: drh tags: trunk)
2008-01-22
23:37
Improved test coverage for the tokenizer and sqlite3_complete() interface. Fix bugs in parsing blob literals and SQL variables beginning with $. (CVS 4743) (check-in: c82033faf8 user: drh tags: trunk)
21:30
Add the fault injector module in fault.c. Use it as a basis for memory allocation failure testing. (CVS 4742) (check-in: 1a335e1801 user: drh tags: trunk)
19:34
Fix a bug introduced by checkin (4739). (CVS 4741) (check-in: c8394ac24b user: drh tags: trunk)
16:35
Detect and report a particular type of database corruption that would formerly cause a segfault. (CVS 4740) (check-in: f47cf3cc5c user: drh tags: trunk)
16:35
Detect and report a particular type of database corruption that would formerly cause a segfault. (CVS 4739) (check-in: 6ed2d9f82e user: drh tags: trunk)
14:50
Remove dead code from the lemon-generated parser. Better testing of the sqlite3_file_control() interface, and in particular make sure the interface works on :memory: databases. (CVS 4738) (check-in: 83ca4fc7dc user: drh tags: trunk)
11:50
Move the test (sqlite3_simulate_device) functionality out of the main code and into a test vfs. (CVS 4737) (check-in: 17e7bd6c3f user: danielk1977 tags: trunk)
01:48
Changes to lemon to generate additional comments in the output file and to remove unreachable code. Additional test cases for improved test coverage. (CVS 4736) (check-in: 2a0bc1e186 user: drh tags: trunk)
2008-01-21
16:47
Additional test cases for the RTRIM collation. (CVS 4735) (check-in: 51452d20f9 user: drh tags: trunk)
16:22
Miscellaneous test coverage improvements. (CVS 4734) (check-in: 720bc20a11 user: drh tags: trunk)
13:04
Remove some unused branches from internal function sqlite3PagerDontRollback(). (CVS 4733) (check-in: 3d4252b06b user: danielk1977 tags: trunk)
2008-01-20
23:19
Add the RTRIM collating sequence. Only implemented for UTF8. Still considered experimental and may be removed if we find adverse impact elsewhere in the system. (CVS 4732) (check-in: 0bf4e7fefd user: drh tags: trunk)
2008-01-19
23:50
Additional test coverage improvements. Test coverage now stands at 98.73%. (CVS 4731) (check-in: 010f7b780c user: drh tags: trunk)
20:11
Miscellaneous code simplifications and cleanup and test coverage enhancements. (CVS 4730) (check-in: af129b6d15 user: drh tags: trunk)
03:35
Cleanup and simplification of constraint processing. Simplifications to the VM for better test coverage. (CVS 4729) (check-in: d9ebe9d78c user: drh tags: trunk)
2008-01-18
17:03
Fix test instrumentation problems on shared_err.test. (CVS 4728) (check-in: 5aef5b0dd8 user: drh tags: trunk)
14:17
Remove an absolute path from crash5.test. (CVS 4727) (check-in: 42d8a37755 user: danielk1977 tags: trunk)
14:08
Remove the OP_HexBlob instruction and code OP_Blob directly. Reduce the amount of memory allocation required to encode blob literals. Remove the "out2" instruction type. Other minor optimizations. (CVS 4726) (check-in: 0e50c0200a user: drh tags: trunk)
13:42
Add a test (and fix) for possible corruption if malloc() fails during a CREATE INDEX statement, the application continues with the transaction, then crashes. (CVS 4725) (check-in: 65245d9904 user: danielk1977 tags: trunk)
11:33
Add a couple of missing calls to pagerLeave(). (CVS 4724) (check-in: 87534dfff9 user: danielk1977 tags: trunk)
02:31
Fix a bug in the test scripts that was preventing many scripts from running with all.test. Lots of hidden failures now come to light. (CVS 4723) (check-in: 251c78a982 user: drh tags: trunk)
2008-01-17
22:27
Test coverage for date.c. (CVS 4722) (check-in: a676f949b6 user: drh tags: trunk)
20:26
Improved test coverage in date.c. Report an error if a malloc fails within strftime(). (CVS 4721) (check-in: 495fb41626 user: drh tags: trunk)
17:27
Remove unused p4 element from the {quote: VdbeOpList} object. (CVS 4720) (check-in: 1c37d7b69b user: drh tags: trunk)
17:15
Reuse registers better in the inner loop of a SELECT statement. (CVS 4719) (check-in: 5ba4e5adf6 user: drh tags: trunk)
16:22
Registerification of the VDBE is complete. The operand stack has been removed from the code. All instructions operate out of registers only. (CVS 4718) (check-in: 706b41b70b user: drh tags: trunk)
02:36
Registerification of the WHERE clause logic. (CVS 4717) (check-in: 5581160f43 user: drh tags: trunk)
02:36
Registerification of the WHERE clause logic. (CVS 4716) (check-in: b3a141b2b0 user: drh tags: trunk)
2008-01-16
18:20
Use 1<<$x instead of pow(2,$x) in the test suite code. (CVS 4715) (check-in: 3a289b6d28 user: danielk1977 tags: trunk)
17:46
Get all tests running without memory leaks. (CVS 4714) (check-in: 5807921f5a user: drh tags: trunk)
08:24
Work around using (regexp) in the (ifcapable) function of the test suite. So that simpler versions of tcl can call it. (CVS 4713) (check-in: 3aa5606bd4 user: danielk1977 tags: trunk)
2008-01-15
02:22
Fix for a couple of minor memory leaks. (CVS 4712) (check-in: a13d3e953f user: drh tags: trunk)
2008-01-14
15:20
Fix for ticket #2883. (CVS 4711) (check-in: 187f41f54d user: drh tags: trunk)
2008-01-13
19:02
Fix some issues with out-of-memory recovery. (CVS 4710) (check-in: 23181f8689 user: drh tags: trunk)
2008-01-12
21:35
The sqlite3_trace() callback now prints a message as each trigger fires within a statement. (CVS 4709) (check-in: 110c000d86 user: drh tags: trunk)
19:03
Continuing work toward converting the VM to a register machine. (CVS 4708) (check-in: 426f31ecdd user: drh tags: trunk)
12:48
Continuing work toward converting the VM into a register machine. (CVS 4707) (check-in: a6dddebcc5 user: drh tags: trunk)
2008-01-11
15:27
Do explicit range tests before attempting to convert a 64-bit float into a 64-bit integer. Some systems (windows) seem to throw exceptions if the conversion is out of range. Ticket #2880. (CVS 4706) (check-in: 4744257d3c user: drh tags: trunk)
00:06
Attempt to work around a bug in the Borland BCC 5.5.1 compiler. Ticket #2880. (CVS 4705) (check-in: 6de0ee4907 user: drh tags: trunk)
2008-01-10
23:50
More work toward converting the VM into a register-based machine. (CVS 4704) (check-in: 8cbd46517f user: drh tags: trunk)
03:46
Continuing work toward registerizing the code generator. (CVS 4703) (check-in: 173698c963 user: drh tags: trunk)
00:08
Fix mixing quote excapes in an awk script. Ticket #2877. (CVS 4702) (check-in: 05fbca9108 user: drh tags: trunk)
2008-01-09
23:21
Fix a test script problem associated with the new crash4.test file. Ticket #2882. (CVS 4701) (check-in: 1134c5ea71 user: drh tags: trunk)
23:04
All essential opcodes can now operate out of registers and completely avoid the stack. Many still optionally use the stack to support legacy code generation, but the stack is not required. The next step is to update all code generation to avoid using the stack. (CVS 4700) (check-in: e3cf1c1c11 user: drh tags: trunk)
18:31
Fix the build for AIX and other systems where "char" is unsigned by default. (CVS 4699) (check-in: 47672af0c6 user: drh tags: trunk)
02:15
Continued work toward converting to a register-based VM. (CVS 4698) (check-in: 92deff07bb user: drh tags: trunk)
2008-01-08
23:54
Registerify the comparison opcodes. (CVS 4697) (check-in: 8862ce9cee user: drh tags: trunk)
18:57
Finish registerizing the core logic of INSERT and UPDATE. (CVS 4696) (check-in: 5fd1036788 user: drh tags: trunk)
16:03
Add crash4.test with additional crash testing. (CVS 4695) (check-in: 87b4ac4b73 user: drh tags: trunk)
15:18
Add additional randomness to crash tests. (CVS 4694) (check-in: 3ccce1f58b user: drh tags: trunk)
02:57
Progress toward registerification of the constraint checking logic for INSERT and UPDATE. (CVS 4693) (check-in: b9bf509e39 user: drh tags: trunk)
2008-01-07
19:20
Registerify the AUTOINCREMENT processing and the OP_IsNull and OP_NotNull operators. (CVS 4692) (check-in: aa48867cfa user: drh tags: trunk)
10:16
Comment changes in select.c. (CVS 4691) (check-in: 38020592f1 user: danielk1977 tags: trunk)
2008-01-06
00:25
Registerify the SRT_Subroutine destination for SELECT results. (CVS 4690) (check-in: 8201f71729 user: drh tags: trunk)
2008-01-05
18:48
Modify OP_RegMakeRec to take a base register and count and optionally store results in the register specified by P3. (CVS 4689) (check-in: 6bb1b1bc18 user: drh tags: trunk)
18:44
Fix a memory leak introduced with #4687. (CVS 4688) (check-in: 2b98b0fca8 user: danielk1977 tags: trunk)
17:39
First pass at optimizing max()/min() as described in #2853. Some refinements to come. (CVS 4687) (check-in: c449e04f18 user: danielk1977 tags: trunk)
16:29
Registerify binary operators. Add register tracing to debugging output. (CVS 4686) (check-in: 66396d2f02 user: drh tags: trunk)
06:51
Expression code generator takes advantage of recent opcode changes. (CVS 4685) (check-in: 6c78d2a49a user: drh tags: trunk)
05:38
Register-ify the OP_ForceInt opcode. (CVS 4684) (check-in: 32380dcabc user: drh tags: trunk)
05:20
Register-ify the OP_AddImm and all casting opcodes. Omit the OP_MemIncr opcode. (CVS 4683) (check-in: 3e8a07dd3c user: drh tags: trunk)
04:06
Get rid of OP_Dup, OP_MemStore, OP_MemLoad, and OP_MemMove. Replace with OP_Copy, OP_SCopy, and OP_Move. Add the infrastructure for operation properties in1, in2, in3, out2, and out3 but do not yet use any of these. (CVS 4682) (check-in: cc149eb9ca user: drh tags: trunk)
2008-01-04
22:01
Implement the out2-prerelease opcode design pattern. (CVS 4681) (check-in: fe057a88d0 user: drh tags: trunk)
19:33
Allow the P2 operand to be negative on opcodes that are not jumps. (CVS 4680) (check-in: 717bcd11a2 user: drh tags: trunk)
19:12
Fix mkopcodeh.awk so that it works on a mac. (CVS 4679) (check-in: 59d3dfa41f user: drh tags: trunk)
19:10
Some modifications to insert.c to work without using the stack. (CVS 4678) (check-in: d9ac6beef5 user: danielk1977 tags: trunk)
16:50
Replace the NOPUSH_MASKs with a bit-vector mechanism that can contain several different properties about each opcode. (CVS 4677) (check-in: 042dcb9621 user: drh tags: trunk)
13:57
Modify FifoRead and FifoWrite to work exclusively with memory cells. (CVS 4676) (check-in: 2c913908a4 user: danielk1977 tags: trunk)
13:24
Modify the code generated for a DELETE to use registers instead of the vdbe stack. (CVS 4675) (check-in: 173f281334 user: danielk1977 tags: trunk)
11:01
Add OP_MemSet, for setting a memory cell to a string value. (CVS 4674) (check-in: 8bb9f970dd user: danielk1977 tags: trunk)
2008-01-03
23:44
Change the sqlite3ExprCode() function so that callers can request that the result of the expression be left on the stack or in a register. (CVS 4673) (check-in: 61bfb77c42 user: drh tags: trunk)
18:56
Fix typo in comment. Ticket #2870. (CVS 4672) (check-in: e97e457867 user: danielk1977 tags: trunk)
18:44
Update OP_Rowid, OP_Column and related opcodes to use registers. (CVS 4671) (check-in: 4f3967073d user: drh tags: trunk)
18:39
Modify VFilter and VRename to use registers instead of the vdbe stack for inputs. (CVS 4670) (check-in: 253ed40aa3 user: danielk1977 tags: trunk)
18:03
Registers (aka memory cells) in the VM are now numbered starting with 1 instead of 0. A register number of 0 means "no such register". (CVS 4669) (check-in: 0b849805c3 user: drh tags: trunk)
17:31
Modify OP_VUpdate to read arguments from a range of memory cells instead of from the stack. (CVS 4668) (check-in: 955b15a020 user: danielk1977 tags: trunk)
11:50
Change the VdbeOp.p4 union to include specific pointer types for the various values of VdbeOp.p4type. (CVS 4667) (check-in: 7e8330c804 user: danielk1977 tags: trunk)
09:51
Change the OP_Insert opcode to read the key and data to insert from memory cells, not the stack. (CVS 4666) (check-in: 46501f490a user: danielk1977 tags: trunk)
08:18
Change the output of vdbe_trace etc. to include operands p3 and p5. (CVS 4665) (check-in: 76f2040b05 user: danielk1977 tags: trunk)
08:08
Combine the OP_Column and OP_DfltValue opcodes. (CVS 4664) (check-in: c30f820635 user: danielk1977 tags: trunk)
07:54
Change OP_OpenRead and OP_OpenWrite so that the database number is read from the P3 operand, not the stack. (CVS 4663) (check-in: 35da261daf user: danielk1977 tags: trunk)
07:09
Fix EXPLAIN and EXPLAIN query plan to work with new opcode format. (CVS 4662) (check-in: b166c33a7b user: danielk1977 tags: trunk)
01:28
Revamp sqlite3VdbeAddOpList() so that the structure holds integer values for P1, P2, and P3. (CVS 4661) (check-in: 4dc507d87b user: drh tags: trunk)
00:01
Refactoring the VM. The P3 parameter is changed to P4. A P5 parameter is added (though not currently used.) Add routines sqlite3VdbeAddOpX() where X is one of 0, 1, 2, 3, or 4. (CVS 4660) (check-in: 027875e4d4 user: drh tags: trunk)
2008-01-02
17:25
Add operands p4 and p5 to the VdbeOp structure. (CVS 4659) (check-in: ad528735e4 user: drh tags: trunk)
17:11
Minor optimizations for sub-selects in EXISTS(...) expressions: Discard any DISTINCT or ORDER BY clauses and do not calculate any column values. (CVS 4658) (check-in: fbd17a8976 user: danielk1977 tags: trunk)
16:27
Combine the eDest and iParm arguments to sqlite3Select() into a single type - "SelectDest". (CVS 4657) (check-in: 86dcdfe6d7 user: danielk1977 tags: trunk)
14:28
Add opcodes OP_ResultRow and OP_RegMakeRec which are register-based equivalents to OP_Callback and OP_MakeRecord. Use the new opcodes. (CVS 4656) (check-in: 4c7f35da77 user: drh tags: trunk)
13:05
Remove a surplus OP_Close from delete.c. Fixes a problem with (4654). (CVS 4655) (check-in: 03cc91b3b0 user: drh tags: trunk)
11:50
Take advantage of the fact that b-tree cursors need not be closed while other cursors modify their tables to simplify trigger program generation code. (CVS 4654) (check-in: f1966a8a47 user: danielk1977 tags: trunk)
04:41
Add some extra tests for the recent trigger compilation optimization. (CVS 4653) (check-in: de54dad800 user: danielk1977 tags: trunk)
00:34
Begin setting a foundation on which to convert the VM from a stack-based to a register-based machine. Everything is still mostly stack based with this check-in. This change merely begins adding infrastructure to support a register-based architecture. (CVS 4652) (check-in: 051ec01f27 user: drh tags: trunk)
2008-01-01
19:02
Optimize trigger compilation to avoid populating the OLD.* and NEW.* pseudo-tables with data that will never be used. Some testing to come. (CVS 4651) (check-in: e08a33ed72 user: danielk1977 tags: trunk)
06:19
Silence a harmless unitialised variable warning in btree.c. Ticket #2862. (CVS 4650) (check-in: b51782ccac user: danielk1977 tags: trunk)
05:49
Define SQLITE_CORE=1 at the start of the amalgamation file for the benefit of any extension source code (i.e. fts3) appended to it. Ticket #2858. (CVS 4649) (check-in: 6dea8c1638 user: danielk1977 tags: trunk)
2007-12-30
23:38
fix case in os2GetTempname() where none of the usual environment variables are set to not overwrite two unrelated bytes (CVS 4648) (check-in: 9719a06394 user: pweilbacher tags: trunk)
23:35
simplify os2FullPathname() and at the same time make the allocations more robust (CVS 4647) (check-in: 6f8952a836 user: pweilbacher tags: trunk)
23:29
move variable declaration to be able to compile sqlite3_mutex_alloc() with older compilers (like EMX/gcc 2.8.1) (CVS 4646) (check-in: a568a9cf37 user: pweilbacher tags: trunk)
2007-12-29
13:39
Add experimental pragma "quick_check", a reduced version of integrity_check that runs without most of the overhead of the full integrity_check. (CVS 4645) (check-in: 2ddc8d7272 user: danielk1977 tags: trunk)
13:18
Mem3.c enhanced so that an allocation of N bytes only requires (N+11)&~7 bytes instead of (N+15)&~7 bytes of heap storage. Minimum heap usage per allocation is still 16 bytes. 8-byte alignment is preserved. (CVS 4644) (check-in: d027f91cea user: drh tags: trunk)
2007-12-27
15:12
Fix a race condition that can occur when reloading the database schema in shared-cache mode. (CVS 4643) (check-in: b37babef91 user: danielk1977 tags: trunk)
2007-12-21
04:47
Fix for #2854. "BEGIN EXCLUSIVE" excludes other shared cache users from using the database. (CVS 4642) (check-in: 2e59b1d07e user: danielk1977 tags: trunk)
00:02
Fix some issues with lemon. Tickets #2852 and #2835. (CVS 4641) (check-in: 5283e0d146 user: drh tags: trunk)
2007-12-19
09:20
Add the ioerr3.test file, that found an error in br3317. The error is not present in this branch. (CVS 4640) (check-in: d3efec1489 user: danielk1977 tags: trunk)
2007-12-18
17:50
Fix a problem with SQLITE_MAX_SQL_LENGTH introduced by check-in (4636). Ticket #2851 (CVS 4639) (check-in: cdd866f597 user: drh tags: trunk)
15:41
In the CLI, quote strings that contain the separator character. Ticket #2850. (CVS 4638) (check-in: 493a17c46a user: drh tags: trunk)
11:19
Fix for typo in main.mk: the output of target sqlite3 was testcli. (CVS 4637) (check-in: 15675dc518 user: danielk1977 tags: trunk)
2007-12-17
16:20
When SQLITE_MAX_SQL_LENGTH is 0, disable the limit. Make the default 0. Once again build the sqlite3 CLI from individual source files so that it can be built on systems that lack tclsh. Tickets #2845 and #2846. (CVS 4636) (check-in: 07aeca3b9c user: drh tags: trunk)
2007-12-14
17:39
Version 3.5.4 (CVS 4635) (check-in: cf4a11b2a8 user: drh tags: trunk)
17:24
Update library version number to 3.5.4. (CVS 4634) (check-in: 5c653bfc7f user: drh tags: trunk)
17:24
Fix a C++-ism in recent changes to select.c. (CVS 4633) (check-in: 4a00805014 user: drh tags: trunk)
17:22
Change to the crash simulator to give better diagnostics in case it runs out of memory while using the mem3.c allocator. (CVS 4632) (check-in: 0d5747dbad user: drh tags: trunk)
16:11
Fix a typo in the previous check-in. Also simplify a line in select.c. (CVS 4631) (check-in: 86f45d7bb6 user: drh tags: trunk)
15:12
Fix an out-of-memory NULL pointer defer in the code generator. Ticket #2843. (CVS 4630) (check-in: b821b6ed17 user: drh tags: trunk)
2007-12-13
21:54
Change all instances of "it's" in comments to either "its" or "it is", as appropriate, in case the comments are ever again read by a pedantic grammarian. Ticket #2840. (CVS 4629) (check-in: 4e91a267fe user: drh tags: trunk)
19:15
Fix a memory leak that can occur following a malloc() failure. (CVS 4628) (check-in: 993a213024 user: danielk1977 tags: trunk)
18:29
Fix the location of a #include in test_thread.c. ticket #2826. (CVS 4627) (check-in: 6129fce873 user: drh tags: trunk)
18:24
Add test cases for errors in "IN(SELECT ...)" expressions where the SELECT statement is a compound SELECT. No faults found. (CVS 4626) (check-in: 49b67adfe9 user: danielk1977 tags: trunk)
18:20
Add new makefile target for "testcli" that builds a CLI using individual source files instead of the amalgamation. Ticket #2838. (CVS 4625) (check-in: b6f04e5b93 user: drh tags: trunk)
17:50
Additional test cases for tkt2822. Fix a related bug in printf(). (CVS 4624) (check-in: 8f184e40ff user: drh tags: trunk)
08:15
Return an error if the user attempts to rename a view. Related to (but not a fix for) #2831. (CVS 4623) (check-in: 19d56d997f user: danielk1977 tags: trunk)
07:58
Adjust the test suite to account for recent changes related to #2822. Most changes are related to English language error messages only. (CVS 4622) (check-in: 2f88b9b3e3 user: danielk1977 tags: trunk)
03:45
ORDER BY in a compound SELECT will first match against the left-most SELECT. If there is no match there, it begins working its way to the right. (CVS 4621) (check-in: 56063ec84b user: drh tags: trunk)
02:45
Towards getting ORDER BY to match against the correctin columns. This version only looks at the left-most column in a compound SELECT. That is the correct thing to do, but not what SQLite has historically done. (CVS 4620) (check-in: bbddf16ac9 user: drh tags: trunk)
2007-12-12
22:24
Minor cleanup changes on the OP_StackDepth opcode. Added the sidedelete test for additional testing of ticket #2832. (CVS 4619) (check-in: c068940932 user: drh tags: trunk)
18:05
Remove an (explain) accidentally left in tkt2832.test. (CVS 4618) (check-in: 48947e2b75 user: danielk1977 tags: trunk)
17:42
Try to find some more stack leaks by adding OP_StackDepth to loops in DML statements. None were found. (CVS 4617) (check-in: 12c3029b1e user: danielk1977 tags: trunk)
17:19
Remove a couple of lines in delete.c that weren't doing anything. (CVS 4616) (check-in: 86332c79ae user: danielk1977 tags: trunk)
16:06
Fix some problems similar to #2832, but caused by triggers instead of an OR REPLACE clause. (CVS 4615) (check-in: ee98ae1718 user: danielk1977 tags: trunk)
14:46
Test file containing minimal example of bug #2832. (CVS 4614) (check-in: ed2e61a9fa user: danielk1977 tags: trunk)
12:25
Fix database corrupting code generation error for UPDATE OR REPLACE. ticket #2832. Still need to add test cases and additional defensive logic to avoid future occurrences of similar problems. (CVS 4613) (check-in: 18e10f8167 user: drh tags: trunk)
12:00
Add a new OP_StackDepth opcode to help detect VDBE stack leaks early, before they cause damage. For diagnostics in ticket #2832. (CVS 4612) (check-in: 3fd6a26753 user: drh tags: trunk)
04:38
Fix test numbering in tkt2822.test. Ticket #2830. (CVS 4611) (check-in: 8fe8e9c460 user: danielk1977 tags: trunk)
2007-12-11
20:04
Fix a comment on the SQLITE_SQL_MAX_LENGTH definition. (CVS 4610) (check-in: 9335c94050 user: drh tags: trunk)
19:34
Build the CLI using the amalgamation. Relax the limit on SQL statement length when building the CLI. (CVS 4609) (check-in: a5d81cd371 user: drh tags: trunk)
04:23
Fix a 'const' issue in trimFunc(). (CVS 4608) (check-in: 64787d78b9 user: danielk1977 tags: trunk)
2007-12-10
21:11
Make sure the windows driver responds correctly to the SQLITE_OPEN_DELETEONCLOSE flag. Ticket #2829. (CVS 4607) (check-in: 19db91fd68 user: drh tags: trunk)
18:51
Further modifications to do with ORDER BY and compound SELECT queries. Related to ticket #2822. (CVS 4606) (check-in: 0d9b0e6e3a user: danielk1977 tags: trunk)
18:07
Fix a macro in func.c that causes problems for the amalgamation. (CVS 4605) (check-in: 6adbe91eff user: drh tags: trunk)
17:55
Fix a bug in the compilation procedures for the Linux shared library that includes the TCL bindings. (CVS 4604) (check-in: d384810a95 user: drh tags: trunk)
05:03
Fix compilation/testing with OMIT_SUBQUERY defined. Ticket #2828. (CVS 4603) (check-in: 0b34a18651 user: danielk1977 tags: trunk)
2007-12-08
21:10
Better resolution of ORDER BY terms in compound queries. Candidate solution for ticket #2822. Needs more testing and documentation before going final. (CVS 4602) (check-in: 62a78d212c user: drh tags: trunk)
18:01
Strengthen the tests for aggregate functions in GROUP BY clauses. Changes to test cases only. No changes to code. (CVS 4601) (check-in: 4be8e6765b user: drh tags: trunk)
17:55
Fix a bug in the debugging printf logic. (CVS 4600) (check-in: 1d6a9f5faf user: drh tags: trunk)
2007-12-07
23:47
Change prefix search from O(N*M) to O(NlogM). The previous code linearly merged the doclists, so as the accumulated list got large, things got slow (the M term, a fucntion of the number of documents in the index). This change does pairwise merges until a single doclist remains. A test search of 't*' against a database of RFC text improves from 1m16s to 4.75s. (CVS 4599) (check-in: feef1b15d6 user: shess tags: trunk)
18:55
In shared-cache mode, make sure the busy hander invoked is the busy handler associated with the database connection that caused the lock contention in the first place. (CVS 4598) (check-in: c9eb65912f user: drh tags: trunk)
18:39
Get the LIKE and GLOB operators working again on systems using the EBCDIC character set. (CVS 4597) (check-in: 754298a74e user: drh tags: trunk)
2007-12-06
17:41
Fix a leaking database connection in the vacuum2 test script. Ticket #2827. (CVS 4596) (check-in: f29deb5f0b user: drh tags: trunk)
13:26
Use the specified buffer length, not the maximum buffer length in unixFullPathname() and related functions. (CVS 4595) (check-in: f015a38771 user: drh tags: trunk)
02:42
Continuing work on the C/C++ interface requirements that appears as comments in sqlite.h.in. (CVS 4594) (check-in: 2130e71251 user: drh tags: trunk)
2007-12-05
18:05
Begin adding requirements numbers to the C/C++ interface documentation. (CVS 4593) (check-in: ae1936aadf user: drh tags: trunk)
01:38
Add the ability to change the autovacuum status of an existing database by setting the auto_vacuum pragma then running the VACUUM command. (CVS 4592) (check-in: bdfc19e838 user: drh tags: trunk)
2007-12-04
16:54
Make sure statement journals are initiated when doing DROP operations (since the DROP might fail after sqlite_master changes). Also make sure statement journals are initiated if there are pending SELECT statements. Ticket #2820. (CVS 4591) (check-in: bf34284ff0 user: drh tags: trunk)
13:41
Fix a bug in the TCL code for sqlite3_analyzer. (CVS 4590) (check-in: 7c2cf45428 user: drh tags: trunk)
13:22
Clarify the operation of sqlite3_blob_close() in the API documentation. Ticket #2815. (CVS 4589) (check-in: 78f359dffa user: drh tags: trunk)
2007-12-03
21:52
Do not require os_other.h if compiling with -DOS_OTHER=1. (CVS 4588) (check-in: 96ec39031e user: drh tags: trunk)
2007-12-02
11:46
When parsing CREATE INDEX statements from the sqlite_master table, do not search the temp database schema for the corresponding table. Only consider the database for which the schema is being parsed. Ticket #2817. (CVS 4587) (check-in: e6f02aa5ae user: danielk1977 tags: trunk)
2007-12-01
19:25
Another fix to Makefile.in for mingw. (CVS 4586) (check-in: cfaeb02554 user: drh tags: trunk)
19:23
Beginning attempts at casting the sqlite.h.in documentation into formal requirements. (CVS 4585) (check-in: 2ea78d2cbd user: drh tags: trunk)
09:32
Bug fix to Makefile.in to allow it to work with mingw. (CVS 4584) (check-in: fdca98d1eb user: drh tags: trunk)
2007-11-30
01:06
Add a few function requirements numbers to interfaces in the comments of sqlite3.h.in. This is experimental. (CVS 4583) (check-in: b829a64515 user: drh tags: trunk)
2007-11-29
18:44
Make sure we never try to "truncate" a file to a larger size. (CVS 4582) (check-in: 7d2f6a1d6c user: drh tags: trunk)
18:36
Add the optional (and experimental) mmap() memory allocator in the mem4.c module. (CVS 4581) (check-in: cfd683ac80 user: drh tags: trunk)
17:43
When using an index to scan a database table, read column data from the index in preference to the table. This increases the likelihood that the table will not be required at all. (CVS 4580) (check-in: 061608c72a user: danielk1977 tags: trunk)
17:05
Optimisations for expressions of the form "<value> IN (SELECT <column> FROM )". (CVS 4579)
(check-in: 56d0e32677 user: danielk1977 tags: trunk)
2007-11-28
22:36
Add the {quote: StrAccum} object for accumulating strings. Revamp xprintf to use the new object. Rewrite the group_concat() function to use the new object. Productize and test the group_concat() function. (CVS 4578) (check-in: 221aee72be user: drh tags: trunk)
16:19
Change the BTree so that it uses the Pagers temporary page space when reorganizing the rows on a page, rather than mallocing for space of its own. In this way, we avoid having to deal with a malloc failure deep down inside the page reorganizer. Ticket #2806 (CVS 4577) (check-in: 98960132dc user: drh tags: trunk)
14:04
Reorganize the code for the homegrown recursive mutexes. Fix a place in the previous check-in where the #ifdef label was incorrect. Ticket #2804. (CVS 4576) (check-in: 542e11f954 user: drh tags: trunk)
13:55
Clarify the conditions under which homegrown recursive mutexes work (they require a coherent cache) and only enable them if there is an explicit #define so as to avoid accidental use on platforms that do not meet the constraints. Ticket #2805. (CVS 4575) (check-in: 80299eebdd user: drh tags: trunk)
13:43
Preset the legacy_file_format pragma to the value of the primary database so that a VACUUM will not unknowingly alter the setting. Ticket #2804. (CVS 4574) (check-in: f731fa6bb3 user: drh tags: trunk)
00:51
Add an implementation of recursive mutexes for unix systems that lack pthreads recursive mutexes (ex: Solaris 2.6). Modern unix systems continue to use the recursive mutexes provided by pthreads. (CVS 4573) (check-in: f366a776c1 user: drh tags: trunk)
2007-11-27
23:36
Add test cases to verify that the file format is preserved across VACUUM. Ticket #2804. (CVS 4572) (check-in: 57400f50c6 user: drh tags: trunk)
23:11
Use the hexio test utility rather than TCL's binary I/O to avoid 32/64-bit problems in io.test. Ticket #2803. (This is a change to the test harness only - not to SQLite.) (CVS 4571) (check-in: 07f7dde8a6 user: drh tags: trunk)
21:44
Remove superfluous -lpthread from publish_osx.sh. Ticket #2801. Fix a bug in mkdll.sh. (CVS 4570) (check-in: 8d6e8fd381 user: drh tags: trunk)
18:45
Omit the superfluous -lpthread option in publish.sh. Ticket #2800. (CVS 4569) (check-in: 4f09f233f0 user: drh tags: trunk)
18:30
Add the publish_osx.sh script for building binaries for OSX (CVS 4568) (check-in: 9bd7c31496 user: drh tags: trunk)
17:38
Update the "publish.sh" scripts used to build the binaries for the website. (CVS 4567) (check-in: 2f748318fb user: drh tags: trunk)
17:12
Version 3.5.3 (CVS 4566) (check-in: a39007d5b1 user: drh tags: trunk)
16:55
Fix a bug that can cause a segfault on win32 systems following an I/O error. (CVS 4565) (check-in: eeec8d27c4 user: drh tags: trunk)
14:50
Bug fix in the configure script. Ticket #2799. The configure script is a real mess and needs to be completely rewritten. (CVS 4564) (check-in: 9d15f0330d user: drh tags: trunk)
14:46
Update the version number to 3.5.3. Fix some minor testing problems. (CVS 4563) (check-in: f4c8f2d191 user: drh tags: trunk)
02:38
Add likely() and unlikely() macros to the header file. They are not yet used for anything. (CVS 4562) (check-in: 485add38a1 user: drh tags: trunk)
2007-11-26
22:54
Use macro __DARWIN__ rather than __MACOS__ for conditional compilation of MacOSX specific features. Ticket #2780. (CVS 4561) (check-in: d0a4c2a363 user: drh tags: trunk)
13:36
Additional out-of-memory testing. Fix bugs caused by malloc failures in where.c. Tickets #2794, #2795, #2796, and #2797. (CVS 4560) (check-in: 5e02dbabcf user: drh tags: trunk)
2007-11-24
10:23
Declare the invalidateCursorsOnModifiedBtrees function to be static. Ticket #2792. (CVS 4559) (check-in: 94f25fc112 user: drh tags: trunk)
00:41
The FTS3 amalgamation can now be appended to the SQLite amalgamation to generate a single source file that contains both components. (CVS 4558) (check-in: 0fc61f99b5 user: drh tags: trunk)
2007-11-23
18:19
Fix a typo in a change to all.test from earlier today. (CVS 4557) (check-in: 8c0b2157f2 user: drh tags: trunk)
18:06
Do not require SQLITE_ENABLE_BROKEN_FTS2 if FTS2 is not enabled. The same for FTS1. Ticket #2777. (CVS 4556) (check-in: f94cdcfd11 user: drh tags: trunk)
18:01
Add a #include of sqlite3.h to fts3_hash.c. Tickets #2762 and #2777. (CVS 4555) (check-in: c8485eb8bc user: drh tags: trunk)
17:31
Changes fts3 to use only sqlite3_malloc() and not system malloc. Ticket #2762. (CVS 4554) (check-in: 460af6bb66 user: drh tags: trunk)
15:12
Remove most documentation from the source code repository. Documentation configuration management is now handled by a separate repository at http://www.sqlite.org/docsrc. (CVS 4553) (check-in: b20f3a6fed user: drh tags: trunk)
15:02
Make sure that INSERT INTO ... SELECT ... always uses an ephemeral intermediate table if the SELECT clause refers to the destination table, even if the SELECT clause is compound or uses the destination table in a subquery. This fixes a long-standing bug that can cause an infinite loop for some SQL statements. (CVS 4552) (check-in: 492b39b6a8 user: drh tags: trunk)
13:42
Avoid a double-free in an out-of-memory situation with a USING clause or NATURAL JOIN. Ticket #2789. (CVS 4551) (check-in: 596694752c user: drh tags: trunk)
2007-11-22
00:47
Change to sqlite3.pc.in recommended by ticket #2786. (CVS 4550) (check-in: 247fa2eac0 user: drh tags: trunk)
2007-11-21
15:24
Handle out-of-memory situations inside the query flattener. Ticket #2784. (CVS 4549) (check-in: 2655a3f2d1 user: drh tags: trunk)
2007-11-17
22:23
Fix a bug in the grammar. We were giving the ones-complement operator ~ the same precedence as the NOT operator, which is incorrect. (CVS 4548) (check-in: b48a4bfd32 user: drh tags: trunk)
2007-11-16
14:55
Fix a crash that can occur after a malloc failure. Ticket #2775. (CVS 4547) (check-in: c91bc8d333 user: danielk1977 tags: trunk)
00:23
Don't do anything when input doclists are both empty. Ticket #2774 (CVS 4546) (check-in: 75cb46f82a user: shess tags: trunk)
2007-11-15
16:04
Return SQLITE_MISUSE instead of crashing if NULL is (incorrectly) passed to sqlite3_step(). Ticket #2773. (CVS 4545) (check-in: 3bfee76fa6 user: danielk1977 tags: trunk)
13:10
Fix a segfault that can occur after a malloc failure in an ANALYZE statement. Ticket #2772. (CVS 4544) (check-in: d05eb67dd6 user: danielk1977 tags: trunk)
2007-11-14
06:48
Add an experimental API for retrieving the SQL source from a compiled statement: sqlite3_sql(). Ticket #2769. (CVS 4543) (check-in: d31f1e0d74 user: danielk1977 tags: trunk)
2007-11-13
10:30
Modify the Tcl interface to use sqlite3_prepare_v2(). (CVS 4542) (check-in: 7bb00c7df6 user: danielk1977 tags: trunk)
2007-11-12
21:09
Various changes to enable compilation of SQLite library and command line shell with the Windows CE cross compiler from cegcc.sourceforge.net (CVS 4541) (check-in: 8ad0ab8cb3 user: chw tags: trunk)
17:56
Another attempt at fixing a memory leak in the TCL interface. See check-in (4338) for the first attempt. Ticket #2597. (CVS 4540) (check-in: 68a43c99f1 user: drh tags: trunk)
15:40
Fix a code comment in select.c. No code changes. (CVS 4539) (check-in: cf41d6a00f user: danielk1977 tags: trunk)
15:29
Where possible, transform the DISTINCT qualifier to a GROUP BY clause. GROUP BY clauses may be optimized by indices, DISTINCT qualifiers cannot. (CVS 4538) (check-in: e563312347 user: danielk1977 tags: trunk)
09:50
Allow collation sequence names to be quoted. Ticket #2744. (CVS 4537) (check-in: 06749ac7af user: danielk1977 tags: trunk)
08:09
Modify the order of assert() macros in vdbe.c as per the suggestion in #2768. (CVS 4536) (check-in: af5af5dc26 user: danielk1977 tags: trunk)
2007-11-11
18:36
Fix the code generation for UPDATE and DELETE so that BEFORE triggers that use RAISE(IGNORE) do not leave extra values on the stack. Ticket #2767 (CVS 4535) (check-in: 3391f4139c user: drh tags: trunk)
2007-11-07
15:13
Add asserts on sqlite3_mutex_held() to the zero-malloc memory allocator, in order to prove that the mutex is held when it is needed. (CVS 4534) (check-in: 31eb4abc89 user: drh tags: trunk)
01:23
Changes the asynchronous I/O test module so that it can be appended to the end of the amalgamation. (CVS 4533) (check-in: c1fe27de7b user: drh tags: trunk)
01:19
In the windows VFS, make sure we do not return an error if attempting to delete a file that does not exist. (CVS 4532) (check-in: 08a685abc1 user: drh tags: trunk)
2007-11-05
20:49
Version 3.5.2 (CVS 4531) (check-in: 60da01630a user: drh tags: trunk)
18:11
Preparing documentation for the release of version 3.5.2. (CVS 4530) (check-in: b985328ad9 user: drh tags: trunk)
17:54
Drop support for the SQLITE_OMIT_MEMORY_ALLOCATION compile-time option. (CVS 4529) (check-in: b57c89fed0 user: drh tags: trunk)
17:01
Reset the writer-thread halt criteria after halting the thread. (CVS 4528) (check-in: ecbff972a1 user: danielk1977 tags: trunk)
15:30
Fix some minor problems with malloc failure and in-memory databases. (CVS 4527) (check-in: b752906e70 user: danielk1977 tags: trunk)
14:58
Fix a bug in the misc1 test script. (CVS 4526) (check-in: fa16996d99 user: drh tags: trunk)
14:30
Make sure the default page size never exceeds the maximum page size. (CVS 4525) (check-in: 9c2731f143 user: drh tags: trunk)
12:46
Use malloc to obtain space for sqlite3_aggregate_context(). Ticket #2751. (CVS 4524) (check-in: bf75058f57 user: danielk1977 tags: trunk)
05:12
Handle "IS NULL" constraints on virtual table scans. IS NULL constraints are not passed to the virtual table layer. Ticket #2759. (CVS 4523) (check-in: 7027368c15 user: danielk1977 tags: trunk)
2007-11-02
12:53
Add the ".timer" command to the CLI. (CVS 4522) (check-in: 56680360d3 user: drh tags: trunk)
12:52
Fix building of sqlite3_analyzer on Mac. (CVS 4521) (check-in: a616b6cb64 user: drh tags: trunk)
09:07
Add some assert() statements to the asychronous backend demo to enforce the strategy used to avoid deadlock. Also a minor change to avoid a potential deadlock. (CVS 4520) (check-in: 6340ca5eee user: danielk1977 tags: trunk)
2007-11-01
17:38
Add a prototype "group_concat()" aggregate function to func.c. Disabled by default. No documentation nor test cases. No effort to make it efficient. (CVS 4519) (check-in: 61987a89d1 user: drh tags: trunk)
2007-10-30
17:28
Avoid leaking a file descriptor after a malloc failure on unix. (CVS 4518) (check-in: c249d5da72 user: danielk1977 tags: trunk)
15:38
Remove a debugging assert() that went in by accident with the previous commit. (CVS 4517) (check-in: 4ad60bdba0 user: danielk1977 tags: trunk)
15:29
Fix a race condtion in test_async.c. (CVS 4516) (check-in: 5e3f7c3dec user: danielk1977 tags: trunk)
2007-10-27
16:25
Clarify the behavior of sqlite3_last_insert_rowid() when using INSERT OR IGNORE. (CVS 4515) (check-in: c0fa0c8ba8 user: drh tags: trunk)
2007-10-24
23:24
Be a bit more susicious of invalid results from the tokenizer. (CVS 4514) (check-in: deb8f56d3a user: shess tags: trunk)
23:04
Fix os2CurrentTime() to give correct results for negative timezones. (CVS 4513) (check-in: a3b82548cb user: pweilbacher tags: trunk)
23:03
Fix os2GetTempname() to actually work: DosScanEnv() wants an empty PSZ as argument and we obviously don't need to test for file existence any more. (CVS 4512) (check-in: 8a233845f6 user: pweilbacher tags: trunk)
21:52
fts3.c buildTerms() passes -1 for nInput. (CVS 4511) (check-in: e87c883a12 user: shess tags: trunk)
2007-10-23
18:55
Add comments, assertions, and test cases to demonstrate that the problem described in ticket #2742 is not a real problem. (CVS 4510) (check-in: c085d6dfc0 user: drh tags: trunk)
15:59
Add comments to the code warning that _XOPEN_SOURCE might need to be defined manually if using USE_PREAD or USE_PREAD64. (CVS 4509) (check-in: d7ed7cd077 user: drh tags: trunk)
15:51
Make sure the _LARGEFILE_SOURCE macro occurs before any system includes. Ticket #2739. (CVS 4508) (check-in: 36465aeb1f user: drh tags: trunk)
15:39
Floating point and 64-bit integer constants store in the virtual machine opcodes in binary, not as text. Performance improvement. Ticket #2733. (CVS 4507) (check-in: 7e30fd6a09 user: drh tags: trunk)
14:55
Fix limit assertions in vdbe.c. Ticket #2740. (CVS 4506) (check-in: 27f846d089 user: drh tags: trunk)
14:49
Make sure the sqlite3_vfs_register() and sqlite3_vfs_unregister() APIs work right even if not VFS is currently registered. Ticket #2738. (CVS 4505) (check-in: c36500871e user: drh tags: trunk)
10:25
Add speed4.test, with some speed tests for triggers, sub-selects, views and joins. (CVS 4504) (check-in: 3e3475b9e0 user: danielk1977 tags: trunk)
08:17
Fix an error message in the tcl interface. (CVS 4503) (check-in: 2449e08069 user: danielk1977 tags: trunk)
2007-10-22
18:02
Add the NEAR operator to fts3. (CVS 4502) (check-in: aef7720e0b user: danielk1977 tags: trunk)
2007-10-21
22:59
We need an extra define to activate OS/2 semaphores for compiling/linking. (CVS 4501) (check-in: 0604dace0e user: pweilbacher tags: trunk)
22:47
Finally bring OS/2 to the 3.5 level. This at least is a first draft version that survives very basic tests. It still contains a lot of debugging stuff... (CVS 4500) (check-in: 46b2d1034b user: pweilbacher tags: trunk)
2007-10-20
20:58
Use the 2-argument version of substr() in the SQL contained in the VACUUM and ALTER TABLE commands. Ticket #2737. (CVS 4499) (check-in: 82b08a3dc2 user: drh tags: trunk)
16:36
Add the new memory allocator to the amalgamation. Improvements to out-of-memory handling. (CVS 4498) (check-in: b58c2b37a5 user: drh tags: trunk)
16:11
Bug fix in the realloc algorithm of the static memory allocator. (CVS 4497) (check-in: 50db16be50 user: drh tags: trunk)
15:41
Simplify the mem3.c memory allocator. Have it call sqlite3_release_memory() automatically, without having to specify the soft heap limit. (CVS 4496) (check-in: ca51b2f540 user: drh tags: trunk)
13:17
Go back to allocating each page and its header with a single memory allocation. This undoes the change of (4409). (CVS 4495) (check-in: f56c9884be user: drh tags: trunk)
12:34
Fix a mutex leak in the new malloc-free memory allocator. (CVS 4494) (check-in: 30f014d3d0 user: drh tags: trunk)
2007-10-19
17:47
Added an experimental malloc-free memory allocation subsystem, intended for use on embedded systems. Runs 7% faster than when using system malloc() on Linux. (CVS 4493) (check-in: 8487ca82fa user: drh tags: trunk)
2007-10-17
01:44
Reorder some tests at the beginning of sqlite3_step() to work around misuse by python. Ticket #2732. (CVS 4492) (check-in: e8d591e8c3 user: drh tags: trunk)
2007-10-16
19:45
A cosmetic changes to btree.c which (we are told) works around a bug in MSVC++. (CVS 4491) (check-in: 329dd014b0 user: drh tags: trunk)
2007-10-15
19:34
Add a malloc size histogram to the debugging malloc implementation in mem2.c. (CVS 4490) (check-in: 3e51696cb8 user: drh tags: trunk)
07:08
Fix for OMIT_AUTHORIZATION builds. (CVS 4489) (check-in: 260711a14d user: danielk1977 tags: trunk)
2007-10-12
20:42
Do not invoke the authorizer when reparsing the schema after a schema change or when trying to figure out the result set of a view. (CVS 4488) (check-in: e756bc9b74 user: drh tags: trunk)
19:35
Convert a K&R style function to ANSI style. Ticket #2548. (CVS 4487) (check-in: e1b2e7c24c user: drh tags: trunk)
19:11
Make the 3rd parameter of the SUBSTR() function optional. Ticket #2579. (CVS 4486) (check-in: 4a807d48ea user: drh tags: trunk)
18:36
Add an explicit type conversion in an AWK script to work around bugs in cygwin. Ticket #2713. (CVS 4485) (check-in: 043cee2fd9 user: drh tags: trunk)
18:30
Update documentation to talk about the SQLITE_UTF16_ALIGNED option for sqlite3_create_collation(). Ticket #2722 (CVS 4484) (check-in: a7292c14de user: drh tags: trunk)
00:23
Fix to the main.mk makefile. (CVS 4483) (check-in: e4527dd6ed user: drh tags: trunk)
2007-10-09
15:36
Still more tweaks to the wince interface. Ticket #2711. (CVS 4482) (check-in: b2bdb47685 user: drh tags: trunk)
15:20
Fix a typo in the wince driver. Ticket #2710. See also ticket #2702. (CVS 4481) (check-in: beb91af706 user: drh tags: trunk)
08:29
Fixes to the test suite (no code changes) so that quick.test runs with OMIT_ATTACH builds. #2706. (CVS 4480) (check-in: 07c00fffe5 user: danielk1977 tags: trunk)
2007-10-08
15:06
More untested changes for wince contributed by users. Ticket #2702. (CVS 4479) (check-in: ccd709e179 user: drh tags: trunk)
12:29
Reverting check-in (3836) at the request of winCE users. We no ability to test this change. Presumably this is a fix for tickets #2698, #2533, and #2598. It is unclear if this causes #2294 to be reopened or not. (CVS 4478) (check-in: 27346fa55e user: drh tags: trunk)
12:22
Fix a bug in code for winCE. Ticket #2700. (CVS 4477) (check-in: a36fca4cde user: drh tags: trunk)
12:21
In windows, always open files using FILE_FLAG_RANDOM_ACCESS. Ticket #2699. (CVS 4476) (check-in: 5cdbc0972f user: drh tags: trunk)
2007-10-06
01:40
Fix a memory leak in the sqlite3_realloc() implementation of the non-debugging memory allocator. (CVS 4475) (check-in: 7e9b886dab user: drh tags: trunk)
2007-10-05
16:23
Remove #include <math.h> from all source files. It is no longer needed but causes compile problems when -DSQLITE_OMIT_FLOATING_POINT is defined. Ticket #2696. (CVS 4474) (check-in: 4424357d17 user: drh tags: trunk)
16:16
Changes lemon so that the generated parser does not accept prior to seeing the EOF token. This is a lemon change only and does not effect SQLite. Ticket #2550. (CVS 4473) (check-in: 1c68d93412 user: drh tags: trunk)
15:53
Changes to a couple of test scripts to handle the tcl 8.5 version of (file attributes -readonly) on mac. (CVS 4472) (check-in: a51946e66b user: danielk1977 tags: trunk)
15:08
Do not attempt to use TryEnterCriticalSection() under win32. It causes too many compiler problems. Ticket #2685. (CVS 4471) (check-in: f795431c72 user: drh tags: trunk)
15:04
Fix problem building testfixture on mac. Ticket #2689. (CVS 4470) (check-in: fe067d706b user: danielk1977 tags: trunk)
14:54
The sqlite3internal.h file obsolete as of version 3.5.0. Remove legacy procedures and makefile targets for building this file. Tickets #2693 and #2694. (CVS 4469) (check-in: e65842a9d4 user: drh tags: trunk)
14:49
Use FormatMessageA() instead of FormatMessage() in the w32 VFS. Ticket #2687. (CVS 4468) (check-in: 38674fd287 user: drh tags: trunk)
2007-10-04
18:52
Correct the name on the new test script for ticket #2686. (CVS 4467) (check-in: d261e2c731 user: drh tags: trunk)
18:11
Fixes for OMIT_AUTHORIZATION builds. #2691. (CVS 4466) (check-in: 755fcaf7e3 user: danielk1977 tags: trunk)
00:30
Version 3.5.1 (CVS 4465) (check-in: 81cf518646 user: drh tags: trunk)
00:29
Updates to the documentation index page. (CVS 4464) (check-in: 837fc86166 user: drh tags: trunk)
2007-10-03
21:18
Get io.test to work even if auto_vacuum is on by default and we are running with a reduced maximum page size. (CVS 4463) (check-in: 0d05f3fbaa user: drh tags: trunk)
21:10
Fix a syntax error that comes up when memory debugging is disabled. (CVS 4462) (check-in: 96dd3c336b user: drh tags: trunk)
20:32
Update documentation in preparation for the release of 3.5.1. (CVS 4461) (check-in: a57b25a2e4 user: drh tags: trunk)
20:15
Update documentation to talk about the response to errors within an explicit transaction. (CVS 4460) (check-in: 84616a13af user: drh tags: trunk)
18:45
Simplify the vdbeHalt logic slightly. (CVS 4459) (check-in: b59f7bcbab user: drh tags: trunk)
15:30
Rollback the transaction if an SQLITE_FULL error is encountered. This is a preliminary fix for ticket #2686. More testing and analysis is needed before we close the ticket. (CVS 4458) (check-in: 0fb6d5a577 user: drh tags: trunk)
15:22
Fix a memory leak that could occur during error-state recovery. (CVS 4457) (check-in: 3d1d13d1eb user: danielk1977 tags: trunk)
15:02
Add a test case to malloc.test. (CVS 4456) (check-in: 7d3f0b149b user: danielk1977 tags: trunk)
09:43
Fix a problem in test script malloc5.test. (CVS 4455) (check-in: 028ec36c71 user: danielk1977 tags: trunk)
08:46
Add automatic recovery from the pager "error-state". Also add a new error code - SQLITE_IOERR_NOMEM. (CVS 4454) (check-in: 12eca32a6a user: danielk1977 tags: trunk)
2007-10-02
19:56
Use local variables instead of #defines for the mutex name and length in OS/2's sqlite3_mutex_alloc(). (CVS 4453) (check-in: 272959cc91 user: pweilbacher tags: trunk)
2007-10-01
17:47
Additional #ifdefing around _XOPEN_SOURCE. Ticket #2681. (CVS 4452) (check-in: eb5d78451e user: drh tags: trunk)
17:45
Document that END TRANSACTION is an alias for COMMIT. Ticket #2656 (CVS 4451) (check-in: ebe3e6913c user: drh tags: trunk)
14:30
Omit the _XOPEN_SOURCE 500 define on Mac OS-X. Ticket #2673 (CVS 4450) (check-in: 0bbf654b67 user: drh tags: trunk)
13:59
Update the build process so that it includes sqlite3ext.h with the amalgamation ZIP archive. Ticket #2678. (CVS 4449) (check-in: 6232ee6750 user: drh tags: trunk)
13:54
Use sqlite3_int64, not sqlite_in64, consistently in the documentation. Ticket #2680. (CVS 4448) (check-in: f7a2647033 user: drh tags: trunk)
13:50
Fix comment typos in sqlite3.h. Ticket #2666. (CVS 4447) (check-in: 2ea278a2af user: drh tags: trunk)
13:45
Add text to the load_extension SQL function documentation that explains limitations in the use of that function. Ticket #2672. (CVS 4446) (check-in: b2befc84c3 user: drh tags: trunk)
2007-09-21
12:43
Remove "const" keywords from the sqlite3_index_info structure definition. The use of this keyword is suspected to be causing problems for some compilers. (CVS 4445) (check-in: 005d780de6 user: drh tags: trunk)
04:28
Another comment typo. Also #2660. (CVS 4444) (check-in: 0c1e6f69cd user: danielk1977 tags: trunk)
04:27
Fix a typo in comments. Ticket #2660. (CVS 4443) (check-in: 02c8d60bea user: danielk1977 tags: trunk)
2007-09-20
21:40
Initial attempt of the new OS/2 mutex implementation. (Compiles and an attempt to create a new table does not crash in mutex_os2 any more.) (CVS 4442) (check-in: aa61b24425 user: pweilbacher tags: trunk)
14:39
Replace "i64" with "sqlite3_int64" in the w32 VFS. (CVS 4441) (check-in: 138d3fcc5a user: drh tags: trunk)
12:53
Cleanup the hash functions in FTS3. (CVS 4440) (check-in: ac645c8f30 user: drh tags: trunk)
11:34
get rid of remaining GCC 4.3 -Wall compiler warnings by initializing two variables and one structure properly (although the code path was already rather safe) (CVS 4439) (check-in: d748694f8d user: rse tags: trunk)
11:32
fix typo in comment (CVS 4438) (check-in: c2ac43a4ef user: rse tags: trunk)
10:02
Fixes for uninitialized variables. Tickets #2658 and #2659. (CVS 4437) (check-in: 27fe128833 user: drh tags: trunk)
08:38
The code is correct as it contains an assert(3) in the "default" switch case, but GCC 4.3 is not able to detect this and instead complains with "warning: 'amode' may be used uninitialized in this function". Hence, although the assert(3) already protects the code here, get rid of this compiler warning by doing a simple initialization of the "amode" variable. (CVS 4436) (check-in: 91831ff292 user: rse tags: trunk)
2007-09-18
16:53
Add disabled test cases for ticket #2652. We will enable these test cases after #2652 is fixed. The fix will be difficult and will probably take a while. On the other hand, correlated aggregate queries have never worked in SQLite and the problem is just now coming to light, so it is probably not a pressing issue. (CVS 4435) (check-in: 5c41619e29 user: drh tags: trunk)
15:55
Remove unneeded pSchema field from the Expr structure. (CVS 4434) (check-in: b2d605a271 user: drh tags: trunk)
2007-09-17
07:02
Add a parameter to specify the size of the output buffer passed to xGetTempname() and xFullPathname(). This, and the previous commit, are changes to the public vfs API introduced in 3.5.0. (CVS 4433) (check-in: 8b29f5fbfc user: danielk1977 tags: trunk)
06:06
Change the names of xGetTempName and sqlite3OsGetTempName to xGetTempname. To be consistent with xFullPathname and sqlite3OsFullPathname. (CVS 4432) (check-in: ad3687b16e user: danielk1977 tags: trunk)
2007-09-14
20:32
Corrections to the winCE code. Untested. (CVS 4431) (check-in: 8cc51e0a81 user: drh tags: trunk)
16:20
Minor fixes for the OMIT_INCRBLOB compilation option. (CVS 4430) (check-in: 87e37eabf0 user: danielk1977 tags: trunk)
16:19
Add demo code for a vfs that operates on a single pre-allocated file. (CVS 4429) (check-in: 15680ca482 user: danielk1977 tags: trunk)
01:48
Add tests to prevent a regression of the short read problem discovered in version 3.2.2. (CVS 4428) (check-in: 995c63b561 user: drh tags: trunk)
2007-09-13
18:16
Drop the forced error from fts3.c and add forced errors to fts2.c and fts1.c. (CVS 4427) (check-in: fec6567a0f user: shess tags: trunk)
18:14
Add an implicit (HIDDEN) docid column. This works as an alias to rowid, similar to how things work in SQLite tables with INTEGER PRIMARY KEY. Add tests to verify operation. (CVS 4426) (check-in: c8d2345200 user: shess tags: trunk)
18:12
Mark the table-named column HIDDEN. Add tests to make sure it's working as expected. (CVS 4425) (check-in: ca669eaf1b user: shess tags: trunk)
17:54
Fix incorrect index cost assumptions that occur after an ANALYZE. Ticket #2643. (CVS 4424) (check-in: 2cfdbfe654 user: drh tags: trunk)
2007-09-12
17:01
Fixes for compilation/testing when the various OMIT macros are defined. (CVS 4423) (check-in: c8405b15c0 user: danielk1977 tags: trunk)
15:41
In the query optimizer, make sure table dependencies from all terms of a compound SELECT statement are recognized so that subqueries in a WHERE clause are not evaluated too early. Fix for ticket #2640. (CVS 4422) (check-in: 9c9c2a1da2 user: drh tags: trunk)
14:09
Add a missing semi-colon to os_win.c. Ticket #2642. (CVS 4421) (check-in: c6ee5929e7 user: danielk1977 tags: trunk)
2007-09-10
16:13
Fix a problem in the noop-mutexes used for testing. (CVS 4420) (check-in: 4dbeb915b3 user: danielk1977 tags: trunk)
10:53
Add another test file to help verify thread-safety. (CVS 4419) (check-in: c758cc1d88 user: danielk1977 tags: trunk)
07:35
Enhance thread001.test again, this time to also test in shared-cache mode. (CVS 4418) (check-in: 54f8789903 user: danielk1977 tags: trunk)
06:23
Upgrade thread001.test to test with multiple database handles. (CVS 4417) (check-in: 6ee2b8ffc4 user: danielk1977 tags: trunk)
06:12
Fix an undeclared identifier in an IOTRACE (debugging) block. (CVS 4416) (check-in: 48e59c747f user: danielk1977 tags: trunk)
2007-09-07
18:40
Modify test_thread.c to use tcl apis for creating threads. (CVS 4415) (check-in: 9b7bab7fc2 user: danielk1977 tags: trunk)
14:32
Fix a segfault that could occur while attempting to add new pages to the freelist in a corrupt database. (CVS 4414) (check-in: c8e85fff7e user: drh tags: trunk)
11:29
Add the beginning of the thread-safety tests. There are more to come. (CVS 4413) (check-in: 753908e841 user: danielk1977 tags: trunk)
01:12
Modify the CLI so that it will ignore whitespace at the end of lines. Ticket #2631 (CVS 4412) (check-in: f780a17f4b user: drh tags: trunk)
2007-09-06
23:39
Throw an error on an attempt to open a database where the page size is larger than SQLITE_MAX_PAGE_SIZE. Ticket #2628. (CVS 4411) (check-in: 4881f7cb37 user: drh tags: trunk)
23:28
Base the name of the statement journal on the original database filename. Remember the statement journal name for the lifetime of the Pager so that the name pointer passed to xOpen persists as long as the file exists. (CVS 4410) (check-in: 44d8d1e92d user: drh tags: trunk)
22:19
Allocate page cache headers and page cache data buffers separately. The data buffer will be a power of two in size and this gives some malloc implementation additional optimization opportunitites. (CVS 4409) (check-in: 2b755defe5 user: drh tags: trunk)
13:49
Updated comments on journal.c. No changes to code. (CVS 4408) (check-in: 3298441086 user: drh tags: trunk)
07:47
Add some extra comments to the header in test_async.c. (CVS 4407) (check-in: 79cf4e886c user: danielk1977 tags: trunk)
2007-09-05
22:28
Fix temp file handling for OS/2 so that trailing slashes or backslashes are stripped off the path gotten from the environment. Otherwise full paths might contain multiple slashes which causes opening of files to fail. (CVS 4406) (check-in: 96aa96ac11 user: pweilbacher tags: trunk)
17:06
Fix a harmless typo in the PRNG initialization on win32. Ticket #2617. (CVS 4405) (check-in: ea1d76e3fa user: drh tags: trunk)
16:54
Fix error handling (malloc and io errors) in the asynchronous backend. (CVS 4404) (check-in: 80a44382d1 user: danielk1977 tags: trunk)
14:32
Test that the asynchronous backend works with components like "." or ".." in the path to the database file. (CVS 4403) (check-in: 0a87a85422 user: danielk1977 tags: trunk)
14:30
Restore the sqlite3_mutex_try() optimization on winNT systems. (CVS 4402) (check-in: 3aace2fa91 user: drh tags: trunk)
13:56
Remove the unixFile.isOpen variable (no longer in use). (CVS 4401) (check-in: 1786e9c881 user: danielk1977 tags: trunk)
11:34
Fix a problem in the test scripts for the asynchronous backend. (CVS 4400) (check-in: 630fc71f3d user: danielk1977 tags: trunk)
2007-09-04
22:31
Do not use the TryEnterCriticalSection API on windows since it is unavailable on some platforms. (CVS 4399) (check-in: bf3d67d1bd user: drh tags: trunk)
18:28
Add external locking to test_async.c. There are still some tests to come. (CVS 4398) (check-in: 3794dcd31a user: danielk1977 tags: trunk)
15:38
Fix a problem whereby the *ppVtab output buffer passed to sqlite3_module.xConstruct() could be invalidated (freed) if a malloc() failure occured within a call to sqlite3_declare_vtab(). (CVS 4397) (check-in: efd61df1b9 user: danielk1977 tags: trunk)
14:31
Add internal locking to the test_async.c backend. So that more than one connection may be used from within a single process. (CVS 4396) (check-in: 17ca684c12 user: danielk1977 tags: trunk)
12:18
Clarify documentation on the return value from sqlite3_column_blob() for a zero-length BLOB. Clarify the documentation on what happens when you have a zeroblob() with a negative length. Additional test cases but no changes to code. Ticket #2623. (CVS 4395) (check-in: 63ca02a5b2 user: drh tags: trunk)
12:00
Documentation fixes. No changes to code. Tickets #2622 and #2624. (CVS 4394) (check-in: 2eadef9016 user: drh tags: trunk)
03:28
Fix yet another typo on the homepage. Ticket #2621. (CVS 4393) (check-in: d5fec87310 user: drh tags: trunk)
03:08
Fix a typo on the homepage. Ticket #2619. (CVS 4392) (check-in: deecd934e6 user: drh tags: trunk)
02:38
Version 3.5.0 Alpha (CVS 4391) (check-in: 1b690be22a user: drh tags: trunk)
01:58
More documentation changes prior to the 3.5.0 alpha release. (CVS 4390) (check-in: b15b03dfd6 user: drh tags: trunk)
01:25
Fix the malloc-10 test in malloc.test so that it will run on windows when invoked from exclusive3.test. (CVS 4389) (check-in: 1166f9c7d1 user: drh tags: trunk)
2007-09-03
22:15
Fix Makefile.in so that it rebuilds all source files that use SQLITE_TEST when constructing the testfixture. (CVS 4388) (check-in: dced71a010 user: drh tags: trunk)
22:00
Fix btree.c so that it works with -DSQLITE_THREADSAFE=0 and -DSQLITE_DEBUG=1 (CVS 4387) (check-in: fee2d7c0e6 user: drh tags: trunk)
20:32
Documentation updates in preparation for the release of version 3.5.0. (CVS 4386) (check-in: c6809bf776 user: drh tags: trunk)
18:01
In sqllimits1.test, set MAX_SQL_LENGTH to a value smaller than MAX_LENGTH. (CVS 4385) (check-in: 51726a9bb6 user: danielk1977 tags: trunk)
17:42
Unix OS interface returns SQLITE_CANTOPEN following a getcwd() failure. (CVS 4384) (check-in: ed15db4610 user: drh tags: trunk)
17:30
Remove an unreachable case from xferOptimization(). Also other minor test coverage improvements. (CVS 4383) (check-in: 75af7189c0 user: danielk1977 tags: trunk)
17:09
Fix the open file counter on windows. (CVS 4382) (check-in: 40cf0c1776 user: drh tags: trunk)
17:02
Get the io.test tests working on windows. (CVS 4381) (check-in: 1be70015e2 user: drh tags: trunk)
16:45
Fix the incrblob.test on windows. Disable line terminator translation. (CVS 4380) (check-in: ccbd2efeba user: drh tags: trunk)
16:12
Enable threadsafe builds by default in configure. Ticket #2606. Changes to test scripts to do better testing under all configurations. (CVS 4379) (check-in: d66e08fd4f user: drh tags: trunk)
15:42
Test script fixes to get things running under varying configurations. No changes to code. (CVS 4378) (check-in: 340a6d09bc user: drh tags: trunk)
15:26
Remove the last traces of SQLITE_ENABLE_REDEF_IO. (CVS 4377) (check-in: 38dff76ddf user: drh tags: trunk)
15:19
Honor the SQLITE_OPEN_ flags passed into sqlite3_open_v2(). Some test cases added but more are needed. Ticket #2616. (CVS 4376) (check-in: 020a2b10d4 user: drh tags: trunk)
15:03
Fix a problem in hash.c when replacing entries in tables configured with copyKey==0. (CVS 4375) (check-in: a19d3a73a9 user: danielk1977 tags: trunk)
13:06
Improvements to the xRandomness() method on the default windows VFS. Ticket #2615. (CVS 4374) (check-in: 91b50f31e3 user: drh tags: trunk)
12:34
Document the fact that xRandomness is only called once from the default VFS. Ticket #2614. (CVS 4373) (check-in: e89d4131a1 user: drh tags: trunk)
11:51
Add a module-destructor to the echo module (test8.c) to improve code coverage. (CVS 4372) (check-in: e3dd365142 user: danielk1977 tags: trunk)
11:04
Handle transient malloc() failures in sqlite3CreateFunc(). (CVS 4371) (check-in: c0ce631964 user: danielk1977 tags: trunk)
07:31
Fixes to test code so that the test suite passes without SQLITE_MEMDEBUG defined. (CVS 4370) (check-in: ed2a2e0102 user: danielk1977 tags: trunk)
2007-09-02
17:52
The sqlite3_vfs_register() interface now calls sqlite3_vfs_find(0) to make sure the VFS subsystem is initialized. Ticket #2611. (CVS 4369) (check-in: 4a9999a36d user: drh tags: trunk)
17:50
Fix function name typo in mem1.c. This bug managed to make it into the tree because the code in mem1.c is only compiled when the -DSQLITE_MEMDEBUG compile-time option is omitted. But pre-checkin tests usually include this option. Ticket #2612. (CVS 4368) (check-in: 59e02db240 user: drh tags: trunk)
2007-09-01
18:24
Fix a bug in jrnlTruncate(). And other coverage improvements. (CVS 4367) (check-in: 02b751fb9d user: danielk1977 tags: trunk)
18:17
Comment changes in sqlite.h.in in order to generate better capi3ref.html documentation. (CVS 4366) (check-in: 2804745956 user: drh tags: trunk)
17:00
Remove code for calling the SQL function randstr() with 0 or 1 argument, as it is registered with sqlite as requiring exactly 2. Also test io errors in sqlite3_release_memory(). (CVS 4365) (check-in: 5842f68c1b user: danielk1977 tags: trunk)
16:16
Remove the syncOk argument to pager_recycle. Now that sqlite3_memory_release uses a global lru list of page, it is no longer required. (CVS 4364) (check-in: fb27692ab1 user: danielk1977 tags: trunk)
11:04
Test sqlite3_bind_zeroblob(). Only include sqlite3Utf8To8 in builds if SQLITE_DEBUG is defined. (CVS 4363) (check-in: fde6142b7b user: danielk1977 tags: trunk)
10:01
Allow sqlite3GetInt32 to recognize 10-digit decimal numbers as 32-bit. (CVS 4362) (check-in: 7571345d20 user: danielk1977 tags: trunk)
09:02
Fix a problem handling a malloc() failure in printf.c. Also some other things to improve test coverage. (CVS 4361) (check-in: 595bfe72f0 user: danielk1977 tags: trunk)
06:51
Fix for registration of non-default vfs objects. (CVS 4360) (check-in: 5f48fb95c2 user: danielk1977 tags: trunk)
06:19
Fix a bug in loadext.test. (CVS 4359) (check-in: 2be8af9d40 user: danielk1977 tags: trunk)
05:57
Call sqlite3OsDlError to obtain error information after DlOpen or DlSym fail. (CVS 4358) (check-in: 3d74256c91 user: danielk1977 tags: trunk)
02:13
Change the windows tempfile name generator so that it uses 119 bits of randomness and does not bother to check to see if the file already exists. Ticket #2608. (Unable to test from this machine, but the changes are simple and isolated. Hope it works.) (CVS 4357) (check-in: ca6c1e3f44 user: drh tags: trunk)
2007-08-31
18:50
Get make doc working again. (CVS 4356) (check-in: 8f73ebc6e3 user: drh tags: trunk)
18:34
Remove the xLockState method for sqlite3_io_methods. Replace it with a defined call to xFileControl(). This simplifies the interface and also gives us coverage testing of sqlite3_file_control(). (CVS 4355) (check-in: 306586c412 user: drh tags: trunk)
17:42
Allow sqllimits1.test to be run from a regular build of testfixture. Add the 'amalgamation-testfixture' target to main.mk - to build testfixture via sqlite3.c. (CVS 4354) (check-in: d119427314 user: danielk1977 tags: trunk)
16:11
Initial implementation of the sqlite3_file_control() interface. Compiles and passes all historical tests but the new method is itself untested. (CVS 4353) (check-in: d3ab3e3911 user: drh tags: trunk)
14:31
Convert the TCL interface to use sqlite3_open_v2 (CVS 4352) (check-in: 3434b7a921 user: drh tags: trunk)
05:00
Fix a problem in malloc3.test preventing all.test from completing. No code changes. (CVS 4351) (check-in: ee9b3e5e38 user: danielk1977 tags: trunk)
2007-08-30
20:09
Add the experimental sqlite3_threadsafe() API. (CVS 4350) (check-in: 1b39a714ef user: drh tags: trunk)
20:09
Fix the loadable extension module so that it will compile with SQLITE_THREADSAFE=0. (CVS 4349) (check-in: a73a8b50f7 user: drh tags: trunk)
20:01
Fix discrepency in the test pointed out by a user. Was testing fts2 :-). (CVS 4348) (check-in: 65c62ed85e user: shess tags: trunk)
19:56
Fix memory leak reported by an fts1 user. Was losing a doclist on a query error. (CVS 4347) (check-in: eee0250249 user: shess tags: trunk)
17:15
Make mutex functions available to loadable extensions. Fix the amalgamation generator to include the latest source files. (CVS 4346) (check-in: 293a3f837b user: drh tags: trunk)
16:46
Fix a memory leak in the win32 OS driver. Ticket #2602. (CVS 4345) (check-in: 1f80cf5e75 user: drh tags: trunk)
16:30
Fix the "test_destructor" test function in utf-16 mode. Fix for test failure in utf16 version of func.test. (CVS 4344) (check-in: c073b78040 user: danielk1977 tags: trunk)
16:23
Make the latest interfaces usable by loadable extensions. (CVS 4343) (check-in: e9b2700b8c user: drh tags: trunk)
16:13
Prevent sqlite from opening directories as databases under unix. Fix for test cae in misc7.test. (CVS 4342) (check-in: e30546504c user: danielk1977 tags: trunk)
15:46
Check in extra fixes for malloc4.test. (CVS 4341) (check-in: 49ce3a8381 user: danielk1977 tags: trunk)
15:16
Fixes for malloc4.test. (CVS 4340) (check-in: 23746924db user: danielk1977 tags: trunk)
15:05
Fix the SQLITE_MIXED_ENDIAN_64BIT_FLOAT option so that it works on goofy linux kernels that employ CONFIG_FPE_FASTFPE. Patch from Frank van Vugt. (CVS 4339) (check-in: 71ab92e900 user: drh tags: trunk)
14:58
Fix a ref-count problem in the TCL bindings. Ticket #2597. (CVS 4338) (check-in: 18a5babb72 user: drh tags: trunk)
14:49
Remove the SYNC_BARRIER flag. (CVS 4337) (check-in: 5a22d8695b user: danielk1977 tags: trunk)
14:41
Fixes to malloc3.test so that it can run in transient or persistent failure mode. (CVS 4336) (check-in: e14e3688eb user: danielk1977 tags: trunk)
14:10
Bug fixes in the mutex header file. Tickets #2599 and #2600. (CVS 4335) (check-in: 4bdfe1419c user: drh tags: trunk)
11:48
Fixes for failures in fuzz_malloc.test. (CVS 4334) (check-in: d3e5022638 user: danielk1977 tags: trunk)
10:49
Fix some problems in async2.test. No code changes. (CVS 4333) (check-in: d80d87c239 user: danielk1977 tags: trunk)
10:07
Better handle a malloc() failure in sqlite3PagerSetPagesize(). (CVS 4332) (check-in: 41550d87c9 user: danielk1977 tags: trunk)
08:27
Fix a bug in a test file causing malloc5.test to crash. (CVS 4331) (check-in: ab09967bd2 user: danielk1977 tags: trunk)
08:08
Add tests for malloc() failure when the atomic-write optimization is being used. Also fix things so that rollback can occur without a malloc(), even if there is a master journal file. (CVS 4330) (check-in: 481fd3a89e user: danielk1977 tags: trunk)
02:26
Test case fixes for fulltest. (CVS 4329) (check-in: cddce49505 user: drh tags: trunk)
01:19
Fix for the sqlite3AbortOtherActiveVdbes() problem. (CVS 4328) (check-in: e40d40a5d4 user: drh tags: trunk)
2007-08-29
19:15
Fix minor problems on various tests. This is a snapshot prior to possible major changes in order to fix the sqlite3AbortOtherActiveVdbes problem. (CVS 4327) (check-in: 35cb63ecfd user: drh tags: trunk)
18:20
Fix a bug in test_server.c that resulted from the change in semantics of sqlite3_enable_shared_cache(). All quick tests now pass. (CVS 4326) (check-in: 5201fa4f83 user: drh tags: trunk)
17:59
Disable tests that require SQLITE_ENABLE_ATOMIC_WRITE if that feature is not enabled. (CVS 4325) (check-in: 4874499377 user: drh tags: trunk)
17:43
Improvements to mutex asserts. The quick test runs to completion without assertion faults. (CVS 4324) (check-in: 2732af0ec7 user: drh tags: trunk)
14:06
Use the DbMalloc() and DbRealloc() functions more consistently. (CVS 4323) (check-in: c790c234c3 user: danielk1977 tags: trunk)
13:45
Be careful to verify the schema cookie when running the xfer optimization on INSERT statements. (CVS 4322) (check-in: d8ef702417 user: drh tags: trunk)
12:31
Modifications to the malloc failure tests to test transient and persistent failures. (CVS 4321) (check-in: e38ef81b85 user: danielk1977 tags: trunk)
04:00
Better asserts(). But now some of the tests are busted again. (CVS 4320) (check-in: e8060f85e7 user: drh tags: trunk)
00:33
More locking fixes. Now makes it all the way through quick.test. There are errors but no assertion faults. Progress. (CVS 4319) (check-in: 844d40b837 user: drh tags: trunk)
2007-08-28
23:28
The shared_err test runs with no errors. But a potential deadlock has been discovered and is still unfixed. (CVS 4318) (check-in: f093a0d7b2 user: drh tags: trunk)
23:28
The shared_err test runs with no errors. But a potential deadlock has been discovered and is still unfixed. (CVS 4317) (check-in: f84550be0a user: drh tags: trunk)
22:24
Clean up the locking in the btree logic. (CVS 4316) (check-in: 967ab229af user: drh tags: trunk)
20:36
Fix memory leak of InteriorReader.term. Comes up when doing queries against large segments. (CVS 4315) (check-in: 6c617bd89f user: shess tags: trunk)
19:21
remove unused os_os2.h (CVS 4314) (check-in: dd43a2de3e user: pweilbacher tags: trunk)
16:44
Fix locking bug in btshared.c. (CVS 4313) (check-in: af24e7d01a user: drh tags: trunk)
16:34
Break up the mutex implementation into separate source files, one each for unix, w32, and os2. (CVS 4312) (check-in: fc5cd71aef user: drh tags: trunk)
15:47
Updates to the sqlite3_open() documentation. Method the magic :memory: filename. Ticket #2591. (CVS 4311) (check-in: 5f55b2fc4e user: drh tags: trunk)
15:21
Update the sqlite3_vfs_register() documentation to make the behavior undefined for VFSes with a NULL or empty string as the name or with duplicate names. (CVS 4310) (check-in: e7a98b4838 user: drh tags: trunk)
08:19
Use "affected" instead of "effected". Ticket #2589. No code changes. (CVS 4309) (check-in: 4c5631ce34 user: danielk1977 tags: trunk)
08:00
Add some comments and test-cases for the global lru page list (used by sqlite3_release_memory()). (CVS 4308) (check-in: 0b80168895 user: danielk1977 tags: trunk)
02:27
Work toward correct btree locking in a multithreaded environment. (CVS 4307) (check-in: b8cc493b47 user: drh tags: trunk)
2007-08-27
23:48
Disable tests that debug on SQLITE_MEMDEBUG when that macro is not defined. (CVS 4306) (check-in: 741d6fb096 user: drh tags: trunk)
23:38
Fix the autoconf makefile with all the latest changes. (CVS 4305) (check-in: bc6d73d015 user: drh tags: trunk)
23:26
Work around problem with forward declarations of constants in MSVC in the amalgamation. Ticket #2574. (CVS 4304) (check-in: dc80b2e1f4 user: drh tags: trunk)
21:49
Bring the amalgamation builder up to date with the latest changes. Remove some vestigial code. (CVS 4303) (check-in: 0ae30e5c76 user: drh tags: trunk)
21:10
Added the 34to35.html document describing the changes between 3.4.2 and 3.5.0. Minor interface cleanups. (CVS 4302) (check-in: 0791f917bb user: drh tags: trunk)
17:27
Modify sqlite3_release_memory() to use a global LRU list of pages. Untested. (CVS 4301) (check-in: 5626ce0b5e user: danielk1977 tags: trunk)
2007-08-25
16:31
Create a fresh pthread_mutexattr_t every time a recursive mutex is allocated. Ticket #2588. (CVS 4300) (check-in: 3d746343ad user: drh tags: trunk)
16:21
Documentation and comment updates in sqlite.h.in and mutex.c. (CVS 4299) (check-in: 7289079d6b user: drh tags: trunk)
14:49
Clarification in the documentation of the sqlite3_mutex_held() and sqlite3_mutex_notheld() interfaces. Make it clear that these routines are only for use inside assert(). (CVS 4298) (check-in: a6bbf6eaf6 user: drh tags: trunk)
14:39
Use recursive mutexes in pthreads. If the pthreads implementation does not support recursive mutexes, then you cannot compile SQLite with SQLITE_THREADSAFE=1. Ticket #2588. (CVS 4297) (check-in: 1668284d15 user: drh tags: trunk)
13:37
Update the rest of the malloc failure test scripts to use the new interface. (CVS 4296) (check-in: b076e1655d user: danielk1977 tags: trunk)
13:09
Fix bugs in the altermalloc.test and incrblob_err.test scripts. (CVS 4295) (check-in: e5ec170717 user: danielk1977 tags: trunk)
12:39
Update the async2.test test script to use the new malloc() failure simulation interface. (CVS 4294) (check-in: 686fcfeda4 user: danielk1977 tags: trunk)
12:29
Make the test_async backend work again. (CVS 4293) (check-in: 04167483aa user: danielk1977 tags: trunk)
03:59
Bug fix in the implementation of recursive mutexes using non-recursive pthreads mutexes. Ticket #2588. (CVS 4292) (check-in: 7d24c3a5a7 user: drh tags: trunk)
2007-08-24
20:46
New mutex implementation for both Unix and windows. (CVS 4291) (check-in: e144b81f69 user: drh tags: trunk)
18:32
fix cleanup by removing sqlite3.pc (generated by 'configure') on 'make distclean', too (CVS 4290) (check-in: 3c90864835 user: rse tags: trunk)
17:52
Rework the win32 OS driver to use malloc()/free() directly rather than going through the SQLite memory allocation layer. With this change, the complete quick.test script now runs on windows. There are a few errors, but no segfaults. Progress. (CVS 4289) (check-in: 75aad31698 user: drh tags: trunk)
16:29
Fix bugs in temp database handling introduced by the prevous check-in. (CVS 4288) (check-in: 300038be93 user: drh tags: trunk)
16:08
Remove nRef and vfsMutex from the sqlite3_vfs structure. Omit the sqlite3_vfs_release() interface. Less memory allocated for a pager in the common case where the size of the pathname is less than MAX_PATH. (CVS 4287) (check-in: b8451da378 user: drh tags: trunk)
11:52
Select the default page size for new databases based on the sector-size and IOCAP flags. (CVS 4286) (check-in: 13dda2e8e8 user: danielk1977 tags: trunk)
11:43
Remove unnecessary sqlite3MallocDisallow() that was preventing win32 from running. (CVS 4285) (check-in: eb6c98fc10 user: drh tags: trunk)
08:15
Add tests to simulate power-failure on devices that support IOCAP_SEQUENTIAL or IOCAP_SAFE_APPEND. (CVS 4284) (check-in: bdf5cb8d25 user: danielk1977 tags: trunk)
04:15
Bug fix in the memory leak trace output. (CVS 4283) (check-in: a1b495c28a user: drh tags: trunk)
03:51
The win32 driver compiles but does not yet work well. Many bugs fixed. (CVS 4282) (check-in: 3a68fcddfa user: drh tags: trunk)
2007-08-23
20:28
Make comments and variable naming more consistent WRT rowid versus docid/blockid. This should have no code impact. (CVS 4281) (check-in: 76f1e18ebc user: shess tags: trunk)
20:23
Fix fts3 to not have the VACUUM bug from fts2. %_content.docid is an alias to fix the rowid for documents, %_segments.blockid is an alias to fix the rowid for segment blocks. Unit test for the problem. (CVS 4280) (check-in: 6eb2d74a8c user: shess tags: trunk)
16:27
Add some warm-body tests for rollback journal i/o enhancements. (CVS 4279) (check-in: ff3770f855 user: danielk1977 tags: trunk)
14:48
Add code to reduce rollback journal i/o based on IOCAP flags. As yet untested. (CVS 4278) (check-in: 595568492e user: danielk1977 tags: trunk)
11:47
Ensure temporary files are deleted when they are closed. (CVS 4277) (check-in: cf4e3c158a user: danielk1977 tags: trunk)
11:07
Add some further tests and a bugfix for the atomic-write optimization. (CVS 4276) (check-in: 5f0fb894f4 user: danielk1977 tags: trunk)
08:06
Add some tests for the atomic-write optimization. (CVS 4275) (check-in: e2cc7b4a34 user: danielk1977 tags: trunk)
02:50
Change names of constants in lemon.c to work around name conflicts on Solaris. Ticket #2583. (CVS 4274) (check-in: e4e74cd0f9 user: drh tags: trunk)
02:47
Improvements to memory leak detection. The --backtrace=NNN option is now recognized by tester.tcl. Memory leak summaries are automatically written to the file ./memleak.txt and each leak is tagged with the test in which it occurred. The quick.test script runs on Linux with no errors and no leaks. (CVS 4273) (check-in: 21f6b31097 user: drh tags: trunk)
2007-08-22
22:04
All of the malloc test cases run. Still seeing failures in malloc4.test. (CVS 4272) (check-in: 205d0b881d user: drh tags: trunk)
20:18
The malloc.test script now passes all tests with no errors. (CVS 4271) (check-in: db818430e9 user: drh tags: trunk)
18:54
Fix a bug in the logic for journaling pages when the device sector-size is greater than the page size. (CVS 4270) (check-in: b6399dff13 user: danielk1977 tags: trunk)
11:41
Get the quick.test script running with SQLITE_THREADSAFE enabled. (CVS 4269) (check-in: 1f28b7e47b user: drh tags: trunk)
11:22
Add code for the atomic-write optimisation. Disabled by default. (CVS 4268) (check-in: 581fadfe31 user: danielk1977 tags: trunk)
02:57
Remove a debugging btree_breakpoint from vtab1.test. (CVS 4267) (check-in: 6cc8641ed2 user: drh tags: trunk)
02:56
A complete run of quick.test with mutex debugging enabled. (CVS 4266) (check-in: 783e07d561 user: drh tags: trunk)
00:39
Reenable the memory management logic. The quick.test script now runs with SQLITE_MEMDEBUG and SQLITE_ENABLE_MEMORY_MANAGEMENT. 7 minor errors. (CVS 4265) (check-in: 1914044b88 user: drh tags: trunk)
2007-08-21
20:25
All mutexing and locking appears to be in place. Now we just have to test it and make it all work. (CVS 4264) (check-in: 0f7941aef9 user: drh tags: trunk)
19:33
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) (check-in: 9287276191 user: drh tags: trunk)
16:15
Adding more thread locking code. This is an incremental check-in. (CVS 4262) (check-in: 7428732b1f user: drh tags: trunk)
15:13
Readded the sqlite3_open_v2() interface. No test cases yet. Additional progress toward adding mutexes to all interfaces. (CVS 4261) (check-in: 3787563e90 user: drh tags: trunk)
14:27
Delay opening temporary pager files until they are first written. (CVS 4260) (check-in: 3fb97a63ef user: danielk1977 tags: trunk)
13:51
Remove the obsolete static mutexes. Use only the lastest static mutex code. (CVS 4259) (check-in: 6225cd461c user: drh tags: trunk)
13:30
Add the tests that go with the previous commit. (CVS 4258) (check-in: a87f32e13e user: danielk1977 tags: trunk)
13:11
Avoid journalling an extra page when a btree insert operation uses the 'quick-balance' trick. (CVS 4257) (check-in: 0da4820914 user: danielk1977 tags: trunk)
13:07
Fix some problems in the crash-test backend. (CVS 4256) (check-in: 5bced2392a user: danielk1977 tags: trunk)
10:44
Remove unnecessary #includes of "os.h". New mutex implementations. (CVS 4255) (check-in: fbbd5bda54 user: drh tags: trunk)
2007-08-20
23:50
The quick test runs again with a handfull of errors after adding the mutex locks to btree, the VFS registration interfaces, and FTS3. (CVS 4254) (check-in: 6cf725d212 user: drh tags: trunk)
22:48
Work toward multithreading support. Currently crashes quickly on a test. (CVS 4253) (check-in: 1315bd8e12 user: drh tags: trunk)
17:53
Oops - a random fts2 test I had abandoned slipped into the fts3 batch. (CVS 4252) (check-in: 709f2aa18a user: shess tags: trunk)
17:38
Replicate the fts2*.test files as fts3a*.test, and convert fts2 to fts3 in the text of the files. (CVS 4251) (check-in: 24739f148e user: shess tags: trunk)
17:37
Add support for building with fts3. (CVS 4250) (check-in: 95ef963232 user: shess tags: trunk)
17:37
Copy fts2 to fts3, renaming, and replacing references to fts2 with fts3, including capitalization variants. (CVS 4249) (check-in: 216c91d2fc user: shess tags: trunk)
16:07
Call sqlite3OsSleep() with an argument in microseconds, not milliseconds. (CVS 4248) (check-in: 917790413c user: danielk1977 tags: trunk)
14:23
Changes to crash-test io backend (test6.c) so that it works with the sqlite3_vfs interface. (CVS 4247) (check-in: 40f66ada81 user: danielk1977 tags: trunk)
13:14
Bug fix in BTree shared cache locking code. (CVS 4246) (check-in: 399d3e7552 user: drh tags: trunk)
11:12
Get main.c to compile when HAVE_USLEEP is 0. (CVS 4245) (check-in: b27f022fb9 user: drh tags: trunk)
06:44
Update the locking-style code in os_unix.c. The updates are as yet untested. (CVS 4244) (check-in: 41f2175b1e user: danielk1977 tags: trunk)
05:36
Fix full_fsync() related functionality broken as part of the migration to sqlite3_vfs. (CVS 4243) (check-in: cb24cda179 user: danielk1977 tags: trunk)
2007-08-18
10:59
Further progress on migration to sqlite3_vfs. (CVS 4242) (check-in: a258c4ec24 user: danielk1977 tags: trunk)
2007-08-17
16:50
Remove some old OsFile and IoMethod related code. Add the sqlite3OsLockState function. (CVS 4241) (check-in: 08a0f48028 user: danielk1977 tags: trunk)
15:53
Begin migration to using sqlite3_vfs interface. (CVS 4240) (check-in: af3e3c7acd user: danielk1977 tags: trunk)
01:14
Begin adding mutexes. Compiles without SQLITE_OMIT_SHARED_CACHE but we get an assertion fault on the shared cache testing. (CVS 4239) (check-in: 4c1e9ffebe user: drh tags: trunk)
2007-08-16
19:40
Change the design of the mutex interface to allow for both "fast" and "recursive" mutexes. (CVS 4238) (check-in: 160593dcc5 user: drh tags: trunk)
13:01
Remove the thread specific data subsystem from the unix build. Remove legacy cruft from sqliteInt.h. Use the new mutex subsystem in the PRNG. (CVS 4237) (check-in: 3d60c14a32 user: drh tags: trunk)
12:24
Combine sqlite3DbOfVdbe() and sqlite3VdbeDb() into a single function. (CVS 4236) (check-in: ba80ee59a7 user: drh tags: trunk)
11:36
Fix some more small problems introduced by recent refactoring. (CVS 4235) (check-in: 5e2795d0eb user: danielk1977 tags: trunk)
10:36
Replace a few sqlite3_malloc() calls that should be sqlite3MallocZero(). (CVS 4234) (check-in: 384d0ca9bc user: danielk1977 tags: trunk)
10:09
More work on refactoring of malloc() interfaces. There are still many errors. (CVS 4233) (check-in: 77b1671351 user: danielk1977 tags: trunk)
04:39
Add a test for malloc() failure when compiling a trigger step of the form "INSERT INTO ... SELECT ...". Currently causes a segfault. (CVS 4232) (check-in: 161643a694 user: danielk1977 tags: trunk)
04:30
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) (check-in: deb7ecd65f user: drh tags: trunk)
2007-08-15
20:41
Enhancements and smoke testing of the new memory allocation subsystem. Have not yet cut it over to the core, though. (CVS 4230) (check-in: 1dad2c0a1f user: drh tags: trunk)
19:16
Test infrastructure for the new memory subsystem. (CVS 4229) (check-in: 9e50665672 user: drh tags: trunk)
17:08
Modify the crash-recovery test code in test6.c for 3.5. Also change some other code to use the new sqlite3_io_methods interface. Lots of things are broken now. (CVS 4228) (check-in: af9503daf3 user: danielk1977 tags: trunk)
17:07
Add a debugging memory allocator. (CVS 4227) (check-in: 8d2d1c4ff9 user: drh tags: trunk)
13:04
Add initial implementations of mutex and memory subsystem modules. (CVS 4226) (check-in: c0fa376979 user: drh tags: trunk)
11:28
Revisions to the interface design for 3.5. (CVS 4225) (check-in: 174116f7c0 user: drh tags: trunk)
2007-08-14
18:03
Clarify documentation on sqlite3_interrupt(). (CVS 4224) (check-in: 0b5b526c9d user: drh tags: trunk)
17:42
Add comments describing upcoming changes to crash-test module (test6.c). No code changes. (CVS 4223) (check-in: 63631c1737 user: danielk1977 tags: trunk)
13:20
Back-port critical soft heap limit fixes to version 3.3.17. The following check-ins were back-ported: (4031), (4037), (4097), (4202), (4203), (4207), (4208), (4214). (CVS 4222) (Leaf check-in: f0029da32f user: drh tags: branch_3_3_17)
01:58
Add a first cut at the new version 3.5 interface definitions to sqlite.h.in. (CVS 4219) (check-in: 0a57f3dd4d user: drh tags: trunk)
2007-08-13
20:31
Version 3.4.2 (CVS 4218) (check-in: 64989904d4 user: drh tags: trunk, release)
16:15
Update version number of documentation in preparation for version 3.4.2. (CVS 4217) (check-in: 1ed51e3ca0 user: drh tags: trunk)
15:28
Invalidate prepared SQL statements when rolling back a transaction that includes schema modifications. (CVS 4216) (check-in: a07143fc05 user: danielk1977 tags: trunk)
15:18
Disable tests that require 80-bit long doubles when the host only provides 64-bit long doubles. Ticket #2570. (CVS 4215) (check-in: 4f4f8ef416 user: drh tags: trunk)
14:56
Fix a page leak in btree balance routines that follows a malloc failure. This problem detected by the new soft-heap-limit testing. (CVS 4214) (check-in: bad661bb0b user: drh tags: trunk)
14:41
When loading a database schema, do not clear the SQLITE_InternChanges flag. This fixes the problem illustrated by (4211). (CVS 4213) (check-in: 540a7b28bc user: danielk1977 tags: trunk)
12:58
Fix the test labels in mallocC.test. (CVS 4212) (check-in: 7d4cdff444 user: drh tags: trunk)
12:39
Add a new test cases for a problem with malloc failure during the parsing of CREATE TABLE statements in autovacuum mode. (CVS 4211) (check-in: be50387e65 user: drh tags: trunk)
11:10
Remove a memory allocation from sqlite3VdbeIOTraceSql(). This means that when doing I/O tracing, the text of an SQL statement is truncated to the first 1000 characters. But it also means tracing works in an out-of-memory situation. (CVS 4210) (check-in: 578da2476e user: drh tags: trunk)
2007-08-12
20:07
Updates to test scripts for better support of soft-heap-limit testing. (CVS 4209) (check-in: 990f621f22 user: drh tags: trunk)
2007-08-11
00:26
Backout check-in (4206) and replace it with a much better and more general fix for the problem identified in ticket #2565. (CVS 4208) (check-in: 7961a73850 user: drh tags: trunk)
2007-08-10
23:56
Fix some incorrect asserts() in the pager - problems brought to light by the new soft-heap-limit testing apparatus of check-in (4202). (CVS 4207) (check-in: 51f3e01b74 user: drh tags: trunk)
23:54
Fix the corruption problem of ticket #2565 as demonstrated by the test added in (4204). There may yet be other instances of similar problems lurking in the code. (CVS 4206) (check-in: 7ed2f59e70 user: drh tags: trunk)
23:47
Convert fts2 to use sqlite3_prepare_v2() to prevent certain logic errors around SQLITE_SCHEMA handling. This also allows sql_step_statement() and sql_step_leaf_statement() to be replaced with sqlite3_step().

Also fix a logic error in flushPendingTerms() which was clearing the term table in case of error. This was wrong in the face of SQLITE_SCHEMA. Even though the change to sqlite3_prepare_v2() should cause us not to see SQLITE_SCHEMA any longer, it was still a logic error... (CVS 4205) (check-in: 16730cb137 user: shess tags: trunk)

19:46
Add a test case to reproduce the database corruption problem reported by ticket #2565. (CVS 4204) (check-in: f267ce8094 user: drh tags: trunk)
19:46
Update tests so that they work properly even if the soft-heap-limit is set low. (CVS 4203) (check-in: e01eb99edf user: drh tags: trunk)
16:41
Add the --soft-heap-limit=N option to the test scripts. Set this value to enforce a soft heap limit across all tests. This changes exposes several new bugs. (CVS 4202) (check-in: 8be8459816 user: drh tags: trunk)
2007-08-09
00:00
Fix documentation typos. Tickets #2168 and #2560. (CVS 4201) (check-in: 4333b231af user: drh tags: trunk)
2007-08-08
12:11
More tweaking of linkage. Ticket #2554. (CVS 4200) (check-in: 3759a38fe8 user: drh tags: trunk)
01:04
Additional refinements on the amalgamation: Give a couple of constants file scope and add the SQLITE_API prefix to some interfaces that need it. Ticket #2554. (CVS 4199) (check-in: c09ec102c4 user: drh tags: trunk)
2007-08-07
17:13
Remove all tabs from source code files. Ticket #2556. (CVS 4198) (check-in: 7550dd1d59 user: drh tags: trunk)
17:04
Revise the amalgamation so that all symbols have file scope except those that begin with "sqlite3_". Ticket #2554. (CVS 4197) (check-in: 73db545289 user: drh tags: trunk)
2007-08-05
23:52
Fix some compiler warnings. (CVS 4196) (check-in: 6cc15409ad user: drh tags: trunk)
2007-08-03
08:18
Change some (English language) grammar in faq.tcl. Ticket #2480. No code changes. (CVS 4195) (check-in: e526817f15 user: danielk1977 tags: trunk)
07:33
Avoid reloading the schema when an expired statement is finalized or reset. This is only necessary when the in-memory schema does not match the file-system schema. (CVS 4194) (check-in: 61de5b52da user: danielk1977 tags: trunk)
2007-07-30
23:02
Fix a typo in limits.html. (CVS 4193) (check-in: c709140b51 user: drh tags: trunk)
20:41
Make excess output from the CLI appear inside SQL comments so as not to interfere with generated SQL. Ticket #2544. (CVS 4192) (check-in: 49a2e85511 user: drh tags: trunk)
18:55
Fix ticket #2439: the FTS1 and FTS2 extensions use the non-standard, unportable and highly deprecated <malloc.h> header on all platforms except Apple Mac OS X. The <malloc.h> actually is never required on any OS with an at least partly POSIX-conforming API as the malloc(3) & friends functions officially live in <stdlib.h> since over 10 years. Under some platform like FreeBSD the inclusion of <malloc.h> since a few years even causes an "#error" and this way a build failure. So, just get rid of the bad <malloc.h> usage in FTS1 and FTS2 extensions at all and stick with <stdlib.h> there only. (CVS 4191) (check-in: 3f9a666143 user: rse tags: trunk)
18:31
"extern" declarations inside function bodies are not every compiler's favorite, so move to global scope. Additionally, at least under Unix environment use <unistd.h> to get the proper prototype instead of using a K&R-style own declaration. (CVS 4190) (check-in: 5955a77d6c user: rse tags: trunk)
18:26
Get rid of the following compile-time warnings: tool/mkkeywordhash.c:353: warning: array subscript has type 'char' tool/mkkeywordhash.c:354: warning: array subscript has type 'char' (CVS 4189) (check-in: c01d794479 user: rse tags: trunk)
18:24
Get rid of the following compile-time warning: "src/shell.c:112: warning: 'iotracePrintf' defined but not used" (CVS 4188) (check-in: 271e27fd30 user: rse tags: trunk)
14:40
Fix a bug with explicit collation sequences attached to a column reference expression that is on the right-hand-side of a binary comparison operator. (CVS 4187) (check-in: 7b69968618 user: danielk1977 tags: trunk)
2007-07-26
10:16
Test that an explicit collation sequence overrides an implicit one attached to a 'new' reference (it does). No code changes. (CVS 4186) (check-in: a443b07ed6 user: danielk1977 tags: trunk)
06:50
Fix two obscure memory leaks that can follow a malloc() failure in sqlite3_set_auxdata(). Ticket #2534. (CVS 4185) (check-in: b88af1827b user: danielk1977 tags: trunk)
2007-07-25
00:56
Implement xRename() for fts1 so that it is possible to rename fts1 tables. See http://www.sqlite.org/cvstrac/chngview?cn=4143 (CVS 4184) (check-in: febf75f022 user: shess tags: trunk)
00:38
Replicates http://www.sqlite.org/cvstrac/chngview?cn=4151 which modified fts2:

Modify handling of SQLITE_SCHEMA in fts2 code. An SQLITE_SCHEMA error may cause SQLite to reload the internal schema, deleting and recreating v-table objects. So the sqlite3_vtab structure can be deleted out from under a v-table implementation. (CVS 4183) (check-in: f9020cffda user: shess tags: trunk)

00:28
Sorry, previous check-in included a last-minute "Did it really work?" change :-). (CVS 4182) (check-in: 5db25e369a user: shess tags: trunk)
00:25
Apply change 4095 to fts1. Fix snippet generation when the left-most column of an fts table is used in the MATCH clause. Fix for ticket #2429. (CVS 4181) (check-in: c2ba3cc0f7 user: shess tags: trunk)
2007-07-24
10:22
Remove the comment in the documentation that says that incremental vacuum mode is not persistent because as of 3.4.1 it is persistent. Ticket #2528. (CVS 4180) (check-in: 6c4040941e user: drh tags: trunk)
2007-07-23
22:51
Detect nested aggregate functions even if the inner aggregate function is aliased using an AS clause. Ticket #2526. (CVS 4179) (check-in: de000280c6 user: drh tags: trunk)
19:39
The REPLACE conflict resolution falls back to FAIL when on a CHECK constraint violation. Ticket #2525. (CVS 4178) (check-in: b213614abf user: drh tags: trunk)
19:31
Move prototypes for LEMON-generated parser functions into sqliteInt.h. Ticket #2521. (CVS 4177) (check-in: bc02c7f162 user: drh tags: trunk)
19:26
Check the return value of sqlite3PagerWrite() when autovacuuming. Ticket #2524. (CVS 4176) (check-in: b4a5c62b85 user: drh tags: trunk)
19:12
Rework the UTF8 reader logic in order to avoid the use of malloc(). Ticket #2523. (CVS 4175) (check-in: 9a059cb6bc user: drh tags: trunk)
2007-07-22
19:10
Fix a bad sizeof in vdbe.c. Ticket #2522. (CVS 4174) (check-in: 77ebc3feb0 user: drh tags: trunk)
2007-07-21
19:41
Work around a bug in GCC. Ticket #2469. (CVS 4173) (check-in: 1924ba5207 user: drh tags: trunk)
2007-07-20
20:25
Work around an AFP file system byte-range locking error caused by opening and closing a second file descriptor on the database file as RDWR which clears the exclusive byte-range lock and results in an fcntl error when the AFP locking code attempts to clear it afterwards. This error is caused by the test harness and isn't a flaw in the sqlite or its implementation of AFP file locking. (CVS 4172) (check-in: b2ba3e81fb user: aswift tags: trunk)
13:42
Updates to build scripts. Added scripts for building FTS2 shared libraries. (CVS 4171) (check-in: e269f6e9f6 user: drh tags: trunk)
10:56
Version 3.4.1 (CVS 4170) (check-in: 81a4dd07c1 user: drh tags: trunk)
10:48
Keep sqlite3ext.h backwards compatible. This really should have been part of the previous check-in. (CVS 4169) (check-in: 7cf15a5f65 user: drh tags: trunk)
10:33
Add new APIs to the end of the sqlite3_apis structure in loadext.c, in order to preserve backwards compatibility. Fix an incompatibility introduced by (4108). (CVS 4168) (check-in: 639993490e user: drh tags: trunk)
01:17
Documentation change in preparation for version 3.4.1. (CVS 4167) (check-in: cf227766ac user: drh tags: trunk)
00:35
Fix a memory leak in the Rename method of the echo test virtual table. No changes to the core. (CVS 4166) (check-in: e5c132fff3 user: drh tags: trunk)
00:33
Cleanup unused function in pager.c. This is the conclusion of the fix to ticket #2518. We believe the fix is complete and correct. (CVS 4165) (check-in: 31dba1e933 user: drh tags: trunk)
2007-07-19
22:30
Disable tests that use the progress handler when the progress handler is disabled at compile-time. Followup to ticket #2497. (CVS 4164) (check-in: cbc56fd4ec user: drh tags: trunk)
16:35
Preliminary fix for ticket #2518. Make sure the VACUUM command increments the change counter. (CVS 4163) (check-in: 75263797e2 user: drh tags: trunk)
12:41
Clarify the documentation on the nByte parameter to sqlite3_prepare(). Make it clear that nByte is a maximum string length. Ticket #2516. (CVS 4162) (check-in: d1ae3de461 user: drh tags: trunk)
2007-07-18
18:17
Get the min/max optimization working with descending indices. Ticket #2514. (CVS 4161) (check-in: a80a3c9d0a user: drh tags: trunk)
18:16
Additional diagnostics added to the "out" file generated by lemon. (CVS 4160) (check-in: 7ef2aaf72a user: drh tags: trunk)
2007-07-17
17:22
Fix annoying emacs warning about suspicious line. The change removes a leading space (emacs wants Makefiles to use leading tabs there). (CVS 4159) (check-in: 4daadf659a user: shess tags: trunk)
2007-07-13
10:36
Add an extra integrity_check to the transaction test script. (CVS 4158) (check-in: 5ea43b2db1 user: drh tags: trunk)
10:35
Update documentation to make it clear that VACUUM is free to change implicit rowids. Ticket #2382. (CVS 4157) (check-in: d111b1daa5 user: drh tags: trunk)
10:26
"extern" prototypes cause problems for the Digital Mars compiler. So remove them. Ticket #2502. (CVS 4156) (check-in: f35fbf8070 user: drh tags: trunk)
2007-07-12
13:18
Fix for #2497. Set the database error code to the return value of sqlite3_step(). (CVS 4155) (check-in: b01fda5f50 user: danielk1977 tags: trunk)
2007-07-03
23:37
Fix compilation warnings shown when using strict GCC options for os_os2.c. (CVS 4154) (check-in: 22277b7e1b user: pweilbacher tags: trunk)
05:31
Fix a memory leak in shell.c. Reported on the mailing list. This has only been informally tested. (CVS 4153) (check-in: a008905b39 user: danielk1977 tags: trunk)
2007-07-02
19:31
Fix a comment typo reported on the mailing list. (CVS 4152) (check-in: 25e6df9cdd user: drh tags: trunk)
10:16
Modify handling of SQLITE_SCHEMA in fts2 code. An SQLITE_SCHEMA error may cause SQLite to reload the internal schema, deleting and recreating v-table objects. So the sqlite3_vtab structure can be deleted out from under a v-table implementation. (CVS 4151) (check-in: dee1a0fd28 user: danielk1977 tags: trunk)
2007-07-01
21:18
Remove an unnecessary temporary variable for clarity of presentation in a loop that GCC 4.2.0 is miscompiling. Ticket #2469. GCC 4.2.0 miscompiles this loop regardless of whether or not the temporary variable is used, but by removing the variable, we hope to make it easier to explain the problem to GCC maintainers. The error only appears if -ftree-vrp is used (which is turned on by -O2). (CVS 4150) (check-in: 35ae398bd3 user: drh tags: trunk)
15:41
Change OS/2 version of sqlite3Os2FullPathname() for cross-compiler compatibility: - allocate zBuff on demand (restricted stack space on old compilers) - 2 bytes in zDrive in include '\0' - pass drive number to DosQueryCurrentDir() instead of 0 to make EMX work - zFull does not need to be preallocated (CVS 4149) (check-in: cc21051765 user: pweilbacher tags: trunk)
2007-06-30
16:30
Including os2safe.h from os_os2.c is no longer necessary (now that it's including from os.h) (CVS 4148) (check-in: 6432bbe1c1 user: pweilbacher tags: trunk)
15:24
old emx/gcc sets __EMX__ (with double underscores) as builtin #define (CVS 4147) (check-in: d69204fec7 user: pweilbacher tags: trunk)
2007-06-29
12:04
Set FD_CLOEXEC on all open files under Unix. Ticket #2475. (CVS 4146) (check-in: f1e5fed8eb user: drh tags: trunk)
2007-06-27
23:52
Add a test case to verify that ticket #2470 has been fixed. (CVS 4145) (check-in: b3f442698e user: drh tags: trunk)
17:09
Test error handling when renaming fts2 tables. (CVS 4144) (check-in: 57840eba6a user: danielk1977 tags: trunk)
16:26
Implement xRename() for fts2 so that it is possible to rename fts2 tables. (CVS 4143) (check-in: 488474fde7 user: danielk1977 tags: trunk)
15:53
Allow ALTER TABLE on virtual tables. (CVS 4142) (check-in: 37d1f9f37e user: danielk1977 tags: trunk)
15:01
respect $LDFLAGS from env/configure (CVS 4141) (check-in: 9c13fc0f4b user: vapier tags: trunk)
11:10
Fix for compiling with OMIT_VIRTUALTABLE defined. (CVS 4140) (check-in: 850822e290 user: danielk1977 tags: trunk)
10:21
Fix typo in comments of the sqlite.h.in header file - comments from which documentation is automatically extracted and generated. Ticket #2468. (CVS 4139) (check-in: 53b526203c user: drh tags: trunk)
10:20
Make sure auto_vacuum is turned off before running the tests in pragma2.test. (CVS 4138) (check-in: fc85c8aa16 user: drh tags: trunk)
00:36
Set the connection error code when sqlite3_blob_read() or sqlite3_blob_write() fail. Ticket #2464. (CVS 4137) (check-in: 3bd990be3c user: drh tags: trunk)
00:08
Update the FAQ to describe how moving sqlite3 handles across threads is not safe with SQLITE_ENABLE_MEMORY_MANAGEMENT. Tickets #2357 and #2463. (CVS 4136) (check-in: 2640f518de user: drh tags: trunk)
2007-06-26
22:55
Make sure the TCL bindings always use Tcl_GetWideIntFromObj() even if the reported type is "int" because on x86-64 and "int" type is 64-bits. Ticket #2465. (CVS 4135) (check-in: 5c93324b93 user: drh tags: trunk)
22:42
Fix a test case so that it (hopefully) works on x86-64. Ticket #2465. (CVS 4134) (check-in: 3daf7cae18 user: drh tags: trunk)
22:10
Remove vestigal code from Makefile.linux-gcc. Ticket #2466. (CVS 4133) (check-in: 338c187910 user: drh tags: trunk)
12:54
Reorganize comments in fts2_tokenizer.h. No code changes. (CVS 4132) (check-in: b331e30395 user: danielk1977 tags: trunk)
12:52
Use (((i64)1)<<63) instead of just (1<<63) to compute the most negative 64-bit integer. (CVS 4131) (check-in: be2570c061 user: danielk1977 tags: trunk)
11:13
Fix for #2444: Avoid SIGFPE on 64-bit platforms when evaluating expressions like ((1<<63)/-1). (CVS 4130) (check-in: c6dfd9e434 user: danielk1977 tags: trunk)
10:56
Remove the unused EXTSRC variable from the non-configure makefile. (CVS 4129) (check-in: bbdcf372c6 user: danielk1977 tags: trunk)
10:55
Fix an unitialized variable in fts2. (CVS 4128) (check-in: c349cf9425 user: danielk1977 tags: trunk)
10:38
Allow virtual tables to mark columns as 'hidden'. Hidden columns do not show up in "*" expansion, the implicit column list of an INSERT statement, or the results of a "PRAGMA table_info" statement. (CVS 4127) (check-in: 7f887a6a00 user: danielk1977 tags: trunk)
01:04
Try to work around an MSVC compiler bug. Ticket #2457. (CVS 4126) (check-in: 4a7079a19a user: drh tags: trunk)
00:52
Modify the amalgamation generator to identify every API using the SQLITE_API macro which is normally defined to nothing but which can be overridden on the compiler command-line to be "static" if desired. Ticket #2453. (CVS 4125) (check-in: 474a52347d user: drh tags: trunk)
00:37
Change the name of sqlite3_atoi64 back to sqlite3Atoi64 so that it is clearly and internal API. Modify the amalgamation to use a macro SQLITE_PRIVATE instead of the keyword "static" so the macro can be overridden to by nothing. (CVS 4124) (check-in: 96190cf13d user: drh tags: trunk)
2007-06-25
17:28
Rework the string to integer conversion logic to address tickets #2344 and #2454. (CVS 4123) (check-in: 5b3a490649 user: drh tags: trunk)
16:29
Fix for #2445. A bug in the lookupName() logic that could cause a crash when a WHERE clause used an alias to refer to an expression in the result-set of the SELECT, and that expression was itself a reference to a table column. (CVS 4122) (check-in: 044ca1c72a user: danielk1977 tags: trunk)
14:28
Modify the non-configure build system to make it easier to build the library with the fts2 or icu extensions linked in. (CVS 4121) (check-in: 02b23c4394 user: danielk1977 tags: trunk)
13:50
Put #ifdefs in fts2_tokenizer so that the build works even when FTS2 is omitted. Add the SQLite blessing to the header comments on all FTS2 source files. (CVS 4120) (check-in: c795e6fd8f user: drh tags: trunk)
12:49
All the use of MySQL-style quoting in the FTS modules. Ticket #2446. (CVS 4119) (check-in: 3be2a6d1c3 user: drh tags: trunk)
12:05
Add a test that calls fts2_tokenizer() with an argument set via C code. (CVS 4118) (check-in: fbcf2d75cd user: danielk1977 tags: trunk)
11:24
Add some tests for the fts2 icu tokenizer. (CVS 4117) (check-in: b79ced3e0a user: danielk1977 tags: trunk)
09:52
Add some documentation for user-defined fts2 tokenizers. (CVS 4116) (check-in: 5a9eee8658 user: danielk1977 tags: trunk)
08:16
Make the auto_vacuum mode peristent in all cases. (CVS 4115) (check-in: 5b0408ddd0 user: danielk1977 tags: trunk)
2007-06-24
16:11
Fix for #2451. Code comment changes only. (CVS 4114) (check-in: bc61dcbf64 user: danielk1977 tags: trunk)
10:14
Make setting "PRAGMA auto_vacuum = incremental" persistent if it is executed before the database file is created. (CVS 4113) (check-in: c666fad151 user: danielk1977 tags: trunk)
08:00
Add the "(database.)freelist_count" PRAGMA. For querying the size of the database free-list. (CVS 4112) (check-in: 1fb4251a70 user: danielk1977 tags: trunk)
06:32
When expanding '*' in the result set of a SELECT, quote the expanded identifiers. Fix for #2450. (CVS 4111) (check-in: d5b7224f37 user: danielk1977 tags: trunk)
2007-06-22
20:17
fix linking failure on OS/2 that happens with the amalgamation and the high memory option enabled (CVS 4110) (check-in: f35e20e196 user: pweilbacher tags: trunk)
20:04
fix compilation failure on OS/2 with the amalgamation (CVS 4109) (check-in: 12327ca049 user: pweilbacher tags: trunk)
15:21
Extend fts2 so that user defined tokenizers may be added. Add a tokenizer that uses the ICU library if available. Documentation and tests to come. (CVS 4108) (check-in: 68677e420c user: danielk1977 tags: trunk)
2007-06-21
15:25
Clarify documentation of the column metadata APIs. Make sure that the new documentation claims are tested. (CVS 4107) (check-in: 2dafe08a91 user: drh tags: trunk)
13:30
Update the URL to mailing list archives. (CVS 4106) (check-in: af4b914a21 user: drh tags: trunk)
2007-06-20
16:20
Use NAWK everywhere in Makefile.in. Ticket #2437. (CVS 4105) (check-in: 314669b6cc user: drh tags: trunk)
16:13
A column name preceded by a unary "+" operator is considered to be a column name when computing the collating sequence to be used by a comparison operator or ORDER BY clause. (CVS 4104) (check-in: 99a20f6a42 user: drh tags: trunk)
15:29
Remove the dependency on libm for isnan(). Ticket #2436. (CVS 4103) (check-in: 406675bb1c user: drh tags: trunk)
15:14
Remove an unused variable from btree.c. (CVS 4102) (check-in: cb47a8297f user: drh tags: trunk)
13:37
Fix comment typo in analyze.c. Ticket #2434. (CVS 4101) (check-in: df9957b947 user: drh tags: trunk)
13:10
Fix a bug in the command-line shell that prevents the reading of the ".sqliterc" file. Ticket #2433. (CVS 4100) (check-in: 6eaf29f5e1 user: drh tags: trunk)
12:18
Disallow empty GROUP BY clauses. Ticket #2431. (CVS 4099) (check-in: 9581e7a4a4 user: drh tags: trunk)
11:56
Additional changes for ticket #2426. (CVS 4098) (check-in: 79debf95cd user: drh tags: trunk)
09:09
Fix for #2432 and partial fix for #2427 (documentation change only). (CVS 4097) (check-in: f025a74531 user: danielk1977 tags: trunk)
08:49
Change main.mk to make it easier to build testfixture and sqlite3 with the icu or fts2 extensions linked in. (CVS 4096) (check-in: 91719cc8ea user: danielk1977 tags: trunk)
06:23
Fix snippet generation when the left-most column of an fts2 table is used in the MATCH clause. Fix for ticket #2429. (CVS 4095) (check-in: fec56ad2ed user: danielk1977 tags: trunk)
2007-06-19
23:01
Change the TCL bindings so that @aaa always treats the variable aaa as a bytearray and binds the value as a BLOB. This change is backwards compatible since the $ behavior is unchanged and @ was not accepted until the current round of changes. (CVS 4094) (check-in: 6f7d55aced user: drh tags: trunk)
17:48
Cleanup the TCL interface source code and add documentation for recently added methods on the SQLite object of TCL. (CVS 4093) (check-in: d88b79818a user: drh tags: trunk)
17:15
In the TCL bindings, if a TCL variable has a bytearray representation and the host parameter starts with @ instead of $, then always store the content as a BLOB not as a string even if a string representation is also available. (CVS 4092) (check-in: dcb104bd41 user: drh tags: trunk)
15:23
Change the name of the "limits.h" source file to "sqliteLimit.h". Ticket #2428. (CVS 4091) (check-in: 64bcc41f12 user: drh tags: trunk)
10:58
Do not segfault even if sqlite is misused by requesting query results after the query has been reset. ticket #2426. (CVS 4090) (check-in: 783f19be38 user: drh tags: trunk)
10:50
Cast the 2nd parameter of ftruncate to off_t to work around bugs in some unix implementations. Ticket #2425. (CVS 4089) (check-in: 0b20a69609 user: drh tags: trunk)
2007-06-18
17:44
Another attempt to fix the build process for TCL windows bindings. (CVS 4088) (check-in: 1fd2a358d6 user: drh tags: trunk)
17:25
Bring the pager_datahash() macro into sync with its function definition. Ticket #2422. (CVS 4087) (check-in: ba967bbb62 user: drh tags: trunk)
16:06
Fix the build scripts so that they generate Tcl bindings for windows correctly. (CVS 4086) (check-in: c7be8b419f user: drh tags: trunk)
13:33
Version 3.4.0 (CVS 4085) (check-in: 2647980fba user: drh tags: trunk)
12:22
Documentation updates prior to release 3.4.0. Enhanced support for soak testing in the test scripts. (CVS 4084) (check-in: eec3871038 user: drh tags: trunk)
2007-06-16
18:39
Fix a faulty assert() in the pager. (CVS 4083) (check-in: 4cff47b061 user: drh tags: trunk)
14:43
Modify the tests in exclusive2.test to account for the fact that the pager cache may be very small by default. These tests are only valid if the entire database fitting in the cache. (CVS 4082) (check-in: 04a13fe43e user: danielk1977 tags: trunk)
14:19
Add another scenario to the soak1.tcl script. (CVS 4081) (check-in: 10e6822d4f user: drh tags: trunk)
11:17
A minor logic correction in the previous check-in. Also added a lengthy comment describing the meanings of various flags in the {quote: PgHdr} structure. (CVS 4080) (check-in: 57bf8204cd user: drh tags: trunk)
04:42
Fix a database corruption problem that can occur in auto-vacuum mode when a malloc() failure causes a statement rollback, additional statements are run in the same transaction, then the total transaction rolls back. (CVS 4079) (check-in: c9dcf2b926 user: drh tags: trunk)
03:06
Additional debugging instrumentation added to the pager. (CVS 4078) (check-in: dcdb20f81a user: drh tags: trunk)
2007-06-15
20:29
Make arrangements to optionally print a debug message at the point of a simulated malloc() failure when SQLITE_MEMDEBUG is defined. (CVS 4077) (check-in: 7d3c1f08a3 user: drh tags: trunk)
18:59
Fix more documentation typos. Ticket #2416. (CVS 4076) (check-in: b55318b12d user: drh tags: trunk)
18:53
Remove a C++ism from the test harness. Get the TCL interface working with older versions of TCL. (CVS 4075) (check-in: c8beb8674e user: drh tags: trunk)
18:43
Add a script for "soak" testing. (CVS 4074) (check-in: d4ea1287a8 user: drh tags: trunk)
17:50
Fix a race condition in test_server.c/test7.c (test changes only). (CVS 4073) (check-in: d0de32e4c6 user: danielk1977 tags: trunk)
17:04
Fix typo in change comments for 3.4.0. Ticket #2416 (CVS 4072) (check-in: 1f6f033000 user: drh tags: trunk)
17:03
Fix a memory leak in the parser that can occur following a malloc failure. (CVS 4071) (check-in: d0b6e9a07e user: drh tags: trunk)
16:37
Fix an obscure memory leak in the SQL compiler.. (CVS 4070) (check-in: d4ab94288b user: danielk1977 tags: trunk)
15:31
Fix a memory leak that was discovered by the tests that were added to cover ticket #2339. (CVS 4069) (check-in: 1d10a48934 user: drh tags: trunk)
15:08
Fix a test suite bug. To accommadate the fact that handles returned by (db incrblob) change for the second test suite iteration of full.test. (CVS 4068) (check-in: 32218834b8 user: danielk1977 tags: trunk)
14:53
Fix for #2415. The progress handler should abandon only the current query, not all active queries. (CVS 4067) (check-in: 115e19fe22 user: danielk1977 tags: trunk)
13:57
Do not try to run the fuzz_malloc tests if SQLITE_MEMDEBUG is not enabled. (CVS 4066) (check-in: 452115959f user: drh tags: trunk)
12:41
Clean up a variable in tkt2409.test that would cause subsequent tests to fail. (CVS 4065) (check-in: 0f944cb9fb user: drh tags: trunk)
12:16
Documentation updates in preparation for 3.4.0. (CVS 4064) (check-in: 5232fd29d0 user: drh tags: trunk)
12:06
Update the btree file format description in btreeInt.h. (CVS 4063) (check-in: 1ac160d3dc user: drh tags: trunk)
2007-06-14
20:57
The C-api reference documentation is now generated directly from comments in the sqlite3.h header file. (CVS 4062) (check-in: d93c41e9a9 user: drh tags: trunk)
2007-06-13
16:49
Have queries interrupted by the progress-handler return SQLITE_INTERRUPT. Rollback any active transaction if a DML statement returns SQLITE_INTERRUPT. (CVS 4061) (check-in: 33454b5691 user: danielk1977 tags: trunk)
15:22
Fix for #2409. Return SQLITE_IOERR_BLOCKED instead of SQLITE_BUSY in cases where failure to obtain a database lock leaves the cache in an inconsistent state. See additional information at CorruptionFollowingBusyError. (CVS 4060) (check-in: ce2c9925d0 user: danielk1977 tags: trunk)
2007-06-12
18:50
In the "transaction" command of the TCL interface, if a COMMIT fails finish it with a rollback. (CVS 4059) (check-in: 6da39fa442 user: drh tags: trunk)
18:20
Minor comment edits from my prefix development client. No code changes. (CVS 4058) (check-in: 6953cd0935 user: shess tags: trunk)
2007-06-11
23:23
Fix typo in the limits.html document. Ticket #2410. (CVS 4057) (check-in: d3fe186c33 user: drh tags: trunk)
12:56
Fix a bug in the LIKE optimization that was causing the pattern string to be dequoted twice. Ticket #2407. (CVS 4056) (check-in: abf64d1d0a user: drh tags: trunk)
08:00
Add a README.txt file for the ICU extension. (CVS 4055) (check-in: 7b6927829f user: danielk1977 tags: trunk)
2007-06-10
22:57
Define isnan() on windows. Ticket #2399. (CVS 4054) (check-in: fed9373e27 user: drh tags: trunk)
2007-06-09
09:53
Documentation updates, in particular in the new limits.html file is added. (CVS 4053) (check-in: 4ca6cdae94 user: drh tags: trunk)
2007-06-08
18:27
Use C-sylte comments exclusively, never C++ comments. Ticket #2406. (CVS 4052) (check-in: 8f5b789fea user: drh tags: trunk)
08:43
Additional test cases for comparisons against NULL in the WHERE clause and elsewhere in a SELECT. (CVS 4051) (check-in: 72612a0373 user: drh tags: trunk)
08:39
Make sure rowid comparisons against NULL work correctly. Ticket #2404. (CVS 4050) (check-in: 11ee8ea43f user: drh tags: trunk)
00:20
Fix the query optimizer so that it correctly handles constant expressions in the ON clause of a LEFT JOIN. Ticket #2403. (CVS 4049) (check-in: 46fdd19548 user: drh tags: trunk)
2007-06-07
19:08
Make sure zeroblob does reasonable things with a negative argument or an argument that is larger than the maximum blob size. (CVS 4048) (check-in: f40218434e user: drh tags: trunk)
15:45
Fix an error in test file sqllimits1.test that was causing a test to fail when SQLITE_MAX_EXPR_DEPTH was defined. (CVS 4047) (check-in: e66aa2c34a user: danielk1977 tags: trunk)
10:55
Add the SQLITE_MAX_COMPOUND_SELECT compile-time parameter for limiting the number of terms in a compound select statement. Set the default limit to 100. (CVS 4046) (check-in: 0d71ad4591 user: drh tags: trunk)
2007-06-02
07:54
Fix a vdbe stack leak that could occur where one side of a WHERE clause inequality evaluated to SQL null. (CVS 4045) (check-in: 17152bf1a2 user: danielk1977 tags: trunk)
2007-05-31
08:20
Extend out-of-memory testing with fuzzily generated sql some. One fix for a problem found by the same. (CVS 4044) (check-in: d2282e64f1 user: danielk1977 tags: trunk)
2007-05-30
10:36
Add some extra tests for malloc failure during expression parsing and execution using fuzzily generated SQL. (CVS 4043) (check-in: 7522d2fb32 user: danielk1977 tags: trunk)
08:18
Add the start of the soak-test infrastructure. (CVS 4042) (check-in: 5d0b247ca1 user: danielk1977 tags: trunk)
06:19
Fix a problem with zeroblob() and CAST(...) expressions that could cause an assert() to fail. (CVS 4041) (check-in: 03750a2a6b user: danielk1977 tags: trunk)
2007-05-29
12:11
Consider explicit collate clauses when matching WHERE constraints to indices. Fix for #2391. (CVS 4040) (check-in: f9a95e92df user: danielk1977 tags: trunk)
2007-05-24
10:18
Add some tests to verify that the parameter to the incremental_vacuum pragma is working. It is. (CVS 4039) (check-in: 1abf784fe2 user: danielk1977 tags: trunk)
09:44
Fix a typo in comments in sqlite.h.in. No code changes. Ticket #2384. (CVS 4038) (check-in: e8ae6214bf user: danielk1977 tags: trunk)
09:41
Remove an assert() statement that may not be true if an IO or malloc error has occured. (CVS 4037) (check-in: 16c8e9c20c user: danielk1977 tags: trunk)
09:20
Fix a page reference leak that could occur after an IO error. (CVS 4036) (check-in: d00c8242c6 user: danielk1977 tags: trunk)
07:47
Remove an incorrect assert() statement that was being triggered by ioerr tests run in utf-16 mode. (CVS 4035) (check-in: c6575173be user: danielk1977 tags: trunk)
07:22
Fix an assert() failure occuring in corrupt.test. (CVS 4034) (check-in: 3c54cddf23 user: danielk1977 tags: trunk)
2007-05-23
16:23
Add some code to MemTranslate() to prevent the READ_UTF8() macro from overreading a buffer. (CVS 4033) (check-in: 0595319cd7 user: danielk1977 tags: trunk)
13:50
Make sure the database schema has been read before compiling an incrmental_vacuum pragma. (CVS 4032) (check-in: efd7bcb34c user: danielk1977 tags: trunk)
13:34
Fix a leaked page reference that could occur after an IO error in auto-vacuum databases. Also modify incrvacuum.test to work with DEFAULT_AUTOVACUUM=1 builds. (CVS 4031) (check-in: e691f2fa3d user: danielk1977 tags: trunk)
09:52
Fix a database corrupting bug in the optimistic overflow chain. Exposed by running bigrow.test with auto-vacuum enabled. (CVS 4030) (check-in: 10ee2d50cb user: danielk1977 tags: trunk)
07:20
Additional comments ono the SQLITE_MIXED_ENDIAN_64BIT_FLOAT issue. (CVS 4029) (check-in: dd48a31e67 user: drh tags: trunk)
06:31
Make sure zeroblob() works with the concatenation operator. Ticket #2379. (CVS 4028) (check-in: 6e19ef7582 user: drh tags: trunk)
06:25
Increase the number of repititions in crash.test. (CVS 4027) (check-in: f3c3412afa user: danielk1977 tags: trunk)
2007-05-21
21:59
Fix overzealous fts2 assertions WRT rowid 0 or lower. Only check that docids are ascending if there was a prior docid set for the doclist, ignore the initial docid of 0. (CVS 4026) (check-in: ed3a131f1d user: shess tags: trunk)
2007-05-19
11:50
Add the larger SQLite icon to the repository. (CVS 4025) (check-in: d7539c6e8b user: drh tags: trunk)
06:48
Add a few extra words to the sqlite3_finalize() documentation. (CVS 4024) (check-in: 315dc71b92 user: danielk1977 tags: trunk)
2007-05-17
18:28
Change the way overflow pages are allocated from the free-list to increase the chance that they are a contiguous block. Much more can still be done. (CVS 4023) (check-in: b739189204 user: danielk1977 tags: trunk)
16:38
Bring the autoconf based build system up to date with the recent changes. #2366, #2367 and #2368. (CVS 4022) (check-in: ae644bc7aa user: danielk1977 tags: trunk)
16:34
Fix a problem with casting blobs to numeric types. (CVS 4021) (check-in: f2ce727c4d user: danielk1977 tags: trunk)
14:45
Add speed3.test file. For testing performance issues related to overflow pages. (CVS 4020) (check-in: 684f765df3 user: danielk1977 tags: trunk)
06:44
Modify test scripts to allow for the fact that zeroblob() is not available when compiled with OMIT_INCRBLOB. Ticket #2365. (CVS 4019) (check-in: 2ee959be4a user: danielk1977 tags: trunk)
2007-05-16
18:23
Remove the SKIP_UTF16 macros (they are no longer in use). (CVS 4018) (check-in: 73e654fbdc user: danielk1977 tags: trunk)
18:11
Fix handling of utf-16 encoding of code point 0xE000. (CVS 4017) (check-in: bfc35ce867 user: danielk1977 tags: trunk)
17:50
Avoid passing a negative value to isspace() in a couple places. (CVS 4016) (check-in: d5db8be368 user: danielk1977 tags: trunk)
17:28
Change a few selected functions to macros to speed things up. (CVS 4015) (check-in: 93f811ec74 user: danielk1977 tags: trunk)
14:23
Omit some extra code when OMIT_INCRBLOB is defined. (CVS 4014) (check-in: 1d89be287d user: danielk1977 tags: trunk)
13:55
Add a --nostatic option to mksqlite3c.tcl. With this option turned on, the extra "static" storage class markers are not inserted into the amalgamation. (CVS 4013) (check-in: 57e17c7cda user: drh tags: trunk)
11:55
Keep the full precision of integers if possible when casting to "numeric". Ticket #2364. (CVS 4012) (check-in: 2ac985a380 user: drh tags: trunk)
2007-05-15
18:35
Additional tests for malformed UTF-8. (CVS 4011) (check-in: 448d3ef670 user: drh tags: trunk)
16:51
Make sure pParse->rc gets set whenever sqlite3ErrorMsg() is called. This is added insurance that parsing will stop quickly after an error. This change did make the parser stop faster in some cases, which required some revisions to tests. (CVS 4010) (check-in: f84d9dab11 user: drh tags: trunk)
14:40
Remove the alternative UTF-16 implementation of SUBSTR(). It does not work anymore and the UTF-8 version can do everything that the UTF-16 version does. (CVS 4009) (check-in: 9b91502ef0 user: drh tags: trunk)
14:34
Relax the restriction on using bytes 0x80 through 0xbf as the first character of an identifier. Enhancements to ALTER TABLE tests for tables with strange names or stange column names. (CVS 4008) (check-in: 262a3e6339 user: drh tags: trunk)
14:17
Change the documentation to clearly state that the result of sqlite3_column_type() is undefined following a type conversion. (CVS 4007) (check-in: 960be575e2 user: drh tags: trunk)
14:10
Fix to check-in (4005). A call to sqlite3_column_blob() should not make subsequent calls to sqlite3_column_type() return SQLITE_BLOB. Sqlite3_column_type() returns the initial type. (CVS 4006) (check-in: b5e85deb5a user: drh tags: trunk)
13:27
Clarification on the best practices for using the _bytes() APIs. Change sqlite3_value_blob() to force the representation to be purely a BLOB and not a dual BLOB/String. Ticket #2360. (CVS 4005) (check-in: cf2dd45b58 user: drh tags: trunk)
11:55
A new approach for UTF-8 translation. (CVS 4004) (check-in: 6c8ad2790e user: drh tags: trunk)
09:00
Do not allow bytes 0x80 through 0xBF to be the first character of an identifer because no valid UTF-8 character can begin with those bytes. If we allowed an identifier to begin with one of those bytes, then the substr() function in ALTER TABLE will not work correctly. (CVS 4003) (check-in: 252810424d user: drh tags: trunk)
07:14
Fix some test script errors in fuzz.test. (CVS 4002) (check-in: 51eeae7b7a user: danielk1977 tags: trunk)
07:00
A fix for queries that used correlated, compound sub-queries in the HAVING clause. Also update fuzz.test some more. (CVS 4001) (check-in: da0c1ab4de user: danielk1977 tags: trunk)
03:56
Fix problems in ALTER TABLE that occur when column or table names are invalid UTF encodings. (CVS 4000) (check-in: 9ff382f458 user: drh tags: trunk)
02:45
Fix a typo in a comment. Ticket #2359. (CVS 3999) (check-in: 1fbbc108a9 user: drh tags: trunk)
02:34
Fix a bug in sqlite3_mprintf() which could have caused a buffer overrun if malloc() failed. (CVS 3998) (check-in: 5af49a57d4 user: drh tags: trunk)
01:13
The built-in substr() function applied to a BLOB counts bytes, not characters. (CVS 3997) (check-in: 75d573080d user: drh tags: trunk)
00:09
Make sure the parser aborts quickly following a syntax error. (CVS 3996) (check-in: d07cdd3c09 user: drh tags: trunk)
2007-05-14
16:50
Fix a problem with ORDER BY and compound SELECT queries. (CVS 3995) (check-in: af76928fc5 user: danielk1977 tags: trunk)
15:49
Fix a bug in "flattening" optimization. Occured if the parent of the flattened sub-query is also the parent of a sub-query that uses a compound op (i.e. UNION, INTERSECT etc.). (CVS 3994) (check-in: 1c33829c9e user: danielk1977 tags: trunk)
14:05
Prevent sub-queries with "LIMIT 0" from leaving an extra value on the vdbe stack. Also updates to fuzz.test. (CVS 3993) (check-in: b1d1b16e98 user: danielk1977 tags: trunk)
12:12
In the windows driver, reacquire the shared lock if an exclusive lock fails. Ticket #2354. (CVS 3992) (check-in: fc489b5382 user: drh tags: trunk)
11:34
Remove terms with operator TK_AS from the expression tree. Ticket #2356. (CVS 3991) (check-in: 5627ff74be user: drh tags: trunk)
2007-05-12
15:00
Make REINDEX robust in the face of malloc() errors. (CVS 3990) (check-in: dbe417745d user: drh tags: trunk)
12:08
Make the ANALYZE command robust in the face of malloc() failures. (CVS 3989) (check-in: c08658e1f8 user: drh tags: trunk)
10:41
Fix another variant of the "IN (...)" b-tree problem. (CVS 3988) (check-in: 260338c4b2 user: danielk1977 tags: trunk)
09:30
Fix an obscure b-tree bug that applied to transient trees used for IN(...) expressions. (CVS 3987) (check-in: 96c7232f8b user: danielk1977 tags: trunk)
06:11
Bugfixes for assert() failures found by fuzz.test. (CVS 3986) (check-in: 2e80736d57 user: danielk1977 tags: trunk)
2007-05-11
16:58
Check in some changes to fuzz.test. Still failing. (CVS 3985) (check-in: 6f346a6be9 user: danielk1977 tags: trunk)
12:30
Avoid multiple storage class specifiers ("static extern") in the amalagmation. (CVS 3984) (check-in: 2f70159b1d user: drh tags: trunk)
10:10
Expand the expressions tested by fuzz.test. Fix for (CAST zeroblob() AS text). (CVS 3983) (check-in: 4e1bb41f30 user: danielk1977 tags: trunk)
07:08
Fix a problem with inserting zeroblob() into an indexed column. (CVS 3982) (check-in: ccef5d2daa user: danielk1977 tags: trunk)
01:44
Additional parsing bugs fixed. (CVS 3981) (check-in: d12a8924c6 user: drh tags: trunk)
00:20
Make sure that the REGISTER token generates a valid Expr. REGISTER will cause the tokenizer to abort, but the parser might do several reduce actions prior to that abort and those reduce actions sometimes need a valid Expr. (CVS 3980) (check-in: d146f01a02 user: drh tags: trunk)
2007-05-10
21:31
Backport the stack-size reduction patch in (3673) to version 3.3.13. (CVS 3979) (Leaf check-in: e91012b603 user: drh tags: branch_3_3_13)
21:14
When converting literal BLOBs to text using the encoding of the main database. Ticket #2349. (CVS 3975) (check-in: a57afaff42 user: drh tags: trunk)
17:38
Simplify failing case in fuzz.test. (CVS 3974) (check-in: a54c74990c user: danielk1977 tags: trunk)
17:32
Add cases to fuzz.test. Some tests in this file fail at the moment. (CVS 3973) (check-in: 1e8fcb3fbe user: danielk1977 tags: trunk)
17:23
Add some UTF-8 test infrastructure. Treat NaN as NULL. The printf routines print infinity as "Inf" not as "NaN". Ticket #2345. (CVS 3972) (check-in: ffe615a711 user: drh tags: trunk)
15:37
Add new test file fuzz.test, to test SQLite with fuzzily generated SQL. (CVS 3971) (check-in: 1e9e6fe75d user: danielk1977 tags: trunk)
13:23
Fix a C++ism in func.c. (CVS 3970) (check-in: 9c0050a10c user: drh tags: trunk)
11:43
Another test for overflow in strftime(). It was not broken. (CVS 3969) (check-in: 5800d0327e user: danielk1977 tags: trunk)
10:46
Add code to enforce the MAX_EXPR_DEPTH limit. (CVS 3968) (check-in: 2c9c94a24d user: danielk1977 tags: trunk)
2007-05-09
22:56
Make sure compound queries inside a subquery only return a single result column. Ticket #2347. (CVS 3967) (check-in: 66954bdd81 user: drh tags: trunk)
20:35
Fix a typo in a comment. Ticket #2348. (CVS 3966) (check-in: c0dbac4630 user: drh tags: trunk)
20:31
Fix a problem with strange expressions being fed to an ATTACH or DETACH statement. (CVS 3965) (check-in: 0c91dc9ee0 user: drh tags: trunk)
15:56
Fix an obscure cache corruption that could occur after an SQLITE_FULL error. (CVS 3964) (check-in: e8e879aca6 user: danielk1977 tags: trunk)
11:37
Add further test cases for compile time limits. (CVS 3963) (check-in: 9bf2c594a4 user: danielk1977 tags: trunk)
08:24
Fix enforcement of the LIKE_PATTERN limit. (CVS 3962) (check-in: 8819617b7c user: danielk1977 tags: trunk)
2007-05-08
21:56
Remove a keyword from the header comment in date.c (CVS 3961) (check-in: 03349ec0be user: drh tags: trunk)
21:45
Remove compiler warnings in the amalgamation. (CVS 3960) (check-in: c5754530c6 user: drh tags: trunk)
20:59
Disable tracing pragmas when not in debug mode. This eliminates an external dependency on stdout. (CVS 3959) (check-in: 5a0fe98548 user: drh tags: trunk)
20:37
Fix the amalgamation generator so that all non-API functions have file scope. (CVS 3958) (check-in: e9f56ead05 user: drh tags: trunk)
18:30
Update the release builder script. (CVS 3957) (check-in: 21299b9178 user: drh tags: trunk)
18:04
Fix a null-pointer dereference that follows a malloc() failure introduced in (3954). (CVS 3956) (check-in: 251ba1981e user: danielk1977 tags: trunk)
17:59
Update the amalgamation builder for the latest changes. (CVS 3955) (check-in: becd64d361 user: drh tags: trunk)
17:54
Add a few more tests to sqllimit1.test. (CVS 3954) (check-in: eeee6b71e5 user: danielk1977 tags: trunk)
16:13
Add a test case that uses a trigger to insert many rows to sqllimits1.test. (CVS 3953) (check-in: 6368222558 user: danielk1977 tags: trunk)
15:59
Add new test file sqllimits1.test. (CVS 3952) (check-in: c897460397 user: danielk1977 tags: trunk)
15:46
Do not allocate so much surplus memory in the implementation of the replace() function. (CVS 3951) (check-in: 0cf518ceeb user: drh tags: trunk)
15:34
Limit the length of the patterns on LIKE and GLOB to avoid problems with deep recursion and N^2 behavior. (CVS 3950) (check-in: 42e6c82699 user: drh tags: trunk)
15:15
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) (check-in: 17c4235c49 user: drh tags: trunk)
14:51
Add the max_page_count pragma used to limit the maximum size of a database file. Untested. (CVS 3948) (check-in: b1b74f0668 user: drh tags: trunk)
14:39
Fix a potential buffer overrun in the replace() function. (CVS 3947) (check-in: b0fb4a3cf6 user: danielk1977 tags: trunk)
13:58
Add more code to enforce the limits specified in limits.h. (CVS 3946) (check-in: c59d436095 user: drh tags: trunk)
13:57
Avoid evaluating (INT_MIN/-1) with 32 bit signed numbers. It can cause SIGFPE. (CVS 3945) (check-in: 2f186e916c user: danielk1977 tags: trunk)
12:37
Do not crash in the internal functions sqlite_rename_table() or sqlite_rename_trigger() if they are somehow passed unexpected input. (CVS 3944) (check-in: c2f90b465e user: danielk1977 tags: trunk)
12:12
Begin adding code to explicitly limit the size of strings and blobs. (CVS 3943) (check-in: 031a5915b6 user: drh tags: trunk)
11:27
Fix a bug in the test logic introduced by check-in (3928). (CVS 3942) (check-in: 47d1678d2d user: drh tags: trunk)
01:08
Begin implementing a new system of upper bounds on the capabilities of SQLite. By clearly defining the upper bounds, we make those upper bounds explicitly testable. This check-in is just infrastructure. The upper bounds are not yet enforced. (CVS 3941) (check-in: 93b623b232 user: drh tags: trunk)
2007-05-07
19:31
Fix an NULL deref in the randomblob() function following a malloc failure. (CVS 3940) (check-in: 011e7db253 user: drh tags: trunk)
16:58
Add a version of the LIKE operator to the icu extension. Requires optimisation. (CVS 3939) (check-in: 3e96105c1f user: danielk1977 tags: trunk)
14:58
Change the name of create_collation_x() to create_collation_v2(). Also add some tests for it. (CVS 3938) (check-in: ddc4e4797f user: danielk1977 tags: trunk)
13:11
Fix typo in Makefile.in. Ticket #2343 (CVS 3937) (check-in: db51f59a7b user: drh tags: trunk)
11:53
Add interface to configure SQLite to use ICU collation functions. (CVS 3936) (check-in: b29a81b4fb user: danielk1977 tags: trunk)
11:24
Change sqlite3_snprintf() so that it does not write a zero-terminator if the buffer size argument is less than 1. Ticket #2341. Added documentation about the sqlite3_snprintf() function. (CVS 3935) (check-in: f3ae4ac5fe user: drh tags: trunk)
09:32
Add the experimental create_collation_x() api. (CVS 3934) (check-in: ff49d48f2f user: danielk1977 tags: trunk)
2007-05-06
21:20
Fix missing word in the copyright.html web page. (CVS 3933) (check-in: 2d1348dda2 user: drh tags: trunk)
20:04
Do not flatten subqueries that are part of a compound SELECT and which have both an ORDER BY and a LIMIT clause. Ticket #2339. (CVS 3932) (check-in: 9600a99804 user: drh tags: trunk)
16:04
Add the start of the ICU extension. (CVS 3931) (check-in: f473e85267 user: danielk1977 tags: trunk)
2007-05-05
22:45
Add "Powered By SQLite" logo contributed by Alberto Simoes. (CVS 3930) (check-in: 25cfa7740a user: drh tags: trunk)
18:49
Fix a header problem introduced in the previous check-in. (CVS 3929) (check-in: bece7a6bae user: drh tags: trunk)
18:39
Factor out btree test logic into a separate test_btree.c file. (CVS 3928) (check-in: d51274f1cc user: drh tags: trunk)
12:06
Fix a sprintf() problem introduced by (3916). (CVS 3927) (check-in: 54a1d275aa user: drh tags: trunk)
11:48
Refactoring. Split btreeInt.h off from btree.c. Split malloc.c off from util.c. Expect much more to follow. (CVS 3926) (check-in: ad549a40ed user: drh tags: trunk)
11:48
Refactoring. Split btreeInt.h off from btree.c. Split malloc.c off from util.c. Expect much more to follow. (CVS 3925) (check-in: 16041116aa user: drh tags: trunk)
2007-05-04
19:16
Add documentation on the incremental vacuum feature. (CVS 3924) (check-in: b3e2cdaed3 user: drh tags: trunk)
19:03
Fix compilation and testing with OMIT_INCRBLOB defined. (CVS 3923) (check-in: a0f8adc692 user: danielk1977 tags: trunk)
18:36
Test interaction of incremental io and other database writes. (CVS 3922) (check-in: 4516416b4d user: danielk1977 tags: trunk)
18:30
Change incremental vacuum to be triggered by a pragma rather than a command. We have a lot to learn about this yet and we do not want to paint ourselves into a corner by commiting to specific syntax too early. (CVS 3921) (check-in: b13e497a32 user: drh tags: trunk)
17:07
Tighter compression of the keyword hash table. (CVS 3920) (check-in: 681216767d user: drh tags: trunk)
16:14
Optional parameter in the INCREMENTAL VACUUM statement specifies how many pages to vacuum from the database. (CVS 3919) (check-in: ed713f9ccb user: drh tags: trunk)
14:36
Get tests working with SQLITE_OMIT_AUTOVACUUM=1. (CVS 3918) (check-in: b94d39e4d9 user: drh tags: trunk)
14:14
Make "incremental" a fallback token so that you can set "auto_vacuum=incremental" without having to quote the "incremental". (CVS 3917) (check-in: 9d7a2e2bb4 user: drh tags: trunk)
13:15
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) (check-in: ba4845b32b user: drh tags: trunk)
12:05
Test cases and corrections to IO and malloc() error handling in incremental blob IO functions. (CVS 3915) (check-in: 641e55284e user: danielk1977 tags: trunk)
12:01
Fix a formatting errror in I/O logging. (CVS 3914) (check-in: 2d37687a08 user: drh tags: trunk)
11:59
Add compile-time option -DSQLITE_MIXED_ENDIAN_64BIT_FLOAT=1 that uses mixed-endian doubles. This is needed on ARM7 to make database file formats compatible with all other processors. Tickets #2278 and #2335. (CVS 3913) (check-in: 2a178d0c79 user: drh tags: trunk)
08:32
Rework accessPayload() function for clarity. (CVS 3912) (check-in: 42d07c70ec user: danielk1977 tags: trunk)
2007-05-03
20:06
fix from Gentoo for allowing TCLLIBDIR to be overridden in env (CVS 3911) (check-in: e54a49e264 user: vapier tags: trunk)
18:14
Test some more incremental IO error cases. (CVS 3910) (check-in: 64705410bd user: danielk1977 tags: trunk)
17:18
Improvements to I/O tracing output. Require -DSQLITE_ENABLE_IOTRACE when compiling shell.c in order to link in the I/O tracing capability. (CVS 3909) (check-in: 8a43e1676f user: drh tags: trunk)
16:55
Get the amalgamation builder working with incremental I/O. (CVS 3908) (check-in: 92b5360165 user: drh tags: trunk)
16:31
Test cases and minor bugfixes for incremental blob APIs. (CVS 3907) (check-in: e12c522383 user: danielk1977 tags: trunk)
13:11
Fix a bug where accessPayload() was calling PagerWrite() on the wrong page handle. Ticket #2332. (CVS 3906) (check-in: cf9eeba7be user: danielk1977 tags: trunk)
13:02
Use memmove() instead of memcpy() when moving between memory regions that might overlap. Ticket #2334. (CVS 3905) (check-in: 678d672b73 user: drh tags: trunk)
11:43
Minor bugfixes for incrblob mode. (CVS 3904) (check-in: b84d597c90 user: danielk1977 tags: trunk)
11:43
Minor bugfixes for incrblob mode. (CVS 3903) (check-in: db54a9466e user: danielk1977 tags: trunk)
2007-05-02
17:54
Allow CREATE TABLE to occur while other queries are running. DROP TABLE is still prohibited, however, since we do not want to delete a table out from under an running query. (CVS 3902) (check-in: 5b4bf1fce4 user: drh tags: trunk)
17:48
Combine the internal btree functions BtreePutData() and getPayload(). (CVS 3901) (check-in: a100a5304b user: danielk1977 tags: trunk)
16:51
More fixes and improvements to the zeroblob() mechanism. (CVS 3900) (check-in: 83ab25014e user: drh tags: trunk)
16:48
Cache the location of overflow pages in cursors used for incremental blob IO. (CVS 3899) (check-in: 349f1ea789 user: danielk1977 tags: trunk)
15:36
Fix an invalid UTF8 encoding in the tests for the trim function. (CVS 3898) (check-in: 4dbbfff4a7 user: drh tags: trunk)
13:30
Add support for zero-blobs to the OP_MakeRecord opcode. First test cases of zeroblob functionality. (CVS 3897) (check-in: e6d560ddee user: drh tags: trunk)
13:16
Use the pointer-map pages to make the incremental blob API more efficient. (CVS 3896) (check-in: 93a3bf71d5 user: danielk1977 tags: trunk)
02:08
Fix some compiler warnings. Add the (untested) zeroblob() SQL function. (CVS 3895) (check-in: 6f4f8ba7ec user: drh tags: trunk)
01:34
Begin adding the zeroblob API to support incremental blob i/o. (CVS 3894) (check-in: 7a01836dde user: drh tags: trunk)
2007-05-01
18:25
Enable prefix-search in query-parsing and snippet generation. If the character immediately after the end of a term is '*', that term is marked for prefix matching. Modify term comparison in snippetOffsetsOfColumn() to respect isPrefix. fts2n.test runs prefix searching through some obvious test cases. (CVS 3893) (check-in: 7c4c659240 user: shess tags: trunk)
17:49
First approximation of incremental blob IO API. (CVS 3892) (check-in: c444836e7b user: danielk1977 tags: trunk)
17:14
Modify loadSegmentLeavesInt() to correctly handle prefix searching. The new function docListUnion() is used to accumulate a union of the hits for the matching terms, which will be merged across segments using docListMerge(). (CVS 3891) (check-in: 72c7963073 user: shess tags: trunk)
16:59
The pager takes the sector size to be the larger of the sector size reported by sqlite3OsSectorSize() and the page size. (CVS 3890) (check-in: e5e6af55cc user: drh tags: trunk)
2007-04-30
22:09
Propagate prefix flag through implementation of doclist query code. Also implement correct prefix-handling for traversal of interior nodes of segment tree. A given prefix can span multiple children of an interior node, and from there the branches need to be followed in parallel. (CVS 3889) (check-in: cae844a01a user: shess tags: trunk)
21:39
Fix a potential segfault following a malloc() failure during a call to sqlite3_prepare() where the nBytes parameter is positive but less than the length of the input SQL string. (CVS 3888) (check-in: 27bf3fc3cf user: drh tags: trunk)
17:52
Lift docListMerge() call out of loadSegmentLeavesInt() for prefix search. Doclists from multiple prefix matches will need a union merge function, which will have to logically happen across a segment before doclists are merged between segments. (CVS 3887) (check-in: 7ddb826689 user: shess tags: trunk)
16:55
Try to avoid reading pages when moving overflow chains to the free-list. (CVS 3886) (check-in: 8cccec68bd user: danielk1977 tags: trunk)
2007-04-28
15:47
Add some tests (and 2 resulting bug fixes) to incr vacuum mode. (CVS 3885) (check-in: 89b1b3f897 user: danielk1977 tags: trunk)
2007-04-27
22:02
Break interior-node and leaf-node readers apart in loadSegment(). Previously, the code looped until the block was a leaf node as indicated by a leading NUL. Now the code loops until it finds a block in the range of leaf nodes for this segment, then reads it using LeavesReader. This will make it easier to traverse a range of leaves when doing a prefix search. (CVS 3884) (check-in: 9466367d65 user: shess tags: trunk)
21:59
Internationalize the TRIM functions. Ticket #2323. (CVS 3883) (check-in: ff1f4e7447 user: drh tags: trunk)
21:24
Lift code to traverse interior nodes out of loadSegment(). Refactoring towards prefix searching. (CVS 3882) (check-in: 25935db738 user: shess tags: trunk)
21:02
Refactor fts2 loadSegmentLeaf() in preparation for prefix-searching. Prefix-searching will want to accumulate data across multiple leaves in the segment, using LeavesReader instead of LeafReader is the first step in that direction. (CVS 3881) (check-in: 22ffdae4b6 user: shess tags: trunk)
17:16
Make sure sqlite3_value_bytes() does not reformat the content after a call to sqlite3_value_blob(). Add documentation to explain this hazard. Add many new tests. Ticket #2321. (CVS 3880) (check-in: e92bd97a37 user: drh tags: trunk)
07:55
Extra tests for incremental vacuum. (CVS 3879) (check-in: 40ba6493e9 user: danielk1977 tags: trunk)
07:05
Modifications to btree integrity check so that it can be run inside a transaction after an incr vacuum. (CVS 3878) (check-in: 4d4180d647 user: danielk1977 tags: trunk)
01:18
The replace() function should return NULL if the second argument is an empty string. Ticket #2324. (CVS 3877) (check-in: e6a0c90dd9 user: drh tags: trunk)
2007-04-26
14:42
Add largely untested code for the incremental vacuum function. (CVS 3876) (check-in: f6a6d2b887 user: danielk1977 tags: trunk)
12:11
In the pager, load the content of pages which were initialized with noContent==1 if they are subsequently requested with noContent==0. (CVS 3875) (check-in: d0745a43b6 user: drh tags: trunk)
2007-04-25
18:23
Fix segfaults that can occur if a malloc failure happens just before a built-in function calls sqlite3_value_text(). (CVS 3874) (check-in: 9cb0ed6ee9 user: drh tags: trunk)
15:42
Disable tests in misc7 that do not work on windows due to limitations of the windows file system. (CVS 3873) (check-in: 66646d6fda user: drh tags: trunk)
12:07
Version 3.3.17 (CVS 3872) (check-in: 16979f4525 user: drh tags: trunk)
12:06
Fix a file descriptor leak in the exclusive2 test script. (CVS 3871) (check-in: 2d2e68da74 user: drh tags: trunk)
11:42
Preparing for the release of 3.3.17. (CVS 3870) (check-in: e278c4ef60 user: drh tags: trunk)
11:32
Fix duplicate test IDs in the test suite. No changes to code. Ticket #2319. (CVS 3869) (check-in: 0935cdf82a user: drh tags: trunk)
11:28
Fix a bug in the sqlite3_changes() function reported on the mailing list. (CVS 3868) (check-in: 58ea768c3e user: drh tags: trunk)
2007-04-24
17:35
This fixes a missed case in check-in (3866). Do not apply patch (3866) without also applying this patch. (CVS 3867) (check-in: 66c2fa0836 user: drh tags: trunk)
17:27
When the write_version flag in the database header is larger than what the library understands, make the database read-only. The old behavior was to make the database unreadable. (CVS 3866) (check-in: 10648e9992 user: drh tags: trunk)
2007-04-23
23:56
Get the build working with -DSQLITE_OMIT_UTF16=1. Ticket #2314. (CVS 3865) (check-in: 25c1c7aaa8 user: drh tags: trunk)
2007-04-21
16:37
Add the ability to turn the FTS2 module into an amalgamation. (CVS 3864) (check-in: 94374654cc user: drh tags: trunk)
2007-04-20
12:22
Remove the ARRAYSIZE macro from where.c to avoid a name conflict with microsoft header files. Ticket #2311 (CVS 3863) (check-in: 9389a15f35 user: drh tags: trunk)
2007-04-19
18:36
Fix bug in fts2 handling of OR queries. When one doclist ends before the other, the code potentially tries to read past the end of the doclist. http://www.sqlite.org/cvstrac/tktview?tn=2309 (CVS 3862) (check-in: dfac6082e8 user: shess tags: trunk)
14:48
Better fix than (3860) for the same problem. (3860) could leave file-handles open in some circumstances. (CVS 3861) (check-in: 5ad645339b user: danielk1977 tags: trunk)
14:28
Fix a crash that can occur if an error happens in a virtual table xSync() function. (CVS 3860) (check-in: d1afdd8c9c user: danielk1977 tags: trunk)
12:30
Comment changes in the ioerr tests. No changes to code. (CVS 3859) (check-in: b7ed0e1e88 user: drh tags: trunk)
11:09
Fix a bug whereby sqlite3_prepare_v2() could return both an out-of-memory error and a valid statement handle. (CVS 3858) (check-in: 8795d11c3c user: danielk1977 tags: trunk)
00:24
Get the build working with SQLITE_OMIT_SHARED_CACHE. Ticket #2307. (CVS 3857) (check-in: b623538c55 user: drh tags: trunk)
2007-04-18
17:07
Fix a && where & was intended. This is a real problem, but it would be very difficult to devise a test case where it might lead to an unexpected result. Ticket #2306. (CVS 3856) (check-in: 7f9f0444ed user: drh tags: trunk)
17:04
Better handle malloc() failures in the "echo" virtual table test module. (CVS 3855) (check-in: 6881f9212f user: danielk1977 tags: trunk)
16:45
The sqlite3_step() routine reports SQLITE_ERROR after a commit failure, not SQLITE_DONE. This fix only effects the legacy sqlite3_prepare() interface. It already worked correctly with sqlite3_prepare_v2(). (CVS 3854) (check-in: 165dc72d70 user: drh tags: trunk)
15:33
Version 3.3.16 (CVS 3853) (check-in: 8c6b5adb5c user: drh tags: trunk)
14:47
Fix an assertion failure caused by (3851). (CVS 3852) (check-in: 24683f1d29 user: danielk1977 tags: trunk)
14:24
Minor changes (mainly to assert() macros) to handle malloc failure in vtab operations. (CVS 3851) (check-in: 175156d1fc user: danielk1977 tags: trunk)
13:49
Bump the version number and update documents in preparation for 3.3.16. (CVS 3850) (check-in: 852100a332 user: drh tags: trunk)
2007-04-17
08:32
Avoid reloading the db schema after a failed OP_VerifyCookie if the in-memory schema cookie already matches the database file. (CVS 3849) (check-in: 61c1d06d10 user: danielk1977 tags: trunk)
2007-04-16
17:07
Fix a memory leak introduced by (3842) associated with ticket #2296. (CVS 3848) (check-in: cdc7608b8d user: drh tags: trunk)
15:49
Add test cases to make sure virtual tables cannot be used in shared-cache mode. (CVS 3847) (check-in: 66e468adfc user: danielk1977 tags: trunk)
15:35
Make it clear in the docs that virtual tables and shared cache do not play well together. (CVS 3846) (check-in: 62ef2b1127 user: drh tags: trunk)
15:06
Ensure sqlite3_finalize() can be called from within the xDisconnect() method of virtual tables. (CVS 3845) (check-in: 8d6c3bfc4d user: danielk1977 tags: trunk)
15:02
Detect database file changes using a 128-bit segment of the file header that includes the change counter. Ticket #2303. (CVS 3844) (check-in: e44995debf user: drh tags: trunk)
2007-04-14
12:04
Update the whentouse.html document to mention that less bitmap memory is used for larger page sizes. (CVS 3843) (check-in: 2c8e2a5be3 user: drh tags: trunk)
2007-04-13
16:06
Match ORDER BY terms to columns using names in compound queries. Make sure this works for subqueries, especially in the right-hand side of an IN operator. Ticket #2296. (CVS 3842) (check-in: cfc6f933dc user: drh tags: trunk)
04:01
Fix a bug in autovacuum introduced by (3839). (CVS 3841) (check-in: e39efa195a user: drh tags: trunk)
03:23
Additional tests designed to detect future performance regressions. (CVS 3840) (check-in: 764e7262b9 user: drh tags: trunk)
02:14
Fix multiple performance regressions (ticket #2298 among them) and add tests to make sure they do not come back. (CVS 3839) (check-in: 32bb2d5859 user: drh tags: trunk)
2007-04-12
21:25
Changes toward fixes for tickets #2296 and #2291. (CVS 3838) (check-in: 0dd3e2e47b user: drh tags: trunk)
03:54
Get the column affinities right when processing an IN operator where the right-hand side is a subquery with an ORDER BY clause. Ticket #2295. This bug has likely been present since version 3.0.0 and it has just now been noticed, so it seems to be a obscure case. (CVS 3837) (check-in: 4062ddf3c7 user: drh tags: trunk)
2007-04-11
17:54
Blind check-in of changes to fix #2294 - I have no ability to test. Gentle wince users: please test this change and if it works leave a remark on the #2294 ticket. Tnx. (CVS 3836) (check-in: ca56c3e225 user: drh tags: trunk)
2007-04-10
18:17
Preliminary fix for ticket #2291. This fixes the immediate problem. But we really need to write more tests for the xfer optimization in order to look for other related problems before closing this ticket. (CVS 3835) (check-in: 34fec312fd user: drh tags: trunk)
13:51
Be careful not to use the result of sqlite3_value_blob() after changing the representation of an object. Ticket #2290. (CVS 3834) (check-in: e14374e4e6 user: drh tags: trunk)
2007-04-09
20:45
Fix crash in delete when existing row has null fields. Previous code assumed that the row had values in all columns, sigh. Fixes bug http://www.sqlite.org/cvstrac/tktview?tn=2289 . (CVS 3833) (check-in: 81be7290a4 user: shess tags: trunk)
20:30
Fix stack buffer overrun problem in the test harness. (CVS 3832) (check-in: cad9faf3ad user: drh tags: trunk)
13:49
Version 3.3.15 (CVS 3831) (check-in: ba5f4a55fa user: drh tags: trunk)
13:18
Perparations for the release of 3.3.15. (CVS 3830) (check-in: 8d0dea873d user: drh tags: trunk)
12:45
Fix an obscure pager refcnt leak that occurs following a transient I/O error. (CVS 3829) (check-in: ce6f56ece8 user: drh tags: trunk)
11:20
Have the pager call xReiniter() instead of xDestructor() to restore btree level state after rolling back a page. (CVS 3828) (check-in: 4e8941333e user: danielk1977 tags: trunk)
2007-04-08
16:52
Work around buggy TCL implementations in the exclusive2 test file. Ticket #2287 (CVS 3827) (check-in: 5424fcc5f8 user: drh tags: trunk)
2007-04-07
17:44
Make sure autovacuum is turned off for malloc5.test. (CVS 3826) (check-in: 105a7efb09 user: drh tags: trunk)
15:03
For filesystem databases, do not store a list of pages in the statement journal in main memory. (CVS 3825) (check-in: 0af764a026 user: danielk1977 tags: trunk)
2007-04-06
21:42
Changes to test scripts to support alternative configurations. (CVS 3824) (check-in: 3471a2269f user: drh tags: trunk)
18:23
Additional coverage testing. (CVS 3823) (check-in: 26b2e1aede user: drh tags: trunk)
15:02
Binary file I/O infrastructure added and used to increase test coverage for detection of corrupt database files. (CVS 3822) (check-in: 479b3d965b user: drh tags: trunk)
11:26
The FOR EACH STATEMENT clause in a trigger is now a syntax error. It used to be silently ignored. STATEMENT is no longer a keyword. (CVS 3821) (check-in: 8e2559b4da user: drh tags: trunk)
02:32
Test coverage improvements. Over 90% of branches are now executed in both directions. (CVS 3820) (check-in: a776d93cca user: drh tags: trunk)
01:04
Changes to increase test coverage. (CVS 3819) (check-in: fd4da6b134 user: drh tags: trunk)
01:03
Make sure the sqlite3BtreePrevious() routine terminates properly if the table is deleted out from under it. Ticket #2286. This bug was discovered while trying to increase test coverage from 98.5% to 99% - once again showing the value of full coverage testing. (CVS 3818) (check-in: bebf8d2f88 user: drh tags: trunk)
2007-04-05
21:58
Fix the amalgamation so that it works with -DSQLITE_ENABLE_REDEF_IO. Change tclsqlite.c so that it can be appended to the amalgamation. Create a new amalgamation of header files for use by projects that want to redefine their own I/O interface using -DSQLITE_ENABLE_REDEF_IO. (CVS 3817) (check-in: f2caff870c user: drh tags: trunk)
18:34
Add a target to the autoconf-generated makefile for amalgamation. (CVS 3816) (check-in: 204e7d38ae user: drh tags: trunk)
17:36
New testfixture command: sqlite3_pager_refcounts. Returns a list of integers which is the pager refcount for each pager in the database. (CVS 3815) (check-in: 7338e68e0f user: drh tags: trunk)
17:15
Always truncate the pager cache when truncating the database file. Also reorganize the code to check the change-counter after first obtaining a shared lock. (CVS 3814) (check-in: 9dc4100eff user: danielk1977 tags: trunk)
14:29
Use the MEMDB macro instead of OMIT_MEMORYDB in pager_recycle(). (CVS 3813) (check-in: 97c5159816 user: danielk1977 tags: trunk)
13:12
Avoid attempting to reclaim memory from in-memory databases in sqlite3_release_memory(). (CVS 3812) (check-in: c20f7563c0 user: danielk1977 tags: trunk)
11:54
Add some assert() statements to pager.c. (CVS 3811) (check-in: 973b2a5fb5 user: danielk1977 tags: trunk)
11:25
Improvements to coverage testing. (CVS 3810) (check-in: 38af156da8 user: drh tags: trunk)
08:40
Catch an IO error case introduced by (3808). (CVS 3809) (check-in: 383a08e260 user: danielk1977 tags: trunk)
05:46
Zero cached pages located beyond the end of the file before returning them. Ticket #2285. (CVS 3808) (check-in: 5180810eea user: danielk1977 tags: trunk)
2007-04-04
01:27
Test coverage improvements. (CVS 3807) (check-in: 25f49acc56 user: drh tags: trunk)
2007-04-03
16:13
Add Tcl (flush) commands to exclusive2.test, which is failing on some systems but not others. (CVS 3806) (check-in: 9e004c519a user: danielk1977 tags: trunk)
2007-04-02
22:19
Fix to Makefile.in so that "make test" works. (CVS 3805) (check-in: f592dd2d99 user: drh tags: trunk)
18:06
Do not use the second parameter to gettimeofday() on unix. Pass it a NULL. (CVS 3804) (check-in: 96b678818c user: drh tags: trunk)
17:54
Fix a union initializer so that it works with the Borland compiler. (CVS 3803) (check-in: a067f78bf6 user: drh tags: trunk)
16:46
Add a different form of I/O tests. So far has failed to expose new bugs. (CVS 3802) (check-in: 9e1295428f user: danielk1977 tags: trunk)
16:45
If preprocessor macro OS_OTHER is defined, then ignore OS_UNIX, OS_WIN, and OS_OS2. This makes it easier to add proprietary backends.. (CVS 3801) (check-in: 4fdafd3f58 user: drh tags: trunk)
16:40
Provide a compile-time option to enable exclusive access mode by default. (CVS 3800) (check-in: 93a41510f0 user: drh tags: trunk)
15:31
Version 3.3.14 (CVS 3799) (check-in: 3dbf4f98ac user: drh tags: trunk)
15:29
Changes to the download page. (CVS 3798) (check-in: de8055bcd6 user: drh tags: trunk)
15:04
Update the build scripts and the homepage in preparation for version 3.3.14. (CVS 3797) (check-in: a154224b32 user: drh tags: trunk)
14:19
Cover an extra case in sqlite3PagerMovepage(). (CVS 3796) (check-in: 7313688bd0 user: danielk1977 tags: trunk)
12:29
Fix for #2281. This was a problem with the test-case only. (CVS 3795) (check-in: c036db6251 user: danielk1977 tags: trunk)
12:28
Cover a corrupt-db case in pager.c. (CVS 3794) (check-in: 84077fa160 user: danielk1977 tags: trunk)
12:22
In the amalgamation, put date.c before os.c so that the time_t typedef can be correctly resolved by windows compilers. (CVS 3793) (check-in: 9c5697c70f user: drh tags: trunk)
11:22
If an IO error is encountered on a commit, close the journal so that it persists and can (hopefully) rollback the failed transaction later. (CVS 3792) (check-in: 22e10cc24e user: drh tags: trunk)
11:08
Correctly handle the obscure case of a read-only hot-journal file. (CVS 3791) (check-in: 4d8c6bf44e user: danielk1977 tags: trunk)
05:07
Fix a resource leak introduced by the change-counter optimisation. Also add some test coverage. (CVS 3790) (check-in: ba0538a497 user: danielk1977 tags: trunk)
00:53
Update the version number and change comments in preparation for the release of 3.3.14. (CVS 3789) (check-in: d9f6fdb72b user: drh tags: trunk)
2007-04-01
23:49
Fix some warnings about unused and uninitialized variables. (CVS 3788) (check-in: 18aec1ddfb user: drh tags: trunk)
18:46
Make unix builds threadsafe by default. (CVS 3787) (check-in: ddfc3b2df0 user: drh tags: trunk)
01:57
Fix typos in the amalgamation builder script. (CVS 3786) (check-in: a5070a2d11 user: drh tags: trunk)
2007-03-31
22:34
Improvements to the output of the speed tests. (CVS 3785) (check-in: 1a4d8024b0 user: drh tags: trunk)
22:33
Remove unreachable code from util.c. (CVS 3784) (check-in: 82b7a6f05c user: drh tags: trunk)
22:29
Add the amalgamation generator to the makefile. (CVS 3783) (check-in: a0f3c960fa user: drh tags: trunk)
16:29
Fix the amalgamation so that it can be compiled with REDEF_IO enabled. (CVS 3782) (check-in: 6a3d6142d8 user: drh tags: trunk)
15:28
Increase test coverage by statically defining SQLITE_BIGENDIAN and related macros for ix86 platforms. Still a run-time test for other architectures. Need to add additional cases to cover other popular processors. (CVS 3781) (check-in: 476e7c3fcc user: drh tags: trunk)
15:02
Improved test coverage for printf.c. (CVS 3780) (check-in: c2badb208f user: drh tags: trunk)
13:00
The XFER optimization works if the target table lacks an integer primary key and is not empty as long as it has no indices. It always has and continues to work if the target table was empty. (CVS 3779) (check-in: 2c62ffcb86 user: drh tags: trunk)
10:00
More coverage for pager.c. (CVS 3778) (check-in: 665b119a24 user: danielk1977 tags: trunk)
03:59
Fix a long-standing memory leak in the hash table. The leak only appears following a malloc failure of a hash that copies its keys, which rarely happens and so we have not previously noticed it. (CVS 3777) (check-in: 2aae196457 user: drh tags: trunk)
02:36
Fix a large memory leak in the btree layer that occurs following an I/O error when in shared cache mode. (CVS 3776) (check-in: dce4cb8493 user: drh tags: trunk)
01:34
Fix memory leaks in WHERE clause processing and in TRIGGER parsing. (CVS 3775) (check-in: 6736f4547c user: drh tags: trunk)
2007-03-30
20:46
Remove vestiges of SQLITE_PROTOCOL from the test scripts. (CVS 3774) (check-in: e5e8d56397 user: drh tags: trunk)
20:43
Remove vestiges of the SQLITE_PROTOCOL error. (CVS 3773) (check-in: 6dfd4a12a8 user: drh tags: trunk)
20:40
Fix a memory leak that occurs after a malloc failure in trigger parsing. (CVS 3772) (check-in: 407a85e69b user: drh tags: trunk)
18:42
Fix a memory leak in multi-database commit. Also enhance a comment that explains why a particular valgrind error is harmless. (CVS 3771) (check-in: 28c7ed1eb7 user: drh tags: trunk)
18:21
Coverage testing for a few lines in pager.c. (CVS 3770) (check-in: c1aca18fad user: danielk1977 tags: trunk)
17:18
Remove asserts on the existing of journal files in pager - asserts that are not valid for certain kinds of simulated I/O errors or for async I/O. (CVS 3769) (check-in: f5fad52a97 user: drh tags: trunk)
17:17
Get the memleak.test script working again after recent changes. (CVS 3768) (check-in: cd6ca078e3 user: drh tags: trunk)
17:11
Coverage tests for some pragmas. (CVS 3767) (check-in: eec7ab63be user: danielk1977 tags: trunk)
16:01
Always enable exclusive access mode for TEMP databases. This cannot be changed. The locking_mode pragma has not effect on the TEMP database. (CVS 3766) (check-in: 04d3b9098e user: drh tags: trunk)
14:56
Coverage improvements for where.c. (CVS 3765) (check-in: df64894bac user: danielk1977 tags: trunk)
14:56
Coverage improvements for where.c. (CVS 3764) (check-in: 7e0aa96412 user: danielk1977 tags: trunk)
14:46
Tease apart the two phases of pager commit. (CVS 3763) (check-in: e5f17078a2 user: drh tags: trunk)
14:06
Refactoring the btree and pager routines into distinct two-phase commit routines. We've always done a two-phase commit - this change is just making that more apparent in the code. (CVS 3762) (check-in: 66b3ad09ea user: drh tags: trunk)
13:35
Make yypMinor available to the stack overflow callbacks in lemon generated parsers. This does not effect SQLite. (CVS 3761) (check-in: 70c8c7e2ce user: drh tags: trunk)
13:01
Avoid using the "clock" command in test scripts since it is a proc in Tcl8.5 and is thus not available to testfixture. (CVS 3760) (check-in: 339941d83a user: drh tags: trunk)
11:29
Move the sqlite3_temp_directory global variable out of the OS porting layer and into main.c so that it is more accessible to non-standard OS porting layers. (CVS 3759) (check-in: 23653f7aab user: drh tags: trunk)
11:23
Remove the anonymous union from the sqlite3_value structure since some compilers are unable to deal with it. (CVS 3758) (check-in: 6b995259bc user: drh tags: trunk)
11:12
Comment changes in btree.c and added a missing "else" in pragma.c. (CVS 3757) (check-in: 9a7d7e3190 user: drh tags: trunk)
09:13
Test coverage a few extra lines in where.c. (CVS 3756) (check-in: ea49ddf64a user: danielk1977 tags: trunk)
07:10
Extra test cases to improve coverage of main.c. (CVS 3755) (check-in: 19fc3d7896 user: danielk1977 tags: trunk)
2007-03-29
20:19
Assume any return code from fcntl() other than -1 is success. Formerly we only assumed that 0 was success. Ticket #2173. (CVS 3754) (check-in: 8d0073c0e8 user: drh tags: trunk)
20:13
Fix to token destructors in Lemon. This does not impact SQLite. Ticket #2175. (CVS 3753) (check-in: 6195af4982 user: drh tags: trunk)
18:46
Add the sqlite3_clear_bindings() API to the loadable extension interface. Ticket #2135. (CVS 3752) (check-in: 3111b43ec3 user: drh tags: trunk)
18:41
Buffer updates per-transaction rather than per-update. If lots of updates happen within a single transaction, there was a lot of wasted encode/decode overhead due to segment merges. This code buffers updates in memory and writes out larger level-0 segments. It only works when documents are presented in ascending order by docid. Comparing a test set running 100 documents per transaction, the total runtime is cut almost in half. (CVS 3751) (check-in: 0229cba696 user: shess tags: trunk)
18:19
Change the name of PAGER_SECTOR_SIZE to SQLITE_DEFAULT_SECTOR_SIZE. Make the new OS-layer interface routine for finding sector size optional. (CVS 3750) (check-in: 0fb9af1d6e user: drh tags: trunk)
17:57
Make sure the strftime() date conversions put in leading zeros correctly. Ticket #2276. (CVS 3749) (check-in: e853067ec4 user: drh tags: trunk)
17:28
Avoid calling OsDelete() on journal files when they are opened for temporary databases. Fix for #2255. (CVS 3748) (check-in: e746832f5f user: danielk1977 tags: trunk)
17:07
Add a couple of test cases to improve coverage testing. (CVS 3747) (check-in: 0b22ce3637 user: danielk1977 tags: trunk)
16:30
Don't call ctype functions on hi-bit chars. Some platforms raise assertions when this occurs, and it's almost certainly not the right thing to do in the first place. (CVS 3746) (check-in: f6c3abdc6c user: shess tags: trunk)
15:00
Assume the malloc-failed flag cannot already be set when calling sqlite3_errmsg(16)(). (CVS 3745) (check-in: 54fa22273d user: danielk1977 tags: trunk)
13:35
Fix a bug in XFER optimization introduced by check-in (3736). (CVS 3744) (check-in: 3714ac1732 user: drh tags: trunk)
12:24
Explicitly test some error cases that up until now have not been checked. (CVS 3743) (check-in: 0b7bd9c315 user: danielk1977 tags: trunk)
12:19
Explicitly test some error cases that up until now have not been checked. (CVS 3742) (check-in: f26b014109 user: danielk1977 tags: trunk)
05:51
Change BtreeMoveto so that it can be biased to the right or to the center. Use a right bias when appending and a center bias when searching. This gives about a 15% reduction in calls to sqlite3VdbeRecordCompare. (CVS 3741) (check-in: ad4a6b1a91 user: drh tags: trunk)
04:43
Bias the b-tree binary search toward the high end. The common case is to append data and this heuristic makes append run much faster because there are fewer comparisons. (CVS 3740) (check-in: a9877f616b user: drh tags: trunk)
02:26
Get LEMON working again when YYSTACKDEPTH is greater than zero. (CVS 3739) (check-in: e72c81dbb3 user: drh tags: trunk)
01:44
Lemon change: compile the resulting parser with -DYYSTACKDEPTH=0 or set the "%stack_size" parameter to 0 in the grammar and the parser stack will be dynamically allocated using realloc() and free(). The default behavior is to have a finite depth stack. (CVS 3738) (check-in: 06719b741a user: drh tags: trunk)
00:08
Patch so the the code compiles with -DSQLITE_OMIT_CHECK=1. (CVS 3737) (check-in: 72cea358da user: drh tags: trunk)
2007-03-28
18:04
Improvements to the XFER Optimization of the INSERT statement. (CVS 3736) (check-in: 53fff7d1f2 user: drh tags: trunk)
14:30
Correctly handle NULLs in IN operators. Ticket #2273. The changes in where.c and in the WhereLevel.aInLoop structure are not strictly necessary to fix this problem - they just make the code easier to read. Only the change in OP_Next/OP_Prev operator of vdbe.c is required. (CVS 3735) (check-in: 26348556d8 user: drh tags: trunk)
13:07
Update comments in sqlite3.h. No changes to code. (CVS 3734) (check-in: 1c2656fdf6 user: drh tags: trunk)
01:59
Fix an memory allocation error revealed by malloc3.test. (CVS 3733) (check-in: 0f7fdb022c user: drh tags: trunk)
2007-03-27
22:24
The SQLITE_ENABLE_LOAD_EXTENSION macro enables the load_extension() SQL function by default without having to invoke sqlite3_enable_load_extension() first. (CVS 3732) (check-in: 113aab2cdf user: drh tags: trunk)
21:47
Fix the prototype of the CodecAttach function in attach.c. (CVS 3731) (check-in: 902413e81b user: drh tags: trunk)
17:37
Remove a c++ comment in pager.c. (CVS 3730) (check-in: e4452e8aed user: danielk1977 tags: trunk)
16:19
Test handling of IO errors that occur in OsDelete() or OsTruncate() operations. Also use an anonymous file for temporary storage during a VACUUM. (CVS 3729) (check-in: b24a6e7b02 user: danielk1977 tags: trunk)
15:00
Updates to the VACUUM documentation. Ticket #2257. (CVS 3728) (check-in: c61c97c978 user: drh tags: trunk)
14:44
The -DSQLITE_OMIT_ATTACH=1 option now omits both the ATTACH and VACUUM commands. Ticket #2268. The regression test suite depends on both of these commands and will not run if compiled with this option. (CVS 3727) (check-in: cbebfb8960 user: drh tags: trunk)
14:05
Fix off-by-one errors in the header comments of btree.c. Ticket #2272. (CVS 3726) (check-in: a70ea7202d user: drh tags: trunk)
13:36
More strict aliasing fixes. The single source file library now runs successfully with -fstrict-alias. (CVS 3725) (check-in: c8a8a189a8 user: drh tags: trunk)
12:04
Get the -DSQLITE_OMIT_XFER_OPT option working. Run speed tests on a full regression. Add the script for generating sqlite3.c. (CVS 3724) (check-in: 1dd9d0775a user: drh tags: trunk)
12:04
Get the -DSQLITE_OMIT_XFER_OPT option working. Run speed tests on a full regression. Add the script for generating sqlite3.c. (CVS 3723) (check-in: 42c038518c user: drh tags: trunk)
2007-03-26
22:05
Modify sources to that they can be combined into a single sqlite3.c source file. Eliminate all type-pruned pointer warnings. (CVS 3722) (check-in: 0b832e218e user: drh tags: trunk)
16:30
Set the same random seed for the speed tests. (CVS 3721) (check-in: 8fe3170549 user: drh tags: trunk)
16:13
Run some malloc() tests with exclusive-access mode. (CVS 3720) (check-in: 9ebba46902 user: danielk1977 tags: trunk)
15:46
Discard the pager-cache when the page-size is changed. (CVS 3719) (check-in: e4209f7193 user: danielk1977 tags: trunk)
13:48
Avoid unnecessary calls to pager_unwritelock() when in exclusive-access mode. Add the speed2.test script to the test suite. (CVS 3718) (check-in: ab53f50863 user: drh tags: trunk)
12:26
Run some malloc() tests with exclusive-access mode. (CVS 3717) (check-in: 1274549037 user: danielk1977 tags: trunk)
10:27
Add some tests and fixes surrounding exclusive-access mode and the pager change-counter. (CVS 3716) (check-in: 72cb2e1a73 user: danielk1977 tags: trunk)
08:41
Add some documentation for pragma locking_mode. (CVS 3715) (check-in: 394b174e59 user: danielk1977 tags: trunk)
08:05
Some fixes and test cases for exclusive access mode. (CVS 3714) (check-in: 899e60707b user: danielk1977 tags: trunk)
2007-03-25
19:08
Add the sqlite3_prepare_v2 and sqlite3_prepare16_v2 APIs to the loadable extension interface. (CVS 3713) (check-in: f02ba56d5c user: drh tags: trunk)
2007-03-24
16:45
Changes for exclusive access mode. There are still some bugs. (CVS 3712) (check-in: b6c700370b user: danielk1977 tags: trunk)
2007-03-23
18:12
Discard the contents of the pager-cache only when the change-counter indicates that it is stale. (CVS 3711) (check-in: 07b56965f3 user: danielk1977 tags: trunk)
10:08
Add a comment to the OsSectorSize() function. (CVS 3710) (check-in: 0fd9983a98 user: danielk1977 tags: trunk)
2007-03-22
15:22
In os_unix.c, make a distinction between pread() and pread64(). Add a new compile-time macro USE_PREAD64 to select the latter. (CVS 3709) (check-in: 177cd92910 user: drh tags: trunk)
15:20
Call sqlite3_free() instead of free() to release a buffer allocated by sqlite3_vmprintf() in test_async.c (test suite bug only). (CVS 3708) (check-in: b078f09bff user: danielk1977 tags: trunk)
00:14
Refactor PLWriter to remove owned buffer. DLCollector (Document List Collector) now handles the case where PLWriter (Position List Writer) needed a local buffer. Change to using the associated DLWriter (Document List Writer) buffer, which reduces the number of memory copies needed in doclist processing, and brings PLWriter operation in line with DLWriter operation. (CVS 3707) (check-in: d04fa3a13a user: shess tags: trunk)
2007-03-20
23:52
Refactor PLWriter in preparation for buffered-document change. Currently, PLWriter (Position List Writer) creates a locally-owned DataBuffer to write into. This is necessary to support doclist collection during tokenization, where there is no obvious buffer to write output to, but is not necessary for the other users of PLWriter. This change adds a DLCollector (Doc List Collector) structure to handle the tokenization case.

Also fix a potential memory leak in writeZeroSegment(). In case of error from leafWriterStep(), the DataBuffer dl was being leaked. (CVS 3706) (check-in: 1b9918e207 user: shess tags: trunk)

2007-03-19
17:44
Modify the interface to the pager sub-system in preparation for performing IO in blocks based on sector-size, not database page-size. (CVS 3705) (check-in: 7dc7658887 user: danielk1977 tags: trunk)
15:04
Add some test cases simulating crashes with various storage medium sector sizes. (CVS 3704) (check-in: c3c5f658cf user: danielk1977 tags: trunk)
13:53
Fix some problems with test cases in shared_err.test. Also a real bug causing a segfault after an IO error in pager.c. (CVS 3703) (check-in: 9f62ef1ec3 user: danielk1977 tags: trunk)
11:54
Fix a comment in btree.c (CVS 3702) (check-in: 05700c11a9 user: drh tags: trunk)
11:25
Changes to support medium sector sizes larger than the database page size. (CVS 3701) (check-in: 3a3e8eb25d user: danielk1977 tags: trunk)
05:54
Add new OS file method to return the sector-size of the underlying storage: sqlite3OsSectorSize() (CVS 3700) (check-in: 5752d84d37 user: danielk1977 tags: trunk)
2007-03-17
18:22
Add documentation of the REPLACE, TRIM, LTRIM, and RTRIM functions. (CVS 3699) (check-in: d42c963620 user: drh tags: trunk)
17:52
Added TRIM, LTRIM, and RTRIM functions. (CVS 3698) (check-in: 6fe13eeade user: drh tags: trunk)
13:27
First cut at an implementation of the REPLACE() function. We might yet make this a compile-time option or move it into a separate source file. (CVS 3697) (check-in: c2fe746ea7 user: drh tags: trunk)
10:28
Add crash2.test, for robustness testing with variable disk block size. (CVS 3696) (check-in: b0f8203dbb user: danielk1977 tags: trunk)
10:26
Modifications to crash-test infrastructure. (CVS 3695) (check-in: c4be8d9949 user: danielk1977 tags: trunk)
07:22
Combine the two very similar definitions of (crashsql) in the test scripts. (CVS 3694) (check-in: eaf434d588 user: danielk1977 tags: trunk)
2007-03-16
18:30
Out-of-memory cleanup in tokenizers. Handle NULL return from malloc/calloc/realloc appropriately, and use sizeof(var) instead of sizeof(type) to make certain that we don't get a mismatch between them as the code rots. (CVS 3693) (check-in: fbc53da8c6 user: shess tags: trunk)
2007-03-15
15:35
Save an if(...) clause made redundant by (3691). (CVS 3692) (check-in: 8153edf8be user: danielk1977 tags: trunk)
15:33
Check for multiple calls to sqlite3FailedMalloc(). Ignore the second and subsequent calls. (CVS 3691) (check-in: 7180874592 user: danielk1977 tags: trunk)
12:51
Fix the pager so that it handles persistent I/O errors correctly. Update the testing infrastructure so that it tests for persistent I/O errors instead of just transient errors. (CVS 3690) (check-in: ea8507a796 user: drh tags: trunk)
12:17
Infrastructure to make simulated I/O errors persistent instead of transient. (CVS 3689) (check-in: 1a53f531ec user: drh tags: trunk)
12:05
Catch an IO error code that was being ignored in OP_RowData. (CVS 3688) (check-in: 760ebf8076 user: danielk1977 tags: trunk)
01:16
Enhanced temp-file security under unix. There are no known attacks against prior versions - this check-in is just an added precaution. (CVS 3687) (check-in: 5af61402f6 user: drh tags: trunk)
2007-03-14
15:37
Modify the behaviour of writable_schema to ignore schema parsing errors. (CVS 3686) (check-in: a8d6d935fb user: danielk1977 tags: trunk)
2007-03-13
16:33
Add hyperlink anchors to the lockingv3.html document. (CVS 3685) (check-in: 3e66ea6f61 user: drh tags: trunk)
16:32
Do not crash when a corrupt database contains two indices with the same name. (CVS 3684) (check-in: 48b2a40008 user: danielk1977 tags: trunk)
2007-03-12
23:48
Clarify the use of loop variables in a expr.c. (CVS 3683) (check-in: e20e76f6d8 user: drh tags: trunk)
2007-03-10
20:50
Fix another typo in copyright.html (CVS 3682) (check-in: 92f158643c user: drh tags: trunk)
20:47
Amplify and clarify reasons for wanting to get a license to use SQLite. (CVS 3681) (check-in: 05bae0204d user: drh tags: trunk)
18:30
Fix typos in the copyright.html webpage. Ticket #2267 (CVS 3680) (check-in: 74a4bfce46 user: drh tags: trunk)
13:47
Updates to the copyright.html page to address concerns some users have SQLite have about copyright issues. A links to the wikipedia article on public domain and a public domain icon. (CVS 3679) (check-in: 6ce39f3006 user: drh tags: trunk)
2007-03-09
14:43
Remove extra heading accidentally added to lang.tcl by (3677). (CVS 3678) (check-in: 570533c1ef user: danielk1977 tags: trunk)
14:40
Add a few "class" attributes to the html generated by lang.tcl to support conversion to pdf. (CVS 3677) (check-in: 485c52ddc0 user: danielk1977 tags: trunk)
2007-03-08
12:23
Change the documentation to be more specific about the restriction on the use of keywords. Ticket #2264. (CVS 3676) (check-in: d03d480544 user: drh tags: trunk)
2007-03-06
16:03
Catch an out-of-memory condition in vacuum code. (Bug in (3373)). (CVS 3675) (check-in: 302ec76857 user: danielk1977 tags: trunk)
15:53
Fixes to the overflow-chain optization of (3672). (CVS 3674) (check-in: d6986d1e7c user: drh tags: trunk)
13:46
Use heap instead of stack for large buffers in the pager. Fix for #2262. (CVS 3673) (check-in: dfe1dffa45 user: danielk1977 tags: trunk)
11:42
Do not read the last page of a overflow chain when deleting that chain. Just add the page to the freelist. This reduces I/O. (CVS 3672) (check-in: 6db945f7a7 user: drh tags: trunk)
2007-03-04
13:15
Changes to the btree and pager that reduce the amount of I/O when dealing with the freelist. (1) Avoid journaling pages of a table that is being deleted. (2) Do not read the original content of pages being pulled off of the freelist. (CVS 3671) (check-in: 2ba5be3119 user: drh tags: trunk)
2007-03-02
08:12
Handle the case where the estimated cost of a virtual table scan is larger than SQLITE_BIG_DBL. Ticket #2253. (CVS 3670) (check-in: 52885ed8b7 user: danielk1977 tags: trunk)
07:27
Disable the "SELECT max(rowid) ..." optimization for virtual tables. Ticket #2250. (CVS 3669) (check-in: ddb4d0af57 user: danielk1977 tags: trunk)
06:24
Minor fixes so that testfixture builds without IO tracing enabled. (CVS 3668) (check-in: 8d3829cdb3 user: danielk1977 tags: trunk)
2007-03-01
00:29
Additional I/O Tracing support. (CVS 3667) (check-in: ed915f579a user: drh tags: trunk)
2007-02-28
06:14
Work around incompatibilities in the windows printf() routine within the new I/O tracing logic. (CVS 3666) (check-in: ceb3a07f55 user: drh tags: trunk)
04:47
Add the undocumented and experimental I/O tracing interface. This interface is likely to change and may be completely abandoned in the near future. (CVS 3665) (check-in: 007ca28389 user: drh tags: trunk)
2007-02-27
02:01
Improvements to OS layer tracing on the unix backend. (CVS 3664) (check-in: 3ad96dbe09 user: drh tags: trunk)
2007-02-24
15:29
Add comments to sqlite3ExprCompare() to clarify its operation. Ticket #2216. (CVS 3663) (check-in: fba0a1e508 user: drh tags: trunk)
15:18
Additional test cases added. Improvements to the INSERT transfer optimization. (CVS 3662) (check-in: 2bf5475bde user: drh tags: trunk)
13:53
Additional tests and some improvements to the INSERT transfer optimization. More testing is needed. (CVS 3661) (check-in: 8309858143 user: drh tags: trunk)
13:23
Make sure the INSERT xfer optimization does not trigger if the CHECK constraints on the two tables are not identical. Ticket #2252. (CVS 3660) (check-in: 6fc1827523 user: drh tags: trunk)
11:52
Make sure that integer values are converted to real when pulled from a REAL table column by GROUP BY. Ticket #2251. Also make sure default values are correctly expanded. There may be other places in the code where this issue comes up - we need to look further. (CVS 3659) (check-in: e11bbf174c user: drh tags: trunk)
2007-02-23
23:13
Disable the OR optimization if it would conflict with column affinity coercions. Ticket #2249. Additional cleanup and testing of the OR optimization. (CVS 3658) (check-in: 908daaa9ab user: drh tags: trunk)
14:20
Clarifications to the datatype3.html document. (CVS 3657) (check-in: 4692a85edb user: drh tags: trunk)
03:00
Clarify the documentation on how comparisons occur in an IN operator. Fix the comparison operators when both sides of an IN operator are expressions (ticket #2248). Changes to main.mk for adding FTS2 into the standard build also got mixed in with this check-in by mistake. (CVS 3656) (check-in: da81725ca1 user: drh tags: trunk)
00:14
Fix typos in test naming (was using 'e' instead of 'f'). (CVS 3655) (check-in: 16cb00adeb user: shess tags: trunk)
2007-02-22
23:06
Make the depth of the pushdown automaton stack generated by lemon changable at compile-time using -DYYSTACKDEPTH=<number>. (CVS 3654) (check-in: d8845ac1fb user: drh tags: trunk)
2007-02-21
17:04
Modify the fix for #2244 to avoid using a vdbe label. (CVS 3653) (check-in: f7ce74b22a user: danielk1977 tags: trunk)
16:52
Fix for an UPDATE on a virtual table when the WHERE clause matches zero rows. Ticket #2244. (CVS 3652) (check-in: 43bf797842 user: danielk1977 tags: trunk)
16:44
Add comments to the top of keywordhash.h. (CVS 3651) (check-in: 0aa9ed5bbf user: drh tags: trunk)
2007-02-20
15:21
Enhance the documentation to clarify that SQLite is not reentrant through the authorization callback function. Ticket #2242. (CVS 3650) (check-in: b18a758a8f user: drh tags: trunk)
2007-02-17
14:59
merge the second portion of the cross-compile cleanup (CVS 3649) (check-in: 309f2de62f user: vapier tags: trunk)
14:46
regenerate (CVS 3648) (check-in: 20ac0f3640 user: vapier tags: trunk)
14:31
punt custom handling of cross-compile logic and move towards the standard autotool way of things (CVS 3647) (check-in: 9817b433da user: vapier tags: trunk)
14:28
make the readline checks more flexible and handle cross-compiling logic (CVS 3646) (check-in: 4626c84bae user: vapier tags: trunk)
2007-02-14
12:32
In the corrupt2.test script, change uses of (open ... a) to (open ... RDWR) to work around inconsistencies in behavior across various platforms. (CVS 3645) (check-in: 50e86b0368 user: drh tags: trunk)
09:19
Use OP_VColumn instead of OP_Column when querying virtual tables for values to save in aggregate context records. #2230. (CVS 3644) (check-in: cb78f7cb0f user: danielk1977 tags: trunk)
2007-02-13
15:01
Add a new algorithm for handling INSERT which reduces fragmentation on a VACUUM. Ticket #2075. More testing needed. (CVS 3643) (check-in: 9f56a878cb user: drh tags: trunk)
14:11
Changes to the script that generates download.html so that it recognizes FTS2 modules. (CVS 3642) (check-in: 06c22de254 user: drh tags: trunk)
13:04
Version 3.3.13 (CVS 3641) (check-in: 286c4eb30d user: drh tags: trunk)
12:49
Expand the cursor index in SrcList_item to 32-bits to accomodate really huge VDBE programs resulting from deeply nested triggers. This is an interim fix until we rework triggers to use subroutines. (CVS 3640) (check-in: 22769e2d37 user: drh tags: trunk)
02:12
Changed my mind. Convert "GUID" back to "UUID". (CVS 3639) (check-in: c258840515 user: drh tags: trunk)
02:07
Change "UUID" to "GUID" in the documentation. (CVS 3638) (check-in: dddd31f4e0 user: drh tags: trunk)
02:03
Changes in preparation for version 3.3.13. (CVS 3637) (check-in: 7799a0b63d user: drh tags: trunk)
01:41
Explanation of the "fragmentation" line is added to the help message at the end of the output of sqlite3_analyzer. (CVS 3636) (check-in: 31e5073c58 user: drh tags: trunk)
01:38
Additional fixes to the new fragmentation feature of sqlite3_analyzer. (CVS 3635) (check-in: 82aed271a4 user: drh tags: trunk)
2007-02-10
19:22
Changes to support fragmentation analysis in sqlite3_analyzer. (CVS 3634) (check-in: bd6bc3b8f0 user: drh tags: trunk)
2007-02-07
13:09
Explicit collations always override implicit collations. This is backwards compatible since SQLite has not previously supported explicit collations. Need to add tests of this new behavior. (CVS 3633) (check-in: 3638823a62 user: drh tags: trunk)
01:06
Change the coding of PRAGMA count_changes so that it uses memory cells of the VM rather than the stack, to avoid problems with leftovers on the stack interfering with other operations. Ticket #2217. (CVS 3632) (check-in: 2bd4b62a20 user: drh tags: trunk)
01:01
http://www.sqlite.org/cvstrac/tktview?tn=2219

When creating fts tables in an attached database, the backing tables are created in database 'main'. This change propagates the appropriate database name to the routines which build sql statements.

Note that I propagate the database name and table name separately. I briefly considered just making the table name be "db.table", but it didn't fit so well in the model used to store the table name and other information, and having the db name passed separately seemed a bit more transparent. (CVS 3631) (check-in: 283385d207 user: shess tags: trunk)

2007-02-06
23:41
Additional tests to give full coverage testing to ticket #2211. (CVS 3630) (check-in: ecb1f2fd7b user: drh tags: trunk)
13:26
When optimizing out an ORDER BY clause due to uniqueness constraints, make sure unused terms to the right in the ORDER BY clause to not reference other tables in a join. Ticket #2211. Additional test cases needed before closing this ticket. (CVS 3629) (check-in: 912faf18d8 user: drh tags: trunk)
11:11
Check the return value of lseek() in os_unix.c to make sure it really worked. (CVS 3628) (check-in: e4408dd1fd user: drh tags: trunk)
2007-02-05
14:21
Set the MEM_Term flag when an internal string has a nul-terminator appended to it. Fix for #2213. (CVS 3627) (check-in: fc969ad991 user: danielk1977 tags: trunk)
2007-02-02
12:44
Minor tweaks to collating sequences. We'll hold of making major changes until 3.4.0, since we'll likely end up with some minor technical imcompatibilities. (CVS 3626) (check-in: 9740aa95a3 user: drh tags: trunk)
12:33
Fix typos in the pragma documentation. Ticket #2210. (CVS 3625) (check-in: f0c66ad8e9 user: drh tags: trunk)
2007-02-01
23:02
First cut at adding the COLLATE operator. Regression tests pass (or at least the quick set does) and a few new tests have been added. But many more tests are needed. Rules for combining collations need to be worked out. (CVS 3624) (check-in: 85cca7cd25 user: drh tags: trunk)
01:53
Fix a bug in the copy method of the TCL interface. Ticket #2201. (CVS 3623) (check-in: 936263966e user: drh tags: trunk)
01:40
Allow up to 64 tables in a join (the number of bits in a long long int). The old limit was 32 tables. (CVS 3622) (check-in: 505dce8f4e user: drh tags: trunk)
2007-01-31
23:37
Fixed incorrect typecast for flock structure ptr in fcntl() call in sqlite3TestLockingStyle() Restored previous fullfsync behavior, try fsync() if fcntl(fd, F_FULLFSYNC, 0) returns an error. (CVS 3621) (check-in: f044c5f49f user: aswift tags: trunk)
2007-01-29
17:58
Replace the randomHex() function with separate functions randomBlob() and hex(). (CVS 3620) (check-in: f5ad74a9bc user: drh tags: trunk)
15:50
Add the randomhex() function as a built-in. (CVS 3619) (check-in: a6001589ab user: drh tags: trunk)
2007-01-28
21:42
Implement the platform specific part of the shared library interface on OS/2 (CVS 3618) (check-in: 027251a6fc user: pweilbacher tags: trunk)
21:12
Adapt returns of the os2Read() function to those of other platforms using checkin (3549) to prevent possible corruption (CVS 3617) (check-in: ba76107cd1 user: pweilbacher tags: trunk)
2007-01-27
14:30
Version 3.3.12 (CVS 3616) (check-in: fc66070393 user: drh tags: trunk)
14:26
Adjustments to the pragma test for OS-X. (CVS 3615) (check-in: 4d0d2063df user: drh tags: trunk)
14:11
More adjustments to the pragma test for windows. (CVS 3614) (check-in: 79a65436d1 user: drh tags: trunk)
14:04
Adjustment to tests for PRAGMA integrity_check so that they run under windows. (CVS 3613) (check-in: a79914ccbc user: drh tags: trunk)
13:38
Increment the version number in preparation for the 3.3.12 release. (CVS 3612) (check-in: 24e465af92 user: drh tags: trunk)
13:37
Fix a documentation comment in vdbe.c. Ticket #2188. (CVS 3611) (check-in: 3eec703beb user: drh tags: trunk)
02:38
Parser changes to allow parenthesized numerical arguments to pragmas, in support of the integrity_check enhancement of check-in (3609) and ticket #2176. (CVS 3610) (check-in: ab6322bf93 user: drh tags: trunk)
02:24
Limit the number of errors returned by PRAGMA integrity_check to 100 by default. Specify an alternative limit using an argument to the pragma. Ticket #2176. (CVS 3609) (check-in: d564a039f2 user: drh tags: trunk)
2007-01-26
21:08
Make sure the vdbeInt.h file is not #included multiple times. Ticket #2194. (CVS 3608) (check-in: 93edd3b056 user: drh tags: trunk)
19:31
Fix prototypes for the parser. Syntactic change only - no effect on object code. Ticket #2193. (CVS 3607) (check-in: 02990fabd1 user: drh tags: trunk)
19:23
Add code to select.c for printing the contents of parse-tree structures. The code is normally omitted. You must compile with -DSQLITE_TEST or -DSQLITE_DEBUG to enable it. (CVS 3606) (check-in: 1b26d68756 user: drh tags: trunk)
19:04
Fix a (harmless) assertion fault on nested views where the inner views are compound selects. Ticket #2192. (CVS 3605) (check-in: 942e7193bb user: drh tags: trunk)
13:08
Make sure the loadext.c module works even if all SQLITE_OMIT macros are defined. Tickets #2184 and #2069. (CVS 3604) (check-in: e1fae43c89 user: drh tags: trunk)
00:51
Work around issues with certain C++ compilers by adding a typedef to sqlite3.h. Ticket #2191. (CVS 3603) (check-in: 31e8cf7f30 user: drh tags: trunk)
2007-01-25
16:56
Fix an additional problem with the IS NULL optimization on LEFT JOINs. Ticket #2189. See also ticket #2177. (CVS 3602) (check-in: 358dd82d3a user: drh tags: trunk)
2007-01-24
03:46
Do not run the fts2i.test unless the FTS2 module is available. (CVS 3601) (check-in: 310f685851 user: drh tags: trunk)
03:43
Do not run test fts1i.test if FTS1 is not installed. (CVS 3600) (check-in: 810c0176f8 user: drh tags: trunk)
2007-01-22
13:07
Version 3.3.11 (CVS 3599) (check-in: 66cbbe0442 user: drh tags: trunk)
13:06
Prepare for the release of version 3.3.11 (CVS 3598) (check-in: daf2883024 user: drh tags: trunk)
13:02
Fix a pragma test so that it works in directories that have spaces in their names. (CVS 3597) (check-in: 071c957a5d user: drh tags: trunk)
2007-01-19
22:59
http://www.sqlite.org/cvstrac/tktview?tn=2166,35

Calling UPDATE against an fts table in a UTF-16 database inserts corrupted data into the database. The UTF-8 data is being inserted directly. This appears to happen because sqlite3_ value_text() destructively coerces a value to UTF-8, and it's never converted back when updating the table. This works around the problem by rearranging things so that the update happens before the coercion. (CVS 3596) (check-in: 4f2ab4b632 user: shess tags: trunk)

01:06
Make sure the IS NULL optimization introduced by check-in (3494) correctly handles a LEFT JOIN where the a term from the right table of the join uses an IS NULL constraint. Ticket #2177. This check-in also adds the new test cases that were suppose to have been added with (3494) but which were mistakenly omitted. (CVS 3595) (check-in: 335863e4d1 user: drh tags: trunk)
2007-01-16
18:19
Additional memory initialization in lemon - bug reported from wireshark. Ticket #2172. Note this problem only comes up with certain grammars, and does not impact SQLite. On the other hand, it might cause SQLite to run slower. So we might want to revisit this change at some point. (CVS 3594) (check-in: d537aa5ede user: drh tags: trunk)
03:09
Make sure the parser generated by lemon always calls destructors on unused symbols, even if there is no action following the rule. Ticket #2171. (CVS 3593) (check-in: 0c5c1b931d user: drh tags: trunk)
2007-01-12
23:43
Fix a bug in sqlite3_prepare_v2() introduced by checkin (3578) and reported on the mailing list. (CVS 3592) (check-in: 8724847036 user: drh tags: trunk)
23:09
Fix a bug in lemon. The code in which the error appears might well be unreachable. The changes does not effect the code that is generated for the SQLite parser. Ticket #2164. (CVS 3591) (check-in: f4ee5d83e1 user: drh tags: trunk)
2007-01-10
18:56
Make the AreFileApisANSI() call a macro with a value of 1 on wince. Ticket #2163. (CVS 3590) (check-in: a72c950cdb user: drh tags: trunk)
13:34
More homepage typo fixes. (CVS 3589) (check-in: 85b5d446b0 user: drh tags: trunk)
13:32
Fix a typo on the homepage. (CVS 3588) (check-in: a0b429914b user: drh tags: trunk)
12:58
Version 3.3.10 (CVS 3587) (check-in: 204a212a28 user: drh tags: trunk)
12:57
Corrections to the documentation on sqlite3_exec(). Ticket #2161. (CVS 3586) (check-in: afd33f62ec user: drh tags: trunk)
12:54
Corrections to the documentation for sqlite3_busy_handler(). Ticket #2160. (CVS 3585) (check-in: 9614c0f99f user: drh tags: trunk)
2007-01-09
23:13
Documentation updates prior to version 3.3.10. Among the changes is a fix for ticket #2148 (CVS 3584) (check-in: 686beffa69 user: drh tags: trunk)
17:18
Fix the windows OS layer so that it returns detailed IOERR error codes. (CVS 3583) (check-in: 4b36de46c4 user: drh tags: trunk)
15:32
Work around win2k problems so that single-character filenames can be used. Ticket #2151. (CVS 3582) (check-in: c4eb2100c3 user: drh tags: trunk)
15:06
Documentation and tests to show that the cause of a parsing error is available on sqlite3_errmsg after sqlite3_step return SQLITE_SCHEMA. (CVS 3581) (check-in: 31a661d424 user: drh tags: trunk)
15:02
Updates tests and documentation to justify the behavior observed in ticket #2158. No changes to code. (CVS 3580) (check-in: e1f7cf065d user: drh tags: trunk)
14:37
Do not use the symbol "interrupt" since that is a reserved word in OpenWatcom. Ticket #2159. (CVS 3579) (check-in: 9960ba5768 user: drh tags: trunk)
14:01
When an automatic re-prepare occurs, take care not to reset the internal schema symbol table. Ticket #2156. This change also includes some debugging enhancements. (CVS 3578) (check-in: 43fe7fc1c3 user: drh tags: trunk)
2007-01-08
22:40
Additional tests of sqlite3_prepare_v2. (CVS 3577) (check-in: b0650aa6cf user: drh tags: trunk)
21:07
Fix a critical bug in sqlite3_prepare_v2 that can lead to segfaults when the schema changes and the statement is recompiled automatically. Ticket #2154. (CVS 3576) (check-in: 3401388dba user: drh tags: trunk)
16:19
Fix another round-off problem in strftime(). Ticket #2153. (CVS 3574) (check-in: d49ddc5ff0 user: drh tags: trunk)
14:31
Updates to the sqlite3 command-line shell documentation. Ticket #2144. (CVS 3573) (check-in: 3a422bb9ee user: drh tags: trunk)
13:40
Add the $(BEXE) suffix to every mention of "lemon" in the Makefile.in, so that the build will work on OS/2. Ticket #2149. (CVS 3571) (check-in: f5989a0bd3 user: drh tags: trunk)
13:07
Fix a round-off error in the %W and %j conversions of the strftime() function. Ticket #2150. (CVS 3570) (check-in: 5206793780 user: drh tags: trunk)
2007-01-06
13:11
Another typo fixed in changes.html (CVS 3569) (check-in: 70033a0ea4 user: drh tags: trunk)
13:10
Fix the makefile to correctly install sqlite3ext.h. Ticket #2145 (CVS 3568) (check-in: be410fee68 user: drh tags: trunk)
13:05
Fix typo in changes.html. (CVS 3567) (check-in: cc1df49b7a user: drh tags: trunk)
2007-01-05
16:39
Clear a compiler warning when compiling with -DSQLITE_OMIT_VIRTUALTABLE. (CVS 3566) (check-in: 520f6583e3 user: drh tags: trunk)
14:41
Remove redundant variable. (CVS 3565) (check-in: 2a7f5aaf82 user: drh tags: trunk)
14:38
Suppress compiler warnings. Fix a bug in IO error detection on windows. (CVS 3564) (check-in: daed2bab00 user: drh tags: trunk)
02:00
In the btree.c, when releasing the page1 lock, first make sure the pager has not reset and released the lock already. This fixes a bug introduced by (3549). (CVS 3563) (check-in: 36a2db96ef user: drh tags: trunk)
01:58
Get threadtest2.c working again after being long neglected. (CVS 3562) (check-in: 06216d0d3b user: drh tags: trunk)
00:14
Fix a test case that changed due to (3560). Ticket #2143 (CVS 3561) (check-in: c28664d314 user: drh tags: trunk)
2007-01-04
22:13
Fix the user_version and schema_version pragmas so that they set a result column name. Ticket #2143. (CVS 3560) (check-in: f81c4227c2 user: drh tags: trunk)
22:13
Fix the trigger4 test so that it runs on windows. (CVS 3559) (check-in: 5e4e65ea15 user: drh tags: trunk)
18:01
Put a missing double-quote into the changes.html page. (CVS 3558) (check-in: 277f8faae4 user: drh tags: trunk)
17:01
Version 3.3.9 (CVS 3557) (check-in: 8bf19a6a41 user: drh tags: trunk)
16:37
Increase the version number to 3.3.9. Documentation changes prior to the release of version 3.3.9. (CVS 3556) (check-in: 7e2832978f user: drh tags: trunk)
16:37
Disable the alter2.test on utf16 since the results of that test only work for utf8. (CVS 3555) (check-in: 87f350f35b user: drh tags: trunk)
14:58
Fix a memory leak introduced by the latest changes to pager.c. (CVS 3554) (check-in: 8cad5d671b user: drh tags: trunk)
14:36
Reactivate disabled "alter2" tests. (CVS 3553) (check-in: 093467a099 user: drh tags: trunk)
01:20
Fix for ticket #2141. (CVS 3552) (check-in: 70f5f3b85f user: drh tags: trunk)
01:20
Add a comment to vdbe.c to explain the use of an uninitialized variable. (CVS 3551) (check-in: 1773eb7bad user: drh tags: trunk)
2007-01-03
23:37
Clean up memory leaks and uninitialized variables detected by valgrind. Identify all tests where we deliberately derefence freed memory by adding a "-misuse" tag. (CVS 3550) (check-in: 70a862702d user: drh tags: trunk)
23:36
Additional changes in the pager and os interface layers to fix problems that might be contributing to recently observed database corruption. (CVS 3549) (check-in: a593d5743e user: drh tags: trunk)
15:34
Make sure that the database size cache in the pager is invalidated whenever the database is unlocked. A stale value in the database size cache can result in database corruption on a heavily loaded system running autovacuum. (CVS 3548) (check-in: 6806b9ecb5 user: drh tags: trunk)
2007-01-02
18:41
Update the vtab_err test to check for -DSQLITE_MEMDEBUG=1 and skip the tests if missing. Pager is more careful to clear its file size cache. Remove an assert() in VDBE that might fail on a corrupt database file. (CVS 3547) (check-in: bf1afd016a user: drh tags: trunk)
2006-12-22
20:33
OS/2 change: add safeguard to be able to use SQLite loaded into high memory on OS/2 when compiled with GCC 3.3 or later. Currently, this is only used when building within the Mozilla source tree. (CVS 3546) (check-in: 720189b8fa user: pweilbacher tags: trunk)
2006-12-21
22:38
Disable extension loading by default. At some point we should change the configure script to detect the presence of dlopen() automatically and add the appropriate library to the link. But that requires a working version of autoconf, which I do not have. Ticket #2124. (CVS 3545) (check-in: 87a9ee077a user: drh tags: trunk)
03:20
More fixes to the microsoft code-page nightmare... (CVS 3544) (check-in: 0b47d88060 user: drh tags: trunk)
02:21
Use GetProcAddressA() on wince. Ticket #2123 (CVS 3543) (check-in: e3dddd1cef user: drh tags: trunk)
01:37
Reduce the number of utf8->unicode conversions required in wince. Ticket #2122 (CVS 3542) (check-in: 6d2ff0962d user: drh tags: trunk)
01:29
Move the shared-library loading routines into the OS portability layer, thus enabling the os_win.c code to handle the character encoding confusion of win95/nt/ce. Ticket #2023. (CVS 3541) (check-in: a1bcc6de57 user: drh tags: trunk)
00:46
Change a parameter type from "int" to "DWORD" in the windows interface. Ticket #2122. (CVS 3540) (check-in: cca1eb3dfa user: drh tags: trunk)
2006-12-20
14:53
The xFilter method is not optional. (CVS 3539) (check-in: 6fdbd3bc91 user: drh tags: trunk)
14:31
Initialize a variable to avoid compiler warnings and human confusion. Ticket #2117. (CVS 3538) (check-in: 951af8d5c5 user: drh tags: trunk)
03:37
Patch to get extension loading working on wince. Ticket #2023. (CVS 3537) (check-in: a81f3ddfd0 user: drh tags: trunk)
03:24
The query optimizer does a better job of optimizing out ORDER BY clauses that contain the rowid or which use indices that contain the rowid. Ticket #2116. (CVS 3536) (check-in: f245f5c2c2 user: drh tags: trunk)
02:15
Allow constraint names on DEFAULT values in a table definition. Ticket #2109. (CVS 3535) (check-in: 893d58c23d user: drh tags: trunk)
2006-12-19
18:57
Build without warnings and pass all tests with SQLITE_OMIT_LOAD_EXTENSION. Ticket #2113. (CVS 3534) (check-in: c3d118b408 user: drh tags: trunk)
18:47
Fix a typo in shell.c. Ticket #2111. (CVS 3533) (check-in: 6f8a56231c user: drh tags: trunk)
18:46
Use sqlite3_mprintf() instead of strdup() to reduce libc dependencies. Ticket #2114. (CVS 3532) (check-in: bf4a78cb31 user: drh tags: trunk)
2006-12-18
18:34
Speed improvement: do not journal or rollback pages that are pulled out of the freelist. (CVS 3531) (check-in: 4dffc4c3c9 user: drh tags: trunk)
14:12
Updates to the "Distinctive Features" document. (CVS 3530) (check-in: c734585e1a user: drh tags: trunk)
2006-12-16
16:25
Query optimizer enhancement: In "FROM a,b,c left join d" allow the C table to be reordered with A and B. This used to be the case but the capability was removed by (3203) and (3052) in response to ticket #1652. This change restores the capability. (CVS 3529) (check-in: 7393c81b8c user: drh tags: trunk)
2006-12-14
01:06
Fix a bug in lemon that leads to an assertion fault given an invalid grammar. The bug and this fix do not effect on SQLite. Ticket #2107. (CVS 3528) (check-in: f2ad230f6d user: drh tags: trunk)
2006-11-30
13:06
Change the table_info pragma so that it returns NULL for the default value if there is no default value. Ticket #2078. (CVS 3527) (check-in: 5f21c3a5f0 user: drh tags: trunk)
13:06
Improvements to the new performance tests. (CVS 3526) (check-in: 27f56c2051 user: drh tags: trunk)
13:05
Fix indentation typo in btree.c. (CVS 3525) (check-in: 5d61486f0f user: drh tags: trunk)
2006-11-29
23:41
Drop a couple variables which are no longer used anywhere. (CVS 3524) (check-in: 08c2cc0e07 user: shess tags: trunk)
21:03
Test that terms longer than interior nodes work correctly. A bug prior to fts2.c r1.10 meant that such large terms caused an eventual stack overflow. (CVS 3523) (check-in: 66581162da user: shess tags: trunk)
20:53
Added the speed1.test script (CVS 3522) (check-in: 30355dfbd9 user: drh tags: trunk)
05:17
http://www.sqlite.org/cvstrac/tktview?tn=2046

The virtual table interface allows for a cursor to field multiple xFilter() calls. For instance, if a join is done with a virtual table, there could be a call for each row which potentially matches. Unfortunately, fulltextFilter() assumes that it has a fresh cursor, and overwrites a prepared statement and a malloc'ed pointer, resulting in unfinalized statements and a memory leak.

This change hacks the code to manually clean up offending items in fulltextFilter(), emphasis on "hacks", since it's a fragile fix insofar as future additions to fulltext_cursor could continue to have the problem. (CVS 3521) (check-in: 18142fdb6d user: shess tags: trunk)

01:02
Delta-encode terms in interior nodes. While experiments have shown that this is of marginal utility when encoding terms resulting from regular English text, it turns out to be very useful when encoding inputs with very large terms. (CVS 3520) (check-in: c8151a998e user: shess tags: trunk)
2006-11-23
21:09
Improvements to the speed tests recently added to the test suite. (CVS 3519) (check-in: 272c1a6e61 user: drh tags: trunk)
11:59
Fix a typo in the OMIT_AUTORIZATION in expr.c. (CVS 3518) (check-in: 3dea7fbefd user: drh tags: trunk)
11:58
Make the pager sector size configurable at compile-time. (CVS 3517) (check-in: 6221cf4f52 user: drh tags: trunk)
09:39
Add performance tests to the test suite. (CVS 3516) (check-in: 270c745dff user: drh tags: trunk)
2006-11-20
16:21
Fix the ".dump" command in the shell. Ticket #2072. Also ticket #2065. (CVS 3515) (check-in: 9fdc249609 user: drh tags: trunk)
2006-11-18
20:20
Make sure VACUUM cleans up after itself. Ticket #2071. (CVS 3514) (check-in: 2fdc147d00 user: drh tags: trunk)
00:12
Store minimal terms in interior nodes. Whenever there's a break between leaf nodes, instead of storing the entire leftmost term of the rightmost child, store only that portion of the leftmost term necessary to distinguish it from the rightmost term of the leftmost child. (CVS 3513) (check-in: f6e0b080dc user: shess tags: trunk)
2006-11-17
21:12
Refactoring groundwork for coming work on interior nodes. Change LeafWriter to use empty data buffer (instead of empty term) to detect an empty block. Code to validate interior nodes. Moderate revisions to leaf-node and doclist validation. Recast leafWriterStep() in terms of LeafWriterStepMerge(). (CVS 3512) (check-in: f30771d5c7 user: shess tags: trunk)
2006-11-13
21:09
Delta-encode docids. This is good for around 22% reduction in index size with DL_POSITIONS. It improves performance about 5%-6%. (CVS 3511) (check-in: 9b6d413d75 user: shess tags: trunk)
21:00
Require a minimum fanout for interior nodes. This prevents cases where excessively large terms keep the tree from finding a single root. A downside is that this could result in large interior nodes in the presence of large terms, which may be prone to fragmentation, though if the nodes were smaller that would translate into more levels in the tree, which would also have that problem. (CVS 3510) (check-in: 64b7e34061 user: shess tags: trunk)
20:15
Allow backing tables to be missing on dropping fts table. Fixes http://www.sqlite.org/cvstrac/tktview?tn=1992,35 . (CVS 3509) (check-in: 9628a61a6f user: shess tags: trunk)
2006-11-11
01:31
The uninitialized file descriptor from the unixFile structure is passed to sqlite3DetectLockingStyle in allocateUnixFile rather than the file descriptor passed in. This was causing the locking detection on NFS file systems to behave somewhat randomly and the result was locks were not respected and data loss could occur. (CVS 3508) (check-in: b9dd16ef3d user: aswift tags: trunk)
2006-11-09
15:18
Update the documentation to talk about the new sqlite3_prepare_v2() API. (CVS 3507) (check-in: d9e14b6121 user: drh tags: trunk)
00:24
First cut at adding the sqlite3_prepare_v2() API. Test cases added, but more testing would be useful. Still need to update the documentation. (CVS 3506) (check-in: f1efae9224 user: drh tags: trunk)
2006-11-08
12:25
Make the .exit and .quit commands work again in the shell. Ticket #2056. (CVS 3505) (check-in: f39978ef13 user: drh tags: trunk)
2006-11-07
15:02
Fix a typo in os_win.c. Ticket #2055. (CVS 3504) (check-in: d309680ec7 user: drh tags: trunk)
2006-11-06
21:20
Use the difference between the SQLITE_IOERR_SHORT_READ and SQLITE_IOERR_READ returns from sqlite3OsRead() to make decisions about what to do with the error. (CVS 3503) (check-in: 6324ea811e user: drh tags: trunk)
15:10
Fix a bug in the optimizer that was causing it to miss an OR optimization opportunity. (CVS 3502) (check-in: 9bf153b54c user: drh tags: trunk)
2006-11-01
12:20
Modify Makefile.in to install sqlite3ext.h. (CVS 3501) (check-in: 35c8c47817 user: drh tags: trunk)
12:08
Remove dead code from btree.c. Ticket #2050. (CVS 3500) (check-in: dbd0125c62 user: drh tags: trunk)
2006-10-31
21:27
Change the default temp file prefix to be "sqlite" spelled backwards. Tickets #2049 et al. (CVS 3499) (check-in: a19ce5c1c4 user: drh tags: trunk)
21:16
Change the default prefix for temporary files so that it no longer contains the text "sqlite". In this way, perhaps we will not get so many false bug reports such as ticket #2049, #1989, and #1841. (CVS 3498) (check-in: 7ce48000bb user: drh tags: trunk)
18:13
Fix a pair of memory leaks. These were turned up by running valgrind memcheck with various 10k doc insert, update, delete, and query tests. (CVS 3497) (check-in: 3cd9b64b96 user: shess tags: trunk)
18:08
Make the command-line shell ".dump" command more resilient in the face of database corruption. (CVS 3496) (check-in: ebd44f0b5e user: drh tags: trunk)
2006-10-30
13:37
Changes to support non-ASCII characters in win95 filenames. Ticket #2047. (CVS 3495) (check-in: 9fa3ae584a user: drh tags: trunk)
2006-10-28
00:28
Enhance the optimizer so that IS NULL can use an available index. (CVS 3494) (check-in: 64762a9d58 user: drh tags: trunk)
2006-10-27
14:21
Fix the ".dump" command in the command-line shell so that it shows TRIGGERs and VIEWs. Ticket #2044. (CVS 3493) (check-in: 58171a41f7 user: drh tags: trunk)
14:06
Changes directed toward optimizing IS NULL terms in WHERE clauses. (CVS 3492) (check-in: 4d336e9ef5 user: drh tags: trunk)
2006-10-26
18:15
Bring CVS output into more commonly accepted practice. Tickets #2030, #1573. Add command-line options -bail and ".bail" commands. Default behavior is to continue after encountering an error. Ticket #2045. (CVS 3491) (check-in: 517712d6fb user: drh tags: trunk)
14:25
Command-line shell enhancements. Bail out when errors are seen in non-interactive mode. Override isatty() using -interactive or -batch command-line options. Report line number in error messages. Tickets #2009, #2045. (CVS 3490) (check-in: 3baa04cfb9 user: drh tags: trunk)
00:41
Empty queries should get no results. My recent change ( http://www.sqlite.org/cvstrac/chngview?cn=3486 ) broke test fts2a-5.3. This change should make the expected result more obvious. (CVS 3489) (check-in: cde383eb46 user: shess tags: trunk)
00:04
Make memset() uses less error-prone. http://www.sqlite.org/cvstrac/tktview?tn=2036,35 describes some cases where we were passing memset() a length which was the sizeof a pointer, rather than the structure pointed to. Instead, wrap this idiom up in CLEAR() and SCRAMBLE() macros. (CVS 3488) (check-in: 5878add083 user: shess tags: trunk)
2006-10-25
23:22
Remove unreferenced local variable. (CVS 3487) (check-in: 2d3b22197c user: shess tags: trunk)
21:00
Replace the DocList and DocListReader structures. The new structures distinguish reading from a static buffer from writing to a dynamic buffer. This allows n-way doclist merging, and in-place merging of segment leaf nodes, which together cut segment merge times in half. (CVS 3486) (check-in: af5bfb986e user: shess tags: trunk)
20:27
Test to force edge cases in query logic. Basically, exercise code to handle lack of hits correctly. (CVS 3485) (check-in: 2cb5903366 user: shess tags: trunk)
05:21
Don't store empty segments. When inserting empty strings, the code was writing out a segment made up of a single leaf node containing the \0 header. LeafReader assumed that leaf nodes always contained at least one term, so assertions would fail.

While it would be possible to support reading and merging empty segments, there's no reason to do so. While this change could have been done in writeZeroSegment(), I put it in leafWriterFlush() so that it would work right if segmentMerge() created an empty segment, which could happen with future changes to how deleted documents are handled. (CVS 3484) (check-in: fed79beec7 user: shess tags: trunk)

2006-10-19
23:36
dup fts1 tests and edit for fts2. fts1porter.test omitted because it depends on being able to poke through to %_term table. (CVS 3482) (check-in: 2806c34158 user: shess tags: trunk)
23:28
Add tests for delete and update in fts1. (CVS 3481) (check-in: b01c4371d8 user: shess tags: trunk)
20:27
fts2 support for testing. These are a prelude to adding some test scripts. (CVS 3480) (check-in: 004ad1943f user: shess tags: trunk)
01:58
When converting UTF8 or UTF16 strings, change overlong strings and other illegal codes to 0xFFFD. Ticket #2029. (CVS 3479) (check-in: 0c6736df9c user: drh tags: trunk)
2006-10-18
23:26
Fix a problems that arise if malloc() fails while compiling SELECT statements within a TRIGGER. (CVS 3478) (check-in: ee4894b499 user: drh tags: trunk)
2006-10-13
15:34
Make sure the names of all expressions in compound SELECT statements used as subqueries are correctly resolved. Ticket #2018. (CVS 3477) (check-in: b886eaa334 user: drh tags: trunk)
12:25
Avoid expanding %d contained in the action of a lemon parser rule. Ticket #1063. This is a fix for lemon only. It does not effect SQLite. (CVS 3476) (check-in: 81daedcf48 user: drh tags: trunk)
11:55
Removing debugging printf from the porter stemmer code. Ticket #2016. (CVS 3475) (check-in: 7a08c6272f user: drh tags: trunk)
2006-10-12
23:15
Convert fts2 to store data in a way which allows for much faster updates. Groups of documents form segments which are encoded in a btree layered over a table of blocks, with various tricks to make merges fast. This performs 20x-25x faster than fts1 when loading the Enron corpus, and is only slightly slower for queries. (CVS 3474) (check-in: 85272b2f53 user: shess tags: trunk)
2006-10-11
17:19
Bug fix: named local variable lockStyle as lockingStyle in SQLITE_ENABLE_LOCKING_STYLE block in allocateUnixFile (CVS 3473) (check-in: aa0b96c3df user: aswift tags: trunk)
2006-10-10
23:22
Fix leaky symbols. With this change, fts1 and fts2 can both be statically linked. (CVS 3472) (check-in: 5e8bbb85c1 user: shess tags: trunk)
17:37
Copy fts1/ to fts2/, changing reference from fts1 to fts2. For future reference, the source versions copied were:

README.txt r1.1 fts1.c r1.37 fts1.h r1.2 fts1_hash.c r1.1 fts1_hash.h r1.1 fts1_porter.c r1.1 fts1_tokenizer.h r1.4 fts1_tokenizer1.c r1.6 (CVS 3471) (check-in: d0d1e7cdcc user: shess tags: trunk)

13:07
VACUUM now uses a temporary file in the official TEMP folder instead of a file in the same directory as the original database. (CVS 3470) (check-in: b743429dd5 user: drh tags: trunk)
2006-10-09
00:38
Version 3.3.8 (CVS 3469) (check-in: 0658bb9e3f user: drh tags: trunk)
2006-10-08
18:56
Website changes for version 3.3.8. Remove a C++-ism from test8.c. (CVS 3468) (check-in: 465ce5b2fe user: drh tags: trunk)
2006-10-05
21:48
Fix incorrect doclist initialization in term_select_all(). docListRestrictColumn() generates a DL_POSITIONS doclist, which means that after the first doclist is processed, the second doclist is initialized as DL_POSITIONS, but with DL_POSITIONS_OFFSETS data. (Note that DL_DEFAULT is now DL_POSITIONS, which masks this bug.) (CVS 3467) (check-in: 144e3f11e2 user: shess tags: trunk)
11:43
Fix another UTF conversion problem on x64. Ticket #2008. (CVS 3466) (check-in: d16523e555 user: drh tags: trunk)
2006-10-04
17:35
The snippet generator adds ellipsis between text from different columns. (CVS 3465) (check-in: 6cf1fb9f80 user: drh tags: trunk)
15:23
Fix UTF conversions for -O2 on gcc 4.1.1. Ticket #2008. (CVS 3464) (check-in: 86a08bb7c5 user: drh tags: trunk)
11:55
Tests cases automatically remove many of their temporary files. (CVS 3463) (check-in: eef0ec0d7a user: drh tags: trunk)
2006-10-03
19:37
Make DL_POSITION the default mode in FTS1. Remove the need to compile with SQLITE_CORE when SQLITE_ENABLE_FTS1 is used. (CVS 3462) (check-in: df1a4b4834 user: drh tags: trunk)
19:12
Modify the makefile(s) to know about the FTS1 module - however FTS1 is turned off by default. Bump the version number to 3.3.8. (CVS 3461) (check-in: 288ff63783 user: drh tags: trunk)
19:05
Report the error SQLITE_CORRUPT instead of SQLITE_IOERR if unable to rollback a hot journal that was damaged (for example) by filesystem corruption following a power failure. (CVS 3460) (check-in: 70501e4ea5 user: drh tags: trunk)
17:40
Add the OS-X locking style patches to os_unix.c. Disabled by default. (CVS 3459) (check-in: f4103dea5e user: drh tags: trunk)
12:08
Fix sqlite3_analyzer so that it works when compiled against Tcl8.5. (CVS 3458) (check-in: e774adce8e user: drh tags: trunk)
12:04
Fix sqlite3_analyzer so that it works on databases containing virtual tables. (CVS 3457) (check-in: 47c8567fcb user: drh tags: trunk)
11:42
Add the option to omit offset information from posting lists in FTS1. (CVS 3456) (check-in: fdcea7b1ff user: drh tags: trunk)
2006-10-01
20:41
Another typo in the Porter stemmer check-in. (CVS 3455) (check-in: 6696bda11c user: drh tags: trunk)
18:59
Typo in previous check-in. (CVS 3454) (check-in: a7350bf86c user: drh tags: trunk)
18:58
Remove one non-working test case fromthe Porter stemmer tests and add an acknowledgement for the source of the test data (Martin Porter himself.) (CVS 3453) (check-in: 1a2df2a61b user: drh tags: trunk)
18:41
Add a Porter stemmer option to the FTS1 module. (CVS 3452) (check-in: 936b06aaa8 user: drh tags: trunk)
2006-09-29
14:01
Make sure memory does not leak when patching up column names so that they are unique in a join or view. Tickets #1952 and #2002. (CVS 3451) (check-in: fcde639119 user: drh tags: trunk)
2006-09-28
19:43
Fix a bug in the handling of the OR operator in FTS1. Test cases added to prevent a repeat. (CVS 3450) (check-in: 8cdf1d6ae0 user: drh tags: trunk)
18:58
More snippet generator improvements and test cases. (CVS 3449) (check-in: 0934d220b3 user: drh tags: trunk)
18:37
Bug fix in the FTS1 snippet generator. Improvements in the way the snippet generator handles whitespace. (CVS 3448) (check-in: d3f4ae8275 user: drh tags: trunk)
11:41
Avoid segfaults when inserted NULL values into FTS1. (CVS 3447) (check-in: 165645d301 user: drh tags: trunk)
2006-09-26
00:37
Fix to the previous check-in. (CVS 3446) (check-in: 944d5f8120 user: drh tags: trunk)
00:34
Performance improvement and bug fix in sqlite3WinDelete(). (CVS 3445) (check-in: 46ac1ac2d1 user: drh tags: trunk)
2006-09-25
18:05
CVS malfunctioned on the previous check-in. Make sure the revision to date.c was received. Ticket #1991. (CVS 3444) (check-in: 433dac1f29 user: drh tags: trunk)
18:03
Fix a roundoff error in the %f converter of strftime(). Ticket #1991. (CVS 3442) (check-in: 51b9c755ea user: drh tags: trunk)
18:01
Add a pragma for activating proprietary extensions. (CVS 3441) (check-in: c63d34ce0c user: drh tags: trunk)
18:01
Fix a round-off problem in the %f conversion of strftime(). Ticket #1991. (CVS 3443) (check-in: bf4608406a user: drh tags: trunk)
13:48
Bug fix in pragma table_info(). (CVS 3440) (check-in: c037403bae user: drh tags: trunk)
13:09
Remove legacy cruft from shell.c. (CVS 3439) (check-in: 815d8f84b3 user: drh tags: trunk)
2006-09-23
21:44
Fix a bug in the handling of I/O errors introduced by the addition of extended error codes in check-in (3422). (CVS 3438) (check-in: 20d7b29443 user: drh tags: trunk)
20:46
Fix documentation typo. Ticket #1986 (CVS 3437) (check-in: 58c32ce35a user: drh tags: trunk)
20:36
Be sure to ignore PRAGMA encoding pragmas if the encoding has already been set for a database. Ticket #1987. This patch also includes some cleanup of the schema parser and initialization logic. (CVS 3436) (check-in: dc797bf4fa user: drh tags: trunk)
2006-09-22
23:38
Fix a build problem around sqlite3_overload_function. Only affects so/dll builds. (CVS 3435) (check-in: 791d70936b user: shess tags: trunk)
00:06
Implemented UPDATE for full-text tables.

We handle an UPDATE to a row by performing an UPDATE on the content table and by building new position lists for each term which appears in either the old or new versions of the row. We write these position lists all at once; this is presumably more efficient than a delete followed by an insert (which would first write empty position lists, then new position lists). (CVS 3434) (check-in: 757fa22400 user: adamd tags: trunk)

2006-09-21
20:56
When gathering a doclist for querying, don't discard empty position lists until the end; this allows empty position lists to override non-empty lists encountered later in the gathering process. This fixes #1982, which was caused by the fact that for all-column queries we weren't discarding empty position lists at all. (CVS 3433) (check-in: 111ca61671 user: adamd tags: trunk)
11:02
Be more aggressive with the SQLITE_OMIT_VACUUM macro. Saves about 150 bytes of code space. (CVS 3432) (check-in: 7e618db457 user: drh tags: trunk)
02:03
Implementation of the snippet() function for FTS1. Includes a few simple test cases but more testing is needed. (CVS 3431) (check-in: c7ee60d009 user: drh tags: trunk)
2006-09-18
21:14
Fixed a build problem in sqlite3_extension_init(). (CVS 3430) (check-in: bb2e1871cb user: adamd tags: trunk)
20:24
Convert all names to lower case before sending them to the xFindFunction method of a virtual table. In FTS1, use strcmp instead of strcasecmp. Ticket #1981. (CVS 3429) (check-in: cd4e1de896 user: drh tags: trunk)
20:24
Convert all names to lower case before sending them to the xFindFunction method of a virtual table. In FTS1, use strcmp instead of strcasecmp. Ticket #1981. (CVS 3428) (check-in: efa8fb32a5 user: drh tags: trunk)
02:12
Modify FTS1 so that the "magic" column has the same name as the virtual table. Offsets are retrieved using a special "offsets" function whose first argument is the magic column. Snippets will ultimately be retrieved in the same way. (CVS 3427) (check-in: 5e35dc1ffa user: drh tags: trunk)
2006-09-16
21:45
Add the sqlite3_overload_function() API - part of the virtual table interface. (CVS 3426) (check-in: aa7728f9f5 user: drh tags: trunk)
2006-09-15
16:58
Add documentation for the sqlite3_extended_result_codes() API. (CVS 3425) (check-in: a6b3f6bed2 user: drh tags: trunk)
16:09
Fix an initialization problem in FTS1. Ticket #1977. (CVS 3424) (check-in: 5a18dd8849 user: drh tags: trunk)
12:29
Bug fix and better testing of the extended result codes. (CVS 3423) (check-in: 78ae74db1c user: drh tags: trunk)
07:28
Add support for extended result codes - additional result information carried in the higher bits of the integer return codes. This must be enabled using the sqlite3_extended_result_code() API. Only a few extra result codes are currently defined. (CVS 3422) (check-in: ba579ddc43 user: drh tags: trunk)
2006-09-14
21:08
New FTS1 test data based on enron emails. (CVS 3421) (check-in: 01651a32c6 user: drh tags: trunk)
18:25
Remove file containing real email addresses. Ticket #1978. (CVS 3420) (check-in: 373a575f74 user: drh tags: trunk)
16:57
Minor build fixes. (CVS 3419) (check-in: 3564b07c40 user: adamd tags: trunk)
13:47
Enhanced I/O error simulation. (CVS 3418) (check-in: 86931854fc user: drh tags: trunk)
01:17
The FTS1 tables have a new automatic column named "offset" that returns a string containing byte offset information for all matching terms. Also added a large test case based on SQLite mailing list entries. (CVS 3417) (check-in: f25cfa1aec user: drh tags: trunk)
2006-09-13
20:22
Modify the ".dump" command in the command-line shell so that it works with virtual tables. (CVS 3416) (check-in: afd40184b7 user: drh tags: trunk)
19:21
Remove unused malloc failure test. (Ticket #1976) Also include fixes for other problems discovered while investigating ticket #1976. (CVS 3415) (check-in: f4ab546b2e user: drh tags: trunk)
19:18
In FTS1: Retain the Query structure as part of the cursor. It will be used laster as part of snippet generation. (CVS 3414) (check-in: 607d928ce9 user: drh tags: trunk)
18:40
Earlier refactoring changed name in fts1.c but not fts1.h. (CVS 3413) (check-in: d4edb8035c user: shess tags: trunk)
17:17
Minor code cleanup in FTS1. (CVS 3412) (check-in: fca5928167 user: drh tags: trunk)
16:02
Implementation of "column:" modifiers in FTS1 queries. (CVS 3411) (check-in: 820634f71e user: drh tags: trunk)
15:20
Module spec parser enhancements for FTS1. Now able to cope with column names in the spec that are SQL keywords or have special characters, etc. Also added support for additional control lines. Column names can be followed by a type specifier (which is ignored.) (CVS 3410) (check-in: adb780e0dc user: drh tags: trunk)
12:36
Fix the FTS1 test cases and add new tests. Comments added to the FTS1 code. (CVS 3409) (check-in: 528036c828 user: drh tags: trunk)
02:18
Allow virtual tables to contain multiple full-text-indexed columns. Added a magic column "_all" which can be used for querying all columns in a table at once.

For now, each posting list stores position/offset information for multiple columns. We may implement separate posting lists for separate columns at some future point. (CVS 3408) (check-in: 366a70b086 user: adamd tags: trunk)

2006-09-12
23:36
Answer queries for a particular rowid in a full-text table by looking up that rowid directly rather than by performing a table scan. (CVS 3407) (check-in: 877d5558b1 user: adamd tags: trunk)
2006-09-11
23:45
Add support for IF EXISTS on CREATE/DROP TRIGGER/VIEW. Ticket #1899. (CVS 3406) (check-in: e4fe736cfb user: drh tags: trunk)
21:39
Re-use deleted rowids for new segments. This has a somewhat surprising impact on performance, I believe because it keeps the index smaller (by keeping rowids smaller), and also because it improves locality in the table (deleting a row means we've already touched the pages leading to that rowid). (CVS 3405) (check-in: 2f5f6290c9 user: shess tags: trunk)
11:13
Get VACUUM working with virtual tables. (CVS 3404) (check-in: d5ffef3870 user: drh tags: trunk)
00:34
Add a rudimentary tokenizer and parser to FTS1 for parsing the module arguments during initialization. Recognized arguments include a tokenizer selector and a list of virtual table columns. (CVS 3403) (check-in: 227dc3feb5 user: drh tags: trunk)
2006-09-10
17:31
Add pzErr parameters to the xConnect and xCreate methods of virtual tables in order to provide better error reporting. This is an interface change for virtual tables. Prior virtual table implementations will need to be modified and recompiled. (CVS 3402) (check-in: f44b8bae97 user: drh tags: trunk)
17:08
Add a new zErrMsg field to the sqlite3_vtab structure to support returning error messages from virtual table constructors. This change means that virtual table implementations compiled as loadable extensions for version 3.3.7 will need to be recompile for version 3.3.8 and will not be usable by both versions at one. The virtual table mechanism is still considered experimental so we feel justified in breaking backwards compatibility in this way. Additional interface changes might occurs in the future. (CVS 3401) (check-in: 36693a5cb7 user: drh tags: trunk)
03:34
Add some simple test cases for the OR and NOT logic of the fts1 module. Fix lots of bugs discovered while developing these test cases. (CVS 3400) (check-in: 70bcff024b user: drh tags: trunk)
2006-09-09
23:11
Add support for OR and NOT terms in fts1. (CVS 3399) (check-in: ae50265791 user: drh tags: trunk)
2006-09-08
17:00
Write doclists using a segmented technique to amortize costs better. New items for a term are merged with the term's segment 0 doclist, until that doclist exceeds CHUNK_MAX. Then the segments are merged in exponential fashion, so that segment 1 contains approximately 2*CHUNK_MAX data, segment 2 4*CHUNK_MAX, and so on. (CVS 3398) (check-in: b6b93a3325 user: shess tags: trunk)
12:49
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) (check-in: 862302eaae user: drh tags: trunk)
12:27
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) (check-in: c81eaa0dc9 user: drh tags: trunk)
11:56
Improvements to the documentation of the return codes for sqlite3_step(). Tickets #1633, #1366, #1178, #906, and probably others too. (CVS 3395) (check-in: 508248e783 user: drh tags: trunk)
2006-09-06
21:39
Include io.h on Windows to quell a build warning about access() having no prototype. (CVS 3394) (check-in: b3eb1732bd user: adamd tags: trunk)
2006-09-05
18:21
A minor change to fts1.c to fix broken build. (CVS 3393) (check-in: 55a03b9625 user: adamd tags: trunk)
2006-09-04
18:54
Fix a bug in the new misc6.test script. Fix error messages when not compiled with memory debugging enabled. Ticket #1957. (CVS 3392) (check-in: 9fb92024bf user: drh tags: trunk)
15:53
Make sure strings returned by sqlite3_value_text() and sqlite3_value_text16() are always '\000'-terminated. (CVS 3391) (check-in: 2c63588b45 user: drh tags: trunk)
2006-09-02
22:14
Fix bugs in test scripts so that fulltest will pass. (CVS 3390) (check-in: 367bd8376f user: drh tags: trunk)
22:14
Changes to the Makefile.in so that MinGW users can build a DLL. Ticket #1955. (CVS 3389) (check-in: 7279ddd084 user: drh tags: trunk)
20:58
Add a TRACE macro to the FTS1 module for troubleshooting. Turned off by default. (CVS 3388) (check-in: d4923e98c6 user: drh tags: trunk)
20:57
Do not call the xDisconnect method on a virtual table while xUpdate is pending. Instead, defer the xDisconnect until after xUpdate completes. (CVS 3387) (check-in: 61148f4c36 user: drh tags: trunk)
14:50
Test for busted TCL builds that do not support 64-bit integers and print a warning message to users that test failures may be a result of the bad TCL build and not some problem with SQLite. Ticket #1953. (CVS 3386) (check-in: ca864ee913 user: drh tags: trunk)
14:17
Convert static variables into constants in the FTS module. (CVS 3385) (check-in: 098cbafcd6 user: drh tags: trunk)
13:58
Automatically register the FTS module if it is compiled into the build. (CVS 3384) (check-in: 8a96bdb724 user: drh tags: trunk)
13:22
Construct the .def files before calling dllwrap to build the .dll files. Ticket #1951. (CVS 3383) (check-in: e6e49a3811 user: drh tags: trunk)
00:23
Miscellaneous restructuring and cleanup based on suggestions from shess. (CVS 3382) (check-in: e98b0cf292 user: adamd tags: trunk)
2006-09-01
17:06
Automatically compute the sqlite3.def and tclsqlite3.def files when building windows DLLs. This will (hopefully) keep the .def files in perfect synchronization with the DLLs. Ticket #1951. (CVS 3381) (check-in: 1f6d79266a user: drh tags: trunk)
15:49
Remove use of the "clock" command in the test suite so that the tests will run in Tcl8.5. Ticket #1445. (CVS 3380) (check-in: bedbac54db user: drh tags: trunk)
00:33
Make fts1.c not rely on nul-terminated strings. Mostly a matter of making sure we always pass around ptr/len, but there were a few places where we actually relied on nul-termination.

An earlier change had additionally changed appropriate sqlite3_bind_text() calls to sqlite3_bind_blob(). I've found that this changes what's actually stored in the database, so backed those changes out. Also (and this is weird), I found that I could no longer do straight-forward = queries against %_term.term at a command-line. (CVS 3379) (check-in: 5844db1aa9 user: shess tags: trunk)

00:05
Make tokenizer not rely on nul-terminated text. Instead of using strcspn() and a nul-terminated delimiter list, I just flagged delimiters in an array and wrote things inline. Submitting this for review separately because it's pretty standalone. (CVS 3378) (check-in: 2631ceaeef user: shess tags: trunk)
2006-08-31
15:07
Refactor the FTS1 module so that its name is "fts1" instead of "fulltext", so that all symbols with external linkage begin with "sqlite3Fts1", and so that all filenames begin with "fts1". (CVS 3377) (check-in: e1891f0dc5 user: drh tags: trunk)
2006-08-30
21:40
Just don't run tolower() on hi-bit characters. This shouldn't cause us to break any UTF-8 code points, unless they were already broken in the input. (CVS 3376) (check-in: 6c77c2d5e1 user: shess tags: trunk)
2006-08-29
18:46
Bug fix: Get INSERT INTO ... SELECT working when the target is a virtual table. (CVS 3375) (check-in: 7cdc41e748 user: drh tags: trunk)
18:46
Bug fix: Get INSERT INTO ... SELECT working when the target is a virtual table. (CVS 3374) (check-in: 7912485705 user: drh tags: trunk)
13:08
Document the fact that SQLite allows NULL values in PRIMARY KEY columns and the fact that we might design to change this in the future. Ticket #518. (CVS 3373) (check-in: b99d845ef4 user: drh tags: trunk)
12:04
Improved built-in help in the command-line shell. Enable the fulltext search extension in the TCL interface. (CVS 3372) (check-in: 9763b4bfd5 user: drh tags: trunk)
2006-08-28
23:46
Make static some symbols which shouldn't have been exported. (CVS 3371) (check-in: 58006e38af user: shess tags: trunk)
20:08
Make hi-bit characters delimiters. This is a stopgap until the tokenizer and fulltext.c recognize UTF-8 correctly. (CVS 3370) (check-in: ca850d3d80 user: shess tags: trunk)
2006-08-27
14:10
Add sqlite3_malloc and sqlite3_realloc to the sqlite3.def file. Ticket #1943. (CVS 3369) (check-in: 4a74838eac user: drh tags: trunk)
2006-08-25
23:42
Add support for INSERT INTO ... DEFAULT VALUES. Tickets #299, #1940. (CVS 3368) (check-in: bc84cb54b0 user: drh tags: trunk)
19:20
Fix gcc gripe about parens in a ||/&& in mergePosList(). Drop unused pBlob/nBlob in index_insert_term(). Fix NULL deref in an assertion in docListUpdate() delete case. Minor code tightening in docListUpdate(). (CVS 3367) (check-in: a6fcf9101a user: shess tags: trunk)
2006-08-24
15:18
Documentation updates for the new SQLITE_FUNCTION authorization. (CVS 3366) (check-in: e029637e54 user: drh tags: trunk)
14:59
Enhance the sqlite3_set_authorizer() callback so that it provides callbacks on each SQL function that is invoked. (CVS 3365) (check-in: 4547c81f7d user: drh tags: trunk)
02:42
Tcl interface does filename translation prior to calling sqlite3_open(). Ticket #1937. (CVS 3364) (check-in: 5696e0cb77 user: drh tags: trunk)
2006-08-23
23:58
A first implementation of a full-text search module for SQLite. (CVS 3363) (check-in: b0d8e0d314 user: adamd tags: trunk)
20:07
Add the new experimental sqlite3_auto_extension() API. (CVS 3362) (check-in: a85fc877eb user: drh tags: trunk)
2006-08-22
23:53
Add argc as a default global to match standard tcl environment. (CVS 3361) (check-in: 533154099c user: shess tags: trunk)
14:45
Add the ext/fts1 subdirectory for holding the first full-text search extension. (CVS 3360) (check-in: 7f152f9f3a user: drh tags: trunk)
2006-08-19
13:32
Fix bug in documentation. Ticket #1927. (CVS 3359) (check-in: 90296bc8fa user: drh tags: trunk)
11:34
Fix for the (unsupported) soundex algorithm so that it conforms to Knuth. Ticket #1925. Test cases added. (CVS 3358) (check-in: 7810d1abf6 user: drh tags: trunk)
11:15
Improved method for finding the home directory under windows. Ticket #1926. (CVS 3357) (check-in: 10907bb201 user: drh tags: trunk)
2006-08-16
22:58
Remove obsolete clause in the documentation. Ticket #1923. (CVS 3356) (check-in: d4f182e5aa user: drh tags: trunk)
16:42
Allows UPDATE, INSERT, and DELETEs to occur while a SELECT is pending on the same table. (CVS 3355) (check-in: 8c52d2ad46 user: drh tags: trunk)
2006-08-15
14:21
Tighten an assert (ticket #1920). Change to "sqlite3.h" from <sqlite3.h> on the sqlite3ext.h header (ticket #1916). Fix a bug in the test scripts. (CVS 3354) (check-in: 3ebedbb6f9 user: drh tags: trunk)
2006-08-14
14:23
Change the table_info pragma to show the text of the default value expression, not the result of evaluating the default value expression. Ticket #1919. (CVS 3353) (check-in: b4d53974c3 user: drh tags: trunk)
2006-08-13
21:49
Adjust the Makefile.in so that there are no test errors when using the configure script. Ticket #1918. (CVS 3352) (check-in: 6a25be921b user: drh tags: trunk)
19:04
Add vdbeaux.c to the list of files that must be compiled with -DSQLITE_TEST=1 in order to generate testfixture. Do not require sqlit3OsDelete() to succeed on a multi-database commit. (Ticket #1917) (CVS 3351) (check-in: dfc833ac79 user: drh tags: trunk)
18:43
Vtab2.test script works regardless of what TCL version is used. (CVS 3350) (check-in: 6df3f6761a user: drh tags: trunk)
18:39
Compile in test code whenever -DSQLITE_TEST=1 is present. Do not rely on -DSQLITE_DEBUG=1 because somebody might try to run the tests without it. (CVS 3349) (check-in: 867defe328 user: drh tags: trunk)
2006-08-12
14:42
Version 3.3.7 (CVS 3348) (check-in: 85434a4b96 user: drh tags: trunk)
14:38
Documentation changes prior to the release of 3.3.7. (CVS 3347) (check-in: c276cca2aa user: drh tags: trunk)
13:28
Fix a bug in out-of-memory processing introduced by check-in (3336). (CVS 3346) (check-in: 8d98a205cb user: drh tags: trunk)
12:33
Require whitespace or punctuation between a numeric literal and an identifier or keyword. Ticket #1912. (CVS 3345) (check-in: 0f667c4abd user: drh tags: trunk)
2006-08-11
19:08
Make sure sufficient memory is allocated to hold the collating sequence pointers for all columns of an ORDER BY clause even if the ORDER BY clause contains more columns than where originally in the table. Ticket #1911. (CVS 3344) (check-in: 924ea730f4 user: drh tags: trunk)
2006-08-08
15:42
Fix an reference to an undefined variable introduced by the previous checkin. (CVS 3343) (check-in: 73ff3452a0 user: drh tags: trunk)
13:51
Remove most static and global variables from a pure build. There are still a number of static and global variables used for testing. (CVS 3342) (check-in: 76e4d41877 user: drh tags: trunk)
2006-07-30
20:50
Reset the schema before checking for outstanding statements inside sqlite3_close() so that virtual tables will be disconnected. (CVS 3341) (check-in: af05c3ca06 user: drh tags: trunk)
2006-07-28
20:16
Report any error which occurs in closing the database at exit. Free a couple of strings which were leaking. (CVS 3340) (check-in: 47353f62ca user: adamd tags: trunk)
2006-07-26
16:22
Disallow writing to, creating or dropping virtual tables from within xSync() callbacks. (CVS 3339) (check-in: e705d23232 user: danielk1977 tags: trunk)
14:57
Fix an overzealous assert() in the UTF-16 to UTF-8 converter. (CVS 3338) (check-in: 096bd8212f user: drh tags: trunk)
14:49
Add a test case to trigger an assertion fault when running sqlite3_prepare16() with a predefined string size. (CVS 3337) (check-in: 93878e6ebf user: drh tags: trunk)
13:43
More work toward getting sqlite3_interrupt() to work from separate threads. Ticket #1897. (CVS 3336) (check-in: e431131d47 user: drh tags: trunk)
01:39
Initial attempt at making sqlite3_interrupt() work even when called from a separate thread. (CVS 3335) (check-in: 35fd67d7a0 user: drh tags: trunk)
2006-07-25
15:14
Allow database writes from within virtual table module xSync() callbacks. (CVS 3334) (check-in: d5a608d0a4 user: danielk1977 tags: trunk)
2006-07-17
00:19
Fix lemon so that it does not crash on a empty reduce action. Ticket #1892. (CVS 3333) (check-in: 4207ebc4e1 user: drh tags: trunk)
00:02
Add the "interrupt" method to the TCL interface. Ticket #1889. (CVS 3332) (check-in: b0d19e575b user: drh tags: trunk)
2006-07-12
00:18
Reset TCL results when onecolumn or eval methods have no reply. Ticket #1887. (CVS 3331) (check-in: 9c6090c609 user: drh tags: trunk)
2006-07-11
14:17
By default, new databases are now created in the legacy file format - the format that ignores DESC on indices. If you want descending indices, you must either recompile with -DSQLITE_DEFAULT_FILE_FORMAT=4 or issue "PRAGMA legacy_file_format=OFF" prior to creating the first table in the database. (CVS 3330) (check-in: 65b60f05ce user: drh tags: trunk)
13:15
Prevent memory leak and possible NULL pointer deference after malloc failure. Ticket #1886. (CVS 3329) (check-in: b1f326e695 user: drh tags: trunk)
12:40
Fix a NULL pointer deference following malloc failure. Bug discovered by klocwork. (CVS 3328) (check-in: eb91612f46 user: drh tags: trunk)
10:42
Fix a possible NULL-pointer deference following a malloc failure. Error discovered by Klocwork. (CVS 3327) (check-in: 368bcf2644 user: drh tags: trunk)
2006-07-10
21:15
Back out the changes of ticket #1687 since they broken the ActiveTcl build. (CVS 3326) (check-in: b10d4220dc user: drh tags: trunk)
2006-07-08
18:41
Better comment to describe the confusing operand reversal for infix functions. (CVS 3325) (check-in: 30dfb9bf21 user: drh tags: trunk)
18:35
For infix functions (LIKE, GLOB, REGEXP, and MATCH) treat the left operand as the first argument for the purposes of virtual table function overloading, even though the left operand is really the the second argument. (CVS 3324) (check-in: 6e98373ca1 user: drh tags: trunk)
18:09
Add tests and minor fixes to the xFindFunction method of virtual tables. (CVS 3323) (check-in: 3c4233e074 user: drh tags: trunk)
17:06
Allow virtual table implementations to overload function that use a column of the virtual table as their first argument. Untested. (CVS 3322) (check-in: 12cc7af4b6 user: drh tags: trunk)
2006-07-06
17:08
Make the sqlite3_enable_load_extension() interface accessible from the TCL bindings. (CVS 3321) (check-in: ce96b890bb user: drh tags: trunk)
10:59
Change sqlite3_busy_timeout so that it checks for an invalid database pointer. (CVS 3320) (check-in: 225a9597b2 user: drh tags: trunk)
2006-07-02
10:21
Fix spelling of Perl on the homepage. (CVS 3319) (check-in: 255c5a9946 user: drh tags: trunk)
2006-06-28
18:18
Changes to get tests to pass with OMIT_VIRTUALTABLE. Ticket #1877. (CVS 3318) (check-in: 60616496b7 user: drh tags: trunk)
2006-06-27
20:39
Better handling of NULL column names. (CVS 3317) (check-in: 9f13972b93 user: drh tags: trunk)
20:06
Move the sqlite3_sleep() and sqlite3_clear_bindings() interfaces into the main library and make this official. (CVS 3316) (check-in: eb3442c44e user: drh tags: trunk)
20:05
Off by 1 error in check-in (3314). Note that this change is a likely fix for ticket #1875. But I have not tested it for that purpose yet. (CVS 3315) (check-in: c7477459e9 user: drh tags: trunk)
18:55
Use the -k option to sort. This allows the build to run on newer unix systems, but will likely break the build on older ones. Please address your complaints to the posix committee members that thought this would be a good idea. (CVS 3314) (check-in: 5d7e6bbddb user: drh tags: trunk)
18:38
When compiling extensions in the load_extension tests, specify a path for finding include files. (CVS 3313) (check-in: aee4b66994 user: drh tags: trunk)
16:34
Prevent databases from being DETACHed while they are in use. Fix for #1873. (CVS 3312) (check-in: 70a48b250b user: danielk1977 tags: trunk)
15:16
The ability to load extensions is turned off by default. It must be enabled by calling sqlite3_enable_load_extension() before it will work. This prevents security problems in legacy applications. Ticket #1863. (CVS 3311) (check-in: 4692319ccf user: drh tags: trunk)
14:37
Changes to build successfully with -DSQLITE_OMIT_LOAD_EXTENSION=1 (CVS 3310) (check-in: 783369e870 user: drh tags: trunk)
13:20
Changes so that it will build with SQLITE_OMIT_VIRTUALTABLE=1. (CVS 3309) (check-in: 5612b28705 user: drh tags: trunk)
12:51
All tests pass even if compiled with -DSQLITE_DEFAULT_FILE_FORMAT=1. (CVS 3308) (check-in: 8a49311d2f user: drh tags: trunk)
12:25
Fix up the test tclvar virtual module. (CVS 3307) (check-in: a20bfa4631 user: danielk1977 tags: trunk)
12:24
Additional documentation on the 3.3.0 file format change added to formatchng.html. (CVS 3306) (check-in: 955551ca2e user: drh tags: trunk)
12:16
Fix bug in transfer of arguments from WHERE clause to virtual table xFilter() methods. (CVS 3305) (check-in: cf41f2a33f user: danielk1977 tags: trunk)
11:14
Move older news items to the oldnews.html page. (CVS 3304) (check-in: 80163ded7d user: drh tags: trunk)
07:34
In test code, always use sqlite3_free() instead of free() to free error messages returned by sqlite3_exec(). (CVS 3303) (check-in: 6521ee5f32 user: danielk1977 tags: trunk)
02:36
Make sure that MATCH terms that a virtual table says should be omitted really are omitted. (CVS 3302) (check-in: 3e1f5567df user: drh tags: trunk)
02:33
Cleanup and refactor parts of the optimizer. (CVS 3301) (check-in: 6609c25fbf user: drh tags: trunk)
01:54
Cache and reuse virtual table index information in the optimizer. Improved diagnostics for virtual table index selection. (CVS 3300) (check-in: 28413cf2b3 user: drh tags: trunk)
00:14
Export the sqlite3_bind_value API to loadable extensions. (CVS 3299) (check-in: 1ca385bb39 user: drh tags: trunk)
2006-06-26
21:35
Publish APIs sqlite3_malloc() and sqlite3_realloc() that use the OS-layer memory allocator. Convert sqlite3_free() and sqlite3_mprintf() to also use the OS-layer memory allocator. (CVS 3298) (check-in: 85a66a25e9 user: drh tags: trunk)
19:10
Remove the sqlite3_module.zName field which was used only for debugging. (CVS 3297) (check-in: 74a3961f39 user: drh tags: trunk)
12:50
Fix a file descriptor leak following malloc failure on DROP TABLE IF EXISTS. (CVS 3296) (check-in: 6a63f76c8d user: drh tags: trunk)
11:17
Fix trivial compiler warnings. (CVS 3295) (check-in: 3538beace8 user: danielk1977 tags: trunk)
10:37
Syntax documentation updates. (CVS 3294) (check-in: df601a7b37 user: drh tags: trunk)
2006-06-24
12:39
(OS/2) Armor OS/2 against accidental deletion of files, too (patch by Daniel Kruse, verified by me) (CVS 3293) (check-in: f357efb373 user: pweilbacher tags: trunk)
11:51
A few more test cases to improve coverage of virtual table module related code. (CVS 3292) (check-in: 255aa9121a user: danielk1977 tags: trunk)
09:34
Add tests to improve coverage of vtab.c. (CVS 3291) (check-in: 0c5f4ee39c user: danielk1977 tags: trunk)
08:51
Ensure whitespace specified as part of a virtual table constructor argument is correctly passed to the constructor function. (CVS 3290) (check-in: 4630e11d9a user: danielk1977 tags: trunk)
06:36
Clean up and clarify code in test8.c. (CVS 3289) (check-in: 4acf7594a6 user: danielk1977 tags: trunk)
2006-06-23
14:43
Modify the test cases in tkt1444.test that were failing. I am convinced that the test cases were incorrect. (CVS 3288) (check-in: 0534f6e15b user: danielk1977 tags: trunk)
14:32
Allow xDestroy methods to execute "DROP TABLE" statements. (CVS 3287) (check-in: a56bfa5604 user: danielk1977 tags: trunk)
11:34
Fix some memory leaks that occur when malloc() fails. (CVS 3286) (check-in: b56cc035f2 user: danielk1977 tags: trunk)
08:05
Add tests and fixes for handling malloc() failures related to the virtual table feature. (CVS 3285) (check-in: 5d1d907189 user: danielk1977 tags: trunk)
2006-06-22
09:53
Test the handling of errors in virtual table methods. (CVS 3284) (check-in: 51b729d9d9 user: danielk1977 tags: trunk)
2006-06-21
19:30
Make the last_insert_rowid method in the TCL interface work with 64-bit rowids. (CVS 3283) (check-in: d50c37975d user: drh tags: trunk)
16:02
Add the database name to the parameters passed to virtual table module xCreate and xConnect methods. (CVS 3282) (check-in: 2d2805785f user: danielk1977 tags: trunk)
13:21
Add the table name to the arguments passed to the virtual table methods xCreate/xConnect. (CVS 3281) (check-in: 7dc36d1c79 user: danielk1977 tags: trunk)
12:36
Add tests to make sure altering or adding an index to a virtual table is prohibited. (CVS 3280) (check-in: 6c3e8852ff user: danielk1977 tags: trunk)
07:34
Test cases for accessing virtual tables when the corresponding module is undefined. (CVS 3279) (check-in: bcef48c54d user: danielk1977 tags: trunk)
07:02
Fix a problem with virtual tables and joins. (CVS 3278) (check-in: 643e63e588 user: danielk1977 tags: trunk)
2006-06-20
13:07
Fix some problems with virtual tables and joins in where.c. (CVS 3277) (check-in: 3e19a7d8ea user: danielk1977 tags: trunk)
11:01
Modifications so that compilation and testing with the various OMIT macros defined works. (CVS 3276) (check-in: c6ea353bd9 user: danielk1977 tags: trunk)
00:22
Update the news column on the homepage. (CVS 3275) (check-in: 24a94bb075 user: drh tags: trunk)
2006-06-19
12:02
Avoid returning MISUSE when sqlite is called recursively by an xBestIndex callback. (CVS 3274) (check-in: 4339e1bf66 user: danielk1977 tags: trunk)
06:32
Add tests to ensure triggers cannot be created on virtual tables. (CVS 3273) (check-in: 9470e27962 user: danielk1977 tags: trunk)
05:33
Respect default collation sequences assigned to virtual table columns. (CVS 3272) (check-in: d9b205acac user: danielk1977 tags: trunk)
04:49
Fix memory leak in where.c. (CVS 3271) (check-in: 3d10e8f361 user: danielk1977 tags: trunk)
03:05
Add tests to ensure an INSERT/UPDATE/DELETE immediately after virtual table construction does not fail. (CVS 3270) (check-in: 144d0eb13a user: danielk1977 tags: trunk)
2006-06-17
14:12
Add the load_extension() SQL function. (CVS 3269) (check-in: e08e2ddafe user: drh tags: trunk)
13:21
The default entry point for loadable extensions is now always sqlite3_extension_init(). (CVS 3268) (check-in: 059b1f6140 user: drh tags: trunk)
11:30
Add newly created virtual tables to the current transaction. (CVS 3267) (check-in: ea7e4eca10 user: danielk1977 tags: trunk)
10:44
Clear a compiler warning by adding a prototype to sqliteInt.h. (CVS 3266) (check-in: ca541ef3c4 user: drh tags: trunk)
09:39
Add tests (and fixes) for the virtual table transaction interface. (CVS 3265) (check-in: 8a5b121f2f user: danielk1977 tags: trunk)
06:31
When updating a view, invoke the authorization callback for reading the view before setting the authorization-context to the view name. (CVS 3264) (check-in: 48d297c561 user: danielk1977 tags: trunk)
03:27
Fixes for UPDATE statements on virtual tables. (CVS 3263) (check-in: 81c5a5b48b user: danielk1977 tags: trunk)
2006-06-16
21:13
Rework the way UPDATE works for virtual tables. (CVS 3262) (check-in: 2119e7bf55 user: drh tags: trunk)
16:08
Add code to invoke the virtual table transaction interface. Untested at this point. (CVS 3261) (check-in: 6125140228 user: danielk1977 tags: trunk)
08:01
Add some tests (and fixes) for virtual tables and the authorization callback. Still more to come. (CVS 3260) (check-in: 9497c66e55 user: danielk1977 tags: trunk)
06:17
Arrange for sqlite3_last_insert_rowid() to work with virtual tables. (CVS 3259) (check-in: afa39a4632 user: danielk1977 tags: trunk)
2006-06-15
16:26
Fix type in test_schema.c. (CVS 3258) (check-in: d65d83d383 user: danielk1977 tags: trunk)
15:59
Add test_schema.c, containing a module for viewing the database schema via a virtual table. (CVS 3257) (check-in: de8d32ac71 user: danielk1977 tags: trunk)
15:38
Add column_value, declare_vtab and create_module to the function table used by dynamic extensions. (CVS 3256) (check-in: 25c4750878 user: danielk1977 tags: trunk)
14:31
Write database pages in sorted order to reduce file fragmentation. This is an experimental change. It is not clear if it will help any. It may well be removed in the future. (CVS 3255) (check-in: fe3e70a727 user: drh tags: trunk)
13:22
Asserts added that verify that the code works correctly that ticket #1849 claims is wrong. (CVS 3254) (check-in: d145dc1c4b user: drh tags: trunk)
10:41
Add tests (and modify test code) for writing to virtual tables. (CVS 3253) (check-in: 6380a9b118 user: danielk1977 tags: trunk)
07:29
Simple tests and fixes for writing to virtual tables. (CVS 3252) (check-in: 88fa510e4c user: danielk1977 tags: trunk)
04:28
Add void* argument to sqlite3_create_module to replace sqlite3_module.pAux. (CVS 3251) (check-in: 470a3a0b20 user: danielk1977 tags: trunk)
2006-06-14
23:43
Changes to test8.c to support UPDATE operations on xUpdate. (CVS 3250) (check-in: 9e96511f83 user: drh tags: trunk)
22:07
Bug fixes in the MATCH and ORDER BY processing of virtual tables. (CVS 3249) (check-in: c996185a9e user: drh tags: trunk)
19:00
Added code to INSERT, DELETE and UPDATE virtual tables. The new code is mostly untested. (CVS 3248) (check-in: 32c97b884b user: drh tags: trunk)
15:35
Better documentation on the limits of user-defined functions. And a marginally better error message when those limits are exceeded. Ticket #1847. (CVS 3247) (check-in: 0d369ff071 user: drh tags: trunk)
15:16
Add xUpdate method to the echo test module. Currently untested. (CVS 3246) (check-in: 676de55b28 user: danielk1977 tags: trunk)
15:14
Fix segfault introduced in (3243). (CVS 3245) (check-in: e5fff87d00 user: danielk1977 tags: trunk)
15:03
Fix a C++-ism in lempar.c. Ticket #1848. (CVS 3244) (check-in: a0a3b34db8 user: drh tags: trunk)
13:03
Add the opcode OP_VUpdate and replace the xInsert/xDelete members of sqlite3_module with xUpdate. (CVS 3243) (check-in: 15ba5cbf07 user: danielk1977 tags: trunk)
13:03
Add the opcode OP_VUpdate and replace the xInsert/xDelete members of sqlite3_module with xUpdate. (CVS 3242) (check-in: 418f3ca84a user: danielk1977 tags: trunk)
10:55
Add code to test8.c to check that the correct idxNum value is passed to the xFilter method. (CVS 3241) (check-in: 77bcaf99b3 user: danielk1977 tags: trunk)
10:47
Fix typo in test8.c. (CVS 3240) (check-in: 75be7d4988 user: danielk1977 tags: trunk)
10:38
Add some tests for sqlite3_load_extension(). (CVS 3239) (check-in: 402a77c43d user: danielk1977 tags: trunk)
08:48
Add tests for the new MATCH operator. (CVS 3238) (check-in: b4024c394d user: danielk1977 tags: trunk)
07:41
Add a test case for ORDER BY using the echo module. (CVS 3237) (check-in: f459f034f6 user: danielk1977 tags: trunk)
06:58
Change the pModule parameter of the xCreate and xConnect methods to a void*. (CVS 3236) (check-in: 3ffa51b50a user: danielk1977 tags: trunk)
06:31
Add tests for error conditions surrounding the creation/connection of virtual tables. (CVS 3235) (check-in: 5e592c422b user: danielk1977 tags: trunk)
2006-06-13
23:51
The echo module test is now running. Added the tclvar module test but have not yet done anything with it. (CVS 3234) (check-in: 29199eeea4 user: drh tags: trunk)
19:26
The (unsupported) soundex() function returns '?000' when given a NULL. Ticket #1845. (CVS 3233) (check-in: 9372481f23 user: drh tags: trunk)
17:39
The optimizer recognizes MATCH operators and allows virtual-tables to make use of them. (CVS 3232) (check-in: 136bed496b user: drh tags: trunk)
15:37
Add support for the MATCH operator. (CVS 3231) (check-in: 815b84d527 user: drh tags: trunk)
15:36
Get the code to compile with -DSQLITE_OMIT_VIRTUALTABLE=1 (CVS 3230) (check-in: ea4bc5a0be user: drh tags: trunk)
15:12
Improved comments and documentation of sqlite3_load_extension(). (CVS 3229) (check-in: 0bcec95963 user: drh tags: trunk)
15:00
Add the tentative sqlite3_allocate_queryplan() API. (CVS 3228) (check-in: 7a3e97f76b user: danielk1977 tags: trunk)
14:16
Add simple tests for the xFilter and xBestIndex methods. (CVS 3227) (check-in: 0f4657ea69 user: danielk1977 tags: trunk)
13:27
Lemon correctly recognizes an empty grammar and errors out. Fix for a bug reported on the sqlite-users mailing list. (CVS 3226) (check-in: 5539292268 user: drh tags: trunk)
11:27
Free error message string in the quick start example. (CVS 3225) (check-in: 1273261ba7 user: drh tags: trunk)
11:15
Minor changes to lempar.c to reduce warnings on some compilers. (CVS 3224) (check-in: dae71de10d user: drh tags: trunk)
10:24
Add implementations for opcodes required for linear scans of virtual tables. (CVS 3223) (check-in: 1f20e1832b user: danielk1977 tags: trunk)
04:11
Bugfixes: Fix a segfault introduced as part of the new vtab code, deallocate memory in the Destroy() method of the echo module. (CVS 3222) (check-in: 00f3c249bc user: danielk1977 tags: trunk)
04:11
Bugfixes: Fix a segfault introduced as part of the new vtab code, deallocate memory in the Destroy() method of the echo module. (CVS 3221) (check-in: f9ea970475 user: danielk1977 tags: trunk)
01:04
Progress toward getting the virtual-table code generator to work. (CVS 3220) (check-in: 3532f1340f user: drh tags: trunk)
2006-06-12
21:59
Added code to iterate through virtual tables. All regression tests pass but the new code is completely untested. (CVS 3219) (check-in: 0109654331 user: drh tags: trunk)
16:01
Add code to invoke the xDestroy method of a virtual table when it is dropped. (CVS 3218) (check-in: f0c7c8d12c user: danielk1977 tags: trunk)
12:57
Patches to get things working better for OS2. Ticket #1836. (CVS 3217) (check-in: 65c6e5e117 user: drh tags: trunk)
12:50
Fixes so that builds work with SQLITE_OMIT_VIRTUALTABLE=1. (CVS 3216) (check-in: 54b30fe1bd user: drh tags: trunk)
12:46
Get builds working again when extension loading is not enabled. Ticket #1839. (CVS 3215) (check-in: 89ead80129 user: drh tags: trunk)
12:08
Add a simple test case (and corresponding bugfix) for the virtual table xConnect and xDisconnect methods. (CVS 3214) (check-in: b63dbc7947 user: danielk1977 tags: trunk)
11:24
Add first cut of sqlite3_declare_vtab(). Not at all well tested yet. (CVS 3213) (check-in: bbeb93b5bb user: danielk1977 tags: trunk)
06:09
Incremental work on parsing/storing and invoking the xCreate callback for virtual tables. (CVS 3212) (check-in: 8ffbab79d5 user: danielk1977 tags: trunk)
2006-06-11
23:41
Progress toward CREATE VIRTUAL TABLE. Still not even close to working... (CVS 3211) (check-in: 898ec36b41 user: drh tags: trunk)
2006-06-10
13:29
Basic parsing of CREATE VIRTUAL TABLE statements. (CVS 3210) (check-in: 66370cb99b user: drh tags: trunk)
2006-06-08
16:10
In the shell, make sure the database is opened before trying to do an ".import". Bug reported on the mailing list. (CVS 3209) (check-in: 39e3427813 user: drh tags: trunk)
15:48
Unload shared libraries when a database connection closes. (CVS 3208) (check-in: 327e6909c9 user: drh tags: trunk)
15:28
New shell command ".load" and the sqlite3_load_extension() API allow new SQL functions and collating sequences to be loaded at run-time from a DLL or shared library. (CVS 3207) (check-in: 4ca932d3ae user: drh tags: trunk)
2006-06-06
13:34
Version 3.3.6 (CVS 3206) (check-in: c11cb07e4b user: drh tags: trunk)
12:38
Changes in preparation for version 3.3.6. (CVS 3205) (check-in: b2e11e0290 user: drh tags: trunk)
12:32
Command "sqlite3 -version" returns 0 instead of 1. Ticket #1771. (CVS 3204) (check-in: fd0fae4835 user: drh tags: trunk)
11:45
In joins of the form "A left B, C" make sure they are not transformed into "A left C, B". Ticket #1830. See also #1652. (CVS 3203) (check-in: 2baa983653 user: drh tags: trunk)
2006-06-04
23:31
Add comments to the changes of check-in (3200). (CVS 3202) (check-in: 697498d4e8 user: drh tags: trunk)
23:20
Fix a windows portability problem in trans.test. (CVS 3201) (check-in: f2538dfdb6 user: drh tags: trunk)
23:02
Changes to help SQLite cope with virus scanners and other programs that open journal files for reading and thus prevent SQLite from deleting them in order to commit a transaction. (CVS 3200) (check-in: f32dbe47ff user: drh tags: trunk)
2006-06-03
18:04
Remove unused variables from vdbe.c. (CVS 3199) (check-in: d54750aefb user: drh tags: trunk)
18:02
Added support for OS/2. Ticket #1817 (CVS 3198) (check-in: 373246c2d1 user: drh tags: trunk)
17:37
Do not record blank lines in the command-line editing history of the shell. (CVS 3197) (check-in: 0eabda82cd user: drh tags: trunk)
2006-06-02
12:40
The windows driver always allows other processes to write the database file even if it only has read permission on the file. This is an experimental checkin - we still have not determined that this change is safe. Ticket #1803. (CVS 3196) (check-in: 4bf03c3bbc user: drh tags: trunk)
2006-05-31
11:12
Fix typo in lang_analyze.html. (CVS 3195) (check-in: fba8ce8c38 user: drh tags: trunk)
2006-05-27
11:15
Clarify the operation of sqlite3_last_insert_rowid() in the documentation. (CVS 3194) (check-in: 9e0b83b81f user: drh tags: trunk)
2006-05-26
19:57
Allow SQL statements to be executed from within a progress callback. Be warned, however, that the progress callback might be called recursively in this case. It is up to the program to disable the progress callback to prevent recursive invocations. Ticket #1827. (CVS 3193) (check-in: ffc4730c05 user: drh tags: trunk)
2006-05-25
12:17
Syntax errors override errors from the code generator, not the other way around. (CVS 3192) (check-in: 5031ffc665 user: drh tags: trunk)
11:52
Handle NULL database names in ATTACH and DETACH as if they were empty strings. Ticket #1825. (CVS 3191) (check-in: 79a818bb05 user: drh tags: trunk)
2006-05-24
12:43
When opening a new connection on a shared cache, be careful not to overwrite the encoding flag on the shared cache. Ticket #1824. (CVS 3190) (check-in: c8e5ceedee user: drh tags: trunk)
2006-05-23
23:25
Additional tests for ticket #1821. (CVS 3189) (check-in: b93e3fb02a user: drh tags: trunk)
23:22
Fix type coercion rules for the IN operator. Ticket #1821. (CVS 3188) (check-in: 6e5a497621 user: drh tags: trunk)
2006-05-22
22:04
If an sqlite3_mprintf() call uses a disallowed internal-use-only conversion character, then abort the call with a -1 error code. Ticket #1818. (CVS 3187) (check-in: 9d7297b9ef user: drh tags: trunk)
2006-05-11
23:14
Adjust the default weights on indices so that an index that matches more terms of the where clause wins (by default) over one that matches fewer. Ticket #1808. (CVS 3186) (check-in: 249b579f83 user: drh tags: trunk)
13:33
Fix documentation typo: The name of the competing database engine is "Firebird", not "Firefox". (CVS 3185) (check-in: 8be6a39d71 user: drh tags: trunk)
13:26
Correctly handle multi-column indices where multiple columns are constrained by IN operators with subqueries on the right-hand side. Ticket #1807. (CVS 3184) (check-in: b16541ba5e user: drh tags: trunk)
13:25
Fix comments on the implementation of the SUM() function. (CVS 3183) (check-in: a8909f3e5f user: drh tags: trunk)
2006-05-10
14:39
Out-of-memory checks added to tclsqlite.c and shell.c. Tickets #1805 and #1806. (CVS 3182) (check-in: 364031d6e5 user: drh tags: trunk)
2006-05-08
15:14
Fix error processing in Lemon. SQLite does not use this feature of lemon so it is uneffected. (CVS 3181) (check-in: 864cac9603 user: drh tags: trunk)
2006-05-07
17:49
Automatically increase the size of the pager hash table as the number of in-memory pages increases. Tickets #1790 and #1799. (CVS 3180) (check-in: ef8e9886f4 user: drh tags: trunk)
2006-05-03
23:39
Fix a typo on a webpage. Ticket #1792. (CVS 3179) (check-in: 2702205277 user: drh tags: trunk)
23:34
Faster :memory: database COMMITs. Ticket #1790. (CVS 3178) (check-in: 8f820e4352 user: drh tags: trunk)
2006-04-26
17:39
Get LIMIT 0 working on subqueries. Ticket #1784. (CVS 3177) (check-in: 7f3ef7ddba user: drh tags: trunk)
2006-04-21
09:38
Additional information about index sorting in EXPLAIN QUERY PLAN. (CVS 3176) (check-in: 39dd969527 user: drh tags: trunk)
2006-04-19
01:24
Remove a superfluous call to access() in the unix driver. Error spotted by Coverity. (CVS 3175) (check-in: 4f195aa1eb user: drh tags: trunk)
2006-04-16
12:05
Allocate enough memory for the worst-case UTF-16 to UTF-8 conversion. Ticket #1773. (CVS 3174) (check-in: 2a0120c0f0 user: drh tags: trunk)
2006-04-11
14:16
Allow constant terms in the ORDER BY or GROUP BY clauses. Ticket #1768. (CVS 3173) (check-in: d83e0230c0 user: drh tags: trunk)
2006-04-10
13:37
Follow-up to check-in (3164). Make sure SQLITE_NOMEM is returned after a memory allocation failure. It is not sufficent to return an "out of memory" error message. The return code needs to be SQLITE_NOMEM. (CVS 3172) (check-in: 9d95750e85 user: drh tags: trunk)
2006-04-08
19:14
Variable declarations should come before code. Ticket #1763. (CVS 3171) (check-in: 9682f84401 user: drh tags: trunk)
2006-04-07
13:54
Reorder code so that it compiles with SQLITE_OMIT_MEMORYDB. Ticket #1754. (CVS 3170) (check-in: 1929e37d5e user: drh tags: trunk)
13:50
Return the correct declared column type, origin column name, origin database name, etc. from aggregate queries. Ticket #1726 and #1755. (CVS 3169) (check-in: e64809f0ae user: drh tags: trunk)
13:26
Avoid the use of atof(). Ticket #1756. (CVS 3168) (check-in: 76aef93c3e user: drh tags: trunk)
2006-04-05
13:16
Version 3.3.5 (CVS 3167) (check-in: a091a61d88 user: drh tags: trunk)
12:50
Fix typos in the previous check-in. (CVS 3166) (check-in: 119ec40228 user: drh tags: trunk)
12:15
Preparing for the release of version 3.3.5. (CVS 3165) (check-in: 159fb92bd5 user: drh tags: trunk)
11:57
Make sure SQLITE_NOMEM is reported out on a malloc failure in an ATTACH even if the malloc failure reports within a nested calls to sqlite3_prepare(). (CVS 3164) (check-in: 3538a4e30f user: drh tags: trunk)
01:08
Add documentation on new sqlite_authorizer callback types. Ticket #1744. (CVS 3163) (check-in: fdbff3f145 user: drh tags: trunk)
01:02
Documentation typos. Tickets #1749 and #1750. (CVS 3162) (check-in: 51b35ace20 user: drh tags: trunk)
2006-04-04
01:54
Changes to get SQLite running on machines that use the EBCDIC character set. (CVS 3161) (check-in: 4342b49971 user: drh tags: trunk)
2006-04-02
11:57
Do not strip windows DLLs because this prevents them from being relocatable. Ticket #1474. (CVS 3160) (check-in: 94054cd997 user: drh tags: trunk)
2006-04-01
14:38
Remove mention of the REVERSE collating sequence from the documentation. (CVS 3159) (check-in: bd6876a1a9 user: drh tags: trunk)
2006-03-29
00:24
Properly record the names of triggers even if the name is quoted. Ticket #1737. (CVS 3158) (check-in: 4ba280ddd6 user: drh tags: trunk)
2006-03-28
23:57
Compile-time option to use only 32-bit integers. (CVS 3157) (check-in: aedadfc3e4 user: drh tags: trunk)
23:55
Join optimizer enhancements. (CVS 3156) (check-in: 0039888f91 user: drh tags: trunk)
00:24
Extra asserts to prove that certain reported errors in btree.c are not really errors. (CVS 3155) (check-in: c64542d0e8 user: drh tags: trunk)
2006-03-26
20:49
Work around a bug in GCC 4.0.2. (CVS 3154) (check-in: fe0920c792 user: drh tags: trunk)
01:21
SQLite now always chooses the column names for compound selects using the left-most select. This makes SQLite work like other SQL database, but it also is a change from historical behavior and may break some scripts. Ticket #1721. (CVS 3153) (check-in: 80cda9f7ce user: drh tags: trunk)
2006-03-25
15:52
Add code to report an error on a recursive trigger, but leave it commented out - turning it on will likely break a lot of code. (CVS 3152) (check-in: c83ec81d53 user: drh tags: trunk)
14:03
Add a note to the API documentation emphasizing that the filename argument to sqlite3_open() must be UTF-8. Tickets #1713, #1533. (CVS 3151) (check-in: b0111f43e4 user: drh tags: trunk)
2006-03-24
03:36
Make sure the rootpage values in the symbol table are correctly updated when dropping tables and indices in autocommit mode. Ticket #1728. (CVS 3150) (check-in: 1c582dd113 user: drh tags: trunk)
2006-03-23
23:33
Improvements to comments in build.c. (CVS 3149) (check-in: 986208a364 user: drh tags: trunk)
23:29
Get autovacuum and in-memory databases working together. Ticket #1727. (CVS 3148) (check-in: 21446df642 user: drh tags: trunk)
22:42
Use the pread()/pwrite() interface on Posix if compiled with -DUSE_PREAD=1. Note that on Linux this is slower and does not work for large files. (CVS 3147) (check-in: 5a24f61981 user: drh tags: trunk)
14:03
Improvements to comments. No changes to code. (CVS 3146) (check-in: 01e164da67 user: drh tags: trunk)
2006-03-22
22:10
Get the build to run with -DSQLITE_OMIT_SHARED_CACHE. (CVS 3145) (check-in: 15e3b183bc user: drh tags: trunk)
2006-03-19
13:00
Increase test coverage to above 98%. (CVS 3144) (check-in: 8ae6ccc715 user: drh tags: trunk)
2006-03-17
13:56
Miscellaneous code cleanup. (CVS 3143) (check-in: 8f60139f68 user: drh tags: trunk)
00:26
Code and comment cleanup for the sorting optimization of the previous check-in. (CVS 3142) (check-in: f3fbe72733 user: drh tags: trunk)
00:04
Much faster sorting when there are a large number of columns in the result set. (CVS 3141) (check-in: 6b3717aeb4 user: drh tags: trunk)
2006-03-16
16:19
Fix some compiler warnings. (CVS 3140) (check-in: 6c5175bc0f user: drh tags: trunk)
14:05
Make provisions in the code to support Provisions to support caching of serialized statements in the SSE extension. (CVS 3139) (check-in: 5048fae042 user: drh tags: trunk)
2006-03-15
22:44
Performance improvement in sqlite3VdbeAddOp(). (CVS 3138) (check-in: 6bcbe8fcad user: drh tags: trunk)
16:26
Fix CHECK constraints to use alternative conflict resolution. Ticket #1717. (CVS 3137) (check-in: c0d20fa97f user: drh tags: trunk)
2006-03-14
13:10
Set and clear the full_column_name flag using direct invocation rather than the execsql tcl command so that the select1 test works with the serialized statement extension. (CVS 3136) (check-in: 4d70013a6a user: drh tags: trunk)
12:59
Move the PENDING_PAGE to a very large value if disk I/O is omitted. (CVS 3135) (check-in: f07181739f user: drh tags: trunk)
11:08
Make sure sqlite3FindCollSeq() returns NULL after a malloc() failure. (CVS 3134) (check-in: 0e05355f3c user: drh tags: trunk)
2006-03-13
15:06
Get parserless builds working again. (CVS 3133) (check-in: 5ddc09a5e4 user: drh tags: trunk)
14:31
Fix documentation to show the correct return type from sqlite3_db_handle(). Ticket #1716. (CVS 3132) (check-in: f4fb047d0a user: drh tags: trunk)
14:28
Changes to get the Serialized Statement Extension working again. (CVS 3131) (check-in: 255fdbe6fa user: drh tags: trunk)
12:54
Additional changes due to Coverity scans. (CVS 3130) (check-in: a69f697d50 user: drh tags: trunk)
2006-03-11
12:04
Add an assert() to demonstrate that Klockworks is wrong about an aleged bug. (CVS 3129) (check-in: 0910022be3 user: drh tags: trunk)
2006-03-09
17:28
Correct names returned from a query against a view. Ticket #1709, #1688, #1711. (CVS 3128) (check-in: 36830fafa4 user: drh tags: trunk)
2006-03-06
23:30
Remove all reference to EXTERN from tclsqlite.c. Ticket #1687. (CVS 3127) (check-in: b4d3e0d528 user: drh tags: trunk)
20:55
Code changes resulting from Coverity analysis. http://scan.coverity.com/ Found 1 potential segfault in sqlite3_mprintf(). Also 2 failures to fclose() following a malloc() failure. And lots of cases where unnecessary conditionals could be removed from the code. (CVS 3126) (check-in: e510e6dd9d user: drh tags: trunk)
18:23
Pager performance enhancements. (CVS 3125) (check-in: 9c26570743 user: drh tags: trunk)
2006-03-03
21:39
Fix typo in documentation. Ticket #1578. (CVS 3124) (check-in: cb2e009f17 user: drh tags: trunk)
21:38
EXPLAIN sets the length of its text return values correctly. Ticket #1583. (CVS 3123) (check-in: 34b560e811 user: drh tags: trunk)
21:20
The table_info pragma shows column affinity as "" if there is no column affinity. Ticket #1570. (CVS 3122) (check-in: 5cae8d63d9 user: drh tags: trunk)
20:54
Make sure the default busy handler uses usleep() when available. Ticket #1684. (CVS 3121) (check-in: 43e5462608 user: drh tags: trunk)
20:37
The --enable-debug option on configure enables verbose explain and vdbe_trace. Ticket #1680. (CVS 3120) (check-in: ee2f706800 user: drh tags: trunk)
20:32
Fix tclsqlite.c to better support Mingw. Ticket #1687. (CVS 3119) (check-in: da0e843c05 user: drh tags: trunk)
19:12
Ignore leading spaces on text to numeric conversions. Ticket #1662. Fixes to test cases broken by the recent changes to round(). (CVS 3118) (check-in: cdca3383c5 user: drh tags: trunk)
2006-03-02
04:44
Allow WHERE clause terms on the left table of a LEFT OUTER JOIN to contain aggregate subqueries. Ticket #1697. (CVS 3117) (check-in: a286e54e26 user: drh tags: trunk)
03:02
Change the ROUND() function to return a REAL value instead of TEXT. Ticket #1699. (CVS 3116) (check-in: 9dbadfb211 user: drh tags: trunk)
2006-02-27
23:44
Reduce the size of a memory allocation in the windows driver to the minimum needed. Ticket #1690. (CVS 3115) (check-in: 1fe9ca078b user: drh tags: trunk)
23:19
Add a test to make sure parser stack overflow is detected and reported. (CVS 3114) (check-in: 201ab3b523 user: drh tags: trunk)
22:22
The parser now permits very large triggers - triggers with 10000 or more statements. (CVS 3113) (check-in: b4fa96d0e9 user: drh tags: trunk)
21:58
Detect stack overflow in the parser and report an error. (CVS 3112) (check-in: bd2c38f467 user: drh tags: trunk)
2006-02-24
03:09
Additional compiler warnings suppressed. (CVS 3111) (check-in: a359b1817e user: drh tags: trunk)
02:53
Remove unused parameters on internal APIs. Suppress warnings from CodeWarrior. (CVS 3110) (check-in: 4b22e4b847 user: drh tags: trunk)
2006-02-23
21:51
Make sure the random() function always returns a value that can be passed to abs(). (CVS 3109) (check-in: 5d2e7ea019 user: drh tags: trunk)
21:43
Detect integer overflow in the abs() function. The random() function now provides 64 bits of randomness instead of just 32. Fix bugs in testing logic of test4.c. (CVS 3108) (check-in: 942c509595 user: drh tags: trunk)
2006-02-22
03:08
New compile-time option SQLITE_SECURE_DELETE takes care to overwrite deleted data with zeros. (CVS 3107) (check-in: 614fac9068 user: drh tags: trunk)
2006-02-18
16:36
Always generate code, even if it is a no-op, for CREATE and DROP statements that use the IF EXISTS or IF NOT EXISTS clause. (CVS 3106) (check-in: f8173e6aea user: drh tags: trunk)
2006-02-17
15:01
Fix bug preventing compliation without MEMDEBUG when ENABLE_MEMORY_MANAGE is defined. (CVS 3105) (check-in: 76912b33b1 user: danielk1977 tags: trunk)
12:25
Ensure temp db is open before executing a pragma like "temp.cachesize = xxx". Fix for #1682. (CVS 3104) (check-in: 1e4644b236 user: danielk1977 tags: trunk)
2006-02-16
18:16
Or the SQLITE_UTF16_ALIGNED with the encoding field in sqlite3_create_collation and UTF16 strings will always be aligned on an even byte boundary when passed into the comparison function. (CVS 3103) (check-in: 7a1701e8c5 user: drh tags: trunk)
00:32
Fix more typos in the file format document. (CVS 3102) (check-in: d7495be806 user: drh tags: trunk)
00:31
Fix a typo in the file format document. (CVS 3101) (check-in: fac0d202e1 user: drh tags: trunk)
2006-02-15
21:19
Get the build working again. Fix for check-in (3093) (CVS 3100) (check-in: 4e6b74b290 user: drh tags: trunk)
17:30
Mention the NOT unary operator in the documentation. (CVS 3099) (check-in: 3eca2d9868 user: drh tags: trunk)
02:00
Update the configure script to use AC_HELP_STRING. (CVS 3098) (check-in: 92be79debf user: drh tags: trunk)
2006-02-14
14:46
test_async.c: Writer-thread should not relinquish mutex when writing a file for which only one file handle is open (fixes bug introduced in (3093)). (CVS 3097) (check-in: f0c45b7eab user: danielk1977 tags: trunk)
14:02
Account for a malloc failure in the asynchronous writer thread in test_async.c (CVS 3096) (check-in: 2f2a8a69cb user: danielk1977 tags: trunk)
13:48
Fix bug in test_async.c version of OsFileSize(). (CVS 3095) (check-in: 239e53b4f2 user: danielk1977 tags: trunk)
13:25
Add simple io error tests for test_async.c. (CVS 3094) (check-in: 528dfb7180 user: danielk1977 tags: trunk)
10:48
Changes so that test_async.c works with memory management turned on. (CVS 3093) (check-in: f4150c29df user: danielk1977 tags: trunk)
2006-02-13
18:42
Disable the /./ and /../ collapser logic in sqlite3OsFullPathname under Unix. (CVS 3092) (check-in: 111a426b3e user: drh tags: trunk)
18:35
Fix a bug in the handling of sqlite3OsTruncate by the test_async.c demo. Added trans.test to the suite of tests for asychronous I/O. (CVS 3091) (check-in: 5b16c43542 user: drh tags: trunk)
17:03
Add in-process file locking to test_async.c. The unix implementation of sqlite3OsFullPathname() now attempts to remove /./ and /../ elements from the path. (CVS 3090) (check-in: 42379c6230 user: drh tags: trunk)
15:29
Fix a deadlock problem on the sqlite3async_wait test interface. Improvements to tracing in test_async.c. (CVS 3089) (check-in: 58c6d50138 user: drh tags: trunk)
14:49
Improvements to the TRACE macro in test_async.c. (CVS 3088) (check-in: 4c6dfec54f user: drh tags: trunk)
13:50
I/O errors shut down all processing on the same file in test_async.c. (CVS 3087) (check-in: 4366e71217 user: drh tags: trunk)
13:30
Fix overlapping read logic in the test_async.c demonstration. (CVS 3086) (check-in: ad25127b06 user: drh tags: trunk)
13:23
Fix a memory leak in test_async.c. (CVS 3085) (check-in: 904ffa4dfb user: drh tags: trunk)
2006-02-11
17:34
I give up. SUM() now throws an error on integer overflow. Those of us who think this is goofy can use TOTAL() instead. Tickets #1664, #1669, #1670, #1674. (CVS 3084) (check-in: 1c3e6002cd user: drh tags: trunk)
02:12
Version 3.3.4 (CVS 3083) (check-in: 033aaab67f user: drh tags: trunk)
02:03
Fix typo in os_unix.c. (CVS 3082) (check-in: c0e987bcfa user: drh tags: trunk)
01:56
Prepare for the release of 3.3.4. (CVS 3081) (check-in: 951f3322c0 user: drh tags: trunk)
01:25
Add support and documentation for the fullfsync pragma. Also include some other unrelated documentation updates. (CVS 3080) (check-in: f2069d0bf3 user: drh tags: trunk)
2006-02-10
18:08
Make sure pointers are always aligned to 8-bytes when creating internal Index structures. (CVS 3079) (check-in: d20a33ac2a user: drh tags: trunk)
14:02
Clean up pointer misuse in vdbe.c. (CVS 3078) (check-in: 9e82b92749 user: drh tags: trunk)
13:33
Minor test file modifications for builds compiled with OMIT options. (CVS 3077) (check-in: c468aa349d user: danielk1977 tags: trunk)
13:14
Add documentation for new APIs. (CVS 3076) (check-in: 84c2a5c4d7 user: danielk1977 tags: trunk)
13:11
More comments on the unix locking code. Ticket #1672. (CVS 3075) (check-in: 4b6f568884 user: drh tags: trunk)
12:48
Add trivial tests to increase coverage of sqlite3_table_column_metadata(). (CVS 3074) (check-in: 424ce5ecd0 user: danielk1977 tags: trunk)
08:24
Work around the case where the pending-byte page is also a a pointer-map page. Ticket #1667. (CVS 3073) (check-in: 5ea87fbbe0 user: danielk1977 tags: trunk)
07:07
Fix the origin APIs so that they correctly handle views and subqueries that cannot be flattened. (CVS 3072) (check-in: 5e8611e13d user: danielk1977 tags: trunk)
04:33
Fix deadlock problem in the unix mutex. Ticket #1672. (CVS 3071) (check-in: a6c30be214 user: drh tags: trunk)
03:06
Add a symbol P3_TRANSIENT to pass to VdbeSetColName() to make it copy the string parameter up to the first 0 byte. (CVS 3070) (check-in: 6ebb8f9bb2 user: danielk1977 tags: trunk)
02:27
Add the column_origin_name() etc. APIs. (CVS 3069) (check-in: 82f502cdc1 user: danielk1977 tags: trunk)
2006-02-09
23:05
Ignore errors when when calling fsync() on a directory. Ticket #1657. (CVS 3068) (check-in: d54d3b82c4 user: drh tags: trunk)
22:24
Allow '@' to introduce host parameter names for compatibility with MS SQL Server. Ticket #1671. (CVS 3067) (check-in: 0738ef818d user: drh tags: trunk)
22:13
SUM never gives an error. An integer result is returned for exact results and a floating point result is returned for approximate results. Tickets #1664, #1669, and #1670. (CVS 3066) (check-in: 9e04f8fdf1 user: drh tags: trunk)
18:35
Deprecate the sqlite3_aggregate_count() API. Make sure all aggregate counters are 64 bits. Remove unused StdDev structure from func.c. Ticket #1669. (CVS 3065) (check-in: 44bd7ba432 user: drh tags: trunk)
17:47
Integer overflow in SUM causes an exception. Ticket #1669. (CVS 3064) (check-in: c72b946198 user: drh tags: trunk)
16:52
Back out check-in (3058) - it breaks too much application code. (CVS 3063) (check-in: 731f1e3245 user: drh tags: trunk)
13:43
Add the sqlite3_table_column_meta() API. (CVS 3062) (check-in: 1ac72f68c0 user: danielk1977 tags: trunk)
13:38
Avoid overflowing the 48-bit mantissa of a floating point number when summing large integers in the SUM() function. Ticket #1664. (CVS 3061) (check-in: a9169e879d user: drh tags: trunk)
02:56
Correctly handle COLLATE clauses in tables being modified by an ALTER TABLE ADD COLUMN command. Ticket #1665. (CVS 3060) (check-in: baef2f66be user: drh tags: trunk)
02:41
Use 64-bit integers in sqlite3_analyzer. Ticket #1666. (CVS 3059) (check-in: 8b3068aca7 user: drh tags: trunk)
2006-02-06
21:34
Add "autoinc" and "collseq" columns to the table_info() pragma. (CVS 3058) (check-in: 7940a590ab user: drh tags: trunk)
21:22
Keep correct track of the amount of outstanding memory even when the system memory allocator returns a different number of bytes than requested. Ticket #1660. (CVS 3057) (check-in: 6f5eb74fd9 user: drh tags: trunk)
13:59
Update the per-thread bytes allocated counter with the number of bytes actually allocated, not the number requested. Ticket #1660. (CVS 3056) (check-in: 3f0a0ff197 user: danielk1977 tags: trunk)
2006-02-05
18:55
Detect circularly defined views and issue an error message. Ticket #1658. (CVS 3055) (check-in: f5341529d0 user: drh tags: trunk)
2006-02-01
14:39
Typecast to silence (incorrect) compiler warning. (CVS 3054) (check-in: 3a04fc45cc user: drh tags: trunk)
13:50
Always register BINARY collating sequences for UTF-16BE and UTF-16LE both. Formerly we were only registering the native byte order by default. Ticket #1654. Note: There may still be problems with collating sequence synthesis. (CVS 3053) (check-in: 3861377bd9 user: drh tags: trunk)
02:45
In joins of the form: "A, B left C" make sure that the reordering optimization does not put table A after table C. Ticket #1652. (CVS 3052) (check-in: 248b9be93d user: drh tags: trunk)
01:55
Added support for the -enable-thread-override-lock option on the configure script. (CVS 3051) (check-in: 82f558bd11 user: drh tags: trunk)
2006-01-31
23:03
Add the SQLITE_THREADS_OVERRIDE_LOCKS compile-time option that disables the run-time test to see if threads can override each others locks on unix. (CVS 3050) (check-in: e83a19e8cb user: drh tags: trunk)
20:49
Patches to support linux on embedded platforms. (CVS 3049) (check-in: a088eb6d6e user: drh tags: trunk)
19:31
Fix some pointless warnings from overly-pedantic compilers. (CVS 3048) (check-in: b922c8e45f user: drh tags: trunk)
19:07
3rd parameter to sqlite3_prepare() should be -1 if the string length is unknown. Passing in zero causes a zero-length SQL statement to be prepared, which is a no-op. Ticket #1651. This bug introduced by the fix for ticket #1650. (CVS 3047) (check-in: 1e68ac590d user: drh tags: trunk)
16:21
Version 3.3.3 (CVS 3046) (check-in: 10a3f56546 user: drh tags: trunk)
16:20
Put in the correct release date for version 3.3.3. (CVS 3045) (check-in: 1133a84039 user: drh tags: trunk)
15:19
Fix an problem in the test scripts that was show false failures under windows. (CVS 3044) (check-in: 0cf4e3c6e7 user: drh tags: trunk)
14:28
Authorization callback on the ALTER TABLE ADD COLUMN command. Ticket #1479. (CVS 3043) (check-in: 461f586973 user: drh tags: trunk)
2006-01-30
23:04
Remove support for the non-standard ON CONFLICT clause on CREATE INDEX. Ticket #1486. The ON CONFLICT clause has never worked on CREATE INDEX so removing it should not break anything. (CVS 3042) (check-in: 669bcf5ab6 user: drh tags: trunk)
22:48
Memory DB works with autovacuum. (CVS 3041) (check-in: 34dff874a2 user: drh tags: trunk)
22:35
Make sure the 3rd parameter to sqlite3_prepare() is honored. Ticket #1650. (CVS 3040) (check-in: 9d53cc880f user: drh tags: trunk)
22:12
Clarify that the nBytes parameter to sqlite3_prepare is always the number of bytes and never the number of characters. Ticket #1646. (CVS 3039) (check-in: 8efc8c5710 user: drh tags: trunk)
16:20
Documentation updates in preparation for the release of 3.3.3 stable. (CVS 3038) (check-in: 6537b5713a user: drh tags: trunk)
15:41
Add a couple of extra test cases for #1644. (CVS 3037) (check-in: e10d229ff2 user: danielk1977 tags: trunk)
15:34
Expire all prepared statements whenever there is a change to the schema of the TEMP database. Ticket #1644. (CVS 3036) (check-in: 4cd4efaf5e user: drh tags: trunk)
14:36
Fix bug with CHECK constraints contain an IN operator. Ticket #1645. (CVS 3035) (check-in: 944df310ce user: drh tags: trunk)
2006-01-27
06:32
Fix a couple of (harmless) intel compiler warnings. (CVS 3034) (check-in: 2e23231f0c user: danielk1977 tags: trunk)
2006-01-26
14:29
Enhanced comments on the opcode.h building script. (CVS 3033) (check-in: 7ccebf68eb user: drh tags: trunk)
13:25
Fix an error in the collation sequence examples in datatype3.html. Ticket #1641. (CVS 3032) (check-in: 1658ea53c9 user: danielk1977 tags: trunk)
13:11
Add omittest.tcl script to automate testing compile-time OMIT symbols. (CVS 3031) (check-in: 540d28a7d3 user: danielk1977 tags: trunk)
10:35
Handle a malloc() failure in resizeOpArray(). (CVS 3030) (check-in: 5cecb4527b user: danielk1977 tags: trunk)
2006-01-25
22:50
Minor comment changes and code optimizations. (CVS 3029) (check-in: 9e55dcd1a5 user: drh tags: trunk)
15:55
Rename files using for testing only so that their name begins with "test". (CVS 3028) (check-in: e4e6a205e4 user: drh tags: trunk)
2006-01-24
16:37
Handle errors in saving cursor positions during a rollback by aborting all active statements. (CVS 3027) (check-in: 5df9f022bf user: danielk1977 tags: trunk)
14:21
Save the position of any open cursors before a rollback. (CVS 3026) (check-in: 32d45bcf74 user: danielk1977 tags: trunk)
13:09
Return code was being dropped because of overridden variable in OP_IsUnique. Fix this and the test logic problem that hid it. (CVS 3025) (check-in: c30705a00d user: danielk1977 tags: trunk)
12:09
Rename some variables to avoid hiding others. Also add "static" to two function signatures that were missing it. (CVS 3024) (check-in: d86f18a427 user: danielk1977 tags: trunk)
11:30
Coverage improvements for main.c. (CVS 3023) (check-in: 50964ef9b0 user: danielk1977 tags: trunk)
10:58
General test coverage improvements. (CVS 3022) (check-in: 153940af5a user: danielk1977 tags: trunk)
02:19
Sqlite3_analyzer reports an error if it runs into trouble. (CVS 3021) (check-in: 388b926228 user: drh tags: trunk)
02:00
Update the publish scripts to correctly build the TCL DLL for windows. (CVS 3020) (check-in: 5254874a96 user: drh tags: trunk)
00:40
Version 3.3.2 (beta) (CVS 3019) (check-in: 1fdde6c506 user: drh tags: trunk)
00:15
More test script changes to get it to run without -DSQLITE_MEMDEBUG. (CVS 3018) (check-in: 0ede5e496b user: drh tags: trunk)
2006-01-23
23:53
Change the release date for version 3.3.2 to January 24. (CVS 3017) (check-in: 7a2617f6a5 user: drh tags: trunk)
23:49
Disable shared-cache OOM tests if not compiled with -DSQLITE_MEMDEBUG. (CVS 3016) (check-in: 2d896667e4 user: drh tags: trunk)
22:15
Bug fix in the WinCE bindings. (CVS 3015) (check-in: c57922838a user: drh tags: trunk)
21:44
More progress toward getting SQLITE_OMIT_FLOATING_POINT to pass tests. Ticket #1621. (CVS 3014) (check-in: b52674e564 user: drh tags: trunk)
21:38
Fix the shared pager tests so that they work under windows. (CVS 3013) (check-in: 4a1a9f3e9d user: drh tags: trunk)
21:37
Progress toward getting SQLITE_OMIT_FLOATING_POINT to pass all tests. Ticket #1621 (CVS 3012) (check-in: c4c90965c9 user: drh tags: trunk)
18:42
Bug fix in cases where a compound select has an ORDER BY clause with multiple terms. (CVS 3011) (check-in: 4f56949bd6 user: drh tags: trunk)
18:14
Add documentation on the IF NOT EXISTS clause to CREATE statements. Ticket #1608. (CVS 3010) (check-in: d4e4ba132a user: drh tags: trunk)
18:06
Makefile changes so that builds work on Solaris. Ticket #1604. (CVS 3009) (check-in: 7addf70445 user: drh tags: trunk)
17:43
Bug fix in the ROWID generation logic of the VDBE. I think this is a benign bug - it never causes a real fault. But I am not certain. (CVS 3008) (check-in: dfe2823868 user: drh tags: trunk)
16:25
Get I/O error tests working on windows. (CVS 3007) (check-in: 2ef8b85db7 user: drh tags: trunk)
16:24
Fix uninitialized variable in os_unix.c. (CVS 3006) (check-in: 892e644d20 user: drh tags: trunk)
16:21
Add "#ifndef NDEBUG" around sqlite3pager_iswriteable() (only used in assert() expressions). Also set the internal page number of a page to zero if it fails to initialise. (CVS 3005) (check-in: 77969c671c user: danielk1977 tags: trunk)
15:59
Changes to the enc2.test script so that it will run on windows. (CVS 3004) (check-in: 4c1818eceb user: drh tags: trunk)
15:54
Cut over the patches to support WinCE. Ticket #1600. (CVS 3003) (check-in: 436287c2bf user: drh tags: trunk)
15:39
Fix a bug in pager.c that was overwriting freed memory. Comment changes in util.c. (CVS 3002) (check-in: 8c7e18c3f2 user: drh tags: trunk)
15:25
Further coverage improvements for pager.c and another IO error bug fix. (CVS 3001) (check-in: a9ec5ee472 user: danielk1977 tags: trunk)
14:05
Fix os_common.h so that the code builds without -DSQLITE_MEMDEBUG. (CVS 3000) (check-in: 06d6540026 user: drh tags: trunk)
13:47
Do not automatically rollback at the btree or pager level if a commit fails. (CVS 2999) (check-in: 0f6329ef1f user: danielk1977 tags: trunk)
13:28
Fix to sqlite3AllocMalloc() when it is a no-op macro. (CVS 2998) (check-in: 8caa9f95b8 user: drh tags: trunk)
13:22
Do not name variables "operator" because some compilers do not realize that "operator" is not a reserved word in ANSI-C. Ticket #1625. (CVS 2997) (check-in: 1f42a338e2 user: drh tags: trunk)
13:14
Work around buggy malloc() implementations that cause problems on malloc(0). Ticket #1572. (CVS 2996) (check-in: ada5490f12 user: drh tags: trunk)
13:09
Improve coverage of pager.c and fix an IO error handling bug found in the process. (CVS 2995) (check-in: 6ec8e6b785 user: danielk1977 tags: trunk)
13:00
Fix additional compiler warnings. Tickets #1615, #1616, #1627 (CVS 2994) (check-in: 6385628edd user: drh tags: trunk)
07:52
Fixes for OMIT_UTF16 and OMIT_COMPOUND (CVS 2993) (check-in: f58bbdc0ac user: danielk1977 tags: trunk)
05:50
Improve coverage of expr.c and btree.c slightly. (CVS 2992) (check-in: cc2e8e87cf user: danielk1977 tags: trunk)
00:04
Remove vestiges of the older TSD code for handling OOM exceptions. Prepare for the release of 3.3.2. (CVS 2991) (check-in: a65e85f0e0 user: drh tags: trunk)
2006-01-22
21:52
Performance optimization in btree.c. (CVS 2990) (check-in: 3e1e6affe2 user: drh tags: trunk)
00:42
Code size reductions in select.c. (CVS 2989) (check-in: 3c2eee5e1f user: drh tags: trunk)
00:14
Tests for the subquery flattening fix of check-in (2987). (CVS 2988) (check-in: 72a067f0df user: drh tags: trunk)
2006-01-21
22:19
Do not flatten subqueries in a join where the subquery includes a LIMIT. Ticket #1634. This is just an initial fix. Many test cases need to be added prior to closing the ticket. (CVS 2987) (check-in: af18c0f431 user: drh tags: trunk)
19:57
Fix a bug in os.h. How did this slip by before now? (CVS 2986) (check-in: 29725de474 user: drh tags: trunk)
12:08
Fix more problems with malloc() and IO failures. (CVS 2985) (check-in: 29281dea81 user: danielk1977 tags: trunk)
2006-01-20
18:10
More compiler warnings fixed - or in some cases comments are added to explain that the compiler is wrong. (CVS 2984) (check-in: 507653a98c user: drh tags: trunk)
17:56
Fix some compiler warnings. (CVS 2983) (check-in: b7bdac0afd user: drh tags: trunk)
16:32
Fix another couple of IO or malloc() failure problems in a shared-cache context. (CVS 2982) (check-in: 7e34163a65 user: danielk1977 tags: trunk)
15:45
Fix and test the processing of sqlite3_result_error() withing aggregate functions. Allow errors to come from the step function (a new capability). Ticket #1632. (CVS 2981) (check-in: fd4a6bb1ac user: drh tags: trunk)
10:55
Handle some of the IO error conditions that may occur in a shared-cache context. (CVS 2980) (check-in: 97491d4eb5 user: danielk1977 tags: trunk)
2006-01-19
17:42
Make sure sqlite3_thread_cleanup() does not try to allocate memory. (CVS 2979) (check-in: 0208e4221a user: drh tags: trunk)
11:28
Fix the #ifdef around sqlite3OutstandingMallocs() in test1.c. (CVS 2978) (check-in: 218c6184c8 user: drh tags: trunk)
08:43
Account for read-uncommitted cursors in sqlite3BtreeClearTable(). (CVS 2977) (check-in: 9507983268 user: danielk1977 tags: trunk)
07:18
Fix a bug with internally saving cursors open on index tables. Also increase coverage of util.c and btree.c. (CVS 2976) (check-in: a628d84d31 user: danielk1977 tags: trunk)
2006-01-18
18:33
Omit thread2.test if memory-management is enabled at compile time. (CVS 2975) (check-in: df91f685ca user: danielk1977 tags: trunk)
18:22
Include the ThreadData structure in internal malloc() testing. Also fixes for revealed bugs. (CVS 2974) (check-in: c7b9d50d0a user: danielk1977 tags: trunk)
17:25
Modify the sqlite3OsInMutex os-layer interface to take a single parameter to distinguish between mutexes held by the current thread and mutexes held by any thread. Part of the fix for ticket #1630. (CVS 2973) (check-in: e1ad9df1cf user: drh tags: trunk)
16:51
Use a global variable protected by a mutex instead of thread-specific-data to record malloc() failures. (CVS 2972) (check-in: ac090f2ab3 user: danielk1977 tags: trunk)
15:39
Fix compilation error when neither MEMDEBUG or ENABLE_MEMORY_MANAGEMENT is enabled. (CVS 2971) (check-in: 4de5c52920 user: danielk1977 tags: trunk)
15:25
Change sqlite3MallocClearFailed() calls to sqlite3ApiExit(), a better API. (CVS 2970) (check-in: e0b022e5b2 user: danielk1977 tags: trunk)
14:20
Recursive mutexes in os_win.c. (CVS 2969) (check-in: dd3e07cae4 user: drh tags: trunk)
14:06
Convert the unix driver to use a recusive mutex. Similar changes to the windows driver are pending. (CVS 2968) (check-in: 8830bbbac8 user: drh tags: trunk)
05:51
Handle malloc() failures that occur in open16() and errmsg16(). (CVS 2967) (check-in: 86eab9e53d user: danielk1977 tags: trunk)
04:26
Handle malloc() failures that occur inside create_collation() calls. (CVS 2966) (check-in: 95c5903f36 user: danielk1977 tags: trunk)
2006-01-17
16:10
Arrange for ThreadData to be automatically deallocated even if SQLITE_MEMDEBUG is defined. Fix for #1623. (CVS 2965) (check-in: 9e2e40845d user: danielk1977 tags: trunk)
15:36
Fix compilation errors when building SQLITE_DEBUG defined but without SQLITE_MEMDEBUG. (CVS 2964) (check-in: 62dd242778 user: danielk1977 tags: trunk)
13:21
Various fixes that allow the malloc() failure tests to pass again. (CVS 2963) (check-in: 0505405fb9 user: danielk1977 tags: trunk)
09:35
Test suite fixes for builds that define OMIT symbols. (CVS 2962) (check-in: 3a54a33dcb user: danielk1977 tags: trunk)