SQLite

Timeline
Login

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

100 check-ins occurring around 20dba3a7fb3e7078.

2013-08-02
20:44
Merge in the latest trunk changes, including partial indexes, the MAX_PATH fix in os_win.c, and the sqlite3_cancel_auto_extension() API. check-in: 7e1acb39 user: drh tags: sessions
20:11
Add NEVER() and ALWAYS() macros on some unreachable yet prudent branches. check-in: c5c0a8ab user: drh tags: trunk
16:41
Add support for partial indices. check-in: 478113f1 user: drh tags: trunk
14:18
Silently ignore database name qualifiers in CHECK constraints and in partial index WHERE clauses. Closed-Leaf check-in: 2e8c845e user: drh tags: partial-indices
13:31
Fix typos in documentation for SQLITE_DBSTATUS_DEFERRED_FKS . No changes to code. check-in: f3efbfcd user: drh tags: trunk
2013-08-01
22:27
Fix the CREATE INDEX statement so that trying to create a TEMP index on a non-TEMP table throws an error rather than segfaulting. check-in: e3c8935f user: drh tags: trunk
22:26
Fix an incorrect expected result in a test case in corruptG.test. check-in: 6913831a user: drh tags: trunk
20:26
Fix a potential buffer overread in sqlite3VdbeRecordCompare() when a serial_type specifies a field that starts in bounds but is much too large for the allocated buffer. Mostly harmless. The overread is unlikely to go more than one or two bytes past the end of the buffer. check-in: e436b2f4 user: drh tags: trunk
19:17
Make sure signed integer overflow does not cause a segfault while attempting to read a corrupt database where the header size varint on a record is larger than the maximum 32-bit signed integer. check-in: c3baca99 user: drh tags: trunk
17:43
Add test case for the problem fixed by [127a5b776d]. check-in: 65816718 user: dan tags: trunk
17:21
An improved method for avoiding the use of the STAT3 samples to compute the estimated number of outputs when the left-most index is equality constrained. This check-in undoes the previous fix and applies a new one. check-in: 127a5b77 user: drh tags: trunk
16:52
Avoid using left-most column STAT3 samples if the left-most column has an equality constrain and there are inequality constraints on the second column. check-in: 31b4e63b user: drh tags: trunk
16:02
Fix bug in the logic that determines the end of a CREATE INDEX statement. Added a VACUUM test case that exposed the bug. check-in: 2e3df0bc user: drh tags: partial-indices
15:09
More test cases and corresponding bug fixes. check-in: 0c8cfdfa user: drh tags: partial-indices
13:04
Fill out an initial implementation of the sqlite3ExprImpliesExpr() function. check-in: 8e07aa2a user: drh tags: partial-indices
12:21
Refactor internal function name sqlite3VdbeGetValue() to sqlite3VdbeGetBoundValue(). check-in: 81834c30 user: drh tags: partial-indices
04:39
Fix the ANALYZE command to work with partial indices. check-in: 60353124 user: drh tags: partial-indices
03:36
Test cases and bug fixes for the partial index logic. check-in: 6b73ae7c user: drh tags: partial-indices
01:14
Add the logic to keep partial indices up to date through DML statements and when new partial indices are created. This new logic is untested except to verify that it does not interfere with full indices. check-in: fb9044d1 user: drh tags: partial-indices
2013-07-31
23:28
Limit the number of memset() calls used when determining a temporary file name on Windows. Also, fix a harmless compiler warning. check-in: 136fc293 user: mistachkin tags: trunk
23:22
Add logic to the query planner to only use partial indices if the WHERE clause constrains the search to rows covered by the partial index. This is just infrastructure. The key routine, sqlite3ExprImpliesExpr(), is currently a no-op so that partial indices will never be used. check-in: 8ca3eac1 user: drh tags: partial-indices
22:39
Slight modifications to path name translation handling for Cygwin. check-in: 33ba1f4c user: mistachkin tags: trunk
22:27
Use a new error code to represent a failure to get the configured temporary directory on Windows. check-in: c93d891b user: mistachkin tags: trunk
19:55
The MAX_PATH constant in windows is measured in characters, so multiple by 3 to get the number of bytes assuming worst-case UTF8 pathnames. check-in: bb06e157 user: drh tags: trunk
19:05
Resolve names in CREATE INDEX WHERE clauses and detect errors. Disallow expressions that contain variables, subqueries, or functions. The expression is still not used for anything, however. still unused. check-in: f2aa7842 user: drh tags: partial-indices
18:12
Here begins an experimental branch for exploring the idea of a partial index. This check-in is able to parse a WHERE clause on a CREATE INDEX statement, but does not actually do anythingn with that WHERE clause yet. check-in: 6794b2dc user: drh tags: partial-indices
2013-07-30
15:10
Reduce the size of the stack required by the codeOneLoopStart() function in where.c. check-in: eb6d4278 user: drh tags: trunk
2013-07-29
19:03
For the MSVC makefile, recompile vdbe.lo and parse.lo first. check-in: 9e819f0f user: mistachkin tags: trunk
15:54
Comment and preprocessor macro cleanup. check-in: c0809b5e user: drh tags: trunk
13:51
In main.mk, always recompile vdbe.o and parse.o first, since changes to either parse.y or vdbe.c will cause all files to be recompiled and if there are syntax errors in vdbe.c or parse.y we want to hit them early in the compile process. check-in: a94a66d1 user: drh tags: trunk
2013-07-25
17:07
In the command-line shell, work around the fact that popen() and pclose() are not defined in stdio.h. in C89 and later. check-in: 8bcbb33f user: drh tags: trunk
16:41
Fix a typo in main.c: SQLITE_DEAULT_AUTOMATIC_INDEX -> SQLITE_DEFAULT_AUTOMATIC_INDEX check-in: cc78e21c user: dan tags: trunk
16:27
Enhance the progress handler so that it keeps track of the number of VDBE cycles across sqlite3_step() calls and issues callbacks when the cumulative instruction count reaches threshold. check-in: 4698a82e user: drh tags: trunk
2013-07-24
14:54
Another attempt at generalizing the URI parsing so that it works with a wider variety of file URIs and yet remains backwards compatible. check-in: de05eb75 user: drh tags: uri-enhancement
2013-07-23
22:28
Get the new URI logic working for Windows. Closed-Leaf check-in: 0165789f user: drh tags: uri-enhancement
20:54
Update the URI filename parser to allow (and ignore) authority names in unix and to pass the authority through to the OS on windows, as this appears to be what web-browsers are doing. check-in: 74c12dee user: drh tags: uri-enhancement
2013-07-20
00:39
Merge updates from trunk. check-in: dd4b77c8 user: mistachkin tags: toTypeFuncs
00:34
Add 'queryplantest' target to the MSVC makefile. check-in: ad0551e0 user: mistachkin tags: trunk
2013-07-19
23:58
Fixes to test numbering. check-in: f755b4b2 user: mistachkin tags: trunk
2013-07-18
20:28
Remove unused "codec" code from the command-line shell. check-in: 37abfe0c user: drh tags: trunk
18:45
Improved documentation for sqlite3_set_auxdata(). Ticket [406d3b2ef91c]. check-in: 62465ecb user: drh tags: trunk
18:29
Ensure that all auxiliary data registered by calls to sqlite3_set_auxdata() is destroyed when the VM is halted. check-in: 153deac8 user: dan tags: trunk
18:28
Fix a typo in the previous commit. Closed-Leaf check-in: cd9096e6 user: dan tags: typo
17:12
Ensure that all auxiliary data registered by calls to sqlite3_set_auxdata() is destroyed when the VM is halted. Partial fix for [406d3b2ef9]. DRH adds: Stray text accidentally inserted into vdbe.c just prior to the commit breaks the build. check-in: 71effa59 user: dan tags: typo
14:50
Fix a 8-byte alignment problem in the query planner that might cause problems on sparc when compiled with -m32. check-in: 5dcffa67 user: drh tags: trunk
14:16
Documentation changes to warn that sqlite3_set_auxdata() might call the destructor even before it returns. Also fix the regexp extension to deal with that case. Ticket [406d3b2ef91c]. check-in: 7acc8cd3 user: drh tags: trunk
2013-07-17
21:08
Fix copy/paste errors in comments in the transitive_closure virtual table. No changes to code. check-in: b1b0de29 user: drh tags: trunk
18:12
Enhance the sqlite3_analyzer tool to give reports on the sizes of individual indices. check-in: 3b4096cc user: drh tags: trunk
11:54
Clear the error string pointer in sqlite3_vtab object after the error string is transferred to SQLite. Ticket [78588b938a11]. check-in: 64bf8148 user: drh tags: trunk
2013-07-16
23:26
Make sure the sqlite3_prepare16 and sqlite3_prepare16_v2 interfaces do not read past a zero-terminator if the nBytes parameter is too large. check-in: 20dba3a7 user: drh tags: trunk
21:31
Enhance the query planner so that it looks at multiple solutions to OR expressions in the WHERE clause. check-in: 5e19d054 user: drh tags: trunk
2013-07-15
17:02
Add the sqlite3_cancel_auto_extension(X) interface which will undo a prior call to sqlite3_auto_extension(X). check-in: cdce87eb user: drh tags: trunk
2013-07-12
21:09
Make sure the shell does not try to put a zero terminator on the end of an unallocated zero-length string when running ".import" on an empty file. check-in: 92adaee5 user: drh tags: trunk
2013-07-11
19:04
Change the description of how sqlite3_progress_handler() works so that the N parameter is "approximate". This aligns with the current implementation. This is a documentation change only. No changes to code. check-in: 7d829bde user: drh tags: trunk
15:31
Merge recent trunk changes (such as the query_only PRAGMA, the defer_foreign_keys PRAGMA, and the SQLITE_DBSTATUS_DEFERRED_FKS parameter to sqlite3_db_status()) into the sessions branch. check-in: 8dfc0b78 user: drh tags: sessions
15:22
Add the experimental "query_only" pragma. check-in: 6557c407 user: drh tags: trunk
15:03
Add the "defer_foreign_keys" pragma and the SQLITE_DBSTATUS_DEFERRED_FKS value for sqlite3_db_status(). This is a cherry-pick of a sequence of five checkins in the sessions branch between [1d44e5d3c2] and [d39e65fe70]. check-in: 527121ac user: drh tags: trunk
13:49
Remove the undocumented sqlite3_foreign_key_check() API and replace it with sqlite3_db_status(db, SQLITE_DBSTATUS_DEFERRED_FKS, ...). Add test cases for the new functionality. check-in: d39e65fe user: drh tags: sessions
12:19
Rename the SQLITE_DeferForeignKeys macro to shorter SQLITE_DeferFKs. Move the "defer_foreign_keys" pragma into the flagPragma() routine. check-in: 3a2ab74c user: drh tags: sessions
03:09
Environment variable names in nmake must be in all uppercase. check-in: 0328e873 user: mistachkin tags: vsix2013
2013-07-10
21:33
More corrections to VS 2013 integration. check-in: 7a8b0e36 user: mistachkin tags: vsix2013
19:53
Use the VisualStudioVersion variable instead of _MSC_VER. check-in: 603e9db8 user: mistachkin tags: vsix2013
19:39
More changes to support MSVC 18. check-in: 29c458e2 user: mistachkin tags: vsix2013
18:14
Fix harmless compiler warnings in the progress callback logic. check-in: 908141d5 user: drh tags: trunk
13:33
Experimental "PRAGMA query_only=BOOLEAN" statement that is able to turn write capabilities on and off. Closed-Leaf check-in: ece960c4 user: drh tags: query_only
03:05
Run progress callback checks less frequently in the main VDBE evaluation loop. This makes up for the extra CPU cycles used to increment the cycle counter for SQLITE_STMTSTATUS_VM_STEP. check-in: 3e8b0201 user: drh tags: trunk
2013-07-09
15:56
Adjust the costs in the xBestIndex function of the spellfix1 virtual table to force the use of the MATCH term if it is available. check-in: f003bea9 user: drh tags: trunk
13:05
Pull in all the latest changes from trunk. check-in: af3ca4c6 user: drh tags: sessions
12:36
Modify several extensions to use the new exported function naming. Fix some shared library compilation issues. check-in: 1e39f850 user: drh tags: trunk
03:04
Make sure the schema is verified prior to processing a "WHERE 0" on the first term of a compound SELECT statement. Fix for ticket [490a4b723562429] check-in: 52a49cbc user: drh tags: trunk
2013-07-08
22:33
Make sure an adequate number of digits are shown for binary-to-text rendering of very small floating point values. check-in: 776e65f9 user: drh tags: trunk
21:12
Fix an adverse interaction between the IS NOT NULL optimization (available only with SQLITE_ENABLE_STAT3) and the transitive constraint processing. Fix for ticket [d805526eae253] check-in: 3b30b75b user: drh tags: trunk
01:27
Add an optional 5th parameter to the next_char() function that is the collating sequence to use for comparison. check-in: 9415db6e user: drh tags: trunk
2013-07-06
18:07
Fixes for test cases running in the "mmap" permutation. check-in: cdb97d41 user: dan tags: trunk
17:57
Drop any existing mapping of the database file when exiting the pager "error state", as it may at this point be too large for the database file. Do not invoke file-control MMAP_SIZE if the database file handle does not support xFetch and xUnfetch (on the grounds that xUnfetch(0) calls to invalidate the mapping cannot be made). check-in: 0ae7e75b user: dan tags: trunk
2013-07-05
19:16
Fix two test script problems revealed by permutations.test. check-in: 60cf7e44 user: dan tags: trunk
16:54
Replace an erroneous SQLITE_OMIT_VIRTUAL_TABLE in vdbeaux.c with SQLITE_OMIT_WAL. Also fix some test script problems. check-in: ff8c3f78 user: dan tags: trunk
11:10
Add missing "static" qualifier to functions in where.c. check-in: 5c906e91 user: dan tags: trunk
10:46
Make a couple of implicit casts explicit to fix compiler warnings. check-in: 9676280a user: dan tags: trunk
2013-07-04
23:53
Modify several extensions to use the new exported function naming. Fix some shared library compilation issues. Closed-Leaf check-in: f2ab8747 user: mistachkin tags: extRefactor
15:22
Fix a bug preventing some FK constraint checking from being deferred until the end of changeset application. check-in: 1452defb user: dan tags: sessions
2013-07-03
19:53
Experimental change to the handling of foreign key constraint violations when applying a changeset: all foreign keys, immediate and deferred, are deferred until the end of the transaction (or sub-transaction) opened by the sqlite3changeset_apply(). A single call to the conflict-handler (if any) is made if any FK constraint violations are still present in the database at this point. The conflict-handler may choose to rollback the changeset or to apply it, constraint violations and all. check-in: 1d44e5d3 user: dan tags: sessions
2013-07-02
20:23
Fixes for the sessions module so that it works with sqlite3_extended_error_codes() set. check-in: c2972b6a user: dan tags: sessions
15:25
Remove a surplus local variable check-in: 91bc840e user: drh tags: trunk
10:06
Fix a minor typo in a comment in where.c. check-in: 4a9d51e7 user: dan tags: trunk
00:06
Fix harmless typos in comments of two extensions. check-in: 1c3ed47b user: drh tags: trunk
2013-07-01
20:02
Add a query planner test case submitted by Elan Feingold and based on the Plex project. check-in: 3d49c593 user: drh tags: trunk
17:27
Add a missing test that prevented double LEFT JOINs with transitive constraints from working correctly. Fix for ticket [868145d012]. check-in: 72919ec3 user: drh tags: trunk
11:05
Further minor comment corrections and enhancements in where.c. check-in: 0d68d4d0 user: drh tags: trunk
10:38
Make a trivial comment fix in where.c. check-in: 0ffaab3b user: drh tags: trunk
2013-06-30
20:24
Fix an issue in the command-line shell with CSV import of rows with empty columns. check-in: 60b65e5e user: drh tags: trunk
2013-06-29
15:40
Fix the build of the command-line shell on windows. Windows uses "_pclose" rather than "pclose" as the pointer to the function that closes a popen pipe. check-in: b003b2b2 user: drh tags: trunk
2013-06-28
23:55
Issue the new SQLITE_WARNING_AUTOINDEX warning on the SQLite log whenever an automatic index is created. check-in: 338826ef user: drh tags: trunk
21:12
Add the SQLITE_DEFAULT_AUTOMATIC_INDEX compile-time option, which if set to zero turns automatic indices off by default. Increase the estimated cost of an automatic index. Additional minor refactoring of the automatic index code. check-in: 459b3179 user: drh tags: trunk
19:41
Allow read transactions to be freely opened and closed by SQL statements run from within the implementation of user-functions if the user-function is called by a SELECT statement that does not access any database tables (e.g. "SELECT user_function();"). check-in: f308c485 user: dan tags: trunk
17:29
Add a bit to the SQLITE_TESTCTRL_OPTIMIZATIONS option for sqlite3_file_control() that will disable the use of SQLITE_STAT3 information in the query planner. check-in: 60c19b86 user: drh tags: trunk
13:43
Fix an issue with the OmitNoopJoin optimization and add test cases that are specifically for that optimization. check-in: 5480d124 user: drh tags: trunk
01:24
Refactor the Vdbe.noIO field as Vdbe.bIsReader. The meaning is inverted. check-in: 59f98c5c user: drh tags: trunk
2013-06-27
23:54
Refactor names of fields in the sqlite3 object: "activeVdbeCnt" becomes "nVdbeActive". Related fields becomes "nVdbeRead", "nVdbeWrite", and "nVdbeExec". check-in: 14f79696 user: drh tags: trunk
19:12
Fix an error in e_expr.test. check-in: fd4ece18 user: dan tags: trunk