/ Timeline
Login

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

200 most recent check-ins using file src/func.c version 5c50c1ea

2013-08-21
20:04
Minor fixes for test cases. No code changes. check-in: ef2a6a37 user: dan tags: trunk
19:59
Fix typo in test. check-in: f9859fe9 user: mistachkin tags: trunk
19:13
Update sqlite3MemCompare() to try common cases first, for a modest speed improvement. check-in: b25bac79 user: drh tags: trunk
17:35
If a virtual table xSync() returns an error message, copy it into a buffer allocated by sqlite3DbMalloc() before transfering it to Vdbe.zErrMsg. check-in: 854ba304 user: dan tags: trunk
15:52
Performance enhancement in btreeParseCellPtr(). check-in: a17190a2 user: drh tags: trunk
15:45
Fix an FTS4 problem introduced by [361084e1eb]. check-in: 5f35c8cb user: dan tags: trunk
12:04
Candidate fix for [d666d600a6]. check-in: 781592f3 user: dan tags: trunk
07:25
Fix a minor problem in progress.test. No code changes. check-in: a95ae93b user: dan tags: trunk
2013-08-20
20:25
Fix a couple of test scripts to work with DEFAULT_AUTOVACUUM and OMIT_VIRTUALTABLE. check-in: 356c6c59 user: dan tags: trunk
17:14
Fix an invalid assert() in where.c. Also a crash that can occur in the EXPLAIN QUERY PLAN code under obscure circumstances. check-in: ef192abb user: dan tags: trunk
17:00
Ignore IS NOT NULL and NOT NULL constraints on NOT NULL columns. check-in: e476408e user: drh tags: trunk
16:08
Test script changes to support testing sqlite3_interrupt(). check-in: 0cede9f8 user: dan tags: trunk
13:02
Merge performance enhancements and compiler warning fixes from trunk. check-in: 3e403328 user: drh tags: sessions
03:13
Performance optimizations in the VDBE and especially to the OP_Next and related opcodes and in the sqlite3BtreeNext() and sqlite3BtreePrevious() routines. This is a cherrypick of [6f99b54aedeb], [d2efea1682a7], and [d78c5d89de4b]. check-in: 7f72fc4f user: drh tags: trunk
2013-08-19
20:04
Performance improvement in sqlite3BtreeNext() and sqlite3BtreePrevious() for the common case of a valid cursor. check-in: dc65ad8c user: drh tags: trunk
19:29
Initialize a variable in fts3_write.c on the grounds that the argument required to show that it does not require initialization with is complicated. Add an assert() to where.c to silence a clang scan-build warning. check-in: d6c4d48a user: dan tags: trunk
18:37
Fix test script pragma2.test so that it works with ENABLE_MEMORY_MANAGEMENT. check-in: 6acf7281 user: dan tags: trunk
18:17
Add some extra assert() statements to silence a few clang warnings. check-in: 1c63e951 user: dan tags: trunk
14:23
Remove unused variables from the command-line shell sources. check-in: 753a402e user: drh tags: trunk
14:19
Fix a potential reference off the end of an array in the query planner. check-in: f15591f8 user: drh tags: trunk
12:49
Merge in all the latest updates and enhancements from trunk. check-in: 67587a33 user: drh tags: sessions
11:15
Fixes for harmless compiler warnings. check-in: a0d9ca4f user: drh tags: trunk
2013-08-17
16:37
Add the cache_spill pragma. Change the fullfsync and checkpoint_fullfsync pragmas to apply to all attached databases. check-in: 65a85a15 user: drh tags: trunk
15:42
The fullfsync, checkpoint_fullfsync, and cache_spill pragmas apply to all files of a database connection, including those opened by future ATTACH statements. Closed-Leaf check-in: d07c4331 user: drh tags: cache_spill
00:25
Test cases for the cache_spill pragma. check-in: b85c9ec5 user: drh tags: cache_spill
2013-08-16
20:42
Add the cache_spill pragma. check-in: cdb181c0 user: drh tags: cache_spill
2013-08-15
22:40
Make sure that GROUP BY terms select input column names in preference to output column names, in compliance with the SQL standard. Ticket [1c69be2dafc28]. check-in: f2d175f9 user: drh tags: trunk
20:24
Bare identifiers in ORDER BY clauses bind more tightly to output column name, but identifiers in expressions bind more tightly to input column names. This is a compromise between SQL92 and SQL99 behavior and is what PostgreSQL and MS-SQL do. Ticket [f617ea3125e9c]. check-in: c78b357c user: drh tags: trunk
20:05
Make it easy to attach a debugger the test fixture process prior to any tests being run. check-in: 53cd9ebf user: mistachkin tags: trunk
14:27
Clarification and typo fixes in comments related to name resolution. No changes to code. check-in: f30abdf9 user: drh tags: trunk
08:06
Make it easy to attach a debugger the test fixture process prior to any tests being run. Closed-Leaf check-in: c23acba1 user: mistachkin tags: dbgTestFixture
2013-08-14
00:20
Fix a few more minor comment typos. No changes to code. check-in: 9e999081 user: mistachkin tags: trunk
2013-08-13
22:33
Fix an outdated comment and a comment typo. No changes to code. check-in: ac336959 user: mistachkin tags: trunk
2013-08-12
11:21
Fix a bug in calculating the average number of entries for keys not present in the sqlite_stat4 table. check-in: ec3ffb17 user: dan tags: sqlite_stat4
09:29
Fix minor problems caused by adding the rowid to the records in stat4. check-in: 088d1ff9 user: dan tags: sqlite_stat4
2013-08-10
19:08
Add the rowid field to the end of sample records stored in the sqlite_stat4 table. check-in: 3a5e8ab7 user: dan tags: sqlite_stat4
2013-08-09
19:04
Fix a couple of typos in a comment in analyze.c. No code changes. check-in: 5bcccb93 user: dan tags: sqlite_stat4
14:07
Update the header comment on analyze.c to describe the sqlite_stat4 table format. check-in: 4d97809d user: drh tags: sqlite_stat4
2013-08-08
19:38
Fix problems in estimating the number of rows visited by a range query using sqlite_stat4 data when the column subject to the range query is not the leftmost of the index. check-in: 9228aaf5 user: dan tags: sqlite_stat4
16:17
Use a binary search instead of a linear scan when comparing a sample key against data from the sqlite_stat4 table. check-in: e50dc305 user: dan tags: sqlite_stat4
14:38
If the SQLITE_EXTRA_INIT function is defined, make sure it is called only once by the effective sqlite3_initialize() call. check-in: e2b597ca user: drh tags: trunk
12:21
Fix a segfault in "ALTER TABLE t1 ADD COLUMN b DEFAULT (-+1)". Also an assert() failure that could occur if SQLITE_ENABLE_STAT4 were not defined. check-in: 9fec3e38 user: dan tags: sqlite_stat4
11:48
Fix a bug in using stat4 data to estimate the number of rows selected by a range constraint. check-in: f783938e user: dan tags: sqlite_stat4
2013-08-07
23:15
If the SQLITE_ALLOW_URI_AUTHORITY compile-time option is set, then allow non-localhost authorities on URI filenames and pass them through as a UNC to the underlying VFS. check-in: 3adb6c1b user: drh tags: trunk
19:46
Replace variable Index.avgEq (average number of rows in keys for which there is no sample in sqlite_stat4) with vector Index.aAvgEq. check-in: 7b70b419 user: dan tags: sqlite_stat4
18:42
Merge latest trunk changes with this branch. check-in: 08f74c45 user: dan tags: sqlite_stat4
18:07
Merge in the latest changes from trunk. Closed-Leaf check-in: c78b0d30 user: drh tags: uri-enhancement
16:38
Fix typos in a comment in analyze.c. No code changes. check-in: 812ed0c5 user: dan tags: sqlite_stat4
16:15
Change the way samples for the sqlite_stat4 table are collected. check-in: 13ed5ac1 user: dan tags: sqlite_stat4
16:04
Fix the ".dump" command on the command-line shell so that it works for "sqlite_stat4" in addition to "sqlite_stat1". check-in: 1e80c4b1 user: drh tags: sqlite_stat4
15:57
Remove the unused sqlite3Utf8to16() utility function. check-in: 9159b43e user: drh tags: sqlite_stat4
15:52
When estimating the number of rows scanned using data from the sqlite_stat4 table, avoid allocating UnpackedRecord and KeyInfo structures until they are definitely required. check-in: 353950a5 user: dan tags: sqlite_stat4
14:18
Add a guard #ifndef to test_intarray.h to prevent harm if it is #included more than once. Add a comment on the closing #endif of the guards on sqlite3.h and test_multiplex.h. check-in: 0ad83ceb user: drh tags: trunk
01:18
Fix typos and add clarification to comments in where.c. No code changes. check-in: f8d8790e user: drh tags: trunk
2013-08-06
20:15
Fixes for builds without SQLITE_ENABLE_STAT4. check-in: 84999e27 user: dan tags: sqlite_stat4
20:01
When possible, use the multi-column samples in sqlite_stat4 to estimate the number of index rows scanned by a query plan. check-in: 2973f5ca user: dan tags: sqlite_stat4
19:18
Fix a test case related to partial indices so that it works even if STAT3 is disabled. check-in: 153c6450 user: drh tags: trunk
18:35
Adjust #ifdefs in test_autoext.c so that it compiles with SQLITE_OMIT_LOAD_EXTENSION. Fix compiler warnings in two other test modules. No changes to the core. check-in: 89930ea3 user: drh tags: trunk
18:21
Update the configure script to use the latest version number (3.8.0). check-in: 52e8ec5e user: drh tags: trunk
17:24
Add a testcase() macro to verify OOM coverage. check-in: d43dcbc4 user: drh tags: trunk
16:56
Remove unreachable branches in expr.c, replacing them with assert() and testcase() statements. check-in: 9103c27c user: drh tags: trunk
14:52
Merge in the latest changes from trunk. check-in: 69d5bed0 user: drh tags: sessions
14:36
For the ".import" command of the command-line shell, start a transaction if there is not one active already. check-in: 5dcc2d91 user: drh tags: trunk
14:01
Clean up the input reader in the command-line shell for improved legibility and performance. check-in: 2b1743d6 user: drh tags: trunk
07:45
More than double the speed of the resolveP2Values() routine in vdbeaux.c by moving from an extended if-else on every opcode to a switch. Opcodes are reordered in mkopcodesh.awk to put the switched opcodes close together, for additional performance and to reduce code footprint. check-in: 924f7e4d user: drh tags: trunk
2013-08-05
22:05
Performance optimization: Avoid calling convertCompoundSelecctToSubquery() on queries that do not use the UNION, EXCEPT, or INTERSECT operators. check-in: c589b2fe user: drh tags: trunk
21:54
For the vtshim module, always zero out the xChildDestroy function pointer after calling it. check-in: 240f7252 user: mistachkin tags: trunk
19:11
Factor all KeyInfo object allocations into a single function: sqlite3KeyInfoAlloc(). Always allocate enough space so that sqlite3VdbeRecordCompare() can avoid checking boundaries and hence run faster. check-in: 7301bedd user: drh tags: trunk
19:04
Modify the vdbe code generated by ANALYZE to use fewer memory cells and cursor slots. check-in: 4a51cf28 user: dan tags: sqlite_stat4
18:00
Use N separate cursors when scanning an index with N columns to collect sqlite_stat4 data. This fixes a problem with collecting incorrect nEq values from multi-column indexes. check-in: 3a71afe6 user: dan tags: sqlite_stat4
15:32
Improve performance of sqlite3VdbeRecordCompare() by using an approximation that might give false negatives and only running the more expensive exact subexpression if the approximation fails. check-in: 28979dcd user: drh tags: trunk
12:31
Add a missing '#include "tcl.h"' to test_rtree.c. check-in: 4b8b426f user: drh tags: trunk
05:34
Fix a couple of problems in code related to sqlite_stat4. check-in: badd24d9 user: dan tags: sqlite_stat4
2013-08-03
20:24
Begin adding experimental sqlite_stat4 table. This commit is buggy. check-in: 2beea303 user: dan tags: sqlite_stat4
2013-08-02
23:40
Updates to requirements marks. No code changes. check-in: 21302076 user: drh tags: trunk
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: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
17:40
Make sure that sqlite3_stmt_readonly reports false for PRAGMA journal_mode and PRAGMA wal_checkpoint. Ticket [a589ec069e3]. Also keep track of whether a prepared statement does no reading or writing. check-in: 1937fd8e user: drh tags: trunk
14:24
Add a test to ensure that if BEGIN IMMEDIATE fails with SQLITE_BUSY, it does not leave the user with an open read transaction (unless one was already open). check-in: 22bced36 user: dan tags: trunk
14:07
If the filename argument to the ".import" command in the command-line shell begins with '|' then treat it as an input pipe rather than a file. check-in: 4c02b344 user: drh tags: trunk
13:26
Improved handling of backslash escapes on double-quoted arguments to dot-commands in the command-line shell. check-in: 656a1fe5 user: drh tags: trunk
13:01
The undocumented and unsupported ".selftest" command in the command-line shell utility is now only available if compiled with SQLITE_DEBUG. Also fix a windows compiler warning in that command. check-in: e88fd5b2 user: drh tags: trunk
11:46
Add extended error code SQLITE_BUSY_SNAPSHOT - returned in WAL mode when a read-transaction cannot be upgraded to a write-transaction because it is reading from a snapshot other than the most recently committed. check-in: 361c2296 user: dan tags: trunk
2013-06-26
22:46
Update the ".import" command of the command-line shell so that it can accept field values that span multiple lines and so that it issues error messages if the input text does not strictly conform to RFC4180. check-in: 93f63215 user: drh tags: trunk
18:04
Add the "vtshim" extension, implementing a wrapper around the virtual table interface to make it Disposable for the CLR. No changes to the core. check-in: 6c3839ef user: drh tags: trunk
16:30
Update the boundary3.tcl script so that it can be run with tcl 8.5 or 8.6 to regenerate boundary3.test. check-in: ebac5afa user: dan tags: trunk
13:31
Bring the sessions branch up-to-date with all the latest trunk changes. check-in: 086a1272 user: drh tags: sessions
13:22
Add the SQLITE_STMTSTATUS_VM_STEPS option for sqlite3_stmt_status(). check-in: bd4267f1 user: drh tags: trunk
11:49
Omit tables from the FROM clause of a join if their presence makes no difference in the final output. check-in: 6505e2ab user: drh tags: trunk
11:43
Cut over the next generation query planner. Increase the version number to 3.8.0. check-in: 0fe31f60 user: drh tags: trunk
00:34
Fix an uninitialized variable detected by valgrind. Unclear whether or not this should apply to trunk. Closed-Leaf check-in: 19ab4811 user: drh tags: nextgen-query-plan-exp
2013-06-25
22:01
Add a new (experimental) sqlite3_stmt_status() verb that returns the number of VM steps. Closed-Leaf check-in: f1366bab user: drh tags: status-vm-step
2013-06-22
15:44
Add the ability to disable the omit-join-table optimization for testing purposes. Closed-Leaf check-in: d929df9b user: drh tags: omit-join-table-opt
2013-06-21
19:39
Enhance error message handling for the vtshim module. Closed-Leaf check-in: b4a0d532 user: mistachkin tags: disposable-vtable
18:36
Remove an unused function declaration from the FTS3 source code. check-in: 096ae1d8 user: drh tags: trunk
18:29
Merge the fts4-notindexed branch with the trunk. check-in: 361084e1 user: dan tags: trunk
18:18
Add a few more tests for the fts4 notindexed option. Closed-Leaf check-in: b53c0c41 user: dan tags: fts4-notindexed
17:30
Add the "notindexed" option to fts4. check-in: 8ff2b8f5 user: dan tags: fts4-notindexed
07:54
Update comments and package flavor error message. check-in: 9d1b9618 user: mistachkin tags: vsix2013
02:15
Only eliminate inner loops of a JOIN if they are the RHS of a LEFT JOIN and if they give no more than a single result. This appears to give correct answers in all cases. check-in: d7a25cc7 user: drh tags: omit-join-table-opt
02:05
Attempt to disable inner loops of a join that do not generate output. This does not work, since the inner loops might run zero times and thus inhibit all output. Needs to be enhanced to work only for LEFT JOINs or when we know that the inner loop will always run at least once. check-in: ca839723 user: drh tags: omit-join-table-opt
00:35
Modify the query planner interface so that it always passes in the result set. This is the first step toward adding an optimization that will omit tables from a join that do not contribute to the result. check-in: 2c2577e6 user: drh tags: omit-join-table-opt
2013-06-20
19:55
Add tests for modifying the docid and languageid fields of an fts table with a non-zero languageid_bits field. Closed-Leaf check-in: 949425d4 user: dan tags: fts-languageid-bits