SQLite

Timeline
Login

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

4223 check-ins using file test/corrupt6.test version 4e4161aef1

2017-07-21
03:09
Add new interfaces sqlite3_result_pointer(), and sqlite3_value_pointer() and use them to transfer the eponymous FTS3 column pointer to the snippet() and offsets() routines. This changes is inspired by check-in [72de49f2] but is new implementation, not a cherry-pick. (Leaf check-in: f0f492245e user: drh tags: branch-3.7.11)
2015-05-21
02:24
Silently ignore any attempt to add a prefix index for prefixes zero bytes in size to an fts3/4 table. Or any prefix index size so large that it overflows a 32-bit signed integer. Cherrypick [ad4b19d2ac0889a] (check-in: 000197cc4e user: drh tags: branch-3.7.11)
02:20
Ensure that tables names are dequoted exactly once by the trigger logic. Cherrypick [59e92bd9521f1e8] and [9d887b92f8086961e]. (check-in: 9e3f64a4f4 user: drh tags: branch-3.7.11)
02:07
When parsing the schema, ignore any SQL that does not begin with "CREATE". Cherrypick of [d3c00d61581c] with additional changes. (check-in: 09784f376b user: drh tags: branch-3.7.11)
01:04
Do not allow virtual table constructors to be called recursively. Cherrypick [0a72726da21581ab] (check-in: 0f0694e424 user: drh tags: branch-3.7.11)
00:50
Add the ".open" command to the command-line shell. Cherrypick from [21eccb919441]. (check-in: a71e2a72c5 user: drh tags: branch-3.7.11)
2014-10-02
09:27
Fix a segfault that could occur if an 'optimize' command was issued on an FTS table that contained at least one row but zero terms. (Leaf check-in: b21746ac11 user: dan tags: branch-3.7.14)
2014-06-17
18:43
Experimental changes to use GetFileInformationByHandle instead of GetFileSize in the Win32 VFS. (Closed-Leaf check-in: d22c814297 user: mistachkin tags: filesize-debug)
2014-04-24
13:20
Add sqlite3_log() diagnostic messages for a specific type of corruption where the file size is reported to be too small relative to the size in the header. This branch is intended to help debug a specific problem reported from the wild and is not for general use. (check-in: 34155c406c user: drh tags: filesize-debug)
2013-11-28
19:28
Update a few test cases to account for the new error message formats. (check-in: 65a5bce3ff user: dan tags: trunk)
14:14
Remove an assert() condition that may not be true if the database file is corrupt. Update a test case in corruptC.test. (check-in: 0bcf75516f user: dan tags: trunk)
06:17
Fix a test case in temptrigger.test so that it works in auto-vacuum mode. (check-in: c3b7a0e61f user: dan tags: trunk)
2013-11-27
21:53
Merge all recent trunk changes. (check-in: 3a2a1bd478 user: drh tags: sessions)
21:07
Remove unnecessary local variables from sqlite3VdbeExec() in order to reduce stack-space requirements of that routine. (check-in: 81891288d9 user: drh tags: trunk)
19:17
Update documentation of sqlite3_column() for clarity. Update evidence marks on test cases. (check-in: ec2d47a1db user: drh tags: trunk)
18:00
Fix spelling typo in speedtest1.exe. (check-in: ae90300e8e user: mistachkin tags: trunk)
14:50
Fix some harmless compiler warnings in speedtest1.exe. (check-in: c75f561f33 user: drh tags: trunk)
13:48
Additional test cases for skip-scan. (check-in: ce70803f5e user: drh tags: trunk)
13:24
Make sure the colWidth array is correctly initialized in the ".explain" command of the shell. (check-in: ceebcdcaf1 user: drh tags: trunk)
04:22
Lower the threshold for using skip-scan from 50 to 18, based on experiments that show that 18 is the approximate break-even point for a variety of schemas. (check-in: 83c0bb9913 user: drh tags: trunk)
04:00
Avoid using the GetVersionEx functions if they are considered deprecated. (check-in: afdca29966 user: mistachkin tags: trunk)
03:01
Avoid using the GetVersionEx functions if they are considered deprecated. (Closed-Leaf check-in: 0ea9e4722b user: mistachkin tags: vs2013)
01:23
Add additional test cases for skip-scan. (check-in: 1ae4915d4d user: drh tags: trunk)
00:45
Add additional test cases and requirements evidence marks for WITHOUT ROWID. (check-in: b408d78810 user: drh tags: trunk)
2013-11-26
23:27
Make sure the update hook is not invoked for WITHOUT ROWID tables, as the documentation specifies. This bug was found while adding requirements marks, so a few extraneous requirements marks are included in this check-in. (check-in: 0978bac6b8 user: drh tags: trunk)
22:46
Add requirements test cases for determining when an expression is true and when it is false. (check-in: 838654e563 user: drh tags: trunk)
21:18
Changing the CAST behavior of REAL values actually changed a documented requirement. So we also have to change the requirement evidence text to match. (check-in: d84aa44e39 user: drh tags: trunk)
18:22
Reduce the amount of code used to implement OP_SeekGe and similar. (check-in: 8b12a15a2a user: dan tags: trunk)
18:00
Merge in performance enhancements from trunk. (check-in: fc9ae83956 user: drh tags: sessions)
16:51
Fix a possible NULL pointer deference in the wordcount test program. (check-in: 6f91dca0de user: drh tags: trunk)
16:48
Change tclsqlite3.c so that it never invokes ctype macros with signed character arguments. (check-in: c07caabf23 user: drh tags: trunk)
16:20
Do not try to run the atof1.test test script on ARM hardware which lacks the "long double" type. (check-in: fafca560f2 user: drh tags: trunk)
15:45
Change the REAL-to-INTEGER casting behavior so that if the REAL value is greater than 9223372036854775807.0 then it is cast to the latest possible integer, 9223372036854775807. This is sensible and the way most platforms work in hardware. The former behavior was that oversize REALs would be cast to the smallest possible integer, -9223372036854775808, which is the way Intel hardware works. (check-in: 6f53fc7106 user: drh tags: trunk)
01:13
Fix comment. (check-in: 8364af392d user: mistachkin tags: winHdr)
01:00
Further work on Windows header file reform. (check-in: 540f552516 user: mistachkin tags: winHdr)
00:33
Merge updates from trunk. (check-in: c5ab437875 user: mistachkin tags: winHdr)
00:28
Better support for UTF-8 paths on Cygwin. (check-in: 9954327c0f user: mistachkin tags: trunk)
2013-11-25
23:42
Add SQLITE_CONFIG_WIN32_HEAPSIZE option to configure the maximum isolated heap size on Windows. (check-in: 914e6c9d88 user: mistachkin tags: trunk)
22:24
Change a while-loop into a do-loop in sqlite3VdbeRecordCompare() and add an assert() to verify that the do-loop really is appropriate. This gives about a 10% performance boost in that routine, or a 0.9% boost overall. (check-in: 011a6be439 user: drh tags: trunk)
21:49
Clarify docs for the SQLITE_CONFIG_WIN32_HEAPSIZE option. (Closed-Leaf check-in: 51e876074a user: mistachkin tags: winHeapSize)
21:41
Remove a NEVER() from a branch that is now reachable during OOM faults. (check-in: 18bdcb05c2 user: drh tags: trunk)
20:50
Optimizations to the sqlite3BtreeMovetoUnpacked() routine in storage engine making it about 17.8% faster, which in turn makes SQLite over 1.2% faster overall. (check-in: 032e89934f user: drh tags: trunk)
20:14
Return an SQLITE_CORRUPT error if the content size field of a table record extends off the end of a page. (Closed-Leaf check-in: b48c4e4021 user: drh tags: btree-optimization)
17:38
Uses shifts rather than division for arithmetic on the cell indices, since those indices are always non-negative. (check-in: 5bf2a3feeb user: drh tags: btree-optimization)
16:52
Optimize the skipping of the payload size field when doing a binary search for a rowid. (check-in: 55e5bfa231 user: drh tags: btree-optimization)
16:23
Arrange for sqlite3BtreeMovetoUnpacked() to always leave the cursor cell parse cache invalidated. This fixes issues with previous check-ins on this branch and also runs faster. (check-in: a74675607f user: drh tags: btree-optimization)
15:01
More optimizations to sqlite3BtreeMovetoUnpacked(). But there are failures in TH3. Committing this intermediate state to facilitate bisecting. (check-in: f80497be44 user: drh tags: btree-optimization)
14:10
More improvements to sqlite3BtreeMovetoUnpacked() performance. (check-in: 8868069823 user: drh tags: btree-optimization)
09:37
Correct line-endings in the new header file. (check-in: 94219b9f1f user: mistachkin tags: winHdr)
09:36
Initial work on isolating usage of the Windows header file. (check-in: 0d42c6b830 user: mistachkin tags: winHdr)
02:38
Performance improvements in sqlite3BtreeMovetoUnpacked(). (check-in: d0fb7acea7 user: drh tags: btree-optimization)
2013-11-24
23:18
Better support for UTF-8 paths on Cygwin. (Closed-Leaf check-in: 484162b6e5 user: mistachkin tags: cygUtf8)
01:14
Add the --scratch parameter to speedtest1. Improved error messages when misconfiguring memory parameters in speedtest1. (check-in: 8f3c767a30 user: drh tags: trunk)
00:46
The MEMSYS5 algorithm does not have to return the block with the lowest address. Any block of the appropriate size will do. Use the first block found on the freelist for the appropriate size for a performance improvement. (check-in: 12e612e8e7 user: drh tags: trunk)
2013-11-23
22:45
A much simpler fix is to simply change MEMSYS5 so that it takes any free block of the appropriate size (the first on the list of free blocks) rather than searching for the one with the smallest address. This is also faster than using the min-heap algorithm. Need to research to verify that the allocator still satisfies the Robson proof, however. (Closed-Leaf check-in: 8191b51212 user: drh tags: memsys5-performance)
21:30
Use a heap-based primary queue rather than a linked list to store the available free blocks of each size in MEMSYS5, since this provides faster access to the first available block. (Closed-Leaf check-in: 7d2cdfad0e user: drh tags: memsys5-performance)
21:29
Add newlines at the end of some error messages in speedtest1. (check-in: 6b98f0af7a user: drh tags: trunk)
11:45
Report errors from sqlite3_exec() and sqlite3_config() in speedtest1. Fix a bug in the main testing logic that was found by these error reports. (check-in: 659f1a98ae user: drh tags: trunk)
04:32
Fix the order of parameters to SQLITE_CONFIG_PAGECACHE in the speedtest1.exe program. (check-in: dbe85ef6d2 user: drh tags: trunk)
04:22
Adjust MSVC makefile to avoid using forward slashes in file names. (check-in: facf6deaa6 user: mistachkin tags: trunk)
04:16
Add the "speedtest1.exe" test program. (check-in: fb6f0c6d77 user: drh tags: trunk)
00:27
Add experimental sqlite3_config option to control the native Win32 heap size. (check-in: f09f11e94b user: mistachkin tags: winHeapSize)
2013-11-22
21:32
Fix harmless compiler warning. (check-in: f336c18fb7 user: mistachkin tags: trunk)
00:49
Minor correction to the batch build tool for MSVC. (check-in: 22144c9df2 user: mistachkin tags: trunk)
2013-11-21
23:37
Fix a harmless clang warning in the command-line shell. (check-in: 3d47a556f0 user: drh tags: trunk)
22:02
Slight change to the --timer output on wordcount for better display on windows: Avoid showing the full pathname of the executable. (check-in: b9e047b9e3 user: drh tags: trunk)
21:59
Changes some offset and amount parameters from "int" to "u32" to avoid harmless signed/unsigned comparison warnings. (check-in: 4e8c5d0795 user: drh tags: trunk)
21:40
Modify wordcount so that timer information appears on standard error instead of standard output. Rename the run-wordcount.bash script to run-wordcount.sh and simplify it so that it stands a better chance of running on non-GNU systems. (check-in: 586c11ed7c user: drh tags: trunk)
21:23
Do not reuse factored constants that might have had their encodings changed. (check-in: 487f20366c user: drh tags: trunk)
20:48
Fix the code generator to honor turning off constant expression factoring. (check-in: 882622662d user: drh tags: trunk)
19:27
Add the --timer option to the wordcount test program. (check-in: a89fdf8755 user: drh tags: trunk)
19:05
Remove a test from sqlite3VdbeMemFromBtree() which was unnecessary, and after the recent OP_Column refactoring, unreachable. (check-in: 23667f3ba0 user: drh tags: trunk)
17:24
Make sure the OP_Next and OP_NextIfOpen opcodes are numbered close together for efficiency in switch() statements. OP_Prev and OP_PrevIfOpen too. (check-in: d4ccf0f5c6 user: drh tags: trunk)
16:08
When one or more arguments to a function are constants, try to factor out just those arguments into initialization code. (check-in: 50d350abbc user: drh tags: trunk)
14:44
Remove the obsolete TK_CONST_FUNC token type. (check-in: 9b4217f055 user: drh tags: trunk)
14:33
Add the ability to factor constant functions out of inner loops. But do not factor out non-constant functions, like random(). (check-in: 1b0f779e19 user: drh tags: trunk)
04:18
Another improvement to OP_Function and an improvement to OP_Move. (check-in: 70b056fb6f user: drh tags: trunk)
03:43
A simple change to the OP_Function opcode improves overall performance by about 0.5%. (check-in: b890eefd57 user: drh tags: trunk)
03:12
Performance optimization to the OP_Next and OP_Prev opcodes. (check-in: ecaac28a2e user: drh tags: trunk)
01:33
Refactor the OP_Column opcode to make it clearer and easier to maintain. Overall, performance tests show about a 1% speed increase with this change. (check-in: 972881c6d3 user: drh tags: trunk)
01:04
Reduce the size of VdbeCursor again, this time without a performance hit. (Closed-Leaf check-in: 933939932c user: drh tags: OP_Column-refactor)
00:10
Unpack some fields, adding some space back to the VdbeCursor object, in order to help the code to run a little faster. (check-in: f8d5efcd7b user: drh tags: OP_Column-refactor)
2013-11-20
21:51
Reduce the size of the VdbeCursor object from 144 to 120 bytes. (check-in: 5f9d506885 user: drh tags: OP_Column-refactor)
20:58
Improved comments on the OP_Column changes. Optimize out loading of overflow pages for content with zero length. Add test cases for the latter. (check-in: 0e05679db7 user: drh tags: OP_Column-refactor)
19:28
Further performance tweaks to OP_Column. (check-in: 0e3f5df695 user: drh tags: OP_Column-refactor)
17:25
Refactoring the OP_Column opcode for improved performance and maintainability. (check-in: 7c914e3997 user: drh tags: OP_Column-refactor)
02:53
Simplifications to the VdbeCursor object. (check-in: 5562cd343d user: drh tags: trunk)
00:59
Performance improvement for the OP_MustBeInt opcode in the VDBE. (check-in: 96a65388e7 user: drh tags: trunk)
2013-11-19
18:17
Fix a harmless MSVC compiler warning. (check-in: 6cc023bb29 user: drh tags: trunk)
13:55
Minor performance improvement to sqlite3SerialTypeGet(). (check-in: 17e8524fc0 user: drh tags: trunk)
12:33
Change Noop-comments in where.c into Module-comments, so that they are omitting without SQLITE_ENABLE_MODULE_COMMENTS. (check-in: 3e577f4018 user: drh tags: trunk)
02:34
Avoid seeking on the main data table during the first loop of an UPDATE if an index is sufficient to check the WHERE clause. (check-in: 57158d9daf user: drh tags: trunk)
00:31
Fix an requirement mark in a test script so that it matches the typo-corrected requirement. No changes to code. (check-in: 072412d5e3 user: drh tags: trunk)
2013-11-18
19:32
Add comments identifing where the skip-scan option is decided in the query planner, to aid in tuning that decision. No changes to code. (check-in: e9df04cec4 user: drh tags: trunk)
18:48
Fix documentation typos. No changes to code. (check-in: 7caeb09c52 user: drh tags: trunk)
11:20
Fix harmless compiler warnings from clang scan-build. (check-in: 8d002740bf user: drh tags: trunk)
08:41
Fix a problem with the shell tool EXPLAIN indentation code and VDBE sub-programs. (check-in: 9c8d685625 user: dan tags: trunk)
03:11
Enable the ONEPASS optimization for DELETE, for both rowid and WITHOUT ROWID tables. (check-in: 44a07afdd9 user: drh tags: trunk)
2013-11-17
02:42
Make sure one-pass DELETE for WITHOUT ROWID tables correctly positions the PRIMARY KEY cursor. Make the same fix for UPDATE. (Closed-Leaf check-in: 6bd5750b7d user: drh tags: optimize-delete)
2013-11-16
23:16
Fix a couple of minor problems with the new delete logic. (check-in: a11243f840 user: drh tags: optimize-delete)
23:03
Fix an OOM-recovery problem in the DELETE code generator. (check-in: dc7be158b8 user: drh tags: optimize-delete)
22:48
Combine the rowid and WITHOUT ROWID paths for DELETE into a single path. (check-in: c4734b881a user: drh tags: optimize-delete)
20:45
The one-pass optimization is now working for DELETE on WITHOUT ROWID tables. (check-in: e4d220a381 user: drh tags: optimize-delete)
20:13
Enhance the DELETE logic so that it can make use of WHERE_ONEPASS_DESIRED for rowid tables. (check-in: 8f479a7275 user: drh tags: optimize-delete)
15:35
Fully constraint the ORDER BY on the top-10 line of the --summary output from the wordcount test program. Add the run-wordcount.bash script for running wordcount in various configurations. (check-in: 7edf39eb93 user: drh tags: trunk)
14:03
Avoid unnecessary OP_IfNull checks when doing a range query where there is a constraint on the lower bound of the range. (check-in: de08a7e7ab user: drh tags: trunk)
13:55
Simplification and performance improvement to the logic that factors constant expressions ouf of inner loops. (check-in: ee9353fdf3 user: drh tags: trunk)
12:56
Fix testcase misc7-16 so that it works with the new UNIQUE constraint error message format. (check-in: c7f2ed9f44 user: drh tags: trunk)
2013-11-15
20:06
Add ALWAYS and NEVER macros to currently unreachable but important branches in sqlite3ExprCompare(). (Closed-Leaf check-in: cee835fe90 user: drh tags: expr-codegen-enhancement)
19:00
Merge the operator comment fixes from trunk. (check-in: 9f14f55c8a user: drh tags: expr-codegen-enhancement)
18:58
Fix comments on the OP_Divide and OP_Remainder operators, especially the "Synopsis:" comment, so that they agree with the actual implementation. (check-in: cc17f1f05f user: drh tags: trunk)
18:15
Changes to make the new constant expression factoring logic more general and more testable. (check-in: d10fb49a92 user: drh tags: expr-codegen-enhancement)
16:48
Add test cases for INSERT INTO ... DEFAULT VALUES on tables with numeric constants in CHECK constraints. (check-in: 79ec485b54 user: drh tags: expr-codegen-enhancement)
15:52
Improvements to the Expr comparison routine to make it more general. Improvements to unary-minus code generation so that it can make use of a global constant register with a zero value. (check-in: 835be656bb user: drh tags: expr-codegen-enhancement)
13:12
Add the --query option to the wordcount test program. (check-in: 5960d11eba user: drh tags: trunk)
12:41
Simplify the range scan code generate while also avoiding an unnecessary OP_Affinity opcode. (check-in: 372686bfbb user: drh tags: expr-codegen-enhancement)
03:30
Merge EXPLAIN fixes from trunk. (check-in: cd579727b1 user: drh tags: expr-codegen-enhancement)
03:21
Fix a typo in the "synopsis" for the OP_Lt opcode that causes an incorrect comment to be added to EXPLAIN output. (check-in: d99a30a25d user: drh tags: trunk)
03:16
Another adjustment to the EXPLAIN indentation logic, in order to deal with the sorter loop on a CREATE INDEX statement. (check-in: cbe85cc2a9 user: drh tags: trunk)
01:10
Rework the logic that factors constant expressions out of inner loops, making it both simpler and faster. (check-in: 8dc5c76c76 user: drh tags: expr-codegen-enhancement)
2013-11-14
23:59
Adjust the command-line shell EXPLAIN indentation logic to handle the second loop of an UPDATE that reads out a RowSet. (check-in: ea141a9b87 user: drh tags: trunk)
19:34
Remove an unused local variable. (check-in: 10d5922638 user: drh tags: trunk)
19:18
Merge the skip-scan optimization into the sessions branch. (check-in: 7596d1bf80 user: drh tags: sessions)
15:35
An experimental virtual tables for showing the content of internal schema objects. (Leaf check-in: d1fbc6ca18 user: drh tags: schema2-vtab)
00:09
Simplification to the progress callback check. One branch removed. (check-in: 24ef16548e user: drh tags: trunk)
2013-11-13
23:48
Make sure the progress callback is invoked prior to an SQLITE_ROW return if it is overdue to be called. (check-in: 21f59b04f7 user: drh tags: trunk)
20:46
Merge the skip-scan enhancement into trunk. (check-in: b0bb975c09 user: drh tags: trunk)
19:01
Import the "PRAGMA vdbe_eqp" enhancement and the enhanced EXPLAIN formatting the shell from trunk. Fix a bug in skip-scan and add a test case to prevent a regression. (Closed-Leaf check-in: f668616a29 user: drh tags: skip-scan)
18:35
In the shell tool, if an "EXPLAIN" command is executed in ".explain on" mode, attempt to automatically indent the bodies of loops in the output VDBE program. (check-in: e7d34ec681 user: dan tags: trunk)
17:58
Add the "PRAGMA vdbe_eqp" command, only available with SQLITE_DEBUG. Simplify some of the other debugging logic. (check-in: 8ce33f4c81 user: drh tags: trunk)
17:24
Add VDBE comments to the beginning and end of skip-scan loops. (check-in: 0c85d93b52 user: drh tags: skip-scan)
16:58
Improve the way that skip-scan loops are constructued. Add test cases. Improved the scoring of skip-scan loops. (check-in: 5e75ab9388 user: drh tags: skip-scan)
15:32
Add test cases for skip-scan. Enhance "do_test" so that if the expected result is of the form "/*..*/" or "~/*..*/" it treats the expected result as a glob pattern rather than as a regular expression. Fix a bug in ANALYZE result loading associated with WITHOUT ROWID tables. (check-in: d3e6e9b2a7 user: drh tags: skip-scan)
12:27
Add the ability to use an index even if the left-most columns of the index are unconstrainted, provided that the left-most columns have few distinct values. (check-in: 27dd5993d1 user: drh tags: skip-scan)
08:55
Avoid an unnecessary OP_IfNull while doing an indexed search. (check-in: 5196000930 user: drh tags: trunk)
2013-11-12
21:37
Adjust the SQLITE_MALLOCSIZE defines, primarily to make sure _msize gets used with MSVC when appropriate. (check-in: 4e7e805e11 user: mistachkin tags: trunk)
21:10
Fix harmless compiler warning. (check-in: ddacd10105 user: mistachkin tags: trunk)
20:18
Minor enhancements to the auxiliary information added to EXPLAIN output with SQLITE_EXPLAIN_ENABLE_COMMENTS. (check-in: 0d1328e33c user: drh tags: trunk)
18:37
Break out the structure and macro definitions of where.c into a separate header file whereInt.h for easier editing and debugging. (check-in: c444671246 user: drh tags: trunk)
17:46
When possible, have FTS use 32-bit operations to read varints from the database. (check-in: aa7ba302ed user: dan tags: trunk)
15:39
Import recent bug fixes from trunk. (check-in: 20eeee4cd3 user: drh tags: sessions)
15:33
A better (simpler) fix to the count(*) problem addressed in the previous check-in. (check-in: 0f924c6ef6 user: drh tags: trunk)
14:55
Make sure the count(*) optimization works correctly on WITHOUT ROWID tables. (check-in: 9117477978 user: drh tags: trunk)
12:30
Update test command [explain_i] to handle the opcodes used by virtual tables (VNext, VFilter etc.). (check-in: 1b215ee321 user: dan tags: trunk)
12:17
Fix for [4065ac8595]: Do not order CROSS or LEFT joins, even if the right-hand-side is a virtual table. (check-in: e2684ece45 user: dan tags: trunk)
01:11
Fix an error message in the spellfix extension so that it conforms to the style of error messages in the core. (check-in: b896ae3d27 user: drh tags: trunk)
2013-11-11
23:26
Add a comment to the sqlite3_index_info structure indicating that the new field is only available in SQLite 3.8.2 or later. (check-in: 239648f8cc user: drh tags: trunk)
23:02
Fix two test cases (due to changes in the formatting of constraint errors) so that all tests now pass. (check-in: 129e2b6917 user: drh tags: sessions)
22:55
Merge in the WITHOUT ROWID changes. A few tests are failing now. They will be fixed in a follow-on check-in. (check-in: 5addd1234d user: drh tags: sessions)
19:56
Fix typos in compile and run-time tests of the sqlite library version number in rtree.c. (check-in: f58d570171 user: dan tags: trunk)
19:01
Add a way for virtual tables to return the expected number of rows for a scan (not just the overall cost) to SQLite. Have the rtree module make use of this. (check-in: 5a3cfd747a user: dan tags: trunk)
16:55
Remove unreachable code, replacing it in most cases with assert() or NEVER() macros. (check-in: 924d63b283 user: drh tags: trunk)
03:37
Fix issue with several memory allocation tests due to KeyInfo allocations now being shared. (check-in: 569fedd6bb user: mistachkin tags: trunk)
03:24
Convert several ALWAYS() macros in vdbe.c into assert() statements. (check-in: acc40ff6b4 user: drh tags: trunk)
02:46
Fix several harmless compiler warnings. (check-in: e6ff492f0d user: mistachkin tags: trunk)
01:42
Modify a HeapValidate assert in the Win32 native allocator. (check-in: aaed7d1d3b user: mistachkin tags: trunk)
00:43
Fix a problem in OP_IdxDelete as used by REPLACE conflict resolution that comes up due to recent enhancements that reduce the work required for UNIQUE NOT NULL indices. (check-in: 61d7d4753f user: drh tags: trunk)
2013-11-10
00:03
Fix typo in comment and remove superfluous blank line. No changes to code. (check-in: 023233f16e user: mistachkin tags: trunk)
2013-11-09
23:55
Fix compilation errors with some compilers that do not reference recent Windows SDK header files. (check-in: a5805976f0 user: mistachkin tags: trunk)
23:44
Fix memory type mismatch when compiled with MEMDEBUG. (check-in: 2c32bd6d4d user: mistachkin tags: trunk)
22:08
Add the sqlite3_win32_compact_heap() function for cleaning up memory allocations on Win32 system. Also cleanup the winGetTempname() function. Changes to the Win32 VFS only. (check-in: d06d9fdb6e user: drh tags: trunk)
21:19
Updates to documentation on sqlite3_last_insert_rowid(). No changes to code. (check-in: a4c5804efc user: drh tags: trunk)
21:11
Use the UNICODE_STRING_MAX_CHARS constant from WinNT.h. (Closed-Leaf check-in: 3fefe4dd43 user: mistachkin tags: win32heap)
21:10
Furhter cleanup of the winGetTempname function. (check-in: 674de36bca user: mistachkin tags: win32heap)
19:47
Updates to requirements marks. No changes to code. (check-in: 8a0366285b user: drh tags: trunk)
18:15
Throw an error if AUTOINCREMENT appears in a WITHOUT ROWID table. Updates to API documentation to discuss WITHOUT ROWID. (check-in: b1abb2b078 user: drh tags: trunk)
2013-11-08
20:10
Add more assert() statements and fix compilation issues when the Win32 native heap is not enabled. (check-in: fbf8c38283 user: mistachkin tags: win32heap)
19:51
Disable use of HeapCompact on Windows CE as it is not available on all versions. (check-in: e9694b8771 user: mistachkin tags: win32heap)
18:52
Adjust the winMemInit return code handling used when resetting the Win32 native heap. (check-in: 37853665e7 user: mistachkin tags: win32heap)
18:37
Minor corrections to logging for sqlite3_win32_compact_heap(). (check-in: 71347d021b user: mistachkin tags: win32heap)
18:13
Enhancements to the Win32 native heap integration. (check-in: c54dc9672b user: mistachkin tags: win32heap)
17:13
Fix harmless compiler warnings. (check-in: 0077c0772a user: drh tags: trunk)
17:03
Merge the Cygwin directory separator fix. Also fix a C++-ism in the multiplexor code so that it will compile on MSVC. (check-in: 830629d31d user: drh tags: trunk)
16:54
Performance improvement: Avoid unnecessary seeks on REPLACE INTO for a WITHOUT ROWID table. (check-in: fd11afa5f5 user: drh tags: trunk)
15:19
Performance improvements: Avoid unnecessary seeks when doing a single-row UPDATE on a WITHOUT ROWID table. (check-in: 6f187a0fb1 user: drh tags: trunk)
12:14
Merge change to drop the mutex on the multiplexor before entering the xRead VFS call, in order to enhance parallelizability. (check-in: 3c566e41e4 user: drh tags: trunk)
01:09
Optimize out a NotExists/NotFound opcode that occurs in UPDATE processing after constraint checks if there is no possiblity that the constraint checking code might have moved the cursor. (check-in: 74e3ee2ee6 user: drh tags: trunk)
00:16
On the --summary output of wordcount, add the a PRAGMA integrity_check and a 64-bit checksum of the entire table. (check-in: 1d1d13b890 user: drh tags: trunk)
2013-11-07
23:23
Add many new options to the wordcount test program: --delete, --pagesize, --cachesize, --commit, --nosync, and --journal. (check-in: e938112d31 user: drh tags: trunk)
22:11
Fix temporary directory separator handling for Cygwin. (Closed-Leaf check-in: 9d870d5f0d user: mistachkin tags: cygDirSep)
21:32
Fix a compiler warning introduced by the previous check-in. (check-in: 404bd98fb4 user: drh tags: trunk)
21:25
Enable the WHERE_ONEPASS_DESIRED optimization for UPDATE operations on WITHOUT ROWID tables. (check-in: 2153079855 user: drh tags: trunk)
19:43
Add the --stats and --summary options to the wordcount.c test program. (check-in: 8aa21e6791 user: drh tags: trunk)
18:40
Increase the version number to 3.8.2. (check-in: 9ad5b74c26 user: drh tags: trunk)
18:37
Add the "wordcount.c" test program. (check-in: f02ee54630 user: drh tags: trunk)
16:08
Add support for WITHOUT ROWID tables. This change also includes (1) standardization of the error message returned from run-time constraint errors, (2) improved EXPLAIN comments, (3) the SQLITE_ENABLE_EXPLAIN_COMMENTS option, (4) the SQLITE_ENABLE_MODULE_COMMENTS option, and (5) a bug fix (see [573cc27427]) in the handling of REPLACE on the rowid when secondary indices use FAIL or IGNORE. (check-in: c80e229dd9 user: drh tags: trunk)
14:09
Make sure cached KeyInfo objects are only valid for a single database connection. Clear all cached KeyInfo objects on any collating sequence change. (Closed-Leaf check-in: 55eea1782a user: drh tags: omit-rowid)
2013-11-06
19:59
Reference count the KeyInfo object. Cache a copy of an appropriate KeyInfo for each index in the Index object, and reuse that one copy as much as possible. (check-in: defd5205a7 user: drh tags: omit-rowid)
16:28
Have the OP_NoConflict opcode set the VdbeCursor.seekResult variable. This speeds up subsequent OP_Insert and OP_IdxInsert opcodes. (check-in: 474555002d user: dan tags: omit-rowid)
14:52
Use ansi escape codes to use different colored text for opcode names in the output of [explain_i]: Red for opcodes that insert or delete b-tree elements, blue for opcodes that move cursors and green for the ResultRow opcode. (check-in: 4be2b64b3e user: dan tags: omit-rowid)
14:36
Allocate extra stack space for UnpackedRecord objects, reducing the need to malloc for them as often, and thereby get a performance improvement. (check-in: a725a75f87 user: drh tags: omit-rowid)
14:05
Minor optimization to the OP_Halt opcode. (check-in: d70c78814b user: drh tags: omit-rowid)
12:56
Improved ORDER BY optimization for WITHOUT ROWID tables. (check-in: 8f1709ff2d user: drh tags: omit-rowid)
12:05
Disable the OR optimization for WITHOUT ROWID tables, since it relies on the use of rowids. (check-in: 6055dad2ba user: drh tags: omit-rowid)
11:46
Remove an incorrect test case from conflict2.test. (check-in: 427612efc1 user: drh tags: omit-rowid)
02:36
Remove an unused variable. (check-in: e9c1e419b7 user: drh tags: omit-rowid)
2013-11-05
22:39
Make sure the query planner knows that the PRIMARY KEY index of a WITHOUT ROWID table is always a covering index. (check-in: 03e7019e14 user: drh tags: omit-rowid)
19:41
Fix conflict handling for the case when the rowid uses REPLACE but other unique constraints use FAIL or IGNORE. (check-in: 573cc27427 user: drh tags: omit-rowid)
17:30
Fix a bug in secondary index initialization when the secondary index is a superset of the PRIMARY KEY for a WITHOUT ROWID table. (check-in: 52a3d88519 user: drh tags: omit-rowid)
16:56
Remove an "explain" command from test script without_rowid1.test that was accidentally committed. (check-in: 4b41d989e8 user: dan tags: omit-rowid)
16:39
Unless the destination table is completely empty, disable the xfer optimization for WITHOUT ROWID tables. (check-in: 3877c9f505 user: dan tags: omit-rowid)
15:02
Updates to the backcompat.test test script so that it works with really old (3.6.*) versions. (check-in: ace7e7b642 user: dan tags: omit-rowid)
14:19
Add tests for updates of without-rowid tables that use non-BINARY collation sequences for the primary key columns. And a minor bugfix to the same. (check-in: 99b1fa4b16 user: dan tags: omit-rowid)
13:33
Standardize the error messages generated by constraint failures to a format of "$TYPE constraint failed: $DETAIL". This involves many changes to the expected output of test cases. (check-in: 54b2219297 user: drh tags: omit-rowid)
01:59
Add the conflict2.test script. Fix issues discovered by this script. (check-in: 294ed33756 user: drh tags: omit-rowid)
2013-11-04
22:04
Add the index7.test script for testing partial indices with WITHOUT ROWID tables. Fix bugs in ANALYZE located by that script. (check-in: 79befe3ac1 user: drh tags: omit-rowid)
21:44
Bug fixes in the INSERT constraint checker. Refactor the Rowid handling logic for ANALYZE with STAT3/4. (check-in: 1ea43c0f23 user: drh tags: omit-rowid)
18:34
Add another test case file for WITHOUT ROWID and fix the bugs that the new test file uncovered. (check-in: bc2a06eb8e user: drh tags: omit-rowid)
17:00
Fix a problem with processing INTEGER PRIMARY KEY on a WITHOUT ROWID table. (check-in: 89098e6d18 user: drh tags: omit-rowid)
15:23
Correctly handle changing counting when inserting and deleting on WITHOUT ROWID tables. Add more FOREIGN KEY test cases. (check-in: d072bcd0a8 user: drh tags: omit-rowid)
13:56
Correctly handle self-referential foreign keys on WITHOUT ROWID tables. (check-in: af128862ab user: drh tags: omit-rowid)
08:56
Fix a bug preventing FTS from correctly processing bracket tokens that are immediately preceded by characters that are neither whitespace or token characters. (check-in: 49be646cd9 user: dan tags: trunk)
2013-11-03
02:27
Improved comments on foreign key logic. (check-in: 1315d9109c user: drh tags: omit-rowid)
2013-11-02
22:29
Improved Synopsis on register comparison operators. Fix a bug on the constraint check generator. (check-in: a7a18b65fa user: drh tags: omit-rowid)
22:09
Many new test cases added, that mostly work. Currently 18 errors in without_rowid3.test. Also there is a hack marked by a /*FIXME*/ comment on at fkey.c:547 that needs fixing. (check-in: 39e32187b6 user: drh tags: omit-rowid)
19:34
Change the "idx" name of the primary key index for WITHOUT ROWID tables in sqlite_statN statistics tables to be the name of the table rather than the fabricated index name (ex: sqlite_autoindex_xyz_1). This makes it consistent with sqlite_master table. (check-in: 4ee4d31063 user: drh tags: omit-rowid)
18:46
Update the ANALYZE logic so that it works with WITHOUT ROWID tables. (check-in: 9075770e40 user: drh tags: omit-rowid)
14:37
Store the root page of the PRIMARY KEY index for a WITHOUT ROWID table in the sqlite_master entry for the main table and omit the sqlite_master entry for the PRIMARY KEY. (check-in: b7544bb280 user: drh tags: omit-rowid)
11:43
Import the sqlite3_analyzer fixes from trunk. (check-in: ac711459ff user: drh tags: omit-rowid)
11:34
A pair of sqlite3_analyzer bug fixes: (1) quote strings in the SQL at the end of the output. (2) Fix test_stat.c so that it no longer misses some overflow pages on internal index pages. (check-in: 42a11e7464 user: drh tags: trunk)
2013-11-01
22:02
Size KeyInfo objects so that IdxInserts always compare the correct number of fields. (check-in: 302a81390f user: drh tags: omit-rowid)
20:30
Fix sqlite3_analyzer so that it works with WITHOUT ROWID tables. Fix index generation for secondary indices that include fields from the PRIMARY KEY. (check-in: f9769d701c user: drh tags: omit-rowid)
18:14
Additional UPDATE test cases for WITHOUT ROWID. (check-in: 65384ae0f0 user: drh tags: omit-rowid)
17:59
Fix an invalid cast operation in the WITHOUT ROWID parsing logic. (check-in: 845153be36 user: drh tags: omit-rowid)
17:21
Merge all changes from trunk, and disable a pair of corruption tests that are no longer valid since sqlite_master.rootpage can now be NULL for tables. (check-in: dd5d57b9a1 user: drh tags: omit-rowid)
17:08
Change the interface to sqlite3GenerateConstraintChecks() for improved lucidity and to fix issues in dealing with UPDATEs for WITHOUT ROWID tables. Make sure iDataCur and iIdxCur are initialized when processing DELETEs of a VIEW. UPDATE processing distinguishes between changes to ROWID and PRIMARY KEY. (check-in: c525ac5630 user: drh tags: omit-rowid)
14:03
Improved VDBE comments on the constraint checker. Fix a missing write lock in the UPDATE logic. (check-in: 3bed599e74 user: drh tags: omit-rowid)
12:42
Some UPDATE statements now working in WITHOUT ROWID tables. (check-in: 5c0eaea6a2 user: drh tags: omit-rowid)
01:45
A couple of bug fixes. (check-in: cdf00248cf user: drh tags: omit-rowid)
2013-10-31
20:34
Fix the Synopsis on OP_Concat. Added test_addop_breakpoint() during SQLITE_DEBUG. Enhanced sqlite3VdbeChangeToNoop() to omit the instruction if it is the most recent added. Continue to fix problems with UPDATE and WITHOUT ROWID. (check-in: 9b6d9e106a user: drh tags: omit-rowid)
18:49
Fix a problem in os_unix.c causing compilation failure if SQLITE_DEBUG and SQLITE_MAX_MMAP_SIZE=0 are both defined. (check-in: 090db8c81d user: dan tags: trunk)
17:38
Fix issues with quering from an auxiliary index that must refer back to the PRIMARY KEY index of a WITHOUT ROWID table. (check-in: cff1f55c52 user: drh tags: omit-rowid)
15:37
Improved comments and variable names in infrastructure routines of UPDATE, DELETE, and INSERT. (check-in: ad90e762e5 user: drh tags: omit-rowid)
12:13
Moving UPDATE towards the iDataCur/iIdxCur representation. Still not working for WITHOUT ROWID, though. (check-in: deacbd21b5 user: drh tags: omit-rowid)
11:15
Refactor the INSERT, DELETE, and UPDATE code generators to distinguish between the "data cursor" and the "first index cursor", which are no longer consecutive in the case of a WITHOUT ROWID table. (check-in: 1adfca6019 user: drh tags: omit-rowid)
06:39
Update comments in the MSVC batch build tool. (check-in: 0414bb73ef user: mistachkin tags: trunk)
06:13
Enable some more tests on Windows. (check-in: 72389c295b user: mistachkin tags: trunk)
06:11
Fix harmless compiler warnings. (check-in: 1a0a88657f user: mistachkin tags: trunk)
2013-10-30
20:22
Continue working to get UPDATE operational for WITHOUT ROWID tables. Fix PRAGMA integrity_check so that it works on WITHOUT ROWID tables. (check-in: 0d4fea7462 user: drh tags: omit-rowid)
15:52
Make sure KeyInfo objects on multi-column indices of WITHOUT ROWID tables have the correct nField and nXField values. Also, add the SQLITE_ENABLE_MODULE_COMMENT compile-time option and the VdbeModuleComment() macro and use it to label entry and exit points of some key routines. (check-in: 6d9af6065f user: drh tags: omit-rowid)
13:46
In the P4 column of the EXPLAIN listing, abbreviate "keyinfo" as just "k" and "BINARY" as just "B". (check-in: 72d45eb79b user: drh tags: omit-rowid)
12:43
Enhance the timer in the shell to show wall-clock time in addition to user and kernel CPU time. (check-in: 908e2c2124 user: drh tags: trunk)
12:30
Have the shell ".timer on" command cause the shell to report wall-clock time for each query (as well as user and system CPU time). (Leaf check-in: 5530cdc485 user: dan tags: shell-wall-clock)
03:25
Add the "Esri Spatially-Enabled Database" file format to the magic.txt file. (check-in: 8530a18f40 user: drh tags: trunk)
02:37
Merge EXPLAIN enhancements from trunk. (check-in: 2fcac05607 user: drh tags: omit-rowid)
02:28
Add the SQLITE_ENABLE_EXPLAIN_COMMENTS compile-time option to enable extra commentary in the EXPLAIN output. Formerly, this was only available with SQLITE_DEBUG. (check-in: e1a89b56f7 user: drh tags: trunk)
00:25
Enhanced display of register ranges in the auxiliary comments added to EXPLAIN. (check-in: d6b0c39281 user: drh tags: trunk)
2013-10-29
20:47
Import the automatic comment generating changes from trunk. (check-in: 8bb51da130 user: drh tags: omit-rowid)
20:40
Automatically generated comments on many VDBE opcodes when in SQLITE_DEBUG mode. Comments derive from the "Synopsis:" field added to each opcode definition in vdbe.c. (check-in: 5f310c6a22 user: drh tags: trunk)
16:14
Improved comments on the constraint checking logic. (check-in: 141a38a7a6 user: drh tags: omit-rowid)
2013-10-28
22:47
Merge all trunk changes since 3.8.1 into the sessions branch. (check-in: aa72ea8a00 user: drh tags: sessions)
22:39
Merge recent fixes from trunk. (check-in: 9f8191d1d8 user: drh tags: omit-rowid)
22:33
Formatting improvements to the WHERE-clause constraint display in the wheretrace debugging logic. (check-in: 3a9e3ed94b user: drh tags: trunk)
20:38
Add regression tests for ticket [c620261b5b5]. (check-in: 05a35b09b1 user: drh tags: trunk)
20:15
Do not use transitive WHERE-clause constraints on LEFT JOINs. Fix for ticket [c620261b5b5dc]. (check-in: 9aac4e588c user: drh tags: trunk)
19:59
More wheretrace debugging support: Show a listing of all WHERE clause terms (on wheretrace bit 0x100) and include important flags such as TERM_VIRTUAL, WO_EQUIV, and EP_FromJoin. (check-in: 92ccd70541 user: drh tags: trunk)
19:03
Bug fix and enhancements to the improved wheretrace logic that shows the constraint expressions. (check-in: 10f125f5da user: drh tags: trunk)
14:34
Improved "wheretrace" capabilities: Show the constraint expression if the wheretrace flag has the 0x100 bit set and if compiled with SQLITE_ENABLE_TREE_EXPLAIN. (check-in: 710a18ac79 user: drh tags: trunk)
2013-10-26
15:40
Work on the UPDATE and INSERT logic. This is an incremental check-in so that can switch over to trunk to work on an unrelated issue there. (check-in: 086ec2a177 user: drh tags: omit-rowid)
13:36
Replace the OP_IsUnique opcode with OP_NoConflict. This code simplification might be useful to move onto trunk even if this branch is never merged. (check-in: e6650e16dd user: drh tags: omit-rowid)
00:58
Minor refactoring of variable names and fixes to comments in insert.c. (check-in: ae61a34378 user: drh tags: omit-rowid)
2013-10-25
19:17
Progress toward getting UPDATE to work in WITHOUT ROWID tables. (check-in: e557b7d80f user: drh tags: omit-rowid)
14:46
Basic DELETE operations now working on WITHOUT ROWID tables. (check-in: 9eafafa31c user: drh tags: omit-rowid)
2013-10-24
19:48
Update the interface to the sqlite3GenerateRowDelete() utility so that it is able to handle WITHOUT ROWID tables. The implementation still needs to be completed. (check-in: 85daf51746 user: drh tags: omit-rowid)
15:20
Add the ".open" command to the command-line shell. (check-in: 21eccb9194 user: drh tags: trunk)
14:16
Delete PRIMARY KEY index entries last. Only construct the unique prefix of an index key when deleting entries from an index. (check-in: 0e56ba69f0 user: drh tags: omit-rowid)
11:55
Remove an obsolete comment from the VDBE. No code changes. (check-in: 53bb070c85 user: drh tags: omit-rowid)
00:18
Correctly handle queries that use secondary indices of WITHOUT ROWID tables. (check-in: d8bc859530 user: drh tags: omit-rowid)
2013-10-23
23:37
Change the sqlite3OpenTable() utility to open the PRIMARY KEY index when reading a WITHOUT ROWID table. (check-in: 247f389930 user: drh tags: omit-rowid)
22:23
Construct secondary indices on WITHOUT ROWID tables. (check-in: 2c028ddc85 user: drh tags: omit-rowid)
17:39
Report an error when trying to resolve column name "rowid" in a WITHOUT ROWID table. (check-in: 36bcc9cb88 user: drh tags: omit-rowid)
16:03
Get VACUUM and the xfer optimization working with WITHOUT ROWID. (check-in: 579815fff1 user: drh tags: omit-rowid)
13:30
Some inserts and queries working for multi-column primary keys and WITHOUT ROWID. (check-in: b21d831b2a user: drh tags: omit-rowid)
01:57
Some simple inserts and queries working on WITHOUT ROWID tables. (check-in: 3f8016dee2 user: drh tags: omit-rowid)
00:32
Build internal data structures appropriately for WITHOUT ROWID tables. (check-in: 35a3606071 user: drh tags: omit-rowid)
2013-10-22
18:01
The Index object now has nKeyCol and nColumn. nColumn is the total number of columns and nKeyCol is the number of key columns. Currently these always differ by one. Refactor aiColumn[] to be of type i16 instead of int. (check-in: a106ce86cd user: drh tags: omit-rowid)
14:28
Add a procedure to handle the messy details of allocating an Index object from the heap. (check-in: 45efc94f9a user: drh tags: omit-rowid)
10:23
Extra backwards-compatibility tests verify that UNIQUE and PRIMARY KEY indices are created in the correct order. Other backwards-compatibility tests already cover this, but it does not hurt to double up. (check-in: 5ca0ea2e9b user: drh tags: omit-rowid)
01:18
Previous refactor is not going to be helpful because implied indices must be created in the same order that they appear in the CREATE TABLE statement for backwards compatibility. This is a much smaller change to clean up a few loose ends. (check-in: 824b549f9b user: drh tags: omit-rowid)
2013-10-21
23:55
Minor refactoring of the PRIMARY KEY parsing logic to facilitate enhancements. (Closed-Leaf check-in: 4e69dd5f9b user: drh tags: omit-rowid)
23:17
Improve support for the SQLITE_OMIT_FLAG_PRAGMAS compile-time option. (check-in: f1d8c3b07e user: mistachkin tags: trunk)
13:15
Drop the mutex on the multiplexor before entering the xRead VFS call. (Closed-Leaf check-in: a00d2ed49c user: drh tags: multiplex-parallel-read)
02:14
Simplification of the syntax: Merely append "WITHOUT rowid" to the end of the table definition. (check-in: 131cc6e152 user: drh tags: omit-rowid)
2013-10-19
23:31
Experimental changes toward "index only" tables. Add the ability to specify options on CREATE TABLE statements using the WITH clause modeled after PostgreSQL and SQL Server. Only the "omit_rowid" option is currently recognized and that option is currently a no-op. (check-in: 0248ec5e6e user: drh tags: omit-rowid)
16:51
Improved header comment with better instructions on the vfslog.c extension. (check-in: 4bd592c8f0 user: drh tags: trunk)
15:07
Fix a bug causing an "malformed database schema error" error if a temp table with the same name as an existing table that has at least one temp trigger attached to it is created. (check-in: 56dca4a65c user: dan tags: trunk)
2013-10-18
20:03
Add the SQLITE_FCNTL_TRACE file control and generate it for OP_Trace when compiled with SQLITE_USE_FCNTL_TRACE. Update vfslog.c to make use of the new file control. Also update vfslog.c to log UNLOCK events before the fact, rather than afterwards. (check-in: e801f35a96 user: drh tags: trunk)
17:42
Further enhance the vfslog extension to record the number of freelist pages and the first freelist page in CHNGCTR-READ and CHNGCTR-WRITE records. (check-in: 08157524ca user: drh tags: trunk)
14:37
In the vfslog extension for FILECONTROL records, show the pragma name for SQLITE_FCNTL_PRAGMAs and the requested size for SQLITE_FCNTL_SIZE_HINT. (check-in: f062969548 user: drh tags: trunk)
2013-10-17
12:57
Version 3.8.1 (check-in: c78be6d786 user: drh tags: trunk, release, version-3.8.1)
2013-10-16
23:58
Fix a typo in a requirements mark comment. No changes to code. (check-in: e5a439cfa5 user: drh tags: trunk)
14:32
Merge the latest trunk changes. (check-in: 5806546822 user: drh tags: sessions)
11:39
Clear a valgrind error by zeroing the first 4 bytes of the temp-space allocation used by the b-tree module. (check-in: 8651aba186 user: dan tags: trunk)
11:31
Fix memory and resource leaks for WinCE and Cygwin, and a compiler warning on windows with SQLITE_THREADSAFE=0. (check-in: 9905cea9d4 user: drh tags: trunk)
09:49
Fix memory/resource leaks for WinCE and Cygwin. (Closed-Leaf check-in: 2470d1bb08 user: mistachkin tags: wince-fixes)
2013-10-15
19:06
Add the "languageid" hidden column to fts4aux. (check-in: 891df358e5 user: dan tags: trunk)
15:35
Changes to test code to make sure no server threads are left running after server1.test finishes. (check-in: 1086e00bca user: dan tags: trunk)
14:29
Fix an 8-byte alignment problem on the "crash test" harness (test code, not in the core) that causes problems on Sparc. (check-in: bcbc65030f user: drh tags: trunk)
14:10
Merge the latest trunk changes into the sessions branch. This merge should fix the build for WinRT. (check-in: e111e4edf9 user: drh tags: sessions)
11:58
Fix harmless macro redefinition warnings in the totype extension. (check-in: c9c1f8d670 user: drh tags: trunk)
10:43
Fix harmless macro redefinition warnings in the totype extension. (Closed-Leaf check-in: a38adeb7ff user: mistachkin tags: noWarnings)
2013-10-14
22:35
Fix harmless compiler warning in the totype extension. Include all standard whitespace characters in totypeIsspace. Minor adjustments to style and comments. (check-in: 73238f655a user: mistachkin tags: trunk)
21:14
Move the tointeger() and toreal() functions out of core and make them into a run-time loadable extension. (check-in: 9f66dd7e37 user: drh tags: trunk)
20:30
Fix a crash in FTS incremental phrase processing that can occur if the second or subsequent token is much more common in the dataset than the first. (check-in: 0bf438fc30 user: dan tags: trunk)
19:35
Add implementations for the toInteger() and toReal() SQL functions. (check-in: a0f7cbc068 user: drh tags: trunk)
15:41
Fix for building with SQLITE_OMIT_FOREIGN_KEY. (check-in: b8b5f6c8f6 user: dan tags: trunk)
14:30
Update the foreign_key_check pragma so that when a parent table is undefined it is treated as an empty table. (check-in: 208b259ad7 user: drh tags: trunk)
14:21
Corrects to comments on the STAT4 implementation. (check-in: e06f74d32d user: drh tags: trunk)
13:21
Make subroutines sampleCopy() and valueFromExpr() have file scope. (check-in: 1660efbe46 user: drh tags: trunk)
10:46
Add a new application_id for GeoPackage version 1.0. (check-in: 98ddfe4571 user: drh tags: trunk)
2013-10-12
23:39
Merge updates from trunk. (Closed-Leaf check-in: a88b5be01e user: mistachkin tags: toTypeFuncs)
20:22
Restore the index_list pragma back to its former operation. Create a new PRAGMA stats used to access the table and index widths and heights. (check-in: f0cf8c85dc user: drh tags: trunk)
19:06
In "PRAGMA foreign_key_check", treat missing parent tables as empty (instead of as errors). (Closed-Leaf check-in: 8c13a7fd73 user: dan tags: fkc-missing-parent-tables)
15:12
Fix handling of "DROP TABLE" commands when "PRAGMA defer_foreign_keys=1" is set. (check-in: 27001356ed user: dan tags: trunk)
13:16
Add tests that demonstrate that PRAGMA defer_foreign_keys will reset to off at the conclusion of the next transaction. (check-in: 67e28a11de user: drh tags: trunk)
09:32
Changes to the new initial row of PRAGMA index_list results. (Closed-Leaf check-in: 0c4dd9fff0 user: mistachkin tags: indexList)
02:33
Fix harmless compiler warning. (check-in: 4b130f88fb user: mistachkin tags: trunk)
02:31
Permit the creation of VSIX packages for Win32. (check-in: 035d03e942 user: mistachkin tags: trunk)
00:56
Fix Unicode character encoding issues on Windows in the fts4unicode test file. (check-in: c9310c9a2b user: mistachkin tags: trunk)
2013-10-11
23:37
Identify requirements text in the SQLITE_CONFIG_ documentation. Fix a typo (a duplicated word) in part of that documentation. Add some requirements marks for DETACH to the test scripts. No code changes. (check-in: 1be0a3adab user: drh tags: trunk)
23:02
The split amalgamation option should be disabled by default. (check-in: 7c24d22ffa user: mistachkin tags: trunk)
23:01
Enhance debugging support for the split amalgamation files when compiling with MSVC. (check-in: 8ff17c553d user: mistachkin tags: trunk)
23:01
Fix a harmless compiler warning in lemon.c. (check-in: 62959c0ce3 user: drh tags: trunk)
22:19
Add -no-undefined option when linking the shared libraries. (check-in: 977d2b12e5 user: mistachkin tags: trunk)
22:17
Fix test numbering. (check-in: cef39f6933 user: mistachkin tags: trunk)
20:14
Add requirements marks. No code changes. (check-in: 5e0d43ab55 user: drh tags: trunk)
16:35
Additional test cases and requirements marks for the unlikely(), likelihood() and instr() functions. (check-in: 5f01cd36ee user: drh tags: trunk)
15:05
Fix various harmless compiler warnings. Change the "warnings.sh" script to work with STAT4 instead of STAT3. (check-in: 7df06684ab user: drh tags: trunk)
13:27
Make sure the sqlite3.h file occurs at the very top of the sqlite3.c amalgamation. (check-in: 03593817ab user: drh tags: trunk)
05:51
Fix compilation issue for WinRT. (check-in: 7a2006ca94 user: mistachkin tags: trunk)
2013-10-10
20:13
Synchronize with the trunk. (check-in: 136445ba02 user: drh tags: sessions)
17:33
Add a rule to the main.mk makefile for building showdb. (check-in: fc5552da0d user: drh tags: trunk)
15:04
Enhancements to the vfslog.c module to show all change-counter changes and to show the hostname and pid of the process that creates each log file. (check-in: af7abebeb1 user: drh tags: trunk)
13:41
Another fix to the hash signature algorithm in vfslog.c. (check-in: 34212aa8c4 user: drh tags: trunk)
13:38
Fix the hash signature algorithm in vfslog.c. Add a utility program to show the hash signatures for every page of a database file. (check-in: eaf4de13a6 user: drh tags: trunk)
13:04
Add ext/misc/vfslog.c, a VFS shim for unix that keeps a log of method calls made by SQLite. (check-in: 24a827b876 user: dan tags: trunk)
12:38
Estimate row sizes for tables and indices and use those estimates during query planning. Enhance the index_info pragma to show the estimated row sizes and to show the estimated row size for the main table as well. Allow an alternative row size estimate to be specified in the sqlite_stat1 table. (check-in: d27b88b8c2 user: drh tags: trunk)
2013-10-09
19:07
Make sure the correct printf format is used for type tRowcnt regardless of whether 32-bit or 64-bit row counts are specified at compile-time. (Closed-Leaf check-in: e97d7d3044 user: drh tags: row-size-est)
2013-10-08
23:16
Move a conditional inside of an #ifdef in order to make all branches reachable regardless of compile-time options used. (check-in: f7cc30d45b user: drh tags: row-size-est)
22:25
Fix test cases for the new information in PRAGMA index_list. (check-in: dd03be1065 user: drh tags: row-size-est)
20:42
Rollback some of the previous changes in the branch such that the estimated row sizes are now only used as a tie-breaker for index scans. (check-in: 65553ff34b user: drh tags: row-size-est)
20:01
Use #ifdefs to omit unused code in the columnType() routine depending on compile-time options. (check-in: 3fd5e33217 user: drh tags: row-size-est)
18:40
Further refinement of the idea of multiplying run-time cost estimates by the estimated row size. (check-in: 18bd6ba96d user: drh tags: row-size-est)
2013-10-07
21:49
Fix compilation issue with MSVC. (check-in: 36d64dc36f user: mistachkin tags: trunk)
17:32
Multiply all cursor step cost estimates by the estimated size of the row in bytes, in order to get the query planner ot make use of estimated row sizes. This check-in uses magic numbers in a few places (for example, estimates of the size of output rows) and needs lots of refinement. Consider this a proof-of-concept only. (check-in: cb34cfe57c user: drh tags: row-size-est)
16:53
Try to remember statistics from ANALYZE using LogEst instead of u64. (Leaf check-in: 8e78557a40 user: drh tags: log-stats)
10:48
Merge bug fixes from trunk. (check-in: 1d7b2dc0ea user: drh tags: row-size-est)
00:36
Restore the hexrekey pragma which was accidently deleted during the pragma refactoring. Make sure the hexkey and hexrekey pragmas do not overflow buffers with a over-length key. (check-in: 0aca31e151 user: drh tags: trunk)
2013-10-06
22:52
Remove an incorrect debugging assert() that was accidently added during the STAT4 enhancement. (check-in: 2bb7f74bbd user: drh tags: trunk)
22:12
Accept the sz=N parameter on table-only lines of sqlite_stat1. (check-in: e9e932aa40 user: drh tags: row-size-est)
2013-10-05
20:18
Fix an issue in the test8.c test module that arises because of the change to PRAGMA index_list(). Remove an unused local variable. (check-in: 029430c503 user: drh tags: row-size-est)
19:18
Completely remove the iScanRatio field. The PRAGMA index_list(TABLE) command shows the estimated row size in the forth column. It also generates a row for the table with an index name of NULL. The query planner still does not take row size estimates into account - that is the next step. (check-in: 8b4aa0c7a2 user: drh tags: row-size-est)
18:32
Improvements to the LogEst command-line tool used to convert between ordinary numbers and the LogEst representation. (check-in: 5252aeb619 user: drh tags: row-size-est)
18:16
Begin an experimental refactoring to estimate the average number of bytes in table and index rows and to use that information in query planner. Begin by renaming WhereCost to LogEst and making that type and its conversion routines available outside of where.c. (check-in: 66c4a251d6 user: drh tags: row-size-est)
02:56
In the index_list pragma, make sure the "r" column is the same on output as it was on input in the sqlite_stat1 table. (Closed-Leaf check-in: de78250ad2 user: drh tags: index-scan-rate)
2013-10-04
20:39
Merge trunk changes. (check-in: c6ac80ed8d user: drh tags: index-scan-rate)
18:29
Further refinements of the index scanning speed logic. (check-in: e5d9371da9 user: drh tags: index-scan-rate)
18:17
If an "INSERT INTO ... SELECT" can use the xfer optimization, pass the OPFLAG_BULKCSR hint to btree cursors used to update indices. This results in a tighter key packing. (check-in: 087af29ee2 user: dan tags: trunk)
15:58
Fix test cases so that they work when the query planner uses index size estimates to determine whether or not to try an covering index scan. (check-in: 2f394de88f user: drh tags: index-scan-rate)
15:30
Improved estimates of the relative speed of index scans based on declared datatypes of columns in the table. Add "r" column to PRAGMA index_info, showing the estimated relative scan rate. (check-in: 07462bb605 user: drh tags: index-scan-rate)
02:36
Progress toward using the iScanRatio information on indices. Many tests are still failing. (check-in: 6c352edbba user: drh tags: index-scan-rate)
00:00
Make sure the count(*) optimization works correctly even when partial indices are present. Ticket [a5c8ed66cae]. (check-in: 9f2f4c0a50 user: drh tags: trunk)
2013-10-03
20:41
Have FTS take advantage of "docid<?" constraints when they are present. Extend the FTS "incremental doclist" optimization so that it is used for tokens within multi-token phrases. (check-in: baf8ce5916 user: dan tags: trunk)
20:28
Merge latest trunk changes. (Closed-Leaf check-in: 24aa20da22 user: dan tags: fts4-docid-range-constraints)
19:27
Allow FTS4 multi-token phrases to use a combination of in-memory and incrementally loaded doclists. This allows phrases to (partially) benefit from incremental doclists without disabling the deferred token optimization. (check-in: f6819c5f33 user: dan tags: fts4-docid-range-constraints)
19:21
Experimental branch allowing different postulated scan rates for each index. (check-in: d59d97b0a8 user: drh tags: index-scan-rate)
15:39
The sqlite3FixInit() routine cannot fail. So change the return type from "int" to "void". (check-in: 500c5932fe user: drh tags: trunk)
14:08
Rework the PRAGMA implementation to only call sqlite3ReadSchema() from a single place, based on a flag in the pragma table, rather than separately from each case which needs the schema. (check-in: 8338232a11 user: drh tags: trunk)
12:29
Return an error if an attempt is made to create a trigger with an SQL variable embedded within it. If such a variable reference is found within a trigger definition loaded from the sqlite_master table, silently replace it with a NULL. (check-in: f35f6ae3da user: dan tags: trunk)
11:27
Remove unnecessary memset() calls from test code. (check-in: eec3187bc6 user: drh tags: trunk)
2013-10-02
20:46
In the lemon parser generator, change all hashes to unsigned to avoid potential problems with signed integer overflow. (check-in: 8d399a03de user: drh tags: trunk)
08:04
Add a test to check that the new multi-token phrase optimization is actually helping. (check-in: bc3a2ed5fb user: dan tags: fts4-docid-range-constraints)
2013-10-01
20:29
Bring some file format comments in btreeInt.h up to date. (check-in: 012d54d0d2 user: drh tags: trunk)
20:10
Merge trunk changes with this branch. (check-in: 65d9c6fafb user: dan tags: fts4-docid-range-constraints)
20:02
Allow multi-token phrases to load doclists from the database incrementally. This allows queries that feature such phrases to benefit from the "docid<?" optimization. (check-in: ea543f081d user: dan tags: fts4-docid-range-constraints)
19:36
Fix comments in the fast_vacuum.c demonstration program. (check-in: e0db7b38e1 user: drh tags: trunk)
19:02
Add the "fast_vacuum.c" demonstration program to the tool/ subdirectgory. (check-in: 2b60320d57 user: drh tags: trunk)
15:30
Change the ".dump" command in the command-line shell so that it COMMITs if there are database corruption errors but invokes ROLLBACK on any other kind of error. (check-in: 473234632f user: drh tags: trunk)
2013-09-30
19:33
Fix a minor typo in a comment in where.c. (check-in: 9c9fa151e9 user: drh tags: trunk)
19:05
Add some timing tests to the amatch test script. (check-in: ad71c72be5 user: drh tags: trunk)
18:16
Merge trunk changes with this branch. (check-in: e294a9c7c5 user: dan tags: fts4-docid-range-constraints)
18:14
Fix a performance problem in the FTS4 auxiliary functions triggered by an OR clause in the full-text query. (check-in: fa0f2f0e3e user: dan tags: trunk)
17:37
Fix memory leaks in the amatch extension. Add a few simple test cases. (check-in: 604134732e user: drh tags: trunk)
11:42
Have fts4 full-text queries consider "docid<?" and similar constraints. (check-in: 6622424a3a user: dan tags: fts4-docid-range-constraints)
11:01
Update and modernize an obsolete comment associated with VACUUM. No changes to code. (check-in: 94c914e3fa user: drh tags: trunk)
2013-09-29
04:56
Fix typo in comment. No changes to code. (check-in: 0b7bd46825 user: mistachkin tags: trunk)
2013-09-28
16:43
Add new test file fts3defer3.test. (check-in: a6cd14effe user: dan tags: trunk)
13:28
In the nextchar.c extension, allow the second argument to the next_char() function to be a subquery. (check-in: 59b9fa2236 user: drh tags: trunk)
12:40
Updates to the sqlite3_analyzer utility: Change the names of some labels, especially change "Fragmentation" to "Non-sequential pages". Revise the computation of non-sequential pages so that it ignores itercalated non-leaf pages (overflow and index pages). (check-in: 3e5c7771fa user: drh tags: trunk)
2013-09-26
15:21
Obtain the required shared-cache write-lock when executing "DELETE FROM tbl" statements. Fix for [1e1321ee98]. (check-in: 1f8f4fdf3f user: dan tags: trunk)
11:04
Fix a faulty assert() in sqlite3BtreeBeginTrans() that may fail in shared-cache mode. (check-in: 1e1321ee98 user: dan tags: trunk)
2013-09-24
19:07
Merge updates from trunk. (check-in: 435ce3b3fc user: mistachkin tags: toTypeFuncs)
2013-09-18
11:16
Test that the unicode61 tokenchars= and separators= options work with the fts3tokenize virtual table. (check-in: ed24051462 user: dan tags: trunk)
2013-09-17
23:36
Clear the current time value on prepared statements when the prepared statement is reset. (check-in: cebd6fc551 user: drh tags: trunk)
2013-09-16
20:46
Readability improvements to the Win32 RC file. (check-in: e645906257 user: mistachkin tags: trunk)
19:27
Minor consistency fixes to the Win32 RC file. (check-in: 619c5211b9 user: mistachkin tags: trunk)
12:57
The date and time functions use the exact same notion of "now" for every invocation within the same call to sqlite3_step(). (check-in: daf6ba413c user: drh tags: trunk)
2013-09-13
23:27
Fix Windows SDK compiler warning. (check-in: d5fc3f1dab user: mistachkin tags: trunk)
23:26
Fix test issues for Windows portability. (check-in: 650b32825a user: mistachkin tags: trunk)
22:38
VSIX tooling changes to support Visual Studio 2013. (check-in: d56fac4031 user: mistachkin tags: trunk)
21:03
Fix the "const" qualifiers on the pragma name table. (check-in: b74e6be818 user: drh tags: trunk)
21:01
Add the soft_heap_limit pragma. (check-in: c326356f9a user: drh tags: trunk)
19:08
VSIX tooling changes to support Visual Studio 2013. (Leaf check-in: e8ac4a1227 user: mistachkin tags: branch-3.8.0)
19:00
Tweak the new PRAGMA name parser to achieve full branch test coverage. (check-in: c82e05c4b8 user: drh tags: trunk)
18:15
Remove one unreachable branch and add asserts() to dupedExprStructSize(). New asserts verify that removed branch is unused and that constants that are ORed together in the output do not overlap. (check-in: 86ad358b5a user: drh tags: trunk)
17:47
Adjust the query planner to take into account WHERE clause terms that do not drive indices. Add the unlikely() and likelihood() functions used to give hints to the query planner about the selectivity of WHERE clause terms. (check-in: bc446449a1 user: drh tags: trunk)
16:56
Enhance the pragma lookup table generator script to output a comment that gives the number of pragmas. (check-in: ca05205050 user: drh tags: trunk)
16:36
Change the PRAGMA parser to use a binary search for the pragma name. Also: Minor performance enhancement to sqlite3DbFree() and to the token dequoter. (check-in: 870c030b4e user: drh tags: trunk)
12:10
Add tests for the fts4 unicode61 tokenchars and separators options. (check-in: 9ce6f40dfb user: dan tags: trunk)
2013-09-12
23:42
Refactor the ExprSetIrreducible() macro into ExprSetVVAProperty(*,EP_NoReduce). This is a naming change only. The logic is the same. (Closed-Leaf check-in: 695aee46e9 user: drh tags: unlikely-func)
23:12
Fix typo in a macro name: "GlogUpperToLower" should be "GlobUpperToLower" (check-in: 73634ca463 user: drh tags: trunk)
17:29
Merge in the Expr.flags expansion to 32-bits. Use an extra bit to help optimize the sqlite3ExprSkipCollate() routine. (check-in: 4c84d1b4c2 user: drh tags: unlikely-func)
16:50
Increase the number of bits available in Expr.flags. Other tweaks aimed at making expression processing more robust. (Closed-Leaf check-in: 579a512538 user: drh tags: expr-tuning)
02:09
For error log messages generated by the Win32 native allocator, make sure the correct format specifier is used for the value returned by GetLastError(). (check-in: 75a8a8c1b3 user: mistachkin tags: trunk)
01:47
Fix a couple more harmless compiler warnings. (check-in: 59708674f6 user: mistachkin tags: trunk)
01:33
Remove two obsolete fields from the sqlite3 object. (check-in: 117fa5fbc9 user: drh tags: trunk)
00:54
Fix harmless compiler warning. (check-in: 2b510614dc user: mistachkin tags: trunk)
00:40
Merge updates from trunk. (Closed-Leaf check-in: fca799f03a user: mistachkin tags: vsix2013)
2013-09-11
17:39
Improvements to likelihood processing so that commuting an unindexed term in the WHERE clause does not change the query plan. (check-in: 6e6bded055 user: drh tags: unlikely-func)
14:57
Add test cases to cover TPC-H Q8. (check-in: eb5cef8351 user: drh tags: trunk)
14:34
Additional unlikely() test cases. Logic tweaks to support test coverage. (check-in: 5d00cce74a user: drh tags: unlikely-func)
11:38
Change the name of the two-argument unlikely() function to likelihood(). Add test cases. (check-in: 29a359b8d7 user: drh tags: unlikely-func)
03:53
Tweaks to the index selection logic. (check-in: 52d5268864 user: drh tags: unlikely-func)
2013-09-10
01:53
Merge trunk fixes into the unlikely-func branch. (check-in: a51d751553 user: drh tags: unlikely-func)
01:41
Deterministically initialize the PRNG used as a tie-breaker in the ANALYZE command, so that the analysis is always the same given the same database. This simplifies testing. (check-in: 48ed8b565b user: drh tags: trunk)
2013-09-09
19:37
Make sure that the transitive constraint optimization does not cause WHERE clause terms to be disabled prematurely. We are unable to find a test case that fails because of this, but it seems prudent to make this preventative change nevertheless. (check-in: d6e361d7fb user: drh tags: trunk)
2013-09-07
00:29
Continuing refinements of the logic to take WHERE clause terms not used for indexing into account when computing the number of output rows from each table. (check-in: b65dc53415 user: drh tags: unlikely-func)
2013-09-06
22:27
Merge updates from trunk. (check-in: 8922be1a3e user: mistachkin tags: toTypeFuncs)
21:41
Add the ability to generate assembly listing files using the MSVC makefile. (check-in: 6caa2cd104 user: mistachkin tags: toTypeFuncs)
20:30
When converting from a BLOB value in the tointeger() and toreal() SQL functions, make sure that endianness of the machine does not matter. (check-in: 94c4cdc50d user: mistachkin tags: toTypeFuncs)
17:45
Enhance the plan solver to take into account the number of output rows when computing the set of paths to retain for the next cycle. (check-in: 1a46a72423 user: drh tags: unlikely-func)
15:23
Initial implementation of the unlikely() SQL function used as a hint to the query planner. (check-in: 036fc37a03 user: drh tags: unlikely-func)
13:10
Combine the FuncDef.iPrefEnc and FuncDef.flags fields into a single new FuncDef.funcFlags field. (check-in: 97b10e66e9 user: drh tags: trunk)
00:40
Make sure the destination WhereLoop is left in a sane state when an OOM fault occurs inside of whereLoopXfer(). (check-in: a99a53b81e user: drh tags: trunk)
2013-09-05
18:40
When preparing an UPDATE statement, avoid generating VDBE code for those foreign key related actions and constraint checks that may be seen to be unnecessary by considering the subset of table columns potentially modified by the UPDATE. (check-in: e940b5de49 user: dan tags: trunk)
2013-09-04
18:14
Rearrange the order of conditions in an "if" statement to facilitate testing. (check-in: 8462fb43c2 user: drh tags: trunk)
16:38
Add tests to improve coverage when SQLITE_ENABLE_STAT3 is defined. (check-in: f929e9b41f user: dan tags: trunk)
16:08
Fix a bug in the command-line shell for ".mode insert" on UTF16 databases with BLOB values. (check-in: d8fdc78218 user: drh tags: trunk)
15:15
The sqlite3Stat4ProbeSetValue() routine should always return results using the database encoding. (check-in: eb21663271 user: drh tags: trunk)
04:04
Fix out-of-order variable declaration. Fix harmless compiler warning. (check-in: 8df95bb0b3 user: mistachkin tags: trunk)
02:07
Conditionally exclude code from analyze.c that is not used by STAT3. (check-in: a48948a170 user: drh tags: trunk)
00:58
Additional test cases for the tointeger() and toreal() SQL functions when converting from a BLOB. (check-in: e1814452fa user: mistachkin tags: toTypeFuncs)
2013-09-03
19:26
Harden the STAT4 logic in where.c against OOM faults. (check-in: 91d2cfbc95 user: drh tags: trunk)
17:11
Version 3.8.0.2 (check-in: 7dd4968f23 user: drh tags: release, version-3.8.0.2, branch-3.8.0)
14:49
Merge in all the latest trunk changes, including the win32-longpath VFS and the fix for the segfault in the omit-left-join optimization. (check-in: cdd3838b78 user: drh tags: sessions)
14:43
Fix another problem in stat4 sample selection. (check-in: d59f580904 user: dan tags: trunk)
14:33
Make sure the omit-noop-left-join optimization is not applied if columns of the LEFT JOIN are used in the ORDER BY clause. Ticket [be84e357c035]. Increase version number to 3.8.0.2. (check-in: cce541864d user: drh tags: branch-3.8.0)
14:03
Make sure the omit-noop-left-join optimization is not applied if columns of the LEFT JOIN are used in the ORDER BY clause. Ticket [be84e357c035] (check-in: 0303d6bc71 user: drh tags: trunk)
2013-09-02
23:40
Add the experimental SQLITE_DEFAULT_INDEX_SHAPE=1 compile-time option that makes a much more pessimistic guess at the effectiveness of unanalyzed indices. (Leaf check-in: d8daaba7da user: drh tags: index-shape-1)
20:22
Simplify branch coverage testing by interchanging the order of two tests in the whereLoopInsert() function. (check-in: f7079b5365 user: drh tags: trunk)
18:58
Further stat4 related tests. (check-in: 0a702c4b4c user: dan tags: trunk)
11:52
Add tests to check if ANALYZE is choosing common non-periodic samples for the stat4 table. (check-in: 175842997a user: dan tags: trunk)
07:16
Fix a problem with using stat4 data to estimate the number of rows scanned by a range constraint on the second or subsequent column of any index where an affinity transformation must be applied to the constraint argument. (check-in: c21f58d848 user: dan tags: trunk)
2013-09-01
23:36
Merge updates from trunk. (check-in: 2982725e12 user: mistachkin tags: toTypeFuncs)
2013-08-31
21:41
Handle BLOBs specially, treating them as binary, in the tointeger() and toreal() SQL functions. (check-in: c4c53acb98 user: mistachkin tags: toTypeFuncs)
18:36
Cleanup of the windows VFS, including added support for Cygwin, fixes for compiler warnings under unusual configurations, and improved diagnostic error messages. (check-in: c94933f132 user: drh tags: trunk)
18:06
Revise the amalgamation tool to allow 'duplicate' include files to be retained manually while still preserving the existing line numbers. (Closed-Leaf check-in: aa48284637 user: mistachkin tags: cygwinTempPath)
17:21
Fix a problem causing SQLite not to use stat4 or stat3 data to analyze constraints of the form "column = expr COLLATE collation" (those with an explicit COLLATE on the non-column side of the comparison operator). (check-in: 1e86d81d46 user: dan tags: trunk)
17:01
Enhancements to the Win32 API definition macros. (check-in: b1811baab6 user: mistachkin tags: cygwinTempPath)
14:56
Reenable a test accidentally disabled when the stat4 branch was merged. (check-in: d9fadc8fa6 user: dan tags: trunk)
05:46
Avoid commenting out #include statements when building the amalgamation source code file. (check-in: 2fca6d784b user: mistachkin tags: cygwinTempPath)
05:13
Fix harmless MSVC compiler warning with MEMDEBUG defined. (check-in: b48cfd2dfc user: mistachkin tags: cygwinTempPath)
02:48
Improve the consistency of the diagnostic messages on Windows. (check-in: c6f174a0cb user: mistachkin tags: cygwinTempPath)
2013-08-30
21:52
Add support for Cygwin when handling temporary file names. Improve error codes and diagnostic messages for temporary file name handling on Windows. Rename winConvertUtf8Filename to winConvertFromUtf8Filename. Improve placement and comments for forward function declarations. (check-in: a411df7251 user: mistachkin tags: cygwinTempPath)
20:19
Fix compiler warnings in analyze.c. (check-in: 5bbd2ccb3d user: dan tags: trunk)
19:59
Fix comment typo in analyze.c. No changes to code. (check-in: dbc3175044 user: mistachkin tags: trunk)
17:50
Fix comment typos in the where.c module. No code changes. (check-in: 1e0b77cf0e user: drh tags: trunk)
17:35
If the cost of two whereLoop objects is the same in every way except that one has fewer expected output rows than the other, then choose the one with fewer output rows. (check-in: 79e458ef7a user: drh tags: trunk)
14:24
Add the SQLITE_MINIMUM_FILE_DESCRIPTOR compile-time option, for control over exactly which low-numbered file descriptors SQLite will use. (check-in: ba51905343 user: drh tags: trunk)
13:29
Add a test for fts4 unicode61 option remove_diacritics=0. (check-in: 6bf7ae6ff6 user: dan tags: trunk)
06:20
Improvements to the robust_open() logic in the unix VFS so that if an attempt is made to open a repository on file descriptors 0, 1, or 2, and blocking that file descriptor by opening it on /dev/null fails, then the open will fail. (check-in: d9c018f815 user: drh tags: trunk)
2013-08-29
23:36
Make the unix VFS defensive against the error of having a database file open on file descriptors 1 or 2, as an error message might easily be written onto those file descriptors and thus overwrite and corrupt the database. (check-in: 30d38cc449 user: drh tags: trunk)
23:34
Change the unix VFS so that it refuses to open a database file using a file descriptor less than 3. (Closed-Leaf check-in: 66dddda068 user: drh tags: overwrite-avoidance)
21:26
Never leave an open file descriptor pointing into the middle of the database file if the file descriptor number is 2 or less. (check-in: 3426673e46 user: drh tags: overwrite-avoidance)
17:35
Version 3.8.0.1 (check-in: 352362bc01 user: drh tags: release, version-3.8.0.1, branch-3.8.0)
15:08
Merge from trunk: (1) Recent bug fixes (2) STAT4 support (3) win32-longpath support. (check-in: e7ebc8f74f user: drh tags: sessions)
14:56
Restore fix [f15591f802], which was accidentally clobbered by the stat4 merge. (check-in: d4b6ad3333 user: dan tags: trunk)
13:47
Update sqlite3.pc.in to use @PACKAGE_VERSION@ instead of @RELEASE@. Cherrypick of [2460dfd8825d25]. (check-in: c5857808c0 user: drh tags: branch-3.8.0)
13:27
Increase the version number to 3.8.0.1. (check-in: 125b04de7b user: drh tags: branch-3.8.0)
13:23
Fix an off-by-one error that causes a quoted empty string at the end of a CRNL-terminated line of CSV input to be misread by the shell. Cherrypick of [b5617e4fdadc4c]. (check-in: 43aa7d2353 user: drh tags: branch-3.8.0)
13:21
In the query optimizer, when converting BETWEEN and LIKE/GLOB expressions into simpler forms for processing, be sure to transfer the LEFT JOIN markings. Fix for ticket [bc878246eafe0f52c]. Cherrypick of [caab361ebe]. (check-in: cb667449d0 user: drh tags: branch-3.8.0)
13:15
Cherrypick of [c1152bdcbb] and fix for [9f2eb3abac]: Have the whereShortCut() planner ignore indexes with more than four columns. (check-in: c3f75941e5 user: drh tags: branch-3.8.0)
10:46
Candidate fix for [9f2eb3abac]: Have the whereShortCut() planner ignore indexes with more than four columns. (check-in: c1152bdcbb user: dan tags: trunk)
02:27
Disable several toreal() tests that require high floating point precision when it is unavailable. (check-in: b724219b00 user: mistachkin tags: toTypeFuncs)
01:17
Prevent the implementation of the toreal() SQL function from being 'optimized' by MSVC. (check-in: 047bd1c245 user: mistachkin tags: toTypeFuncs)
01:11
Merge updates from trunk. (check-in: 375dfe288f user: mistachkin tags: toTypeFuncs)
01:09
Small enhancements to unit testing infrastructure. (check-in: 9229aeb361 user: mistachkin tags: trunk)
01:03
Enable finer control of optimizations when compiling with the MSVC makefile. Also, several modularity enhancements to the MSVC makefile. (check-in: 6c709338bc user: mistachkin tags: trunk)
01:01
Fix boundary case for the toreal() SQL function. (check-in: abe82c634c user: mistachkin tags: toTypeFuncs)
2013-08-28
19:01
Re-enable test file wild001.test. (check-in: 4f182ddc36 user: dan tags: trunk)
18:56
Merge updates from trunk. (check-in: ffc6e68283 user: mistachkin tags: toTypeFuncs)
18:18
Add the win32-longpath VFS allowing windows filenames up to 32K characters in length. Remove unused code when -DSQLITE_MAX_MMAP_SIZE=0. Fix some compiler warnings on windows. (check-in: 12d0a8859d user: drh tags: trunk)
18:06
Update list of supported Tcl shells to include 8.6. Remove stray OS2 references. (Closed-Leaf check-in: ecd52ccf65 user: mistachkin tags: mmapDisabled)
17:59
Fix a couple comments. (check-in: 945cb89ecb user: mistachkin tags: mmapDisabled)
16:27
In the query optimizer, when converting BETWEEN and LIKE/GLOB expressions into simpler forms for processing, be sure to transfer the LEFT JOIN markings. Fix for ticket [bc878246eafe0f52c]. (check-in: caab361ebe user: drh tags: trunk)
13:46
Increase the version number to 3.8.1 due to the addition of STAT4 support. (check-in: 41c089e2a2 user: drh tags: trunk)
13:33
Fix an off-by-one error that causes a quoted empty string at the end of a CRNL-terminated line of CSV input to be misread by the shell. (check-in: b5617e4fda user: drh tags: trunk)
11:57
Add a test case for empty quoted field in CSV import in the shell. (check-in: 3df56e8491 user: drh tags: trunk)
11:43
Label a certain branch as NEVER() only for non-STAT3/4 builds. (check-in: b5ccf6e995 user: drh tags: trunk)
07:42
In the win32longpath test, move the journal mode change down where it was intended to be. (check-in: 5cead293bb user: mistachkin tags: mmapDisabled)
05:49
Support database file names longer than 260 characters using the new 'win32-longpath' VFS variant. (check-in: 37e85e444c user: mistachkin tags: mmapDisabled)
02:37
Make names of private functions in the Win32 VFS consistent. Fix comment typo in Win32 mutex implementation. (check-in: c3b82c5bf9 user: mistachkin tags: mmapDisabled)
02:26
Remove hard-coding of the directory separator in the Win32 VFS. Fixes to OSTRACE macros. (check-in: fc98092f4b user: mistachkin tags: mmapDisabled)
01:54
Fix several harmless compiler warnings. Fix a couple compiler issues with the shell. (check-in: 8917e9f9a0 user: mistachkin tags: mmapDisabled)
2013-08-27
23:15
Adjust ANALYZE for improved test coverage. Use the SQLITE_ENABLE_STAT3_OR_STAT4 macro (created in sqliteInt.h) to conditionally include code, instead of a boolean specifying both macros separately. (check-in: 67a9a392ed user: drh tags: trunk)
20:16
Reduce the amount of code run and memory used for ANALYZE in the common case where neither STAT3 and STAT4 are enabled. (check-in: 9d1424c91a user: drh tags: trunk)
15:41
Update sqlite3.pc.in to use @PACKAGE_VERSION@ instead of @RELEASE@. (check-in: 2460dfd882 user: dan tags: trunk)
14:14
In the ANALYZE command implementation make statInit() a 2-value function since the 3rd parameter was always the same constant. (check-in: 959bb5acdc user: drh tags: trunk)
2013-08-26
23:18
Preparation for further Windows path name handling changes. (check-in: ec99224b0c user: mistachkin tags: mmapDisabled)
23:18
Merge the STAT4 capability into trunk. (check-in: a32af0abe5 user: drh tags: trunk)
20:45
Change MAX_PATH related defines to use character lengths where WCHARs are used. (check-in: 0a497083e9 user: mistachkin tags: mmapDisabled)
19:36
Merge updates from trunk. (check-in: 9d6860098f user: mistachkin tags: mmapDisabled)
14:30
Fix for builds with both SQLITE_OMIT_WAL and SQLITE_MAX_MMAP_SIZE=0 defined. (check-in: edd5dbdc32 user: dan tags: trunk)
04:50
Version 3.8.0 (check-in: f64cd21e2e user: drh tags: trunk, release, version-3.8.0)
2013-08-24
23:55
Several modifications to the use of the MAX_PATH macro on Windows to improve consistency. (check-in: bda4c47df8 user: mistachkin tags: mmapDisabled)
01:12
Fix a couple compilation issues on Unix. (check-in: 25b029d8f3 user: mistachkin tags: mmapDisabled)
00:59
Unify the result of PRAGMA mmap_size when mmap support is disabled. (check-in: 032c31593d user: mistachkin tags: mmapDisabled)
2013-08-23
17:54
Merge recent trunk changes. (check-in: 6cc54de88b user: dan tags: sessions)
17:43
Add the sqlite3session_table_filter API to the sessions extension. (check-in: b7e4dd889d user: dan tags: sessions)
17:33
Adjust #ifdefs to get SQLITE_OMIT_AUTOMATIC_INDEX and SQLITE_OMIT_PAGER_PRAGMAS to build. (check-in: ed31020162 user: drh tags: trunk)
16:47
Fix a requirements comment in a test case. No changes to the testcase itself nor to any code. (check-in: 3ad1f998e5 user: drh tags: trunk)
12:04
Modify script mkautoconfamal.sh to use the download.html naming convention for the tar.gz it creates. (check-in: 375b4e3db0 user: dan tags: trunk)
2013-08-22
15:07
Merge in minor bug fixes and performance tweaks from trunk leading up to the version 3.8.0 release. (check-in: 831492dca8 user: drh tags: sessions)
02:56
Defer the creation of automatic indices until the index is actually used. (check-in: 0775501acf user: drh tags: trunk)
2013-08-21
23:42
Simplify the btreeGetPage() routine so that it uses a single flag parameter in place of two boolean parameters. (check-in: 617e23ec28 user: drh tags: trunk)
22:54
Minor performance tweaks to the pager. (check-in: 9ae1f9ce7e user: drh tags: trunk)
22:09
Refactor the sqlite3_randomness() implementation for improved performance. (check-in: 4144dffb57 user: drh tags: trunk)
21:12
Simplification to the StrAccum object and the sqlite3StrAccumAppend() method that also results in slightly better performance. (check-in: 700dbbea86 user: drh tags: trunk)
20:04
Minor fixes for test cases. No code changes. (check-in: ef2a6a3736 user: dan tags: trunk)
19:59
Fix typo in test. (check-in: f9859fe93b user: mistachkin tags: trunk)
19:13
Update sqlite3MemCompare() to try common cases first, for a modest speed improvement. (check-in: b25bac7919 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: 854ba30490 user: dan tags: trunk)
15:52
Performance enhancement in btreeParseCellPtr(). (check-in: a17190a229 user: drh tags: trunk)
15:45
Fix an FTS4 problem introduced by [361084e1eb]. (check-in: 5f35c8cb8f user: dan tags: trunk)
12:04
Candidate fix for [d666d600a6]. (check-in: 781592f32c user: dan tags: trunk)
07:25
Fix a minor problem in progress.test. No code changes. (check-in: a95ae93b32 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: 356c6c5931 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: ef192abb82 user: dan tags: trunk)
17:00
Ignore IS NOT NULL and NOT NULL constraints on NOT NULL columns. (check-in: e476408e3c user: drh tags: trunk)
16:08
Test script changes to support testing sqlite3_interrupt(). (check-in: 0cede9f898 user: dan tags: trunk)
13:02
Merge performance enhancements and compiler warning fixes from trunk. (check-in: 3e4033285d user: drh tags: sessions)
09:26
Add test cases for tointeger() and toreal() functions. Fixes for several tests. (check-in: 5e1e9fd5e4 user: mistachkin tags: toTypeFuncs)
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: 7f72fc4f47 user: drh tags: trunk)
02:07
Fix compiler warnings and boundary cases for the tointeger() and toreal() functions. (check-in: 4438b98658 user: drh tags: toTypeFuncs)
00:42
Performance optimizations in the VDBE and especially to the OP_Next and related opcodes. (check-in: d78c5d89de user: drh tags: toTypeFuncs)
2013-08-19
23:18
Performance improvement to SQL function calls in the VDBE. (check-in: d2efea1682 user: drh tags: toTypeFuncs)
22:22
Additional performance improvements in sqlite3BtreeNext() and sqlite3BtreePrevious(). (check-in: 6f99b54aed user: drh tags: toTypeFuncs)
21:15
Add tointeger() and toreal() SQL functions. (check-in: af49707211 user: mistachkin tags: toTypeFuncs)
20:04
Performance improvement in sqlite3BtreeNext() and sqlite3BtreePrevious() for the common case of a valid cursor. (check-in: dc65ad8c4c 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: d6c4d48a00 user: dan tags: trunk)
18:37
Fix test script pragma2.test so that it works with ENABLE_MEMORY_MANAGEMENT. (check-in: 6acf728100 user: dan tags: trunk)
18:17
Add some extra assert() statements to silence a few clang warnings. (check-in: 1c63e9515b user: dan tags: trunk)
14:23
Remove unused variables from the command-line shell sources. (check-in: 753a402e90 user: drh tags: trunk)
14:19
Fix a potential reference off the end of an array in the query planner. (check-in: f15591f802 user: drh tags: trunk)
12:49
Merge in all the latest updates and enhancements from trunk. (check-in: 67587a3348 user: drh tags: sessions)
11:15
Fixes for harmless compiler warnings. (check-in: a0d9ca4f07 user: drh tags: trunk)
2013-08-17
18:57
Adjustments to #ifdefs in analyze.c to all a clean compile with no extra code with both ENABLE_STAT3 and ENABLE_STAT4 and with neither. (Closed-Leaf check-in: f86b75b6c7 user: drh tags: sqlite_stat4)
16:37
Add the cache_spill pragma. Change the fullfsync and checkpoint_fullfsync pragmas to apply to all attached databases. (check-in: 65a85a156f 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: d07c4331a2 user: drh tags: cache_spill)
00:25
Test cases for the cache_spill pragma. (check-in: b85c9ec5e0 user: drh tags: cache_spill)
2013-08-16
20:42
Add the cache_spill pragma. (check-in: cdb181c04f user: drh tags: cache_spill)
17:46
Add a test for the problem fixed by [91733bc485]. (check-in: 5c59110481 user: dan tags: sqlite_stat4)
17:18
In sqlite3Stat4ProbeSetValue() change a local variable name iVar to iBindVar to avoid confusion with iVal, and fix a place where the name was actually confused. (check-in: 91733bc485 user: drh tags: sqlite_stat4)
14:51
Merge the fork that resulted from a check-in race. (check-in: b7fe4f362b user: drh tags: sqlite_stat4)
14:49
Fix valueFromExpr() so that it returns SQLITE_NOMEM following an OOM when changing text encodings. Also fix some asserts to accommodate OOM errors. (check-in: dc1ccd09c4 user: drh tags: sqlite_stat4)
14:48
Fixes for test code that was not working with utf16 databases. Run the analyze*.test scripts as part of the 'utf16' permutation test. (check-in: fe99494d99 user: dan tags: sqlite_stat4)
14:23
Add extra tests. No code changes. (check-in: 949127d53e user: dan tags: sqlite_stat4)
14:09
Avoid buffer overreads and false OOM error reports that could be caused by corrupted sample records in the sqlite_stat4 table. (check-in: 9f85b6a52a user: dan tags: sqlite_stat4)
13:34
Fix a potential segfault following an OOM while running ANALYZE. (check-in: 0118797823 user: drh tags: sqlite_stat4)
12:26
Merge recent trunk changes into the STAT4 branch. (check-in: c69b512af2 user: drh tags: sqlite_stat4)
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: f2d175f975 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: c78b357c00 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: 53cd9ebfaf user: mistachkin tags: trunk)
19:56
Fix a crash that can occur if the sqlite_stat3 or sqlite_stat4 table is corrupt. (check-in: d51df8a8fc user: dan tags: sqlite_stat4)
18:43
Fix a crash that can occur following an OOM fault. (check-in: 9f80b26870 user: dan tags: sqlite_stat4)
16:18
Change some assert() statements in vdbe.c to ensure that a memory cell used to store a VdbeCursor object is not also used for some other purpose. (check-in: 71070c9fce user: dan tags: sqlite_stat4)
16:15
Make sure the ANALYZE command allocates enough VDBE registers. (check-in: 46fec9b1a1 user: drh tags: sqlite_stat4)
14:39
Add tests for sqlite_stat4 sample selection. And a fix for the same. (check-in: 1fb4d9d6f2 user: dan tags: sqlite_stat4)
14:27
Clarification and typo fixes in comments related to name resolution. No changes to code. (check-in: f30abdf9d8 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: c23acba11b user: mistachkin tags: dbgTestFixture)
2013-08-14
19:54
Change the way ANALYZE works to use a single cursor when scanning indices. (check-in: bdce612b35 user: dan tags: sqlite_stat4)
00:20
Fix a few more minor comment typos. No changes to code. (check-in: 9e999081a5 user: mistachkin tags: trunk)
2013-08-13
22:33
Fix an outdated comment and a comment typo. No changes to code. (check-in: ac33695949 user: mistachkin tags: trunk)
2013-08-12
20:14
If ENABLE_STAT3 is defined but ENABLE_STAT4 is not, have ANALYZE create and populate the sqlite_stat3 table instead of sqlite_stat4. (check-in: cca8bf4372 user: dan tags: sqlite_stat4)
17:31
If there is data in both the sqlite_stat4 and sqlite_stat3 tables for a single index, ignore the sqlite_stat3 records. (check-in: 2a41736728 user: dan tags: sqlite_stat4)
17:00
Handle a NULL input to decodeIntArray() that can result from a prior OOM. (check-in: fa1588adab user: drh tags: sqlite_stat4)
16:34
Re-enable reading from the sqlite_stat3 table (as well as sqlite_stat4). (check-in: 6d45078e62 user: dan tags: sqlite_stat4)
11:21
Fix a bug in calculating the average number of entries for keys not present in the sqlite_stat4 table. (check-in: ec3ffb1748 user: dan tags: sqlite_stat4)
09:29
Fix minor problems caused by adding the rowid to the records in stat4. (check-in: 088d1ff948 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: 3a5e8ab7dd 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: 5bcccb93df user: dan tags: sqlite_stat4)
14:07
Update the header comment on analyze.c to describe the sqlite_stat4 table format. (check-in: 4d97809d6b 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: 9228aaf54d 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: e50dc30523 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: e2b597cafe 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: 9fec3e3828 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: f783938ea9 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: 3adb6c1bfd 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: 7b70b419c4 user: dan tags: sqlite_stat4)
18:42
Merge latest trunk changes with this branch. (check-in: 08f74c45ec user: dan tags: sqlite_stat4)
18:07
Merge in the latest changes from trunk. (Closed-Leaf check-in: c78b0d302c user: drh tags: uri-enhancement)
16:38
Fix typos in a comment in analyze.c. No code changes. (check-in: 812ed0c58f user: dan tags: sqlite_stat4)
16:15
Change the way samples for the sqlite_stat4 table are collected. (check-in: 13ed5ac135 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: 1e80c4b12d user: drh tags: sqlite_stat4)
15:57
Remove the unused sqlite3Utf8to16() utility function. (check-in: 9159b43eb2 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: 353950a526 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: 0ad83ceb79 user: drh tags: trunk)
01:18
Fix typos and add clarification to comments in where.c. No code changes. (check-in: f8d8790ede user: drh tags: trunk)
2013-08-06
20:15
Fixes for builds without SQLITE_ENABLE_STAT4. (check-in: 84999e27cc 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: 2973f5ca73 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: 153c645025 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: 89930ea3c3 user: drh tags: trunk)
18:21
Update the configure script to use the latest version number (3.8.0). (check-in: 52e8ec5e24 user: drh tags: trunk)
17:24
Add a testcase() macro to verify OOM coverage. (check-in: d43dcbc488 user: drh tags: trunk)
16:56
Remove unreachable branches in expr.c, replacing them with assert() and testcase() statements. (check-in: 9103c27ceb user: drh tags: trunk)
14:52
Merge in the latest changes from trunk. (check-in: 69d5bed017 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: 5dcc2d91bd user: drh tags: trunk)
14:01
Clean up the input reader in the command-line shell for improved legibility and performance. (check-in: 2b1743d601 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: 924f7e4d7a 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: c589b2fed7 user: drh tags: trunk)
21:54
For the vtshim module, always zero out the xChildDestroy function pointer after calling it. (check-in: 240f7252c6 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: 7301bedd94 user: drh tags: trunk)
19:04
Modify the vdbe code generated by ANALYZE to use fewer memory cells and cursor slots. (check-in: 4a51cf289f 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: 3a71afe674 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: 28979dcd16 user: drh tags: trunk)
12:31
Add a missing '#include "tcl.h"' to test_rtree.c. (check-in: 4b8b426f10 user: drh tags: trunk)
05:34
Fix a couple of problems in code related to sqlite_stat4. (check-in: badd24d987 user: dan tags: sqlite_stat4)
2013-08-03
20:24
Begin adding experimental sqlite_stat4 table. This commit is buggy. (check-in: 2beea303a1 user: dan tags: sqlite_stat4)
2013-08-02
23:40
Updates to requirements marks. No code changes. (check-in: 213020769f 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: 7e1acb3907 user: drh tags: sessions)
20:11
Add NEVER() and ALWAYS() macros on some unreachable yet prudent branches. (check-in: c5c0a8ab6c user: drh tags: trunk)
16:41
Add support for partial indices. (check-in: 478113f18b user: drh tags: trunk)
14:18
Silently ignore database name qualifiers in CHECK constraints and in partial index WHERE clauses. (Closed-Leaf check-in: 2e8c845eb5 user: drh tags: partial-indices)
13:31
Fix typos in documentation for SQLITE_DBSTATUS_DEFERRED_FKS . No changes to code. (check-in: f3efbfcd51 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: e3c8935f87 user: drh tags: trunk)
22:26
Fix an incorrect expected result in a test case in corruptG.test. (check-in: 6913831ad2 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: e436b2f4e5 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: c3baca99f4 user: drh tags: trunk)
17:43
Add test case for the problem fixed by [127a5b776d]. (check-in: 65816718b5 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: 127a5b776d 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: 31b4e63b3c 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: 2e3df0bc90 user: drh tags: partial-indices)
15:09
More test cases and corresponding bug fixes. (check-in: 0c8cfdfae2 user: drh tags: partial-indices)
13:04
Fill out an initial implementation of the sqlite3ExprImpliesExpr() function. (check-in: 8e07aa2ad5 user: drh tags: partial-indices)
12:21
Refactor internal function name sqlite3VdbeGetValue() to sqlite3VdbeGetBoundValue(). (check-in: 81834c3023 user: drh tags: partial-indices)
04:39
Fix the ANALYZE command to work with partial indices. (check-in: 60353124f4 user: drh tags: partial-indices)
03:36
Test cases and bug fixes for the partial index logic. (check-in: 6b73ae7c12 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: fb9044d15a 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: 136fc2931b 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: 8ca3eac111 user: drh tags: partial-indices)
22:39
Slight modifications to path name translation handling for Cygwin. (check-in: 33ba1f4c5d 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: c93d891b03 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: bb06e15790 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: f2aa7842c8 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: 6794b2dcb4 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: eb6d4278b8 user: drh tags: trunk)
2013-07-29
19:03
For the MSVC makefile, recompile vdbe.lo and parse.lo first. (check-in: 9e819f0f12 user: mistachkin tags: trunk)
15:54
Comment and preprocessor macro cleanup. (check-in: c0809b5e32 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: a94a66d10f 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: 8bcbb33fd0 user: drh tags: trunk)
16:41
Fix a typo in main.c: SQLITE_DEAULT_AUTOMATIC_INDEX -> SQLITE_DEFAULT_AUTOMATIC_INDEX (check-in: cc78e21c77 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: 4698a82ef8 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: de05eb75ec user: drh tags: uri-enhancement)
2013-07-23
22:28
Get the new URI logic working for Windows. (Closed-Leaf check-in: 0165789f08 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: 74c12dee17 user: drh tags: uri-enhancement)
2013-07-20
00:39
Merge updates from trunk. (check-in: dd4b77c82a user: mistachkin tags: toTypeFuncs)
00:34
Add 'queryplantest' target to the MSVC makefile. (check-in: ad0551e039 user: mistachkin tags: trunk)
2013-07-19
23:58
Fixes to test numbering. (check-in: f755b4b21c user: mistachkin tags: trunk)
2013-07-18
20:28
Remove unused "codec" code from the command-line shell. (check-in: 37abfe0c1e user: drh tags: trunk)
18:45
Improved documentation for sqlite3_set_auxdata(). Ticket [406d3b2ef91c]. (check-in: 62465ecba7 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: 153deac8fa user: dan tags: trunk)
18:28
Fix a typo in the previous commit. (Closed-Leaf check-in: cd9096e64b 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]. <i>DRH adds:</i> Stray text accidentally inserted into vdbe.c just prior to the commit breaks the build. (check-in: 71effa59c9 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: 5dcffa671f 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: 7acc8cd32d 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: b1b0de29fd user: drh tags: trunk)
18:12
Enhance the sqlite3_analyzer tool to give reports on the sizes of individual indices. (check-in: 3b4096cc8a 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: 64bf8148b8 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: 20dba3a7fb 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: 5e19d05410 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: cdce87eb88 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: 92adaee5bd 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: 7d829bdea3 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: 8dfc0b78c3 user: drh tags: sessions)
15:22
Add the experimental "query_only" pragma. (check-in: 6557c40798 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: 527121ac3c 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: d39e65fe70 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: 3a2ab74c85 user: drh tags: sessions)
03:09
Environment variable names in nmake must be in all uppercase. (check-in: 0328e873f2 user: mistachkin tags: vsix2013)
2013-07-10
21:33
More corrections to VS 2013 integration. (check-in: 7a8b0e362b user: mistachkin tags: vsix2013)
19:53
Use the VisualStudioVersion variable instead of _MSC_VER. (check-in: 603e9db817 user: mistachkin tags: vsix2013)
19:39
More changes to support MSVC 18. (check-in: 29c458e2c2 user: mistachkin tags: vsix2013)
18:14
Fix harmless compiler warnings in the progress callback logic. (check-in: 908141d5bf 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: ece960c496 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: 3e8b02011d 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: f003bea9fe user: drh tags: trunk)
13:05
Pull in all the latest changes from trunk. (check-in: af3ca4c6e5 user: drh tags: sessions)
12:36
Modify several extensions to use the new exported function naming. Fix some shared library compilation issues. (check-in: 1e39f85077 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: 52a49cbc16 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: 776e65f98c 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: 3b30b75b34 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: 9415db6ef2 user: drh tags: trunk)
2013-07-06
18:07
Fixes for test cases running in the "mmap" permutation. (check-in: cdb97d41ab 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: 0ae7e75b21 user: dan tags: trunk)
2013-07-05
19:16
Fix two test script problems revealed by permutations.test. (check-in: 60cf7e4487 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: ff8c3f7840 user: dan tags: trunk)
11:10
Add missing "static" qualifier to functions in where.c. (check-in: 5c906e914b user: dan tags: trunk)
10:46
Make a couple of implicit casts explicit to fix compiler warnings. (check-in: 9676280a93 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: f2ab874782 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: 1452defb8c 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: 1d44e5d3c2 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: c2972b6aed user: dan tags: sessions)
15:25
Remove a surplus local variable (check-in: 91bc840eea user: drh tags: trunk)
10:06
Fix a minor typo in a comment in where.c. (check-in: 4a9d51e792 user: dan tags: trunk)
00:06
Fix harmless typos in comments of two extensions. (check-in: 1c3ed47b71 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: 3d49c593dc 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: 72919ec34f user: drh tags: trunk)
11:05
Further minor comment corrections and enhancements in where.c. (check-in: 0d68d4d018 user: drh tags: trunk)
10:38
Make a trivial comment fix in where.c. (check-in: 0ffaab3b9c 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: 60b65e5ee3 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: b003b2b2b6 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: 338826ef3f 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: 459b317902 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: f308c48517 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: 60c19b8679 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: 5480d124b7 user: drh tags: trunk)
01:24
Refactor the Vdbe.noIO field as Vdbe.bIsReader. The meaning is inverted. (check-in: 59f98c5c24 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: 14f7969634 user: drh tags: trunk)
19:12
Fix an error in e_expr.test. (check-in: fd4ece18c9 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: 1937fd8eec 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: 22bced36f0 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: 4c02b344f5 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: 656a1fe5dd 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: e88fd5b221 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: 361c22969a 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: 93f632152e 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: 6c3839ef31 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: ebac5afa47 user: dan tags: trunk)
13:31
Bring the sessions branch up-to-date with all the latest trunk changes. (check-in: 086a127236 user: drh tags: sessions)
13:22
Add the SQLITE_STMTSTATUS_VM_STEPS option for sqlite3_stmt_status(). (check-in: bd4267f17b 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: 6505e2ab02 user: drh tags: trunk)
11:43
Cut over the next generation query planner. Increase the version number to 3.8.0. (check-in: 0fe31f60ca 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: 19ab4811d5 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: f1366bab73 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: d929df9b1b user: drh tags: omit-join-table-opt)
2013-06-21
19:39
Enhance error message handling for the vtshim module. (Closed-Leaf check-in: b4a0d5327a user: mistachkin tags: disposable-vtable)
19:29
Merge in the latest changes from trunk. Simplify the implementation of the tointeger() and toreal() functions. Fix test cases and put unambiguous labels on all testcase names. (check-in: 9b837b0508 user: drh tags: toTypeFuncs)
18:36
Remove an unused function declaration from the FTS3 source code. (check-in: 096ae1d8f9 user: drh tags: trunk)
18:32
Merge updates from trunk. (check-in: fa2a91e6c6 user: mistachkin tags: toTypeFuncs)
18:29
Merge the fts4-notindexed branch with the trunk. (check-in: 361084e1eb user: dan tags: trunk)
18:18
Add a few more tests for the fts4 notindexed option. (Closed-Leaf check-in: b53c0c41f9 user: dan tags: fts4-notindexed)
17:30
Add the "notindexed" option to fts4. (check-in: 8ff2b8f594 user: dan tags: fts4-notindexed)
07:54
Update comments and package flavor error message. (check-in: 9d1b96182a 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: d7a25cc797 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: ca839723a2 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: 2c2577e69c 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: 949425d467 user: dan tags: fts-languageid-bits)
19:07
Use the target platorm version in the VS props file as well. (check-in: ce5a8cc1cf user: mistachkin tags: vsix2013)
18:53
VSIX tooling changes to support Visual Studio 2013. (check-in: c5954c58c0 user: mistachkin tags: vsix2013)
18:32
Fix some issues related to ORDER BY and fts tables with a non-zero languageid_bits setting. (check-in: 81527768ef user: dan tags: fts-languageid-bits)
17:32
Add a NEVER() macro and an explanation comment around an unreachable branch in the STAT3 logic. (check-in: 604c3c5de6 user: drh tags: nextgen-query-plan-exp)
16:22
Add extra tests for fts with a non-zero languageid_bits setting. Fix querying by docid with the same. (check-in: b1df00f3f1 user: dan tags: fts-languageid-bits)
14:17
Pull in the posix_fallocate() change from trunk. (check-in: d94db3fd92 user: drh tags: nextgen-query-plan-exp)
14:07
Disable posix_fallocate() for all systems, all the time, unless the HAVE_POSIX_FALLOCATE compile-time macro is supplied. (check-in: b674462243 user: drh tags: trunk)
11:48
Add tests (and a fix) for large and small fts docid values with various languageid_bits settings. (check-in: 8dc261b765 user: dan tags: fts-languageid-bits)
11:01
Fix fts handling of the case where both a rowid and docid are specified as part of an insert statement. (check-in: 610e7e9612 user: dan tags: fts-languageid-bits)
01:27
The vtshim xCreate and xConnect functions need to store the pAux pointer into the newly created vtable object. Style fixes. (check-in: 43913c7bd5 user: mistachkin tags: disposable-vtable)
00:20
Integration adjustments for the vtshim module. (check-in: bf2e28ddb2 user: mistachkin tags: disposable-vtable)
2013-06-19
23:48
Merge in trunk changes to os_unix.c that allow the code to build on unix platforms that lack posix_fallocate(). (check-in: bf5764067a user: drh tags: nextgen-query-plan-exp)
20:13
Add the languageid_bits= option to fts. Still some problems to work out. (check-in: d36d7e6833 user: dan tags: fts-languageid-bits)
18:01
Add in the cost of doing a table lookup on OR searches. Make test case changes to deal with difference in STAT3 behavior. (check-in: d97898e8e3 user: drh tags: nextgen-query-plan-exp)
14:49
Only default HAVE_POSIX_FALLOCATE on for linux, and then only if it is not previously defined. (check-in: 2b2ade9278 user: drh tags: trunk)
14:28
Only enable posix_fallocate by default on linux and mac. (check-in: b9b30d4f98 user: drh tags: trunk)
13:59
Additional compiler warning fixes. (check-in: 8d2ae8e2f3 user: drh tags: nextgen-query-plan-exp)
13:32
Fix a harmless uninitialized variable warning. (check-in: 9d3ef3bd2c user: drh tags: nextgen-query-plan-exp)
12:34
Simplify and add invariants to the WhereLoop merging logic inside of whereLoopInsert(). (check-in: 8f27f35f28 user: drh tags: nextgen-query-plan-exp)
03:27
Fix compiler warnings. Fix a harmless off-by-one error in the solver. (check-in: 10021941d0 user: drh tags: nextgen-query-plan-exp)
2013-06-18
20:06
Adjustments to testcase() macros for improved testability. (check-in: 4fbb0c4d26 user: drh tags: nextgen-query-plan-exp)
01:52
Remove some redundant and unreachable code. (check-in: 4c6d58d75d user: drh tags: nextgen-query-plan-exp)
2013-06-17
21:37
Add more testcase() macros. Fix a memory leak following OOM in the virtual table analysis logic. (check-in: b61402af69 user: drh tags: nextgen-query-plan-exp)
18:20
Simplifications to the NGQP. Add the queryplantest makefile target. Add testcase() macros in the NGQP. (check-in: eaf1f1b405 user: drh tags: nextgen-query-plan-exp)
14:18
Use automatic indices on subqueries of the FROM clause when appropriate. (check-in: e8f124284e user: drh tags: nextgen-query-plan-exp)
2013-06-15
15:11
Fix compiler warnings. (check-in: 3e8ac46918 user: drh tags: nextgen-query-plan-exp)
2013-06-14
13:27
Comment tweaks in where.c. No changes to code. (check-in: cecc5fdd5d user: drh tags: nextgen-query-plan-exp)
02:51
Add a new ORDER BY optimization that bypasses ORDER BY terms that are constrained by == and IS NULL terms of the WHERE clause. (check-in: b920bb70bb user: drh tags: nextgen-query-plan-exp)
2013-06-13
17:58
An index might be useful for ORDER BY if any indexed column is in the ORDER BY clause, not just the first indexed column. (check-in: ade473b5ae user: drh tags: nextgen-query-plan-exp)
17:28
Make sure that disabling the covering index scan optimization does not prevent a covering index from being used to satisfy an ORDER BY clause. (check-in: e8b7ea8202 user: drh tags: nextgen-query-plan-exp)
15:50
Restore the ability to do a BETWEEN query on the rowid. Also fix a nearby comment. (check-in: 459a7b9068 user: drh tags: nextgen-query-plan-exp)
15:16
Make the MIN() and MAX() macros available in sqliteInt.h. Add TUNING comments to the NGQP and adjust costs slightly. (check-in: 3a72af2a95 user: drh tags: nextgen-query-plan-exp)
14:51
Fix an off-by-one error in the WhereCost to integer conversion. (check-in: b5ca80d924 user: drh tags: nextgen-query-plan-exp)
00:32
Add a prototype for an extension that sits in between the SQLite native code virtual table interface and a CLR IDisposable object. (check-in: 10bba8d082 user: drh tags: disposable-vtable)
2013-06-12
20:18
Activate the one-pass optimization. Update comments, especially the descriptions of the various objects. (check-in: e120c558a5 user: drh tags: nextgen-query-plan-exp)
17:55
Bug fixes in the handling of virtual tables. (check-in: 25c0f7292a user: drh tags: nextgen-query-plan-exp)
17:17
Merge all changes from trunk. (check-in: f2e15b1974 user: drh tags: nextgen-query-plan-exp)
17:08
"make test" now passing. (check-in: addd7f466d user: drh tags: nextgen-query-plan-exp)
14:52
Add the "queryplanner" test permutation. Continuing refinements to NGQP. (check-in: 25e2cde105 user: drh tags: nextgen-query-plan-exp)
03:48
Continue refining the NGQP (check-in: 40567fddd4 user: drh tags: nextgen-query-plan-exp)
02:53
Another attempt at disabling virtual tables. This one leaks memory. (Closed-Leaf check-in: 399e28283b user: drh tags: disable-vtab)
2013-06-11
22:41
Add the ability to disable future calls to virtual table methods by invoking sqlite3_create_module() with a NULL sqlite3_module pointer. (check-in: 6b77d61adb user: drh tags: disable-vtab)
18:59
Improved processing of DISTINCT. (check-in: ba897100fe user: drh tags: nextgen-query-plan-exp)
14:22
Add the SQLITE_FTS3_MAX_EXPR_DEPTH compile time option. (check-in: 24fc9d4438 user: dan tags: trunk)
13:30
Fix the Parse.nQueryLoop state variable to work with NGQP. (check-in: f1cac24f06 user: drh tags: nextgen-query-plan-exp)
02:36
Use a logarithmic rather than linear cost and row-count measures. Do not report row count estimates in EQP output. (check-in: b777b1097d user: drh tags: nextgen-query-plan-exp)
02:32
Fixes to EXPLAIN QUERY PLAN output. Change weights back to something closer to what they are in legacy. More test case fixes. (Closed-Leaf check-in: 36373b85f9 user: drh tags: nextgen-query-plan-logcost)
01:50
Handle virtual tables correctly when using logarithmic costs. Fixes to test cases. (check-in: e612664aa2 user: drh tags: nextgen-query-plan-logcost)
2013-06-10
23:30
Fix test cases for the new EXPLAIN QUERY PLAN format. Add the wherecosttest tool. Other fixes to logarithm cost. (check-in: aa580e368e user: drh tags: nextgen-query-plan-logcost)
20:46
Fix some minor issues with logarithmic cost in NGQP. (check-in: 69cf877283 user: drh tags: nextgen-query-plan-logcost)
19:12
First attempt to store costs and row counts as a logarithm. (check-in: 9e8109673c user: drh tags: nextgen-query-plan-logcost)
14:56
Simplification and performance tweak to the high-speed NGQP bypass. (check-in: 0f8a38ee54 user: drh tags: nextgen-query-plan-exp)
12:34
Performance improvements for whereScan methods. (check-in: aae14350a3 user: drh tags: nextgen-query-plan-exp)
12:17
Add a high-speed bypass for the NGQP for the common case of a simply query with quality constraints that outputs a single row. (check-in: 8d1ba30921 user: drh tags: nextgen-query-plan-exp)
12:15
Minor problems in the high-speed NGQP fixed. (Closed-Leaf check-in: 20eeccf1f2 user: drh tags: nextgen-query-plan-fast)
2013-06-09
20:22
Fix the memory leak in CREATE TABLE that occurs if there are two or more COLLATE clauses on the same column. (check-in: 7e3820e5b9 user: drh tags: trunk)
20:16
Add test cases to demonstrate the memory leak on the COLLATE clause. (Closed-Leaf check-in: 0a60212c9c user: drh tags: memleak)
17:21
High-speed version of NGQP. Still has some minor problems. (check-in: db2415fa67 user: drh tags: nextgen-query-plan-fast)
2013-06-08
19:58
Candidate fix for a memory leak that occurs if a CREATE TABLE statement contains two or more COLLATE clauses on the same column definition. (check-in: 60fc77bc53 user: drh tags: memleak)
2013-06-07
22:12
Improve manual cleaning step performed by the multi-platform build tool for MSVC. (check-in: d5bc1fe1c4 user: mistachkin tags: trunk)
02:04
Must faster computation of estimated logarithm. (check-in: dfbca3acae user: drh tags: nextgen-query-plan-exp)
00:29
Further prepare-time performance improvements. (check-in: 02741d177b user: drh tags: nextgen-query-plan-exp)
2013-06-06
23:44
Performance improvements. (check-in: 9f8e84ab98 user: drh tags: nextgen-query-plan-exp)
23:02
Improved management of the space to hold WhereLoop.aLTerm[]. (check-in: d4141ecbea user: drh tags: nextgen-query-plan-exp)
19:25
Remove some commented-out code that was mistakenly left in the previous check-in. (check-in: b4a5dbad36 user: drh tags: nextgen-query-plan-exp)
19:16
Clean up and reorganize the elements of the various objects in the analysis tree for the NGQP. (check-in: bfc76ae1e9 user: drh tags: nextgen-query-plan-exp)
2013-06-05
23:39
Move the definitions of the WhereLevel and WhereInfo objects out of sqliteInt.h and into where.c. This will facilitate future refactoring of the internal query planner data structures. (check-in: 1574653b9b user: drh tags: nextgen-query-plan-exp)
17:53
Performance improvement for the OR-clause analysis in the NGQP. (check-in: 9b1c4954e4 user: drh tags: nextgen-query-plan-exp)
16:19
Minor performance tuning of the NGQP. (check-in: cbef38c2d1 user: drh tags: nextgen-query-plan-exp)
16:17
Up until now the fts4 "unicode61" tokenizer has treated all private use codepoints except the first and last of each of the three ranges as alphanumeric (eligible to be part of tokens). This commit fixes this so that all private use codepoints are considered alphanumeric. In other words, it fixes the handling of codepoints 0xE000, 0xF8FF, 0xF0000, 0xFFFFD, 0x100000 and 0x10FFFD. (check-in: 6cfd9af525 user: dan tags: trunk)
12:47
Performance tweak to whereLoopInsert(). (check-in: 1c4a78807b user: drh tags: nextgen-query-plan-exp)
12:18
Add a test case contributed on the mailing list that works in NGQP but fails in legacy. (check-in: 96afe50866 user: drh tags: nextgen-query-plan-exp)
2013-06-04
23:40
Update some variable names and comments in the ORDER BY optimizer. Fix a bug in the ORDER BY optimizer dealing with IS NULL constraints. Updates to test cases. (check-in: cf96eb5945 user: drh tags: nextgen-query-plan-exp)
18:27
Restore the PRAGMA reverse_unordered_selects behavior. (check-in: f49cd6c4e7 user: drh tags: nextgen-query-plan-exp)
18:03
Get the index-only optimization working for OR queries. (check-in: 774d5ff857 user: drh tags: nextgen-query-plan-exp)
15:31
Test case updates. (check-in: 0360fec7c0 user: drh tags: nextgen-query-plan-exp)
13:37
Better determination of when an index is UNIQUE. (check-in: 63fd025ad9 user: drh tags: nextgen-query-plan-exp)
13:07
Increase the estimated full-scan cost for an FTS3 table. (check-in: 8d9f29f847 user: drh tags: nextgen-query-plan-exp)
12:58
Fix a display issue with EXPLAIN QUERY PLAN. (check-in: ff2fa40755 user: drh tags: nextgen-query-plan-exp)
12:42
Refactor the ORDER BY optimizer in the NGQP so that it is easier to maintain and so that it can support optimizing out GROUP BY and DISTINCT clauses. (check-in: e605c468e3 user: drh tags: nextgen-query-plan-exp)
2013-06-03
22:08
Remove more vestiges of sqlite_query_plan from the test cases. (check-in: eb27086e8a user: drh tags: nextgen-query-plan-exp)
21:25
Adjust the xBestIndex methods on both the fuzzer and transitive_closure virtual tables so that an unused MATCH operator gets a really large cost. Remove ambiguities from the fuzzer test cases. (check-in: e2c1af78b6 user: drh tags: nextgen-query-plan-exp)
20:46
Pull in recent trunk changes. Fix the ORDER BY optimizer so that it is better able to deal with COLLATE clauses. Clean up ambiguities in the descidx1.test script. (check-in: 6bc71dfcf0 user: drh tags: nextgen-query-plan-exp)
20:39
Fix a typo in a collating function inside the e_reindex.test script. (check-in: 4d74fccf02 user: drh tags: trunk)
19:17
Do not use an index fullscan for an UPDATE or DELETE or if disabled by sqlite3_test_control() or sqlite3_config(). (check-in: fabb21854e user: drh tags: nextgen-query-plan-exp)
19:01
Resolve ambiguities in test cases in collate2.test. (check-in: dcbbcb2e6c user: drh tags: nextgen-query-plan-exp)
18:50
Fix a bug in the transitive_closure virtual table that NGQP exposes. Update between.test module to avoid using sqlite_query_plan. (check-in: aa66b86420 user: drh tags: nextgen-query-plan-exp)
18:14
Fix EXPLAIN QUERY PLAN row counts for the rtree virtual table tests. (check-in: 15328987cc user: drh tags: nextgen-query-plan-exp)
17:35
Update the NGQP to make use of STAT3 information if it is available. (check-in: ff134e6ee9 user: drh tags: nextgen-query-plan-exp)
16:56
Honor the orderByConsumed boolean returned from virtual table query planner. (check-in: aaf7f5896d user: drh tags: nextgen-query-plan-exp)
16:03
Fix to the logic that disables constraints on virtual tables. (check-in: 62d382406b user: drh tags: nextgen-query-plan-exp)
15:34
Fix an issue that was causing ORDER BY DESC to come out in ascending order. (check-in: 0298401240 user: drh tags: nextgen-query-plan-exp)
15:24
Virtual tables now always report 25 rows instead of 0 rows in the EXPLAIN QUERY PLAN output. Adjust tests accordingly. (check-in: 7d91f68881 user: drh tags: nextgen-query-plan-exp)
15:07
Set the WHERE_UNIQUE flag on loops that can only run once. (check-in: 510f4d8ecf user: drh tags: nextgen-query-plan-exp)
14:15
Add test cases to verify that ticket [bc1aea7b725f2761] has been fixed in the NGQP. (check-in: 9b97af94ae user: drh tags: nextgen-query-plan-exp)
12:47
Enhance the shell to provide more flexibility when entering numeric arguments on dot-commands. In particular, allow hexadecimal arguments to .wheretrace and .testctrl commands. Cherrypick from [b9578c371ee5]. (check-in: 3bd5ad095b user: drh tags: trunk)
12:34
Further improvements to error handling of the run-time loading of SQLite into TCL. (check-in: 7cc0c4ee11 user: drh tags: trunk)
2013-05-31
20:43
The NGQP might not find a solution if INDEXED BY constraints on the query are set wrong. If that is the case, print a "no query solution" error and abort before trying to use the non-existant solution. (check-in: 42511a7e12 user: drh tags: nextgen-query-plan-exp)
20:28
Do not search using ON clause constraints of LEFT JOINs to the right of the table. (check-in: 723f901a63 user: drh tags: nextgen-query-plan-exp)
20:00
Make sure a unique cursor number is allocated for automatic indices. (check-in: 433d1aecd3 user: drh tags: nextgen-query-plan-exp)
19:14
Do not attempt to generate code in the NGQP if there have been prior errors, since with prior errors some of the expressions might not be fully named resolved. (check-in: 665e4291c6 user: drh tags: nextgen-query-plan-exp)
18:20
Fix a problem with code generation on LEFT JOIN of tables without an index. (check-in: 0b1bee92a0 user: drh tags: nextgen-query-plan-exp)
18:13
Another virtual table fix in NGQP. (check-in: 2f2ce41677 user: drh tags: nextgen-query-plan-exp)
17:55
Fix problems in the virtual table logic for NGQP. (check-in: 23af28e24b user: drh tags: nextgen-query-plan-exp)
15:50
Remove the definitions of objects that are no longer used: WhereCost, WherePlan, and WhereBestIdx. (check-in: 816f8add7e user: drh tags: nextgen-query-plan-exp)
15:36
Improved handling of errors when doing run-time loading of an SQLite shared-library into TCL. (check-in: b3f23d1864 user: drh tags: trunk)
15:18
Allow tracing of whereLoopInsert() when the 0x8 bit is set on ".wheretrace". Remove the use of sqlite_query_plan from where2.test. Fix a bug in the code generator for OR clause optimizations. (check-in: 707f032326 user: drh tags: nextgen-query-plan-exp)
14:31
Enhance the shell to provide more flexibility when entering numeric arguments on dot-commands. In particular, allow hex arguments to .wheretrace. (check-in: b9578c371e user: drh tags: nextgen-query-plan-exp)
13:36
Futher enhancements to the ORDER BY optimizer. (check-in: d8efa5f8b6 user: drh tags: nextgen-query-plan-exp)
12:43
Improved detection of unnecessary ORDER BY clauses. (check-in: 58805eb36b user: drh tags: nextgen-query-plan-exp)
11:57
Fix the constructAutomaticIndex() routine so that it works with NGQP. (check-in: 5e1e613995 user: drh tags: nextgen-query-plan-exp)
2013-05-30
23:21
Improvements to the ORDER BY suppressor in the NGQP. (check-in: 24a2e9ddce user: drh tags: nextgen-query-plan-exp)
22:27
Incremental check-in with various NGQP fixes. Many tests still fail. (check-in: a51d8c9249 user: drh tags: nextgen-query-plan-exp)
19:29
Futher simplifications to the NGQP. Fix some test cases to use EXPLAIN QUERY PLAN rather than the (now obsolete) sqlite_query_plan global variable. (check-in: ae985db4fa user: drh tags: nextgen-query-plan-exp)
19:28
The expected result in a test case can be of the form "*glob*" or "~*glob*" to match or not match the GLOB pattern. This is useful for matching EXPLAIN QUERY PLAN output that contains regular expression syntax characters like "?", "(", and ")". (check-in: a3b4e261bd user: drh tags: nextgen-query-plan-exp)
17:43
Cut over the NGQP query planner. Remove lots of legacy code. This check-in compiles but does not work. The test suite gets incorrect answers and crashes. (check-in: 001539df4b user: drh tags: nextgen-query-plan-exp)
11:48
Merge recent trunk changes into the NGQP branch. (check-in: aebe1f2603 user: drh tags: nextgen-query-plan-exp)
2013-05-29
17:48
Updates to the Codec interface to support codecs on attached databases and to allow rekeying in the middle of a transaction. These changes are only applicable if SQLite is compiled with SQLITE_HAS_CODEC. (check-in: d5b084e9d8 user: drh tags: trunk)
14:22
Add tests for running FTS 'merge' and 'optimize' commands in shared cache mode. (check-in: 09e5a7ad85 user: dan tags: trunk)
2013-05-28
20:25
Add the percentile() SQL function as a loadable extension in the ext/misc directory. (check-in: a64d760d92 user: drh tags: trunk)
17:30
Finish removing the sqlite3.inTrans field. In the previous check-in, it was merely commented out because I failed to select File->Save on my text editor. (check-in: 2f97e38a66 user: drh tags: trunk)
17:25
Remove the obsolete and unused sqlite3.inTrans field. (check-in: c3381cd495 user: drh tags: trunk)
12:11
Many small harmless comment changes. Removal of obsolete comments and fixing misspelled words. No changes to code. (check-in: a0d5cc9315 user: drh tags: trunk)
10:52
Merge autoconf-package branch with trunk. (check-in: a72f50ef76 user: dan tags: trunk)
2013-05-27
18:37
Add the "dist" target to main.mk. For building the amalgamation autoconf package. (Closed-Leaf check-in: 3fdc8b5649 user: dan tags: autoconf-package)
17:59
Update the NGQP to record which loops need be run in reverse order to satisfy ORDER BY clauses. (check-in: 211f7a5374 user: drh tags: nextgen-query-plan-exp)
17:19
Add the files used to build the amalgamation-autoconf package. (check-in: 048865e8fd user: dan tags: autoconf-package)
10:11
When writing to an FTS table, take an exclusive shared-cache lock on the %_segdir table before writing. Otherwise, an xCommit() call may report an SQLITE_LOCKED error. (check-in: 3cd2da42e9 user: dan tags: trunk)
2013-05-24
14:52
Record in the WhereLoop object the set of virtual table constraints that need not be separately checked. (check-in: b49fa74561 user: drh tags: nextgen-query-plan-exp)
13:55
Merge the latest trunk changes into the NGQP branch. (check-in: 7c8f992c04 user: drh tags: nextgen-query-plan-exp)
12:47
Set _XOPEN_SOURCE to 600 so that fchmod() will (hopefully) work on FreeBSD. (check-in: 61a1045239 user: drh tags: trunk)
11:57
Fix harmless compiler warnings in the shell. (check-in: 9e2c17c535 user: drh tags: trunk)
2013-05-23
20:52
Add OGC GeoPackage files to the magic.txt database. (check-in: dab6a32847 user: drh tags: trunk)
10:15
Have the "make fulltest" command run the "mmap" permutation test. (check-in: 82ad373f85 user: dan tags: trunk)
10:13
Avoid unnecessary calls to FCNTL_SIZE_HINT. Return an error to the user if the file-control invoked by "PRAGMA mmap_size" returns a value other than SQLITE_OK or SQLITE_NOTFOUND. (check-in: 40cfde8b4a user: dan tags: trunk)
01:40
Cause the mmap_size PRAGMA to immediately change the mmap space if the database connection is already active. In particular, reducing mmap_size will immediately free up process address space. (check-in: 761177927c user: drh tags: trunk)
2013-05-22
20:49
Use the NGQP plan for EXPLAIN QUERY PLAN output. This change causes 207 errors in veryquick.test, many of which are benign. (check-in: f783e8e6b1 user: drh tags: nextgen-query-plan-exp)
17:01
Allow the rowid at the end of an index to be used in a constraint on that index. (check-in: 9bf0524df7 user: drh tags: nextgen-query-plan-exp)
02:06
Improvements to ORDER BY handling in the NGQP. Fix an "exit" mistakenly left in a test script during the previous check-in. (check-in: 12c709b436 user: drh tags: nextgen-query-plan-exp)
2013-05-21
19:23
Enhanced "wheretrace" output in the NGQP solver routine. (check-in: 04dfb85a2a user: drh tags: nextgen-query-plan-exp)
15:52
Work toward improving the NGQP's ability to optimize out ORDER BY clauses. (check-in: 67367f1e1f user: drh tags: nextgen-query-plan-exp)
2013-05-20
15:14
Merge in all trunk changes up through the 3.7.17 release. (check-in: 14ab6675e5 user: drh tags: nextgen-query-plan-exp)
13:01
Update the sessions branch to the official 3.7.17 release code. (check-in: fc88f7311b user: drh tags: sessions)
00:56
Version 3.7.17 (check-in: 118a3b3569 user: drh tags: trunk, release, version-3.7.17)
2013-05-17
20:16
Remove a stray tab character from the transitive_closure extension source code. (check-in: 7a9aa21c35 user: drh tags: trunk)
17:15
Fix a bug in SQLITE_TRACE_SIZE_LIMIT that was introduced by check-in [1a1cf5aa86734c8]. That check-in was to remove harmless compiler warnings. So once again, we have introduced a real bug into SQLite by attempting to eliminate a harmless compiler warning. (check-in: cec2bcb45a user: drh tags: trunk)
16:41
In test file test_syscall.c, include sqliteInt.h before any tcl or system include files. This ensures that the magical defines in sqliteInt.h really do enable large file support (and set things up so that sizeof(off_t)==8). (check-in: 0f355bb17f user: dan tags: trunk)
12:52
Use sum() instead of total() in mptest/multiwrite01.test too. (check-in: d0c2288c72 user: drh tags: trunk)
12:51
Use sum() instead of total() in the mptest/crash01.test script. (check-in: 8ba0fc9811 user: drh tags: trunk)
12:25
Add extra "PRAGMA mmap_size = N" statements to mmap1.test and mmap2.test. (check-in: cec0a06c17 user: dan tags: trunk)
12:10
In os_unix.c and os_win.c, initialize the default mmap-limit of a new file descriptor to the current global default mmap-limit, not the current global maximum allowable mmap-limit. (check-in: 1def4ea3a0 user: dan tags: trunk)
10:58
Update the sessions branch to the latest 3.7.17 beta. (check-in: af8057ef5d user: drh tags: sessions)
2013-05-16
19:15
Fix minor test script issues causing releasetest.tcl to fail. (check-in: d8ded9d8a1 user: dan tags: trunk)
18:33
Fix a typo in Makefile.in preventing compilation with the --disable-amalgamation option. (check-in: 8ffbefe7d7 user: dan tags: trunk)
14:28
Several releasetest.tcl related fixes to test cases. No code changes. (check-in: e97d744ba1 user: dan tags: trunk)
12:41
Fix compilation with SQLITE_OMIT_WAL on Win32. (check-in: 6d45a79fb1 user: mistachkin tags: trunk)
11:57
In sqlite3_close_v2(), do not attempt to roll back a transaction if there exist active statement objects. Any open transaction will be rolled back when the last of these statement objects is finalized. (check-in: d11e76072a user: dan tags: trunk)
01:02
Treat identifiers in the HAVING clause the same as in the WHERE clause. Only consider AS names from the result set to match if there are no other matches. Continuation of the fix for [2500cdb9be05]. This check-in fixes a bug found by [http://www.sqlite.org/sqllogictest/ | SqlLogicTest] during release testing for version 3.7.17. (check-in: 9ffff3d052 user: drh tags: trunk)
2013-05-15
20:35
Apply compilation fix from [a58af81483] to the other makefiles as well. (check-in: 7e76889d67 user: mistachkin tags: trunk)
18:45
Update the sessions branch with the latest trunk changes. (check-in: d09355050a user: drh tags: sessions)
18:34
Fixes to allow testfixture to be compiled with SQLITE_OMIT_VIRTUAL_TABLE defined. (check-in: 00231fb012 user: dan tags: trunk)
17:47
The sqlite3ExprCollSeq() function can no longer be called while parse the schema, so remove the code path inside of sqlite3ExprCollSeq() that dealt with that case. (check-in: 867b3e3b29 user: drh tags: trunk)
17:08
Make sure an sqlite3_close() or a rollback on one shared-cache connection does not disrupt the operation of other connections using the same shared cache. Fix for ticket [e636a050b709]. (check-in: 5cc1cc55d2 user: drh tags: trunk)
16:24
Extra test for commit [6dae62c4e5]. (check-in: b10b9e758b user: dan tags: trunk)
16:16
Add main.c to the list of files compiled with SQLITE_TEST defined when building testfixture. (check-in: a58af81483 user: dan tags: trunk)
16:08
Fix the sharedA.test module so that it does not attempt to run TCL callbacks on a different thread from where the interpreter was originally created. (Closed-Leaf check-in: 65ff754e35 user: drh tags: shared-cache-fixes)
15:53
Do not run sharedA.test if the system is not threadsafe. (check-in: d484eaf8d6 user: dan tags: shared-cache-fixes)
15:42
Merge latest trunk changes with this branch. (check-in: 47dd65a890 user: dan tags: shared-cache-fixes)
15:16
When loading a database schema that contains an index definition that includes a COLLATE clause for which the collation sequence is unavailable, do not assume that that index uses BINARY instead. Fix for [0fc59f908b]. (check-in: 6dae62c4e5 user: dan tags: trunk)
13:05
Add the rot13.c loadable extension. (check-in: 8f9bd8e7a8 user: drh tags: trunk)
10:21
When closing a connection, avoid tripping active cursors belonging to a different shared-cache client. Also, if sqlite3_close() is called while there are still active statements belonging to the connection, return SQLITE_BUSY and do not roll back any active transaction. Proposed fix for ticket [e636a050b709]. (check-in: 6071b7cce0 user: dan tags: shared-cache-fixes)
08:00
Merge updates from trunk. (check-in: 6fbad95725 user: mistachkin tags: toTypeFuncs)
2013-05-14
23:13
Merge together the fork in this branch. (check-in: 164e3d4da2 user: drh tags: shared-cache-fixes)
23:12
Fix an assert() in unlockBtreeIfUnused() so that it checks for the existance of an untripped cursor, not for the existance of any cursor at all. (check-in: a6f851d0fe user: drh tags: shared-cache-fixes)
20:36
Avoid deleting a b-tree "has-content" vector belonging to another shared-cache connection from within sqlite3_close(). (check-in: 93462df782 user: dan tags: shared-cache-fixes)
15:31
First attempt to get ORDER BY optimization working in NGQP. (check-in: 9fe2029255 user: drh tags: nextgen-query-plan-exp)
2013-05-13
18:23
Candidate fixes for problems revealed by notify2.test. Notify2.test is still failing at this point. (check-in: ea0428f9b6 user: dan tags: shared-cache-fixes)
2013-05-11
00:06
Minor fixes to the OR-clause processing in the NGQP. (check-in: d6946f33c7 user: drh tags: nextgen-query-plan-exp)
2013-05-10
20:26
Now generating OR-clause plans. (check-in: e17003fcfe user: drh tags: nextgen-query-plan-exp)
15:16
Update the NGQP so that it can produce plans that include automatic indices. (check-in: 586b55d8d7 user: drh tags: nextgen-query-plan-exp)
03:30
Factor out common operations into whereLoopAddAll(). Add stubs for missing features. (check-in: 0278e42061 user: drh tags: nextgen-query-plan-exp)
02:11
Merge in the latest trunk changes. (check-in: 5ed31c8279 user: drh tags: nextgen-query-plan-exp)
02:00
Free up bits of wsFlags for reuse. Install the ORDER BY optimization infrastructure for the NGQP. (check-in: 82d50e1980 user: drh tags: nextgen-query-plan-exp)
2013-05-09
23:40
Merge trunk changes into the sessions branch. (check-in: 512f8a1ef8 user: drh tags: sessions)
18:12
Add assert()s to the implementation of xRead() in the built-in VFSes to verify that the offset parameter is always non-negative. (check-in: cf5c364224 user: drh tags: trunk)
14:20
Do not move WHERE clause terms inside OR expressions that are contained within an ON clause of a LEFT JOIN. Fix for ticket [f2369304e47167e3e]. (check-in: 1128575d0a user: drh tags: trunk)
00:40
Refine and reform all Windows OSTRACE macro usage. Replace all usage of sqlite3TestErrorName() with sqlite3ErrName() and add missing return codes. (check-in: 610425f190 user: mistachkin tags: trunk)
2013-05-08
20:05
Fix memory leaks in the NGQP logic for virtual tables. (check-in: 3c2e83a4a2 user: drh tags: nextgen-query-plan-exp)
18:50
Merge all recent trunk changes into the sessions branch. (check-in: ae6c4a0906 user: drh tags: sessions)
17:06
Fix a couple of harmless compiler warnings in the fts3_tokenize virtual table. (check-in: 1fa8c45739 user: drh tags: trunk)
16:57
Make sure the ORDER BY collating sequences are compatible with the comparison collations before using the merge algorithm for compound SELECT statements. Fix for ticket [6709574d2a8d8]. (check-in: ce853a7506 user: drh tags: trunk)
14:20
Fix the wholenumber virtual table so that it returns higher costs for unconstrained usage. Cherrypick from [ceff8955020cd13]. (check-in: 7227b61512 user: drh tags: trunk)
14:14
NGQP working with virtual tables, though many legacy tests fail and there are yet some memory leaks. (check-in: bd9327a968 user: drh tags: nextgen-query-plan-exp)
14:13
Fix the wholenumber virtual table so that it returns higher costs for unconstrained usage. (check-in: ceff895502 user: drh tags: nextgen-query-plan-exp)
04:22
More bug fixes to the WhereLoop generator and the solver in NGQP. Now finds the best plan for TPC-H Q8. This seems to prove the concept, but there is still much work to be done. (check-in: 8e5aad3752 user: drh tags: nextgen-query-plan-exp)
03:22
Bug fixes in the solver. (check-in: b36034bbd1 user: drh tags: nextgen-query-plan-exp)
03:05
Add the NGQP solver. (check-in: 5d37587c50 user: drh tags: nextgen-query-plan-exp)
2013-05-07
23:06
Continued progress on generating good WhereLoop objects for the new query planner. (check-in: 15cc8a1648 user: drh tags: nextgen-query-plan-exp)
19:44
Inserting a few WhereLoop objects without leaking memory. Costs are not correct. Inequality and IN constraints are not implemented. (check-in: e8881a8b2f user: drh tags: nextgen-query-plan-exp)
17:49
Make sure the ORDER BY collating sequences are compatible with the comparison collations before using the merge algorithm for compound SELECT statements. Candidate fix for ticket [6709574d2a8d8]. (Closed-Leaf check-in: fc3630cdef user: drh tags: tkt-6709574)
12:16
Modify the fts3tokenize table implementation so that it does not use the SQL function fts3_tokenizer. The user may have installed an authorizer callback that prohibits this. (check-in: 0ba67b64de user: dan tags: trunk)
2013-05-06
21:01
In the command-line shell, output the elements of the schema in the order that they appear in the sqlite_master table. This is necessary in some cases to make the schema parsable. (check-in: e5b3cd747b user: drh tags: trunk)
20:28
In the command-line shell, make sure the output of dot-commands goes to the same redirected output stream as the result of queries. Ticket [2f96536e7ff7dba] (check-in: b72d365920 user: drh tags: trunk)
14:57
Add an assert() to fts3_expr.c in order to silence a clang warning. (check-in: d8dc2c5fb5 user: drh tags: trunk)
13:22
Make sure the authorizer callback gets a valid pointer to "ROWID" for the column-name parameter when doing an UPDATE that changes the rowid. Fix for ticket [0eb70d77cb05bb2272]. (check-in: 26a59bb88d user: drh tags: trunk)
2013-05-04
20:25
In where.c, make findTerm() a wrapper around methods to a new WhereScan object which is capable of finding all suitable matching terms, not just the first. This check-in includes some prototype functions for building WhereLoop objects. (check-in: dd92b8fa92 user: drh tags: nextgen-query-plan-exp)
2013-05-03
20:08
Add magic numbers for Bentley Systems application files. (check-in: 9314b08099 user: drh tags: trunk)
18:29
Merge all recent trunk changes into the sessions branch. (check-in: 3879ab1b53 user: drh tags: sessions)
15:23
Allocate meta(8) in the header as the "application ID" and add the "PRAGMA application_id" command to query and set it. (check-in: b2efe4f225 user: drh tags: trunk)
2013-05-02
17:37
Minor fixes for compilation with SQLITE_OMIT_WAL defined. (check-in: b81e87e72b user: dan tags: trunk)
00:15
Begin inserting some experimental code for the next generation query planner. (check-in: ccaf4c3f7e user: drh tags: nextgen-query-plan-exp)
2013-05-01
20:40
Fix comments in the magic number file. (Closed-Leaf check-in: 5a500848d2 user: drh tags: application-id)
20:36
Preserve the application-ID across VACUUM. Updates to the magic number file. (check-in: 4a190bea18 user: drh tags: application-id)
19:49
Allocate 4 bytes of unused header space for an "Application ID". Add the "PRAGMA application_id" command to set and query this identifier. Add the "magic.txt" file to show how the posix file command might use this application id. (check-in: 28c9e7fdee user: drh tags: application-id)
17:58
Do not use a transitive constraint to an IN operator where the RHS is a constant if there exists a direct == operator to another table in an outer loop. (check-in: faedaeace9 user: drh tags: trunk)
17:22
Avoid redundant constraint checking due to transitive constraints. (check-in: 329478cbed user: drh tags: trunk)
2013-04-30
14:25
Update the documentation to explain that when the 3rd parameter to sqlite3_bind_text() and friends is NULL the result is to bind a NULL SQL value. Ticket [19b44e35753ba] (check-in: bd92de0e8d user: drh tags: trunk)
14:06
Make sure extra parentheses around subqueries in the FROM clause are harmless. Ticket [28c6e830f239ea5]. (check-in: 1c79569226 user: drh tags: trunk)
07:58
Add the #ifdefs for sqlite3ErrName() to sqliteInt.h as well. (Closed-Leaf check-in: 400fc4c37f user: mistachkin tags: winOsTrace)
07:54
Define the sqlite3ErrName() function only when necessary. More robust handling of unknown return codes. (check-in: e47cd31437 user: mistachkin tags: winOsTrace)
2013-04-29
18:07
Improve the error message issued when an FTS query exceeds the maximum allowable tree depth. (check-in: f480b1fe60 user: dan tags: trunk)
17:12
Fix an off-by-one in the code for limiting the depth of FTS expression trees. (check-in: 72ac73189c user: dan tags: trunk)
09:20
Merge mmap test fix from trunk. (check-in: 95811877fd user: mistachkin tags: winOsTrace)
09:17
Fix mmap1.test so that it passes on windows as well as unix. (check-in: 52417eac3e user: dan tags: trunk)
08:58
Adjust a WAL test result due to changes in the corresponding return code name. (check-in: 9272009f79 user: mistachkin tags: winOsTrace)
08:56
Merge updates from trunk. (check-in: 3a245a832d user: mistachkin tags: winOsTrace)
07:01
Update 'fuzzerfault' test for its new module loading command. Fix several test names in 'io.test' and make sure the database gets closed between tests. (check-in: e81e9ca11d user: mistachkin tags: trunk)
03:09
More refinements to Windows OSTRACE usage. Replace all usage of sqlite3TestErrorName() with sqlite3ErrName() and add missing return codes. (check-in: 05ba5e23fc user: mistachkin tags: winOsTrace)
2013-04-28
01:44
Initial work on reforming usage of OSTRACE by the Windows VFS. (check-in: b347b5d1a0 user: mistachkin tags: winOsTrace)
2013-04-27
18:06
Remove spellfix virtual table documentation from the source tree. Reference the separate documentation on the website instead. (check-in: adcf78909f user: drh tags: trunk)
12:13
Untested fix for building on VxWorks. (check-in: f14d55cf35 user: drh tags: trunk)
2013-04-26
19:33
Fix a formatting typo in a comment. No changes to code. (check-in: 7a97226ffe user: drh tags: trunk)
18:36
Avoid unnecessarily reseting the pager cache after committing a transaction that takes advantage of the SQLITE_IOCAP_ATOMIC related optimization. (check-in: c47144e98c user: dan tags: trunk)
17:00
Avoid using posix_fallocate() in WAL mode, as it is not supported by all file-systems. (check-in: 1bbb4be1a2 user: dan tags: trunk)
16:09
Avoid using posix_fallocate() in WAL mode, as it is not supported by all file-systems. (Closed-Leaf check-in: 9c7523dabf user: dan tags: avoid-fallocate)
15:55
Update documentation with new hyperlinks. No changes to code. (check-in: 640eb54ad6 user: drh tags: trunk)
14:13
Rebalance FTS expressions after parsing to limit recursion during evaluation. Avoid recursion when deleting FTS expression trees. Enforce a limit (currently 12) on the depth of an expression tree. (check-in: 49d23ef61f user: dan tags: trunk)
14:04
Merge another trunk change. (Closed-Leaf check-in: 2648966f17 user: dan tags: fts3-expr-rebalance)
13:14
Fix harmless compiler warnings in the FTS expression parser. (check-in: 3c78af8c53 user: drh tags: fts3-expr-rebalance)
12:08
Reduce the default SQLITE_MAX_MMAP_SIZE slightly so that it fits in a signed 32-bit integer. (check-in: 460752b857 user: drh tags: trunk)
06:58
Merge latest trunk changes. (check-in: 4d08e74d34 user: dan tags: fts3-expr-rebalance)
2013-04-25
20:34
Rebalance FTS expressions after parsing to limit recursion during evaluation. Avoid recursion when deleting FTS expression trees. Enforce a limit on the depth of an expression tree. (check-in: f968d43f80 user: dan tags: fts3-expr-rebalance)
19:31
Added the nextchar.c extension. Minor changes to the spellfix.c extension so that it can be appended to an amalgamation and compiled without duplicating symbols. (check-in: 56b9a417f5 user: drh tags: trunk)
17:27
Fix the tool/build-shell.sh script to remove references to files that are now loadable extensions. (check-in: aabeea98f5 user: drh tags: trunk)
17:07
Add wiki documentation files for the spellfix1 virtual table. (check-in: 381564e91b user: drh tags: trunk)
16:52
Merge the std-ext branch into trunk. This merge adds several new extensions to the ext/misc folder, including transitive_closure, ieee754, and amatch, and it converts some older src/test_*.c file into extensions in the ext/misc folder. (check-in: bbe607c7d1 user: drh tags: trunk)
16:42
Added the transitive_closure, ieee754, and amatch extensions. (Closed-Leaf check-in: 84018099c8 user: drh tags: std-ext)
14:59
Move the test_spellfix.c module to ext/misc/spellfix.c. (check-in: de556add10 user: drh tags: std-ext)
14:36
Fix the MSVC makefile so that it works with the ext/misc/*.c extensions. (check-in: 680822e892 user: drh tags: std-ext)
14:31
Convert the fuzzer virtual table into a loadable extension and move it to the ext/misc/fuzzer.c file. (check-in: c8c69307f6 user: drh tags: std-ext)
11:58
Make test_wholenumber.c into a loadable extension and move it to ext/misc/wholenumber.c. (check-in: efcc9dd012 user: drh tags: std-ext)
00:57
Make sure the affinity and datatype of sub-subqueries are initialized prior to subqueries as the latter relies on the former. (check-in: 39b4e6ff93 user: drh tags: trunk)
2013-04-24
13:50
Fix a simple comment typo. No changes to code. (check-in: f136bd9582 user: drh tags: trunk)
2013-04-23
20:10
Make "test_regexp.c" into a loadable extension and move it over to ext/misc/regexp.c. Add the "load_static_extension" command for testing purposes. (check-in: 860fc393bf user: drh tags: std-ext)
2013-04-22
23:59
Merge the latest trunk changes into the sessions branch. (check-in: 6994826c07 user: drh tags: sessions)
23:38
Fix harmless compiler warnings. (check-in: 1a1cf5aa86 user: drh tags: trunk)
19:56
Do not allow a virtual table to cancel the ORDER BY clause unless all outer loops are guaranteed to return no more than one row result. Candidate fix for ticket [ba82a4a41eac1]. (check-in: 49cfa14fce user: drh tags: trunk)
17:07
Update MSVC makefile for the fts3tokenize virtual table. Clear some harmless compiler warnings in the fts3tokenize code. (check-in: 2b3fed09eb user: drh tags: trunk)
15:30
Add virtual table module 'fts3tokenize' to fts3. fts3tokenize provides SQL access to FTS tokenizer implementations. (check-in: c5a4b21a15 user: dan tags: trunk)
13:51
Enhanced documentation for the SQLITE_CONFIG_SQLLOG mechanism and the test_sqllog.c demonstration file. No changes to code. (check-in: 206caf21f6 user: drh tags: trunk)
02:39
Use transitivity to move constraints into the outer loops of a join whenever possible, thereby reducing the amount of work that needs to occur in inner loops. (check-in: 5f4907e1c6 user: drh tags: trunk)
2013-04-19
12:32
Add the "warning" command to the TCL test infrastructure. Fix problems with the loadext.test module. (check-in: 514adbbd8c user: drh tags: trunk)
02:47
Enhance the extension loading mechanism so that the same source code can be used for run-time loadable extensions and statically linked extensions, and to mask architectural differences in shared libraries. (check-in: a85b6ecefa user: drh tags: trunk)
01:23
Make the SQLITE_EXTENSION_INIT1 and SQLITE_EXTENSION_INIT2 macros into no-ops if the extension is statically linked. (Closed-Leaf check-in: 86eb3eed4c user: drh tags: loadext)
2013-04-18
22:56
Experiments in making loadable extensions easier to program. The shared library filename tries various operating-system specific extensions if the bare library name does not work. And the entry point is derived from the filename is the legacy entry point name "sqlite3_extension_init" is not found. (check-in: 6cfa1d73d7 user: drh tags: loadext)
20:33
Fix an incorrect comment (a copy/paste error) in the mptester. No code changes. (check-in: e94783f36a user: drh tags: trunk)
15:11
Add the --breakpoint and --show-sql-errors commands to mptester. (check-in: d0898fd76a user: drh tags: trunk)
03:10
Fix a compiler warning in sqlite3_compileoption_used(). (check-in: e9f9d84b22 user: drh tags: trunk)
02:55
Do not suppress the ORDER BY clause on a virtual table query if an IN constraint is used. Fix for ticket [f69b96e3076e]. Testing done on TH3 using cov1/where37.test. (check-in: 61b2a7be3b user: drh tags: trunk)
2013-04-17
19:42
Fix the --match command in mptester so that it checks the entire result, not just a prefix of the result. (check-in: 3e3ecad2b5 user: drh tags: trunk)
18:56
In the mptester, add --glob and --notglob and --testcase. Make --exit work on the main thread. Enable the load_extension() SQL function. (check-in: c273c171f5 user: drh tags: trunk)
17:33
In the command-line shell, allow a dot-command to occur after a multi-line c-style comment. (check-in: e2c94ab930 user: drh tags: trunk)
14:04
Improvements to some of the comments that are used to render documentation concerning loadable extensions. No changes to code. (check-in: 76f4e31245 user: drh tags: trunk)
12:19
Update the command-line shell to give an exit code of 0 when the ".quit" command is run from the command-line. (check-in: 467e218120 user: drh tags: trunk)
2013-04-16
18:24
Omit sqlite3_compileoption_used() entries that are not explicitly stated on the compiler command-line, except keep SQLITE_THREADSAFE around so that there is always at least one compilation option. (check-in: 109d6767d2 user: drh tags: trunk)
14:58
Remove the unused SQLITE_CURDIR macro. (check-in: 16f7ba4afa user: drh tags: trunk)
14:52
Disable memory-mapped I/O when the codec is enabled. (check-in: 340cca3079 user: drh tags: trunk)
2013-04-15
20:08
Expand scope of the SQLITE_MAX_MMAP_SIZE define for the Win32 VFS. (check-in: f4b8faab45 user: mistachkin tags: trunk)
17:03
Refactoring the mmap interface. The controlling pragma is now "mmap_size" instead of "mmap_limit". Also change SQLITE_CONFIG_MMAP_LIMIT and SQLITE_FCNTL_MMAP_LIMIT to SQLITE_CONFIG_MMAP_SIZE and SQLITE_FCNTL_MMAP_SIZE, respecctively. The default mmap_size is now always 0, meaning that memory mapped I/O is off by default. There is a new compile-time option SQLITE_MAX_MMAP_SIZE that determines a hard upper bound on the mmap_size. Setting SQLITE_MAX_MMAP_SIZE to zero disables the memory-mapped I/O logic and causes it to be omitted from the build. An extra argument is added to SQLITE_CONFIG_MMAP_SIZE that can optionally lower the SQLITE_MAX_MMAP_SIZE at start-time. The SQLITE_MAX_MMAP_SIZE is zero for platforms where we know that it does not work, meaning that it cannot be turned on by mistake on those platforms. (check-in: ea1404a10a user: drh tags: trunk)
13:10
Fix a formatting typo in a comment. No changes to code. (check-in: 3412424990 user: drh tags: trunk)
2013-04-14
23:51
Only consider AS names from the result set as candidates for resolving identifiers in the WHERE clause if there are no other matches. In the ORDER BY clause, AS names take priority over any column names. Fix for ticket [2500cdb9be]. (check-in: d0d5af79a0 user: drh tags: trunk)
2013-04-13
19:59
Only consider AS names from the result set as candidates for resolving identifiers in the WHERE clause if there are no other matches. In the ORDER BY clause, AS names take priority over any column names. Candidate fix for ticket [2500cdb9be]. (Closed-Leaf check-in: ad53924dca user: drh tags: tkt-2500cdb9be)
2013-04-12
16:53
Add a test case for detaching a database referenced by an fts4aux table created in the temp schema. (check-in: 6d6f0592ab user: dan tags: trunk)
16:47
Change the fts4aux virtual table module so that fts4aux tables created in the temp database may report on fts3/fts4 tables in any attached database. (check-in: 546a187f13 user: dan tags: trunk)
13:53
Fix the xCheckReservedLock() method on the windows VFS so that it cannot return a false positive when two or more processes use it at the same time on the same file. Ticket [7ff3120e4fa54abb55]. Update to version 3.7.16.2. (check-in: 67b3c0efa7 user: drh tags: sessions)
11:52
Version 3.7.16.2 (Leaf check-in: cbea02d938 user: drh tags: release, version-3.7.16.2, branch-3.7.16)
01:04
In mptester: improve the way that child processes are dispatched. Pass the --vfs option through to children. Log the command used to start child processes when the tracing level is high enough. (check-in: 55718ae346 user: drh tags: trunk)
2013-04-11
22:52
Expand scope of the SQLITE_DISABLE_MMAP define for the Win32 VFS. (Closed-Leaf check-in: daa168f3da user: mistachkin tags: winDisableMmap)
21:13
For the multi-process tester on Win32, make use of the GetCurrentProcessId API. (check-in: f1b524b9d9 user: mistachkin tags: trunk)
19:04
Increase the version number to 3.7.16.2 and cherrypick the fix for ticket [7ff3120e4fa54abb55]. This check-in is a release candidate. (check-in: 86f26f9152 user: drh tags: branch-3.7.16)
18:28
Fix the xCheckReservedLock() method on the windows VFS so that it cannot return a false positive when two or more processes use it at the same time on the same file. Ticket [7ff3120e4fa54abb55] (check-in: dd3510bb20 user: drh tags: trunk)
13:26
Fix pragma code generation so that it always outputs an OP_Trace opcode so that pragmas are shown in sqlite3_trace() output. (check-in: 663f04bd48 user: drh tags: trunk)
11:53
Show the process-id on log messages from mptester. (check-in: 6748a83dc5 user: drh tags: trunk)
01:16
Have the UNIX VFS issue warnings via sqlite3_log() if a database file is renamed or unlinked or linked to more than one name while the file is open. (check-in: e238dcf918 user: drh tags: trunk)
00:45
Correct minor typo in two regular expressions. (check-in: f1eed92b7b user: mistachkin tags: sessions)
00:13
Experimental changes to support a Win32 VSIX package flavor. (Closed-Leaf check-in: abedd7cb45 user: mistachkin tags: vsixWin32)
00:09
Enhance multi-process tester integration with the Win32 API. (check-in: 0fdc743583 user: mistachkin tags: trunk)
2013-04-10
23:48
Add new primary error codes SQLITE_NOTICE and SQLITE_WARNING for use with sqlite3_log(). Add new extended error codes SQLITE_NOTICE_RECOVER_WAL and SQLITE_NOTICE_RECOVER_ROLLBACK to use with sqlite3_log() messages that occur on each recovery. (check-in: be7d2c5482 user: drh tags: trunk)
16:13
Add the sqlite3_strglob() interface. (check-in: 41d6ff32a6 user: drh tags: trunk)
15:01
Designate the beginning and the end of the sqlite3session.h file in the constructed sqlite3.h file. (check-in: 53f5be7432 user: drh tags: sessions)
12:01
Use symbolic names for tasks in mptester. (check-in: f0d95afc73 user: drh tags: trunk)
03:22
Backport the multi-process tester to the last released version. (Leaf check-in: bf6ca21b36 user: mistachkin tags: branch-3.7.16)
03:06
Fix typo in name of mptest executable files in clean targets. (check-in: 4c7d9e1ed8 user: mistachkin tags: trunk)
02:56
Correct test numbering on several rtree tests. (check-in: 0adf8a3a4f user: mistachkin tags: trunk)
2013-04-09
20:04
Limit integrity_check output to 10 lines in mptester scripts. (check-in: 67ee0dc0f4 user: drh tags: trunk)
19:19
Check in the instrumented code for the mptest test case that appears to show a spontaneously disappearing journal file. (Closed-Leaf check-in: 96f04d99f3 user: dan tags: missing-journal-file)
18:36
Change the rollback journal so that it invokes sqlite3_log() make a record of a recovery, just as the WAL journal does. (check-in: 7cd3f6cd3a user: drh tags: trunk)
16:19
Add extra #ifndef statements in os_unix.c and os_win.c to make sure the memory mapped I/O really is disabled when SQLITE_DISABLE_MMAP is set. (check-in: c1e2523c90 user: drh tags: trunk)
2013-04-08
20:47
Disable the use of memory-mapped I/O if the SQLITE_DISABLE_MMAP macro is defined. Automatically define this macro for OpenBSD and QNX. Other systems are likely to be added to the disabled list over time. (check-in: 8a4314a398 user: drh tags: trunk)
19:13
In mptester, handle startScript no-change commits using a retry rather than grabbing an exclusive transaction. (check-in: ae8bb24bfb user: drh tags: trunk)
18:58
Still more tests using mptester. Added test cases that leave rollback journals that must be recovered by other threads. (check-in: 437b674f00 user: drh tags: trunk)
17:57
Adding tests to the mptester scripts. (check-in: e121adceb1 user: drh tags: trunk)
15:36
Change mptester to avoid reporting SQLITE_BUSY errors if the busy handler is turned off and the tracing level is set low. (check-in: d77407ae6a user: drh tags: trunk)
15:30
Handle the case in os_unix.c where SQLITE_FCNTL_MMAP_LIMIT requests that the mmap limit be set to a value smaller than the current mapping. (check-in: 360473493e user: dan tags: trunk)
14:41
Merge the multi-process tester into trunk. (check-in: ea53c45d79 user: drh tags: trunk)
14:28
Add the "mptester" target to the makefiles. Make mptester run with synchronous off by default. (Closed-Leaf check-in: 1397830bfe user: drh tags: mptest)
13:59
Fix harmless compiler warnings in mptest.c. (check-in: 59bdbb10ed user: drh tags: mptest)
13:48
Add the vfsname() and eval() SQL functions to mptest.c. Enhancements to the test/config01.test script. (check-in: 91397a147c user: drh tags: mptest)
13:13
Add --if, --else, --endif processing to mptest.c. (check-in: 51265acae3 user: drh tags: mptest)
10:38
Fix an incorrect type cast in an assignment in vdbe.c. (check-in: 320b5295da user: dan tags: trunk)
2013-04-06
18:35
Fix the --source command so that its argument is relative to the script. Verify that the SQLite header and library match. Print SQLite version and compile-time configuration information on startup. (check-in: 15cb0db758 user: drh tags: mptest)
18:10
Merge trunk changes into the mptest branch. The mptest needs the SQLITE_MAX_SCHEMA_RETRY fix in particular. (check-in: fb7a777396 user: drh tags: mptest)
18:06
Increase the default SQLITE_MAX_SCHEMA_RETRY to 50. Make sure that macro covers every case where a prepared statement might need to be reprepared due to a schema change. The sqlite3_exec() interface now uses sqlite3_prepare_v2(). (check-in: c1d7304c80 user: drh tags: trunk)
14:30
Add SQLITE_CONFIG_LOG error logging to the mptest program. (check-in: 716c25bd12 user: drh tags: mptest)
14:16
Get the build of mptest working on mac. (check-in: a0bae686c9 user: drh tags: mptest)
14:04
Get the mptest program running on windows. (check-in: 3966b33284 user: drh tags: mptest)
13:09
Many improvements to the mptest program. Added a simple test script. (check-in: 07b0401a9b user: drh tags: mptest)
11:03
Add tests to "permutations.test coverage-pager" to cover uncovered branches. (check-in: 07a0e4e982 user: dan tags: trunk)
00:19
Add a prototype TH3-script-style test harness that starts multiple processes operating on the same database file at the same time. (check-in: c318fafe68 user: drh tags: mptest)
2013-04-05
20:40
Improve the code coverage of "permutations.test coverage-pager". (check-in: b095e2cdb6 user: dan tags: trunk)
2013-04-04
19:32
Add further multi-client tests to mmap1.test. (check-in: a107f75d93 user: dan tags: trunk)
17:28
Disable memory-mapped I/O for the win32lock.test module (check-in: 2b3d9805a2 user: drh tags: trunk)
01:54
Updates to the file-control documentation. No changes to code. (check-in: 51fab480d0 user: drh tags: trunk)
00:51
Increase the version number to 3.7.17. (check-in: 5c8c5a2a12 user: drh tags: trunk)
00:40
Try to use mmap() to speed access to the database file on windows, linux, and mac. (check-in: fff2be6077 user: drh tags: trunk)
2013-04-03
21:23
Release resources prior to bailing out of the btreeCreateTable() routine following an OOM error. (Closed-Leaf check-in: b2a72be9ba user: drh tags: experimental-mmap)
20:04
Remove an unreachable branch in the direct blob I/O logic of btree.c. (check-in: f97d7274f4 user: drh tags: experimental-mmap)
13:38
Fix a bug in the detection of iOS when setting the default mmap_limit. (check-in: ac1432b3a8 user: drh tags: experimental-mmap)
13:09
Change the mmap_limit pragma to report the new limit, or to report the existing limit if called with no arguments. Report the default mmap_limit as part of PRAGMA compile_options. Set the default mmmap_limit to 0 for all systems other than linux, mac, windows, and solaris. (check-in: 2d9f1327fe user: drh tags: experimental-mmap)
11:52
Remove the restriction on using xFetch to load the root pages of tables and indexes. It appears to have been based on a misconception. (check-in: 5b082efead user: dan tags: experimental-mmap)
11:38
When moving a page to make way for the root page of a new table or index in an auto-vacuum database, save the positions of any cursors that may be holding xFetch references to the page being moved. (check-in: 9d9b1da54a user: dan tags: experimental-mmap)
11:17
In btree.c, save the positions of other cursors open on the same table when writing via an incremental blob handle. Otherwise, they may be left holding an out-of-date xFetch page reference. (check-in: 3f09fba18f user: dan tags: experimental-mmap)
10:50
Initialize the mmap_limit of temporary files to the configured mmap_limit. (check-in: 24bab7596b user: drh tags: experimental-mmap)
03:53
Make use of xFetch, if it is available when doing a VACUUM or a backup. (check-in: 83bc37af07 user: drh tags: experimental-mmap)
01:26
Add the -mmap option to the command-line shell, for setting the default mmap_limit. (check-in: fc30d06c94 user: drh tags: experimental-mmap)
00:42
Fix the unix driver to check defined(_BSD_SOURCE) rather than just the plain _BSD_SOURCE macro. This fixes the build for OpenBSD. (check-in: 1dd42ef414 user: drh tags: experimental-mmap)
2013-04-02
20:55
Fix a resource leak in os_unix.c. (check-in: b29cda03fe user: dan tags: experimental-mmap)
20:29
Adjustments to mmap1.test so that it works better on windows. It still gets some answers wrong, but it no longer crashes. (check-in: ee8d3ceeec user: drh tags: experimental-mmap)
20:19
Fix a bug in mmap2.test that was leaving an invalid sqlite3_log() callback installed, causing a crash. (check-in: c0cdaa0735 user: dan tags: experimental-mmap)
20:13
Add assert to the Windows VFS pertaining to the size of the SIZE_T type. (check-in: 4eeea58354 user: mistachkin tags: experimental-mmap)
18:33
Add test cases to mmap1.test and pagerfault.test. (check-in: 3050136be9 user: dan tags: experimental-mmap)
18:31
Change an assert in pager.c to acknowledge that it is possible for sqlite3PagerRollback() to return SQLITE_CORRUPT. (check-in: d641d3d20d user: dan tags: experimental-mmap)
18:25
Fix the build for Mac. (check-in: d36ce0bbad user: drh tags: experimental-mmap)
15:37
Add new test file btreefault.test. (check-in: 7fe908afeb user: dan tags: experimental-mmap)
14:37
Fix a faulty assert() in the os_win.c VFS. (check-in: fd6ee54969 user: drh tags: experimental-mmap)
13:56
If the SQLITE_TRACE_SIZE_LIMIT compile-time parameter is set to a positive integer then limit the expansion of strings and blobs in trace output to approximately that many bytes. (check-in: e5b710849d user: drh tags: trunk)
12:04
Add test cases for errors in mmap() or mremap() is os_unix.c. (check-in: 3098a3c1e7 user: dan tags: experimental-mmap)
10:29
Proposed template preprocessor magic for activating mmap only on platforms where we know it works. (check-in: d96272f031 user: drh tags: experimental-mmap)
01:45
Reorder two conditions to make coverage testing easier. (check-in: 793ba4e996 user: drh tags: experimental-mmap)
00:41
Remove an unreachable condition from pager.c. (check-in: 3628e86bf1 user: drh tags: experimental-mmap)
00:15
Always send the SQLITE_FCNTL_MMAP_LIMIT pragma to the VFS, even if the limit is zero and even if the VFS does not support xFetch(). (check-in: 01ffdabbad user: drh tags: experimental-mmap)
2013-04-01
22:42
Remove a debugging printf() accidently left in the previous check-in. (check-in: 8198cdd8ac user: drh tags: experimental-mmap)
22:38
Add the SQLITE_CONFIG_MMAP_LIMIT configuration option for overriding the SQLITE_DEFAULT_MMAP_LIMIT compile-time setting. Enhance "PRAGMA mmap_limit" so that without a specific database name, it sets the limit on all database files and changes the default for any future databases that might be added using ATTACH. (check-in: 78141d0a16 user: drh tags: experimental-mmap)
18:25
Add a comment to xUnfetch on windows to say that the call to winUnmapfile() might be unnecessary. (check-in: e3c63c31a2 user: drh tags: experimental-mmap)
18:15
In windows, round down the size of the memory mapped region to the next smaller multiple of the page size. (check-in: 0e44ed1bad user: drh tags: experimental-mmap)
17:58
Merge accidental fork. (check-in: 5f4437c0e3 user: dan tags: experimental-mmap)
17:56
Attempt to emulate mremap() on non-Linux systems by allocating a second mapping immediately following the first in virtual memory. (check-in: 4d67433db8 user: dan tags: experimental-mmap)
17:56
Bug fix in the winMapfile() subroutine: Be sure to record the map object handle in the sqlite3_file object. (check-in: ee4d188e20 user: drh tags: experimental-mmap)
17:22
Add xFetch and xUnfetch methods to the os_win.c VFS. (check-in: a1653a257d user: drh tags: experimental-mmap)
16:56
Ensure that a checkpoint does not use an out-of-date mapping. (check-in: a1040f0397 user: dan tags: experimental-mmap)
14:35
Fix a typo in a log message in wal.c. (check-in: 83fc48d165 user: dan tags: experimental-mmap)
14:29
Fix a problem in btree.c that could cause a crash following an OOM. (check-in: b724aa5889 user: dan tags: experimental-mmap)
2013-03-29
19:52
For the clean target, tidy up a couple more generated (or copied) source files. (check-in: 5687e5ee7b user: mistachkin tags: trunk)
13:44
Version 3.7.16.1 (check-in: 527231bc67 user: drh tags: trunk, release, version-3.7.16.1)
2013-03-28
11:40
Adjustment to an extreme corner case in the sqlite3Atoi64() routine. (check-in: 39534b4baa user: drh tags: trunk)
01:19
Merge the changes for the 3.7.16.1 release candidate into the sessions branch. (check-in: ee35a89712 user: drh tags: sessions)
2013-03-27
20:41
Fix harmless compiler warnings coming from MSVC64 in test code. No changes to the core. (check-in: 274d2a2266 user: drh tags: trunk)
19:46
Increment the version number to 3.7.16.1. (check-in: 7e32eb7b66 user: drh tags: trunk)
17:20
In order to optimize out the ORDER BY clause, outer loops must generate values for ORDER BY terms that are unique or else the inner loops must generate no more than a single row. Fix for ticket [a179fe7465]. (check-in: 2936f7466e user: drh tags: trunk)
16:42
Restore additional ORDER BY optimizations that where broken by the recent ORDER BY fix. (Closed-Leaf check-in: c77ee6e20d user: drh tags: orderby-fix)
16:05
Improved optimization of ORDER BY. (check-in: 97e5c70f2f user: drh tags: orderby-fix)
15:04
A fix and test-case for the ORDER BY problem identified by ticket [a179fe7465]. This change causes sorting to occur in some cases where it is not strictly necessary. Further work is needed to avoid those extra sorts. (check-in: 488089e615 user: drh tags: orderby-fix)
03:15
Candidate fix for ticket [6bfb98dfc0c]: Make sure invalid cursors drop all references to database pages prior to doing any insert or update. (check-in: 322a5f086d user: drh tags: trunk)
2013-03-26
20:32
Change os_unix.c to use either one or two mappings internally. (check-in: e7698cba9b user: dan tags: two-mappings)
18:48
Fix a comment in os_unix.c. No code changes. (check-in: 72813b8ec9 user: drh tags: experimental-mmap)
14:36
Change the name of the Pager.pFree field to Pager.pMmapFreelist. (check-in: 611bd824c2 user: drh tags: experimental-mmap)
14:16
In btree.c, save the positions of any open cursors before moving any pages around to auto-vacuum the database on commit. (check-in: 30c0a69363 user: dan tags: experimental-mmap)
01:07
Previous check-in accidently left mmap turned off by default. This checkin fixes that. Unfortunately, shared.test is now segfaulting. All other veryquick tests appear to work, however. (check-in: a850c7319c user: drh tags: experimental-mmap)
2013-03-25
23:09
Memory-mapped I/O is now on by default. The "PRAGMA mmap_limit(N)" can be used to issue a hint to the VFS to limit mmap space to N bytes. The VFS is free to ignore that hint if desired. However, if "PRAGMA mmap_limit(0)" is used, xFetch is never called. (check-in: 1b37c4effd user: drh tags: experimental-mmap)
20:50
Add munmap and mremap to the set of os interfaces that can be overloaded in os_unix.c. (check-in: 8776047bd7 user: drh tags: experimental-mmap)
20:30
Use mremap() on Linux. (check-in: 431aecc860 user: dan tags: experimental-mmap)
19:57
Merge all recent trunk changes into the experimental-mmap branch. (check-in: a607d63f0b user: drh tags: experimental-mmap)
19:05
Add a test that simulates an error in mmap(). (check-in: 6ec7367d8e user: dan tags: experimental-mmap)
18:25
Simulate OOM errors in the sqlite3OsFetch() function. Run malloc.test as part of the "mmap" permutation. (check-in: 77443ef2cd user: dan tags: experimental-mmap)
17:00
Change the signature of the xUnfetch method to "int (*xUnfetch)(sqlite3_file*, sqlite3_int64 iOfst, void *p)". (check-in: 115b830509 user: dan tags: experimental-mmap)
16:28
Remove unnecessary code to round the size of a memory mapping to 4KB from os_unix.c. Rename SQLITE_IOERR_MREMAP to SQLITE_IOERR_MMAP. Fix other small issues in os_unix.c. (check-in: dce35c01a5 user: dan tags: experimental-mmap)
14:31
Do not return SQLITE_IOERR when the user attempts to open a small file that is not a database with mmap enabled. Instead return SQLITE_NOTADB. (check-in: bbcaab3e80 user: dan tags: experimental-mmap)
13:50
Fix a case in the pager where an xFetch() reference was being leaked following an OOM error. (check-in: 5885ba6ce7 user: dan tags: experimental-mmap)
12:02
Add a second test for [38b1ae018f]. (check-in: 5062db672c user: dan tags: trunk)
11:38
In fts3, when filtering lists for hits in a specific column, edit the list in place in the same way as it is for NEAR filtering. Fix for [38b1ae018f]. (check-in: f85f9103cf user: dan tags: trunk)
2013-03-24
22:56
Remove the SQLITE_OMIT_MERGE_SORT compile-time option and its related code. The merge sorter is now a required component. (check-in: 8b44d6fb15 user: drh tags: trunk)
2013-03-23
21:00
Replace the sqlite3_io_methods.xMremap interface with sqlite3_io_methods.xFetch and xUnfetch. (check-in: 1431be9557 user: dan tags: experimental-mmap)
17:29
Improve a comment in wal.c. No code changes. (check-in: 60b9f5e4dd user: dan tags: experimental-mmap)
14:20
Fix a case where a checkpoint operation could write to an invalid part of a memory mapped region. (check-in: 8dbe89d05c user: dan tags: experimental-mmap)
12:15
In the winMremap VFS function, unmap the region prior to attempting to truncate the file. (check-in: 8870c4cc6c user: mistachkin tags: experimental-mmap)
10:09
Do not unmap the mapped file region in winTruncate as there may be outstanding pointers to it. (check-in: f57a9c91e9 user: mistachkin tags: experimental-mmap)
09:56
Preliminary changes to support the xMremap VFS method on Windows. (check-in: 75a85a1c6a user: mistachkin tags: experimental-mmap)
2013-03-22
20:15
Update wal mode tests so that they work with the mmap test permutation. (check-in: f7295872a3 user: dan tags: experimental-mmap)
19:56
Fix a potential NULL-pointer dereference in btreeSwapOutMmap(). (check-in: e81ccdcd87 user: drh tags: experimental-mmap)
19:17
Fix a case where the mapped part of a database file may be written during a backup operation. (check-in: c8d67aefff user: dan tags: experimental-mmap)
18:20
Allow the database file to be memory mapped in wal mode. (check-in: d190ddabc3 user: dan tags: experimental-mmap)
17:46
Add a fix for the assert() statements added by the previous commit. (check-in: 19345416ed user: dan tags: experimental-mmap)
08:58
Add assert statements to os_unix.c to ensure that any mapped region of the database file is not being read or written using the xRead() or xWrite() methods. (check-in: 765615f9fb user: dan tags: experimental-mmap)
2013-03-21
21:20
Many spelling fixes in comments. No changes to code. (check-in: 6f6e2d5094 user: mistachkin tags: trunk)
20:39
Fix cases where xRead() was being used to read from a memory mapped part of the database file. (check-in: 5c9e9df27b user: dan tags: experimental-mmap)
20:00
Avoid calling xRead() on a part of the database file that is memory mapped. (check-in: c8eac290a7 user: dan tags: experimental-mmap)
15:57
Fix a problem when opening a write-transaction while there exist read-only b-tree cursors in mmap mode. (check-in: 32e0bbb736 user: dan tags: experimental-mmap)
14:47
Do not use the Linux mremap() call. Use the same strategy for xMremap() as on OSX instead. (check-in: 5ed8ad780c user: dan tags: experimental-mmap)
2013-03-20
18:25
Optimize the xMremap method in os_unix.c some. (check-in: 9529ed88a7 user: dan tags: experimental-mmap)
14:26
When possible, use memory mapping when appending new pages to a database file. (check-in: 14135da3cd user: dan tags: experimental-mmap)
12:04
Fix text-to-numeric type casting so that it works correctly on UTF16 strings that contain characters where the LSB is numeric but the MSB is non-zero. Ticket [689137afb6da41] (check-in: 5b22053f91 user: drh tags: trunk)
10:07
Add test file mmap1.test. (check-in: aee1f53a74 user: dan tags: experimental-mmap)
2013-03-19
19:28
Add the sqlite3_io_methods.xMremap() method to the VFS interface. Also "PRAGMA mmap_size". (check-in: 6183f1bd86 user: dan tags: experimental-mmap)
17:10
Also export the sqlite3changeset interfaces in the amalgamated version of the sessions extension. (check-in: 5b399f2bc4 user: drh tags: sessions)
16:12
Bring makefiles and build scripts into alignment with the sessions branch. No changes to code. (check-in: d1f41089ab user: drh tags: trunk)
15:23
Include the sqlite3session.h header file in with sqlite3.h. Make sure the session APIs are all public. (check-in: ec490336bc user: drh tags: sessions)
2013-03-18
17:18
Clarifications to the documentation for the sqlite3_aggregate_context() API. Also, shorten an over-length source line in sqlite.h.in. (check-in: 4fe2db1d86 user: drh tags: trunk)
16:24
Adjust the MSVC makefile so that it correctly handles the sessions extension being included in the amalgamation. Import the test case changes that appeared in 3.7.16 final. (check-in: 9bac09a99a user: drh tags: sessions)
11:39
Version 3.7.16 (check-in: 66d5f2b767 user: drh tags: trunk, release, version-3.7.16)
2013-03-16
20:19
When possible, use memcpy() to and from the mapped region instead of xWrite() and xRead(). (check-in: f8ca5622d9 user: dan tags: experimental-mmap)
2013-03-15
19:13
Fix a dropped error code in pager.c. (check-in: 022fdc986b user: dan tags: experimental-mmap)
18:29
Allow read-only cursors to use mmap pages even if there is an open write transaction. (check-in: b387e2f9d2 user: dan tags: experimental-mmap)
2013-03-14
18:34
Use mmap() to read from the database file in rollback mode. This branch is unix only for now. (check-in: 6f21d9cbf5 user: dan tags: experimental-mmap)
2013-03-13
20:52
Merge updates from trunk. (check-in: d63fa039a0 user: mistachkin tags: toTypeFuncs)
19:02
Fix typos in MSVC makefile. (check-in: 2d15c26857 user: mistachkin tags: sessions)
12:20
Fix main.mk so that it builds the amalgamation correctly. (check-in: 0b84e27724 user: drh tags: sessions)
11:42
Fix a compiler warning in sqlite3VdbePreUpdateHook(). Add sqlite3session.c to the amalgamation. Fix the Makefile.in to work with sessions. (check-in: e54b0225f2 user: drh tags: sessions)
07:02
Enhance tests for ticket [4dd95f6943]. (check-in: 0b452734fa user: dan tags: trunk)
06:48
Rename the experimental todouble() function to toreal(), update comments. (check-in: 12c318ef1b user: mistachkin tags: toTypeFuncs)
06:34
Merge latest trunk changes into this branch. (check-in: d6cd3c780c user: dan tags: sessions)
00:13
Fix the ORDER BY with IN constraint logic so that it works with all combinations of DESC on the ORDER BY clause, on the RHS of the IN operator, and in the index used by ORDER BY and IN. Fix for ticket [4dd95f6943fbd18]. (check-in: 839aa91faf user: drh tags: trunk)
2013-03-12
23:58
Add a single new test case to the ORDER BY with IN logic verify that if the RHS of the IN is a descending index that it still works. Add testcase() macros to the ORDER BY with IN logic to help verify that corner cases are tested. (Closed-Leaf check-in: 7e7356f155 user: drh tags: desc-orderby-fix-1)
23:03
Fix typo in sqlite3_close() function documentation reported on the mailing list. (check-in: c9a75d890f user: mistachkin tags: trunk)
22:13
Fix a test case that had an ambiguous result. (check-in: 38c6bddf8c user: drh tags: desc-orderby-fix-1)
20:58
Fix typo in sqlite3_close() function documentation reported on the mailing list. (Closed-Leaf check-in: 7232093d6c user: mistachkin tags: docTypo)
20:38
Fix the ORDER BY optimization with IN constraints when the RHS of the IN constraint is a descending index. (check-in: 62316ebaca user: drh tags: desc-orderby-fix-1)
18:49
Revise the patch to make it easier to understand. (check-in: 3ce7eb0265 user: drh tags: desc-orderby-fix-1)
18:44
Add test cases for [4dd95f6943]. (check-in: 723c144c76 user: dan tags: desc-orderby-fix-1)
18:40
Revised fix for the DESC ORDER BY and IN constraint bug, ticket [4dd95f6943fbd18]. The previous check-in was incorrect. (check-in: 8b2eb7a43b user: drh tags: desc-orderby-fix-1)
18:34
A proposed fix for the DESC ORDER BY bug of ticket [4dd95f6943fbd18]. Seems to work, but lots more testing is needed prior to moving to trunk. (check-in: 614a038ad2 user: drh tags: desc-orderby-fix-1)
11:38
Merge recent changes to trunk into sessions branch. (check-in: 62adb0e0d7 user: dan tags: sessions)
09:07
Increase strictness of the new experimental functions and add more tests. (check-in: 05c4463ec5 user: mistachkin tags: toTypeFuncs)
2013-03-11
13:37
Define _BSD_SOURCE when building on OpenBSD. This is required for fchmod(). (check-in: f9027cb47b user: dan tags: trunk)
11:57
Fixes for compiling with SQLITE_OMIT_AUTOVACUUM and/or SQLITE_OMIT_TRIGGER defined. (check-in: 1da15adba8 user: dan tags: trunk)
11:49
Fixes for compiling with SQLITE_OMIT_AUTOVACUUM and/or SQLITE_OMIT_TRIGGER defined. (Closed-Leaf check-in: 938b91e855 user: dan tags: omit-fixes)
06:24
Add more tests. (check-in: f9468e334d user: mistachkin tags: toTypeFuncs)
01:23
Add experimental tointeger() and todouble() SQL functions. (check-in: 465fd853d3 user: mistachkin tags: toTypeFuncs)
2013-03-09
14:49
Add a test case for the problem fixed by the previous commit. (check-in: e899b058a7 user: dan tags: trunk)
14:40
Fix a problem with resolving "db.view.column" references that appear in UPDATE or DELETE statements executed against views. (check-in: ddee56c9b2 user: dan tags: trunk)
2013-03-08
18:16
If SQLITE_OMIT_UTF16 is defined, avoid setting the 'enc' field of Schema objects to any value except SQLITE_UTF8. Otherwise, assert() statements may fail or spurious SQLITE_NOMEM errors may be returned at the vdbe level later on. (check-in: f2fecfb2d3 user: dan tags: trunk)
07:10
If SQLITE_OMIT_UTF16 is defined, avoid setting the 'enc' field of Schema objects to any value except SQLITE_UTF8. Otherwise, assert() statements may fail or spurious SQLITE_NOMEM errors may be returned at the vdbe level later on. (Closed-Leaf check-in: 69746ef787 user: dan tags: experimental)
2013-03-07
14:00
Fix the char() function so that it works even if SQLITE_OMIT_UTF16 is defined. (check-in: af542c82e8 user: drh tags: trunk)
11:03
Avoid an assertion fault and/or freeing memory while it is still in use when an error occurs during virtual table construction. Cherrypick of [a02599ad85d]. (check-in: 760072ceea user: dan tags: branch-3.7.14)
09:39
Skip tests that require UTF-16 support when compiled with SQLITE_OMIT_UTF16. (check-in: e39391422e user: mistachkin tags: trunk)
06:42
Fix two compilation issues, one warning and one error, that occur only when SQLITE_OMIT_UTF16 is defined. (check-in: 10ace06be7 user: mistachkin tags: trunk)
2013-03-06
11:44
Fix a problem in incrvacuum_ioerr.test. Do not run ioerr6.test with an in-memory journal. (check-in: 66576b450a user: dan tags: trunk)
02:12
Merge all the latest trunk changes into the sessions branch. (check-in: d69d21903b user: drh tags: sessions)
01:55
Fix a bug (ticket [fc7bd6358f59]) that caused incorrect query results in three way queries that involved comparing INTEGER and TEXT columns for equality. (check-in: 7097241c12 user: drh tags: trunk)
01:48
Add the SQLITE_READONLY_ROLLBACK extended error code. Do not try to set the permissions on journal or wal files except if the filesize is initially zero (indicating that it is a new file.) (check-in: ce4ac66a4b user: drh tags: trunk)
01:41
Fix an operator precedence problem on the [1d8086902e] check-in. (Closed-Leaf check-in: 4f5f3aebe8 user: drh tags: ex-robust-open)
2013-03-05
16:54
Failed merge experimental branch with trunk. (check-in: 4e6e07a60e user: dan tags: ex-robust-open)
15:27
Do not attempt to set the permissions on an existing journal or wal file. Do this only immediately after creating a new file (or opening one zero bytes in size). (Closed-Leaf check-in: 1d8086902e user: dan tags: experimental)
15:09
Add extended error code SQLITE_READONLY_ROLLBACK. Returned if a read-only connection cannot read the database because doing so would require it to roll back a hot-journal. (check-in: 39247b14a5 user: dan tags: experimental)
11:27
Fix a bug in the recent incremental-vacuum related changes. (check-in: 717863fca6 user: dan tags: trunk)
01:46
Simplified error message on the showdb utility. (check-in: 8e0ced1af7 user: drh tags: trunk)
2013-03-04
17:41
Omit a test that uses the progress handler callback from view.test if OMIT_PROGRESS_HANDLER is defined. (check-in: f40552ada5 user: dan tags: trunk)
16:35
Remove an assert() statement that has been incorrect since the recent incremental-vacuum related changes in [26e235b7a4]. (check-in: 090a47127f user: dan tags: trunk)
2013-03-03
20:26
Add the test_fs.c test module to Makefile.in. Adjust the success criteria on index5-1.3 so that it works under auto_vacuum configurations. (check-in: b457c8870a user: drh tags: trunk)
2013-03-02
03:25
Update comments on the free-page allocator to accurately reflect the latest implementation. Add new asserts to the free-page allocator. (check-in: 9a135e37b6 user: drh tags: trunk)
2013-03-01
23:40
Complete the initialization of the loadable extension thunk table. Also fix other (harmless) compiler warnings. (check-in: 780d06c5e5 user: drh tags: trunk)
23:24
Update the cygwin interface to use the newer 1.7 APIs instead of the 1.5 APIs. Also shorten over-length source code lines in os_win.c. (check-in: 6b2838336a user: drh tags: trunk)
23:13
Prevent Tcl file encoding issues in the tests for the unicode() and char() functions. (check-in: c9c2b82c86 user: mistachkin tags: trunk)
21:01
Fix an overly restrictive assert() in the pager. (check-in: f476eace86 user: drh tags: trunk)
15:02
Fix the handling of UTF16 surrogate pairs in the char() function. (check-in: ff67d87894 user: drh tags: trunk)
01:07
Always use strncmp() rather than memcmp() when comparing strings where one or other string might be less than the length parameter, since optimized versions of memcmp() might read past the first difference and in so doing generate an access violation. (check-in: d73435587b user: drh tags: trunk)
2013-02-26
18:54
In the incrvacuum3 test, add missing call to the Tcl close command. (check-in: cd80672384 user: mistachkin tags: trunk)
12:57
When comparing names during name resolution, make sure the names match exactly and that one name isn't merely a prefix of the other. Fix for ticket [7a31705a7e6c95d51]. (check-in: c2d5a23b1a user: drh tags: trunk)
06:14
Change the way test script incrvacuum3.test copies database files in order to avoid trying to read the (locked) 512 byte 'pending-byte' region. (check-in: fa1842e462 user: dan tags: trunk)
05:44
Prevent Tcl file encoding issues in the tests for the unicode() and char() functions. (Closed-Leaf check-in: d2e7dfca5a user: mistachkin tags: funcTestEncoding)
05:42
Remove extra use of the sqlite3_value_int64() function. (check-in: 6d7973524a user: mistachkin tags: trunk)
2013-02-25
14:39
Add new SQL functions unicode() and char(). (check-in: be24939052 user: drh tags: trunk)
13:55
Strengthen the final test case in index5.test. Also provide additional diagnostic information out the output. (check-in: 47b6418242 user: drh tags: trunk)
13:44
Fix an error in test script index5.test. (check-in: d87e5acf28 user: dan tags: trunk)
13:31
Merge the incr-vacuum-opt branch with the trunk. (check-in: 26e235b7a4 user: dan tags: trunk)
12:06
Add test file incrvacuum3.test. No code changes. (Closed-Leaf check-in: bf57534188 user: dan tags: incr-vacuum-opt)
07:12
Catch a dropped error code in backup.c. (check-in: ac8ca3ecee user: dan tags: incr-vacuum-opt)
2013-02-24
11:50
Fix a case where database corruption may cause an assert() to fail. (check-in: ba33bb059e user: dan tags: incr-vacuum-opt)
2013-02-23
19:43
Fix a case in the incremental vacuum code where database corruption was going unreported. (check-in: 4cd30c7262 user: dan tags: incr-vacuum-opt)
19:11
Fix a cut-and-paste bug causing the library to fail to report database corruption in a few cases. (check-in: f921df5956 user: dan tags: incr-vacuum-opt)
18:58
Enhancements to test scripts. No code changes. (check-in: ccab94c10d user: dan tags: incr-vacuum-opt)
17:49
Fix off-by-one bug in [c3939d2491] uncovered by th3. (check-in: 66f9faa9a9 user: dan tags: incr-vacuum-opt)
16:40
If a rollback mode transaction reduces the size of the database file, avoid actually truncating the file until after the transaction has been committed (but before the db has been unlocked). This means pages that are removed from the database by truncating the file need not be journalled. (check-in: b73847f17b user: dan tags: incr-vacuum-opt)
2013-02-22
20:57
Fix a problem with the previous commit. (check-in: 720a3ceafc user: dan tags: incr-vacuum-opt)
20:16
Avoid moving pages more than once in an incremental vacuum operation. (check-in: c3939d2491 user: dan tags: incr-vacuum-opt)
19:34
Two new SQL functions: unicode() and char(). (Closed-Leaf check-in: 209b21085b user: drh tags: unicode-function)
2013-02-20
00:54
On Minix, disable the ".timer" command in the shell in order to avoid calling getrusage(). (check-in: 9bd9bd9cab user: drh tags: trunk)
2013-02-19
22:26
Enhance the showdb tool with options to show PTRMAP usage and content. (check-in: 06bd91305e user: drh tags: trunk)
20:25
Fix the showdb utility so that it displays the correct secondary usage of a page when reporting on an error of a page being used more than once. (check-in: 4507f0b3d4 user: drh tags: trunk)
18:45
Enhance the pgidx of the showdb utility so that it provides better information even if the sqlite_master table is corrupt. (check-in: d14263a719 user: drh tags: trunk)
18:34
Do not rollback the schema if a parsing error occurs while parsing the schema and writable_schema is set. (check-in: 680d3ab56b user: drh tags: trunk)
18:34
Truncate over-length source lines in sqliteInt.h to 80 characters or less. (check-in: d71abab085 user: drh tags: trunk)
11:51
Add the edit_cost_table= command to the spellfix1 virtual table, permitting the edit distance cost table to be changed at runtime. (check-in: 89d6368250 user: drh tags: trunk)
2013-02-16
02:41
Fix an unsafe VM register deallocation. (check-in: cfba2c8dad user: drh tags: trunk)
2013-02-15
04:21
Check for a NULL handle prior to manually calling winClose. (check-in: 843e1c543a user: mistachkin tags: trunk)
2013-02-14
16:16
Verify that the schema has not changed before running PRAGMA table_info, index_list, index_info, and foreign_key_list. (check-in: 82952d08f3 user: drh tags: trunk)
2013-02-13
22:54
On WinCE, fill in the winFile structure after winceCreateLock has succeeded. (check-in: ec13544ce3 user: mistachkin tags: trunk)
14:04
Add recent API additions to the extension mechanism. (check-in: 7e10a62d0e user: drh tags: trunk)
13:42
Enhancements to the query planner to make use of indices for ORDER BY even when IN constraints are in the WHERE clause. Add extended error codes for all SQLITE_CONSTRAINT errors. (check-in: 7e14dc734d user: drh tags: sessions)
01:00
Allow an index to be used for sorting even if prior terms of the index are constrained by IN operators. (check-in: 2cef8b68f0 user: drh tags: trunk)
2013-02-12
22:20
Improve memory allocation error handling on WinCE. (check-in: cdbca259da user: drh tags: trunk)
22:09
A bug report coming from from Firefox ([https://bugzilla.mozilla.org/show_bug.cgi?id=840377]) describes an infinite recursion. We are unable to reproduce the problem. Nevertheless, this check-in should prevent the problem from ever occurring again. (check-in: b7222a2bd0 user: drh tags: trunk)
09:46
Improve memory allocation error handling on WinCE. (Closed-Leaf check-in: 09dfc0c915 user: mistachkin tags: wince)
2013-02-11
13:47
Add extended error codes for all SQLITE_CONSTRAINT errors. (check-in: 939d828274 user: drh tags: trunk)
2013-02-09
15:37
Rename SQLITE_CONSTRAINT_RAISE to SQLITE_CONSTRAINT_TRIGGER. Put the extended constraint error codes in alphabetical order. Add many test cases for the extended constraint error codes. (Closed-Leaf check-in: 3f67437536 user: drh tags: constraint-error-codes)
13:58
Add extended error codes for constraint errors. (check-in: 5461104668 user: drh tags: constraint-error-codes)
2013-02-08
23:18
Fix a potential NULL-pointer dereference following an OOM error in the query planner logic for virtual tables with OR-connected terms. (Closed-Leaf check-in: 71b6c26053 user: drh tags: IN-with-ORDERBY)
20:39
Make sure the virtual tables that take advantage of IN operators sort the RHS of the IN operator in the correct order according to the ORDER BY clause. (check-in: b016b7546d user: drh tags: IN-with-ORDERBY)
18:48
Loop through the elements on the RHS of an IN operator in reverse order when the ORDER BY clauses specifies DESC. (check-in: f78395c889 user: drh tags: IN-with-ORDERBY)
16:04
Allow the "a=?1 OR a=?2" to "a IN (?1,?2)" transformation to work on virtual tables again. This was formerly restricted because virtual tables could not optimize IN terms. (See check-in [fad88e71cf195e].) But IN terms are now used by virtual tables (as of check-in [3d65c70343]) so the restriction can now be removed. (check-in: a917c1f092 user: drh tags: IN-with-ORDERBY)
2013-02-07
21:15
Allow an index to be used for sorting even if prior terms of the index are constrained by IN operators. (check-in: 98bf668ab1 user: drh tags: IN-with-ORDERBY)
09:33
Fix harmless compiler warnings. (check-in: 4a7b4ee011 user: drh tags: trunk)
05:12
Add the ability to skip defining the localtime() function when being compiled for WinCE. (check-in: e1640876df user: mistachkin tags: trunk)
2013-01-30
01:46
Remove some debugging logic accidently left in the limit.test module. (check-in: 7d346250e8 user: drh tags: trunk)
2013-01-29
23:55
Fix LIMIT and OFFSET so that they work and do not leak memory even on complex queries involving deeply nested views of UNION ALL compounds. Ticket [db4d96798da8]. Secondary to ticket [d58ccbb3f1b7]. (check-in: 497ee36cb8 user: drh tags: trunk)
19:14
New debugging pragmas: PRAGMA vdbe_debug=ON is short-hand for the sql_trace, vdbe_listing, and vdbe_trace pragmas. PRAGMA vdbe_debug enables tracing of sqlite3VdbeAddOp() calls. None of this is active unless compiled with SQLITE_DEBUG. (check-in: ae565ff3e0 user: drh tags: trunk)
2013-01-28
22:52
Fix an issue with the SQLITE_TESTCTRL_EXPLAIN_STMT and compound queries with multiple terms. (check-in: a6499c2521 user: drh tags: trunk)
19:00
Issue an error message and quit (rather than overflowing a reference counter) if the number of references to a table exceeds the maximum due to nested UNION views. Fix for ticket [d58ccbb3f1]. (check-in: c2462a95ed user: drh tags: trunk)
18:18
Cause the command-line shell to issue an error message if you give something that does not look like a boolean value to a dot-command that wants a boolean argument. (check-in: b4d94947fc user: drh tags: trunk)
2013-01-26
19:31
Add a single test case to fts4unicode.test to verify that title-case maps to lower case. (check-in: 955a9459da user: drh tags: trunk)
19:26
Add a single test case to fts4unicode.test to verify that title-case maps to lower case. (Leaf check-in: 46f7c9301e user: drh tags: branch-3.7.15)
2013-01-25
19:11
Fix the test_spellfix.c extension so that it can be made loadable at run-time. Add spellfix to the shell when building using the build-shell.sh script. (check-in: 7813b17d8b user: drh tags: trunk)
18:33
Enhance the command-line shell so that adding a non-zero numeric argument to the ".exit" command causes an immediate exit without cleaning up. This can be used (for example) to cause journal files to be left behind. (check-in: 8ba951d1b7 user: drh tags: trunk)
15:59
Add btree-page decoding logic to showwal.c. Commands of the form: "showwal $FILE 123bmc" show the content of the btree page in frame 123. "b" means decode the btree. "c" means show cell content. "m" means give a map of the btree page. (check-in: 93b159da5d user: drh tags: trunk)
15:31
Further improvements to showwal.c: Reset the checksum after each frame so that only individual checksum failures are shown. And only show failures, not correct checksums. (check-in: 4e2bf57549 user: drh tags: trunk)
15:09
Enhance the "showwal" utility program to show checksum failures on frames. (check-in: a7f6d19816 user: drh tags: trunk)
02:10
Enhancements to the query planner to exploit transitive relationships in the WHERE clause, and other minor changes to bring the sessions branch into alignment with the trunk. (check-in: 82d3d1ae82 user: drh tags: sessions)
2013-01-23
18:53
Improved parsing of the arguments to the ".backup" command in the command-line shell. (check-in: f1127e87b9 user: drh tags: trunk)
18:44
Fix a double-free() call that can occur when SQLITE_ENABLE_TREE_EXPLAIN is defined. (check-in: 5bfb5967d7 user: drh tags: trunk)
2013-01-20
00:18
Fix a typo in a comment in the test_regexp.c test file. (check-in: 68346af70b user: drh tags: trunk)
2013-01-18
03:35
The \xXX escape in the test_regexp.c must be followed by exactly two hex digits. (check-in: 82957495aa user: drh tags: trunk)
2013-01-17
17:20
Enhance the query planner to exploit transitivity of join constraints. (check-in: 38852f158a user: drh tags: trunk)
17:05
Improved error messages on the RTREE virtual table. Make the "fs" virtual table used for testing available on windows. (check-in: c0b90d75a8 user: drh tags: trunk)
16:43
Add the ability to disable transitive constraints using the sqlite3_test_control(SQLITE_TESTCTRL_OPTIMIZATIONS) interface. (Closed-Leaf check-in: 593d67c8b0 user: drh tags: transitive-constraints)
16:18
Avoid unnecessary collating sequence and affinity restrictions on the use of transitivity. Add test cases to show that the restrictions are not needed. (check-in: 56549f4566 user: drh tags: transitive-constraints)
15:05
Make more aggressive use of transitivity in optimizing queries. Add a test case. (check-in: d96762841a user: drh tags: transitive-constraints)
03:18
Enhance RTree virtual table creation error messages that involve the getNodeSize() function. (Closed-Leaf check-in: 652233d646 user: mistachkin tags: rtreeErrMsg)
03:18
Make the 'fs' virtual table module portable to Windows. (Closed-Leaf check-in: dd473cae5b user: mistachkin tags: fsVfsWin)
00:08
Improved comments explaining the operation of the findTerm() utility routine in where.c. Increase the maximum number of levels of transitivity from 4 to 11. (check-in: fe152f8b04 user: drh tags: transitive-constraints)
2013-01-16
20:33
Fix the activate_extensions pragma so that it is a no-op when the required argument is omitted. (check-in: 6195ebd833 user: drh tags: trunk)
17:08
Enhance the query planner to exploit transitivity of join constraints in a multi-way join. (check-in: 13171eb5dc user: drh tags: transitive-constraints)
00:46
Improvements to query planning for joins: Avoid unnecessary calls to "optimal scan" checks in cases where table reordering is not possible. Make sure optimal scan checks are carried out for CROSS JOINs and LEFT JOINs. (check-in: d5ebb78778 user: drh tags: trunk)
2013-01-15
18:49
Fix a missing word in a comment. Enhance the "wheretrace" debugging output to show the estimated cost of each table option while planning the join order. (check-in: ac4e119a87 user: drh tags: trunk)
16:15
Clarification to a comment in where.c. No code changes. (check-in: 04507c1763 user: drh tags: trunk)
2013-01-11
09:58
Add another test for the fts4 content= option. (check-in: 7e6007a000 user: dan tags: trunk)
2013-01-09
15:44
Check in an extra test for the fts4 "content=" option. No code changes. (check-in: 0d0e5ab8f1 user: dan tags: trunk)
14:49
Merge latest trunk changes into the sessions branch, especially the ORDER BY bug fix of 3.7.15.2. (check-in: 34af6fac67 user: drh tags: sessions)
11:53
Version 3.7.15.2 (check-in: c0e09560d2 user: drh tags: version-3.7.15.2, branch-3.7.15)
11:44
Fix an over-aggressive optimization of ORDER BY on a three-way join where the second table is UNIQUE and the ORDER BY occurs on the third table. Ticket [c997b11c4d53a2ee]. (check-in: 3d0609c958 user: drh tags: branch-3.7.15)
11:31
Fix an over-aggressive optimization of ORDER BY on a three-way join where the second table is UNIQUE and the ORDER BY occurs on the third table. Ticket [c997b11c4d53a2]. (check-in: 5774f2175c user: drh tags: trunk)
11:27
Fix the date on the new orderby3.test test case. (check-in: 7249bfc2ca user: drh tags: trunk)
11:25
Add a test case that demonstrates ticket [c997b11c4d53a2ee9983]. (check-in: 598f5f7596 user: drh tags: trunk)
2013-01-08
17:24
Merge updates from trunk. (Closed-Leaf check-in: f29680c468 user: mistachkin tags: configReadOnly)
12:48
Do not raise an error if an unknown SQL function is found in a CHECK constraint while parsing the schema of an existing database. (check-in: cda790280a user: drh tags: trunk)
2013-01-07
17:31
Merge updates from trunk. (check-in: bf90f1fbf8 user: mistachkin tags: configReadOnly)
13:26
Do not raise an error if an unknown SQL function is found in a CHECK constraint while parsing the schema of an existing database. This version causes a run-time error when processing STAT3 tables. (Closed-Leaf check-in: 0a1207c895 user: dan tags: mistake)
2013-01-05
17:17
More bug fixes to the test_regexp.c module. Bring test_regexp.c into alignment with the regexp.c file in the Fossil sources. (check-in: 7695b88fe0 user: drh tags: trunk)
2013-01-04
22:26
Remove superfluous text from a comment. (check-in: e9ac533960 user: mistachkin tags: trunk)
20:45
Do not use umask() since it change the umask for the entire process, not just the thread using SQLite. Make whatever permission changes are needed using fchmod() after the file is created, instead. (check-in: 6c4c2b7dba user: drh tags: trunk)
19:22
Fix an out-of-order local variable declaration in test_regexp.c. (check-in: 8285b15a05 user: drh tags: trunk)
14:06
Fix the zInit[] optimization of test_regexp.c when the initial string contains 3-byte UTF8 characters. (check-in: 357231ec97 user: drh tags: trunk)
2013-01-03
22:22
Merge recent trunk changes into the sessions branch. (check-in: 7e068e39b3 user: drh tags: sessions)
19:34
Bring back test_regexp changes that were made when porting to Fossil. Also fix some bugs that were introduced by the Fossil port. (check-in: 45c158b1a0 user: drh tags: trunk)
18:07
Improvements to column name resolution in queries with parenthesized FROM clauses. Also includes a fix for ticket [beba9cae6345a3]. (check-in: 99127a669c user: drh tags: trunk)
17:34
Further corner-case fixes to the name resolution logic. (Closed-Leaf check-in: 20730bad70 user: drh tags: name-resolution-fix)
16:54
Remove an incorrect assert() statement (ticket [beba9cae6345a]). Fix other minor problems in the name resolution logic. (check-in: afe96a118c user: drh tags: name-resolution-fix)
00:45
Now supports result sets of the form "TABLE.*" with nested FROM clauses. (check-in: 4cf5ed7ea1 user: drh tags: name-resolution-fix)
2013-01-02
14:57
When resolving result-set name collisions, make them x:1, x:2, x:3, etc. instead of x:1, x:1:1, x:1;1;1. (check-in: ef01e30456 user: drh tags: name-resolution-fix)
12:29
Merge all the latest trunk changes into the name-resolution enhancement branch. (check-in: a5f4d2b641 user: drh tags: name-resolution-fix)
2013-01-01
14:01
Reduce the size of the Index object (by 8 bytes on x64). (check-in: 5a2ac94483 user: drh tags: trunk)
13:55
Enhance the table_info pragma so that the pk column shows the order of the columns in a multi-column primary key. (check-in: 3076a89015 user: drh tags: trunk)
2012-12-31
20:16
More test cases for the REGEXP operator. Fix minor bugs uncovered by these test cases. (check-in: a611c75061 user: drh tags: trunk)
19:18
Add the test_regexp.c module containing a cross-platform implementation of the REGEXP operator. (check-in: 46c8c01b75 user: drh tags: trunk)
2012-12-21
16:15
Ensure the database size field in the db header of a backup database is set correctly. Fix for [0cfd98ee201]. (check-in: ff6857b6ed user: dan tags: trunk)
2012-12-20
01:15
Add PRAGMA foreign_key_check. Name the child and parent tables as part of a "foreign key mismatch" error. (check-in: e408dc9080 user: drh tags: trunk)
00:32
Remove an unreachable branch operation from the foreign_key_check pragma. (Closed-Leaf check-in: b5a8f3160b user: drh tags: foreign-key-check)
2012-12-19
20:39
Version 3.7.15.1 (check-in: 6b85b767d0 user: drh tags: release, version-3.7.15.1, branch-3.7.15)
17:10
Backport to the 3.7.15 branch the fix to the segfault problem of ticket [a7b7803e8d1e869] which involved the use of "AS" named result columns as logical terms of the WHERE clause. Also, change the version number to 3.7.15.1. (check-in: bae528f486 user: drh tags: branch-3.7.15)
16:58
Fix the segfault problem of ticket [a7b7803e8d1e869] which involved the use of "AS" named result columns as logical terms of the WHERE clause. (check-in: b3c9e8f812 user: drh tags: trunk)
16:32
A couple more test cases. (Closed-Leaf check-in: 0ae142178d user: drh tags: tkt-a7b7803e)
16:25
Additional test cases involving the use of a result column specified by its "AS" name as a logical term of the WHERE clause. Ticket [a7b7803e8d1e8699cd]. (check-in: d7cc364e87 user: drh tags: tkt-a7b7803e)
15:53
Proposed fix for ticket [a7b7803e8d1e8699cd8a]. (check-in: 3d0e00c731 user: drh tags: tkt-a7b7803e)
13:41
Add commentary to the ExprList object to explain how zSpan is overloaded. Add test cases for the new name resolution functionality. (check-in: 3e7d84db78 user: drh tags: name-resolution-fix)
02:36
Better resolution of table and column names in joins where some of the terms of the FROM clause are parenthesized. (check-in: 7344e791b9 user: drh tags: name-resolution-fix)
2012-12-18
19:36
Optimize the degenerate case of a FROM clause table name enclosed all by itself inside parentheses. Generate code as if the parentheses did not exist, rather than the old behavior of manifesting the parenthesized table into a transient table. Also, tag every FROM-clause SELECT subquery that is generated by a parenthesized FROM-clause expression using the SF_NestedFrom flag. The new SF_NestedFrom flag is not yet used for anything. (check-in: 7fecced466 user: drh tags: trunk)
16:07
Resolve names in FROM-clause subqueries prior to resolving names in the result set expressions of a SELECT statement. (check-in: 9b67c633d9 user: drh tags: trunk)
13:12
Remove old commented-out code from parse.y. Fix some over-length source lines in parse.y. No logical changes. (check-in: 7e30c021ab user: drh tags: trunk)
11:59
On atomic-write capable systems, if copying the contents of an in-memory journal to disk fails, close the (on disk) journal file before returning the error to the caller. This causes the subsequent rollback operation to use the in-memory journal. Fix for [df678d738adb]. (check-in: 8183d8d7ae user: dan tags: trunk)
2012-12-17
22:32
Added test cases for PRAGMA foreign_key_check. Fixed a bug that appears when the column order of the child and parent differ. (check-in: 25411f83f9 user: drh tags: foreign-key-check)
20:57
Add to the foreign_key_check pragma an extra output column "parent" that contains the name of the parent table for the constraint that failed. (check-in: 97f7f73772 user: drh tags: foreign-key-check)
20:40
Enhance the error message for "foreign key mismatch" to include the names of the child and parent tables. Begin adding test cases for PRAGMA foreign_key_check. Make sure PRAGMA foreign_key_check gets all necessary table locks. (check-in: 0f9963526c user: drh tags: foreign-key-check)
18:43
"PRAGMA foreign_key_check" with no argument checks the foreign keys on all tables. (check-in: 57d47423a6 user: drh tags: foreign-key-check)
18:05
Fix an issue with child keys that are not INTEGER PRIMARY KEY referencing INTEGER PRIMARY KEY in the parent. (check-in: 603b695bf0 user: drh tags: foreign-key-check)
16:46
Prototype for PRAGMA that checks all foreign key constraints on a table. (check-in: 01c980e9bb user: drh tags: foreign-key-check)
2012-12-14
17:54
Optimize IN operators in the WHERE clause of queries using virtual tables. (check-in: 3d65c70343 user: drh tags: trunk)
17:48
Remove an unreachable branch. Improvements to comments. (Closed-Leaf check-in: d2fb7619b0 user: drh tags: vtab-IN-opt)
15:54
Merge in all the trunk changes that have occurred since this branch was opened. (check-in: 6d507e4de9 user: drh tags: vtab-IN-opt)
15:36
Fix the virtual table IN optimizer so that it work even if the virtual table implementation leaves the sqlite3_index_info.aConstraintUsage[].omit flag clear for an equality constraint that it intends to use. (check-in: d6e045f89c user: drh tags: vtab-IN-opt)
2012-12-13
18:57
Generalize the min/max optimization so that if an appropriate index exists, the index it can be used by any aggregate query that contains only a single max() or min() and does not contain a GROUP BY clause. (check-in: 52e755943f user: drh tags: trunk)
18:51
Increase the version number to 3.7.16 in advance of adding new features for the next release. (check-in: 8bcf5f51d8 user: drh tags: trunk)
16:37
Attempt to further generalize the min/max optimization so that, if an appropriate index exists, it can be used by any aggregate query that contains only a single aggregate of the form max(colname) or min(colname) and does not contain a GROUP BY clause. (Closed-Leaf check-in: 7280e14cd8 user: dan tags: minmax-opt)
2012-12-12
14:30
Allow the error message from "PRAGMA integrity_check" to be longer than 20,000 bytes. (check-in: 120c82d56e user: drh tags: trunk)
13:36
Version 3.7.15 (check-in: cd0b37c526 user: dan tags: trunk, release, version-3.7.15)
2012-12-11
19:40
Update requirements marks and test cases for multi-VALUE INSERT and to fix typos in requirements text. (check-in: 81d9ee0f0d user: drh tags: trunk)
19:10
Fix a typo in a comment that is used to generate documentation. No changes to code. (check-in: e38adb60a7 user: drh tags: trunk)
2012-12-10
22:19
When an arithmetic operation with two integer operands must give a floating-point answer due to overflow, make sure the answer is not rounded back to integer by affinity. (check-in: bd7aeeb691 user: drh tags: trunk)
10:22
Modify releasetest.tcl so that it runs the "checksymbols" test on a build without SQLITE_DEBUG defined. If SQLITE_DEBUG is defined, the sqlite3WhereTrace variable causes the test to fail. (check-in: 75e545a9e2 user: dan tags: trunk)
09:08
Remove a reference to JumpOnce from a comment in vdbe.c. No code changes. (check-in: ee662c039d user: dan tags: trunk)
2012-12-08
23:37
Pull the latest trunk changes into the sessions branch, and in particular the collating-sequence refactorization. (check-in: 4f6d69ae94 user: drh tags: sessions)
22:14
Factor some work out of the index loop of the bestBtreeIndex() routine for a small performance increase. (check-in: 92c9ab56b1 user: drh tags: trunk)
21:51
Refactor collating-sequence handling as a fix for ticket [71e333e7d2e642]. The Expr.pColl field is removed from the Expr object. The COLLATE operator now becomes a separate instance of Expr in the expression tree. The code generator looks up the correct collating function as needed, rather than referring to Expr.pColl. (check-in: 8542e6180d user: drh tags: trunk)
21:36
Adjustments to the collating-sequence refactoring to facilitate full-coverage testing and to fix some minor issues found by TH3. (Closed-Leaf check-in: cdbfa66483 user: drh tags: ticket-71e333e7)
14:16
Make sure WHERE clause constraints A=B and B=A work the same even with COLLATE clauses. (check-in: b3f5366811 user: drh tags: ticket-71e333e7)
13:26
Fix the header comment on the OP_Compare operator. (check-in: 2722f4074f user: drh tags: ticket-71e333e7)
06:46
Merge updates from trunk. (check-in: e65db42c9f user: mistachkin tags: configReadOnly)
04:10
Duplicating check constraint expressions prior to code generation is no longer required, and so it is removed. (check-in: 1a9db8dc2f user: drh tags: ticket-71e333e7)
03:34
Veryquick passes all tests now. (check-in: 7b96115e81 user: drh tags: ticket-71e333e7)
00:52
Recognize TK_COLLATE operators that have been transformed into TK_REGISTER. Skip both TK_COLLATE and TK_AS operators when looking for the top of an expression. (check-in: f66c1db296 user: drh tags: ticket-71e333e7)
2012-12-07
23:23
Improved error messages when column integers in an ORDER BY clause are out of range. (check-in: bd960d937f user: drh tags: ticket-71e333e7)
23:10
For an ORDER BY on a compound SELECT, take the collating sequence from the left-most term of the compound. (check-in: 8e724b383d user: drh tags: ticket-71e333e7)
22:54
Do not report missing collating functions while parsing the schema. Also remove a stray comment. (check-in: e313edca04 user: drh tags: ticket-71e333e7)
22:18
Fix a long-standing issue with the distinct-as-aggregate optimization that only expressed when the new collating-sequence logic is turned on. (check-in: 0aaf52a339 user: drh tags: ticket-71e333e7)
21:02
Fix the processing of ORDER BY clauses with COLLATE terms on compound queries. 52 veryquick test failures remain. (check-in: 49654453ad user: drh tags: ticket-71e333e7)
20:31
Many more tests are passing. Only about 100 failures remain in veryquick. (check-in: f9fa7581c0 user: drh tags: ticket-71e333e7)
19:28
Ensure the VerifyCookie sub-routine has been run before the database is accessed in an obscure case. Fix for ticket [d6b36be38]. (check-in: 2d5f37c99a user: dan tags: trunk)
18:38
Some errors in veryquick resolved. Many more to go. (check-in: 972443b4eb user: drh tags: ticket-71e333e7)
14:02
Veryquick now runs to completion without segfaulting or asserting. But there are still lots of errors. (check-in: 7fafab12e4 user: drh tags: ticket-71e333e7)
10:55
Do not run test file malloc3.test as part of the inmemory_journal permutation. Explanation is in a comment at the top of malloc3.test. (check-in: df1827b19e user: dan tags: trunk)
09:08
Spelling and header fixes for the async extension. (check-in: 930ba85262 user: mistachkin tags: trunk)
04:46
Backport VSIX tooling and packaging fixes and enhancements. (check-in: e890bcde34 user: mistachkin tags: branch-3.7.14)
2012-12-06
23:16
In the async VFS, treat the new error code SQLITE_IOERR_DELETE_NOENT as success for xDelete. (check-in: c507ca4a8e user: mistachkin tags: trunk)
21:16
Remove the Expr.pColl field and compute the collating sequence as it is needed. This fixes the test script "shared9.test", though there is still a memory leak. And there are other problems. Consider this a work-in-progress. (check-in: fd011cb22f user: drh tags: ticket-71e333e7)
20:27
Cherrypick [79ef8e3c77] (Apply the same restrictions on constant refactoring to statements within a trigger program as top-level statements). (Leaf check-in: 34aafb7436 user: dan tags: branch-3.7.9)
20:19
Cherrypick [557c69055a3] and [0064bab7714] (OP_Once-related fixes for triggers). (check-in: 0d7b5d455c user: dan tags: branch-3.7.9)
19:41
Merge the constant-refactoring-in-triggers branch with the trunk. (check-in: 79ef8e3c77 user: dan tags: trunk)
19:37
Apply the same restrictions on constant refactoring to statements within a trigger program as top-level statements. Candidate fix for [ae3c5670b6]. (Closed-Leaf check-in: 0c31a46801 user: dan tags: constant-refactoring-in-triggers)
19:01
Add the SQLITE_FCNTL_TEMPFILENAME file control that asks the underlying VFS to return a new temporary filename. Per request from NSS team at Mozilla. (check-in: 1a63b1d5fa user: drh tags: trunk)
15:15
Add a test case that demonstrates ticket [71e333e7d2e642]. (check-in: cc6e0785df user: drh tags: ticket-71e333e7)
04:33
For the sqlite3-all.c target, use backslashes when calling the splitter script via the MSVC makefile. (check-in: d507648d82 user: mistachkin tags: trunk)
04:19
Bring the ancient malloc3.test file closer into relevance with the latest core code. (check-in: 9793a21c13 user: mistachkin tags: trunk)
02:56
Stop using the TCL_LIBS configuration variable when linking with Tcl. Remove superfluous 'rm' command from the "clean" target. (check-in: 1551277208 user: drh tags: trunk)
01:03
Remove obsolete comments from the definition of the CollSeq object. (check-in: 7b6951016f user: drh tags: trunk)
00:16
Stop using the TCL_LIBS configuration variable when linking with Tcl. Remove superfluous 'rm' command. (Closed-Leaf check-in: e1feab9834 user: mistachkin tags: noTclLibs)
2012-12-05
19:04
Disable a couple of tests in where.test when running the "no_optimization" permutation. (check-in: 5e961e37c5 user: dan tags: trunk)
16:44
Modify a query in test/thread001.test to ensure that results are returned in the order expected by the test. (check-in: 51cbddd51d user: dan tags: trunk)
14:37
Fixes to a test case in shared_err.test. The fix is to prevent sqlite3_prepare() from being called when the test intends to test the response of sqlite3_step() to an OOM condition. (check-in: 40c143955e user: dan tags: trunk)
14:31
Make sure memory is freed using a routine that is compatible with the routine used to allocate the memory. The SQLITE_MEMDEBUG compile-time option enforces this. (check-in: 9f6c68856b user: drh tags: trunk)
11:30
Since errors are ignored anyway, use sqlite3OsFileControlHint() instead of OsFileControl() to invoke the SQLITE_FCNTL_BUSY_HANDLER file-control. (check-in: bdceca2738 user: dan tags: trunk)
10:01
If the atomic-write property is enabled, a transaction may be committed in journal_mode=DELETE mode without ever actually creating a journal file on disk. In this case, do not attempt to unlink() the journal file when committing the transaction. (check-in: 11aa47b0a8 user: dan tags: trunk)
09:12
Update a couple of test scripts so that they work in auto-vacuum mode. (check-in: 04ab2dc691 user: dan tags: trunk)
2012-12-04
11:03
Fix a harmless compiler warning. (check-in: 12693deba9 user: drh tags: trunk)
05:24
Add a test to ensure that the fix in [b0c1ba655d] has worked. (check-in: 41806de5c8 user: dan tags: trunk)
05:21
Add a test to ensure that the fix in [b0c1ba655d] has worked. (Closed-Leaf check-in: 59c233942e user: dan tags: mistake)
00:59
Improvements to the 'tcl' shell output mode. Escape doublequotes, set separator to space when mode is set, and skip separator after final column. (check-in: 487ba75313 user: drh tags: trunk)
00:53
Fix an uninitialized variable detected by valgrind. (check-in: ffd1e51490 user: drh tags: trunk)
00:37
Fix an out-of-order function declaration when compiled with MEMDEBUG. (check-in: 6d31557837 user: mistachkin tags: trunk)
00:23
Improvements to the 'tcl' shell output mode. Escape double quotes, set separator to space when mode is set, and skip separator after final column. (Closed-Leaf check-in: 41fd9dd290 user: mistachkin tags: tclMode)
2012-12-03
19:42
Remove an unreachable condition. Replace it with an assert(). (check-in: 7d5fc1a339 user: drh tags: trunk)
17:04
Make sure that the optimization that set the maximum column that will be used on a particular query does not mistakenly change an opcode other than OP_OpenRead or OP_OpenWrite. In particular, make sure it does not overwrite the P4 field of an OP_SorterOpen. (check-in: b0c1ba655d user: drh tags: trunk)
2012-12-01
20:21
Do not exit the command-line shell if a ".read" command invokes a script that contains two errors. But reported on the mailing list. (check-in: 2e5e651527 user: drh tags: trunk)
2012-11-29
14:26
Mark the "async" module as deprecated as its functionality has been superceded by WAL mode. This closes ticket [f46ca03b55ae0e] (check-in: 3d548db7eb user: drh tags: trunk)
2012-11-27
21:56
Update the sessions branch to include the SQLLOG enhancement, the SQLITE_IOERR_DELETE_NOENT fix, and a fix for the number-of-documents bug in FTS4. (check-in: ba8d08b670 user: drh tags: sessions)
21:22
Add the SQLLOG capability to trunk. (check-in: f0843f885a user: drh tags: trunk)
21:12
Improved detection of file-does-not-exist in winDelete. (check-in: 92e9b5bc05 user: drh tags: trunk)
16:39
Get SQLLOG working on windows. Fix a couple of compiler warnings. (Closed-Leaf check-in: b3809c937b user: drh tags: sqllog)
15:56
Fix a problem causing the "number-of-documents" field maintained by FTS4 to be set incorrectly by REPLACE queries. (check-in: e38fb02d5e user: dan tags: trunk)
10:56
Fix problems in test_sqllog.c. Clarify the experimental SQLITE_CONFIG_SQLLOG interface. Handle at least the more likely error conditions in test_sqllog.c. (check-in: 429c5b2056 user: dan tags: sqllog)
2012-11-26
19:50
Add an option to register global hooks used for logging all SQL executed by an application. (check-in: cd501bbccf user: dan tags: sqllog)
2012-11-21
02:10
In winDelete, determine that a file does not exist by checking for a last error of ERROR_FILE_NOT_FOUND or ERROR_PATH_NOT_FOUND. (Closed-Leaf check-in: 692ad3c02b user: mistachkin tags: winNotFound)
2012-11-20
15:06
Have the windows implementation of xDelete return SQLITE_IOERR_DELETE_NOENT if the file to be deleted does not exist. The unix implementation was previously modified to behave this way. The current changes simply brings the two implementations into alignment. (check-in: d4c36d4991 user: drh tags: trunk)
2012-11-13
11:16
Strive to use posix_fallocate() rather than ftruncate() when posix_fallocate() is available. Ticket [5eaa61ea18]. (check-in: 29980b08ec user: drh tags: trunk)
11:08
Use preprocessor macros to automatically detect whether or not posix_allocate() is available. (It is generally available on Linux but not on Mac.) Ticket [5eaa61ea1881040b17449ca043b6f8fd9ca55dc3] (Closed-Leaf check-in: 597333f102 user: drh tags: tkt-5eaa61ea18)
10:54
When available, use posix_fallocate() rather than ftruncate() to allocate space for mmap()ed -shm files, since posix_fallocate() gives an error if no disk space is available whereas ftruncate() is silent and leaves the system vulnerable to a SIGBUS upon first write to the mmap()ed region. Ticket [5eaa61ea1881040b17449ca043b6f8fd9ca55dc3] (check-in: 356259617c user: drh tags: tkt-5eaa61ea18)
2012-11-10
01:27
Merge the latest changes from trunk: chiefly the outer/inner loop query optimizer scoring enhancement and the INSTR() function. (check-in: 2993ca2020 user: drh tags: sessions)
2012-11-09
21:40
Only log unlink() errors if the error is something other than SQLITE_IOERR_DELETE_NOENT. The error is still reported up the stack, it is simply not added to the sqlite3_log(). (check-in: 5a3b07f0f5 user: drh tags: trunk)
20:17
Change os_unix.c to propagate ENOENT errors back to sqlite as SQLITE_IOERR_DELETE_NOENT. Have SQLite ignore these where they are benign and propagate them back to the caller where they may indicate a file-system malfunction of some description. (check-in: bed9c172ce user: dan tags: trunk)
18:32
Take into account the cost of inner loops when selecting which table of a join to use for the next outer loop. (check-in: 3f87f4593b user: drh tags: trunk)
18:22
Disable the table selection rule that tried to prevent full table scans from migrating to the outer loop unless they were optimal. The new scaling of outer-loop costs by cost of inner loops obviates the need for that step. And, in fact, that step causes problems with the new inner-loop cost accounting. (Closed-Leaf check-in: 51bfd63b7f user: drh tags: inner-loop-cost)
17:59
Try to take into account the cost of inner loops when selecting which table of a join to use for the outer loop. (check-in: 942556342a user: drh tags: inner-loop-cost)
2012-11-06
20:39
Adjust the SQLITE_DBSTATUS_STMT_USED calculation to take the modified usage of sqlite3VdbeClearObject() into account. (check-in: 82eb7eadb8 user: mistachkin tags: trunk)
18:41
In test_quota.c, provide a work-around for the missing _chsize_s() function in mingw. (check-in: 6b4979e86c user: drh tags: trunk)
2012-11-05
16:36
Merge the omit-wal-fix branch into branch-3.7.9 where it belongs, and in so doing get branch-3.7.9 working with SQLITE_OMIT_WAL. (check-in: 0391951792 user: drh tags: branch-3.7.9)
13:51
Add the INSTR() SQL function. (check-in: a4c181cbcf user: drh tags: trunk)
2012-11-02
23:42
Merge the fix for ticket [bfbf38e5e9956ac6] into trunk. (check-in: 4f7dfc32aa user: drh tags: trunk)
19:08
Adding test cases for ticket [bfbf38e5e9956a] (Closed-Leaf check-in: 62ebfa7476 user: drh tags: ticket-bfbf38e5e9)
18:48
Proposed fix for ticket [bfbf38e5e9]. (check-in: 18ae030dad user: drh tags: ticket-bfbf38e5e9)
18:24
Fix an out-of-date comment. No changes to code. (check-in: 10cc12b16b user: drh tags: trunk)
2012-10-30
21:03
Pull all the latest trunk enhancements into the sessions branch. (check-in: fce667f2d9 user: drh tags: sessions)
18:09
Enable the use of coroutines as an alternative to manifesting views used in a FROM clause. (check-in: 9dca18f5fe user: drh tags: trunk)
15:31
Make sure that the optimizer never tries to create an automatic index on a coroutine subquery. (Closed-Leaf check-in: f83aa0de84 user: drh tags: subquery-as-coroutine)
14:44
Fix a typo in the header comment for the OpenPseudo opcode. (check-in: 4f1061230e user: drh tags: subquery-as-coroutine)
14:39
Make it possible to disable the subquery-by-coroutine optimization using sqlite3_test_control(). Remove an always-false conditional. (check-in: 564631f3e4 user: drh tags: subquery-as-coroutine)
00:29
Add an optimization that attempts to run a subquery as a coroutine rather than manifesting it into a temporary table. (check-in: 7af3acbbd4 user: drh tags: subquery-as-coroutine)
2012-10-29
14:27
Make the multiplexor and the IntArray extensions callable from C++. (check-in: cbd8fddf3b user: drh tags: trunk)
2012-10-28
19:35
Merge VSIX tooling and packaging enhancements to trunk. (check-in: 99f27d642f user: mistachkin tags: trunk)
2012-10-26
19:22
Fix a 32-bit integer overflow problem that could cause an error in a CREATE INDEX statement that writes more than 16GB of data. (check-in: e24ba5bee4 user: dan tags: trunk)
18:40
Make sure the automatic index optimization is checked even if the covering index scan optimization was previously selected. (check-in: ac1d5d8a55 user: drh tags: trunk)
13:46
Add QNX-specific performance tweaks to the unix VFS. (Cherry-pick merge of [b02849e7bde458].) (check-in: 63a7dd75e6 user: drh tags: trunk)
13:34
Backport the [/timeline?r=shared-cache-fix | shared-cache-fix] branch. (check-in: 325364a984 user: drh tags: branch-3.7.14)
13:25
Add QNX-specific performance tweaks to the unix VFS. (Cherry-pick merge of [b02849e7bde458].) Put auxiliary libraries after libsqlite3.a in the testfixture target of the "main.mk" makefile. (Cherry-pick merge of [8fc8548f52ab8fcfb5].) (check-in: cbfd1b120a user: drh tags: branch-3.7.14)
00:55
Make sure all virtual table cursors have been closed on a prepared statement prior to unlinking the perpared statement from its database connection. The test case for this is in TH3, in the main39.test module. (check-in: 6d42d806ad user: drh tags: trunk)
00:11
Make sure all virtual table cursors have been closed on a prepared statement prior to unlinking the perpared statement from its database connection. (Closed-Leaf check-in: f7c5abe873 user: drh tags: deferred-close-order)
2012-10-25
23:47
Further work on getting ssdsim to run. This is an incremental checkin to save my place while jumping off to work on other things. (Leaf check-in: ae2f1627b1 user: drh tags: ssdsim)
19:25
Fix a bug in fts3 causing it to return SQLITE_NOMEM when NEAR, OR and some auxiliary functions were used together. Also a segfault in vtab.c that could follow an OOM condition. (check-in: 33f4f9817e user: dan tags: trunk)
17:21
Use a constant string "BINARY" for the unspecified collating sequence. This is part of check-in [635e3a762dd] that is being back-ported. (check-in: 9078ea75f5 user: drh tags: branch-3.7.9)
15:43
Fix typo in usage text for the command-line shell. Also, in the same usage text, make the file name argument to -init uppercase for consistency. (check-in: a6d906cfeb user: mistachkin tags: trunk)
15:32
Merge the command-line shell enhancements from trunk. Other edits toward trying to get ssdsim to run. (check-in: 848f87e22f user: drh tags: ssdsim)
15:23
Improvements to the command-line argument parsing in the command-line shell. Command-line options can now occur either before or after the database name and first command and are still accepted and processed. Command-line options are processed even if no database name is given (and :memory: is assumed). (check-in: 317c80cba3 user: drh tags: trunk)
03:07
Implementation of the INSTR() SQL function, as found in SQL Server, MySQL, and Oracle. (Closed-Leaf check-in: 49ccae964f user: drh tags: instr)
01:50
Initial check-in of a test VFS designed to simulate a NAND-flash SSD for the purpose of measuring and subsequently minimizing write amplification caused by SQLite. The code in this check-in compiles but does not run. (check-in: 9e6efcf054 user: drh tags: ssdsim)
2012-10-24
00:47
Translate the Debug/Release project configurations to the Debug/Retail VSIX package configurations. (Closed-Leaf check-in: 5023a7adca user: mistachkin tags: vsixFlavor)
2012-10-20
09:35
Modify clean target to handle all VSIX package flavors. (check-in: 023217ea9e user: mistachkin tags: vsixFlavor)
08:40
Modify VSIX build tools in support of an additional package flavor. (check-in: 702ebc646b user: mistachkin tags: vsixFlavor)
2012-10-19
19:22
Correct the design-time library file path in the VSIX package now that it is per-configuration. (check-in: 521024d4a7 user: mistachkin tags: branch-3.7.14)
02:10
Make sure substructure elements have proper alignment in the ICU tokenizers of FTS2 and FTS3. (check-in: aaa2d9b0db user: drh tags: trunk)
00:23
Add detailed comments to the build tools used to generate the VSIX package. Also, allow the build configurations and native library directories to be overridden for the multi-platform build tool for MSVC. (check-in: 0482c73bfd user: mistachkin tags: trunk)
2012-10-18
20:49
Put auxiliary libraries after libsqlite3.a in the testfixture target of the "main.mk" makefile. (check-in: 8fc8548f52 user: drh tags: trunk)
15:01
Merge Watcom compiler warning fixes into trunk. (check-in: 5be96788a1 user: drh tags: trunk)
10:35
More warning fixes. (Closed-Leaf check-in: 51a6a797e1 user: mistachkin tags: warnings)
09:39
Fix harmless compiler warnings. (check-in: 018e09c703 user: mistachkin tags: warnings)
2012-10-17
20:28
Add a comment to fts3_snippet.c. (check-in: b5f5ba3103 user: dan tags: trunk)
20:15
Initialize variables used as outputs of custom tokenizer method calls in fts4. (check-in: 514505a84b user: dan tags: trunk)
16:20
Add a test for the problem fixed by [bf44d73d3e]. (check-in: db9b1fa597 user: dan tags: trunk)
15:28
Change the way the tcl crash-test code works to avoid triggering an assert() in os_unix.c. (check-in: b8b7b8f9e9 user: dan tags: trunk)
13:15
Remove an incorrect "#ifndef SQLITE_OMIT_AUTOVACUUM" from pager. (check-in: bf44d73d3e user: drh tags: trunk)
2012-10-16
23:17
Enable optimization of IN operators on constraints to virtual tables. (check-in: aa650746b1 user: drh tags: vtab-IN-opt)
23:08
Merge updates from trunk. (check-in: f021559d8a user: mistachkin tags: configReadOnly)
21:08
An optimization that converts "a IN (b)" into "a==b". Seems to work, but needs additional test cases. (Leaf check-in: 8b4c3c5e50 user: drh tags: degenerate_IN)
2012-10-15
23:15
Change the ICU tokenizer so that it does not attempt to call strlen(NULL). This is a cherry-pick of the fix in [04298f1ac42c40c] on 2012-03-31 first appearing in release 3.7.12. (check-in: 49ffbc11c5 user: drh tags: branch-3.7.9)
20:28
Correct comments and enhance readability of the mkvsix tool. (check-in: 2c3af657fe user: mistachkin tags: trunk)
18:02
Hold the mutex on the shared-cache for the duration of a VACUUM operation. (check-in: 629a42d47a user: dan tags: trunk)
16:24
Dequote column names generated by the query flattener. (check-in: 5526e0aa3c user: drh tags: trunk)
14:25
Merge all the latest core changes into the sessions branch. (check-in: 76767d651f user: drh tags: sessions)
11:28
Fix a failing assert() in wal.c. (check-in: 8745530b9a user: dan tags: trunk)
2012-10-13
23:16
Ensure that when the source of a backup is a database that is zero bytes in size, the final destination database consists of at least one page. Truncating it to zero bytes is equivalent to zeroing the schema cookie and change counter, which can cause problems for existing clients. (check-in: ca86138bda user: drh tags: trunk)
20:55
Mark an always-true conditional as such. (Closed-Leaf check-in: ae025cae22 user: drh tags: zero-byte-backup-fix)
20:20
Modify backup4 test name prefix to make the resulting test names unique. (check-in: 637fb1c1b7 user: mistachkin tags: zero-byte-backup-fix)
19:58
Ensure that when the source of a backup is a database that is zero bytes in size, the final destination database consists of at least one page. Truncating it to zero bytes is equivalent to zeroing the schema cookie and change counter, which can cause problems for existing clients. (check-in: af5c9ee4a4 user: dan tags: zero-byte-backup-fix)
09:31
Allow the showdb tool to be compiled with MSVC. (check-in: dce391fc63 user: mistachkin tags: trunk)
2012-10-12
18:22
Backport of tooling support for including the debug build in the VSIX package. (check-in: c188896719 user: mistachkin tags: branch-3.7.14)
18:06
Tooling support for including the debug build in the VSIX package. (check-in: de784399ed user: mistachkin tags: trunk)
2012-10-10
13:59
Fix duplicate test name in whereD.test. (check-in: 1182b54af0 user: mistachkin tags: trunk)
12:14
Define the sqlite3PagerWalFramesize() function even if SQLITE_OMIT_WAL is used. (check-in: 96247853ef user: drh tags: trunk)
10:52
Add support for URI filenames in sqlite3_analyzer. (check-in: 6dc987d32b user: drh tags: trunk)
09:46
Move a couple of WAL-related function declarations in sqliteInt.h and pager.h into "#ifndef SQLITE_OMIT_WAL" blocks. Otherwise, the amalgamation fails to build using some compilers with SQLITE_OMIT_WAL (static function declared but not defined). (check-in: f7437153b9 user: dan tags: trunk)
2012-10-09
21:07
Merge the fix for ticket [d02e1406a58ea02] into trunk. (check-in: dd34bec389 user: drh tags: trunk)
18:51
Attempt to suppress warnings generated by Coverity. (check-in: 7b1a6e6cb5 user: drh tags: trunk)
14:58
Merge the latest trunk changes, especially the ORDER BY optimizer enhancements but also other fixes, onto the sessions branch. (check-in: f1fbb8c5bf user: drh tags: sessions)
14:36
Avoid an assertion fault and/or freeing memory while it is still in use when an error occurs during virtual table construction. (check-in: a02599ad85 user: drh tags: trunk)
09:26
Bring some comments up to date in the query planner, and especially the ORDER BY optimizer. Also add testcase() macros. (check-in: bb5c0f1c92 user: drh tags: trunk)
01:39
Remove an unused variable. Fix code that occurs before a variable declaration. (check-in: 01dc032b5b user: drh tags: trunk)
01:23
Replace an always-false conditional with an assert(). (check-in: 981b9943e4 user: drh tags: trunk)
2012-10-08
23:25
Changes to facilitate full test coverage. (check-in: 28d1eb40bf user: drh tags: trunk)
21:51
Merge ORDER BY optimization refactoring and repair into trunk. (check-in: c027a9af91 user: drh tags: trunk)
21:01
All test cases (veryquick.tcl and min.rc) pass. A few branch operations in ORDER BY optimization logic are untested by min.rc. (Closed-Leaf check-in: 8314fd6078 user: drh tags: qp-enhancements)
20:27
Further tweaks to the ORDER BY optimizer, to fix a bug and to get the optimizer to recognize some additional cases. (check-in: bcb4f26247 user: drh tags: qp-enhancements)
19:41
Bug fixes in the ORDER BY optimizer. (check-in: 301bbee404 user: drh tags: qp-enhancements)
18:23
Continued refactoring of the ORDER BY optimization logic. This check-in is close to working, but it still has issues. A few test cases fail. (check-in: adbdc663f3 user: drh tags: qp-enhancements)
14:36
Manually define the Win32 file-mapping APIs for WAL if SQLITE_WIN32_FILEMAPPING_API is defined. (check-in: 1c2c0a2880 user: mistachkin tags: trunk)
2012-10-07
14:14
Merge updates from trunk. (check-in: bbb0d189b7 user: mistachkin tags: configReadOnly)
05:34
Corrections to test names to eliminate duplicates and follow naming conventions. (check-in: 50679889c7 user: mistachkin tags: trunk)
00:52
Manually define the Win32 file-mapping APIs for WAL if SQLITE_WIN32_FILEMAPPING_API is defined. (Closed-Leaf check-in: 585e2070ee user: mistachkin tags: winFileMapping)
2012-10-06
03:48
Changes for WinRT compatibility. Also, allow version resource compilation and embedding to be disabled at compile-time. (check-in: 4b0facc13b user: mistachkin tags: trunk)
2012-10-05
19:43
Fix a problem in shared-cache mode where a COMMIT statement might cause a busy-handler belonging to a shared-cache connection other than the current writer to be invoked. (check-in: e0c889d66c user: dan tags: trunk)
19:10
Add QNX-specific performance tweaks to the unix VFS. (check-in: b02849e7bd user: drh tags: branch-3.7.9)
18:38
Fix an accidental fork on branch-3.7.9. (check-in: cd9efeb3eb user: drh tags: branch-3.7.9)
18:35
Backport fixes to shared-cache mode, from the shared-cache-fix branch, to version 3.7.9 (check-in: ac81ae493f user: drh tags: branch-3.7.9)
17:44
Merge the shared-cache related fixes from the shared-cache-fix branch to the trunk. (check-in: 698ec7769d user: dan tags: trunk)
17:18
Add a test for the collation-sequence/CHECK constraint problem fixed by the previous commit. (Closed-Leaf check-in: 82b6aa77c8 user: dan tags: shared-cache-fix)
16:30
Fix a problem with shared-cache mode and CHECK constraints causing one db handle to invoke a collation sequence function registered with another. (check-in: c2c776ab73 user: dan tags: shared-cache-fix)
14:43
Consolidate all occurrences of the "no such collation sequence" error message into a single spot. (check-in: 8ea67522fb user: drh tags: trunk)
07:36
Rename a tool batch file subroutine to avoid confusion about its purpose. (check-in: 43155b1543 user: mistachkin tags: trunk)
2012-10-04
22:45
Merge the 3.7.14.1 release including the fix for the LEFT JOIN problem into the sessions branch. (Leaf check-in: 17644c0e33 user: drh tags: sessions-3.7.14)
19:37
Version 3.7.14.1 (check-in: 091570e46d user: drh tags: release, version-3.7.14.1, branch-3.7.14)
19:33
Shared-cache mode fixes for views and virtual tables. (check-in: 2b370dea70 user: dan tags: shared-cache-fix)
16:00
Candidate fix for ticket [d02e1406a58ea02]. (check-in: 81fd941da6 user: drh tags: branch-3.7.14)
15:36
Increase the version number to 3.7.14.1. The version of autoconf used is different from the previous release so there are huge differences in the generated "configure" script. (check-in: 972dbd5fcc user: drh tags: branch-3.7.14)
12:10
Yet another refactoring of ORDER BY logic in the query planner. This particular check-in works mostly, but still has a few minor issues. (check-in: 8f4487450b user: drh tags: qp-enhancements)
2012-10-03
20:25
Merge updates from trunk. (check-in: 1138815c62 user: mistachkin tags: configReadOnly)
20:20
Add experimental sqlite3_reconfig() interface to more fully support the SQLITE_CONFIG_READONLY option. (check-in: 9dc2eaa64b user: mistachkin tags: configReadOnly)
18:26
Work around an optimization issue with the MSVC compiler for ARM. (check-in: 2ce625fdbe user: drh tags: sessions-3.7.14)
18:20
A branch off of the sessions branch corresponding to release 3.7.14. (check-in: 86633e01fe user: drh tags: sessions-3.7.14)
18:09
Fix an out-of-order memset() that occurs before all variable declarations are finished. Also fix a line that exceeds the 80-character line length limit. (check-in: ba2f492f95 user: drh tags: trunk)
12:56
Update the query planner to recognize more cases where ORDER BY clauses can be optimized out. Add test cases to verify correct behavior of the ORDER BY optimization when the covering-index-scan optimization is disabled. Fix a harmless compiler warning in the TCL interface. (check-in: 956e4d7f89 user: drh tags: trunk)
12:38
Fix a query planner problem that only occurs when covering-index-scan is disabled. Fix to tests whose output changed due to the new and more aggressive ORDER BY optimization. (Closed-Leaf check-in: 0f9bb90100 user: drh tags: qp-enhancements)
11:11
Fix the TCL interface so that SQL functions implemented in TCL honor the "nullvalue" setting. Also remove from the TCL interface some unused legacy UTF8 translation code left over from SQLite2. (check-in: 9bf64b6612 user: drh tags: branch-3.7.14)
11:02
Fix the TCL interface so that SQL functions implemented in TCL honor the "nullvalue" setting. Also remove from the TCL interface some unused legacy UTF8 translation code left over from SQLite2. (check-in: c1f10a2643 user: drh tags: trunk)
00:25
Further attempts to optimize out unnecessary ORDER BY clauses. (check-in: 6744d9a37f user: drh tags: qp-enhancements)
2012-10-02
23:26
Work around an optimization issue with the MSVC compiler for ARM. (check-in: 9fab9edd0d user: drh tags: branch-3.7.14)
22:54
Work around an optimization issue with the MSVC compiler for ARM. (check-in: 7d301fdfee user: mistachkin tags: trunk)
15:19
More lenient handling of ORDER BY optimization in joins with mixed ASC/DESC. This is a better and less restrictive fix for the problem addressed by the previous check-in. (check-in: abcf6a5d05 user: drh tags: trunk)
14:11
Only continue an ORDER BY optimization into inner loops if the equality constraints on the inner loop match terms of an outer ordered index that are actually used by the ORDER BY clause. (check-in: b0e7b4df6c user: drh tags: trunk)
01:46
Factor an invariant out the loop termination condition for the ORDER BY satisfied-by-index analyzer routine. (check-in: 545bb33688 user: drh tags: trunk)
01:25
Make sure the outer loop cursor numbers are recorded in time for them to be used by the ORDER BY optimizer. (check-in: 351dc8d9ca user: drh tags: trunk)
01:10
Improvements to the wheretrace output. (check-in: 76b2776556 user: drh tags: trunk)
2012-10-01
20:32
Fix harmless compiler warnings. (check-in: 59c2be75ff user: drh tags: trunk)
20:12
Fix several compiler warnings seen with MSVC. (Closed-Leaf check-in: 8b5f617c2a user: mistachkin tags: msvcWarnings)
18:44
Add SQLITE_FCNTL_BUSYHANDLER. Invoked to provide access to the busy-handler callback to custom VFS implementations. (check-in: 1262d2f471 user: dan tags: trunk)
17:44
Minor changes to the query planner for improved test coverage. (check-in: c12044df32 user: drh tags: trunk)
12:44
Omit the sqlite3GetReservedNoMutex() routine in build configurations where it is not used. (check-in: f193dbb6b9 user: drh tags: trunk)
12:16
Make sure the size parameter to read and write VFS methods in the unix VFS do not become too big or go negative. This was not actually possible in the current code. The checks are added to make sure some future bug does not make it possible. (check-in: daebe3bd2d user: drh tags: trunk)
06:50
Ensure that the value returned by xSectorSize() is reasonable (currently defined as between 2^5 and 2^16 bytes) before using it to calculate the amount of padding to add to a wal file. (check-in: 6b4ff83bff user: dan tags: trunk)
2012-09-29
19:10
Improved ORDER BY optimization when outer loops of a join return a single row. (check-in: 62225b4a4c user: drh tags: trunk)
15:45
Disable the bigfile tests on Macs. (check-in: d869eddaf2 user: drh tags: trunk)
14:45
Fix compiler warnings found on Lion. (check-in: fd74d3d917 user: drh tags: trunk)
2012-09-28
20:23
Avoid calling sqlite3BtreeEnter() in a corner case where the corresponding database handle mutex (sqlite3.mutex) may not be held. This prevents a potential deadlock or crash that can occur if the backup API, shared-cache mode and SQLITE_HAVE_CODEC are all in use. (check-in: 89b8c377a6 user: dan tags: trunk)
18:13
Modify the clearCell function to use SQLITE_CORRUPT_BKPT in the one place it was not. (check-in: 472beb306a user: mistachkin tags: trunk)
13:05
Merge the latest trunk changes (especially "PRAGMA busy_timeout" and the ORDER BY query planner optimizations) into the sessions branch. (check-in: 6ca8eae1f8 user: drh tags: sessions)
12:55
Update the sessionfault-9.1 and -9.2 tests to account for the change in version 3.7.11 in which a pending statement no longer blocks ROLLBACK but instead causes the next call on that statement to return SQLITE_ABORT. (check-in: fae9eb197f user: drh tags: sessions)
10:57
Merge the latest trunk changes (PRAGMA busy_timeout and the ORDER BY query planner enhancements) into the apple-osx branch. (check-in: 6a5c59dd7e user: drh tags: apple-osx)
00:44
Query planner enhancements to be more agressive about optimizing out ORDER BY clauses - in particular the query planner now has the ability to omit ORDER BY clauses that span multiple tables in a join. (check-in: 1e874629d7 user: drh tags: trunk)
2012-09-27
23:27
Fix some corner case behavior in the new ORDER BY optimization logic. Remove the SQLITE_OrderByIdx bit from the SQLITE_TESTCTRL_OPTIMIZATIONS mask, since enabling it caused many TH3 tests to fail when the NO_OPT configuration parameter was engaged, and since there really isn't any need to turn that optimization off. The SQLITE_OrderByIdxJoin bit remains. (Closed-Leaf check-in: 98b633717a user: drh tags: qp-enhancements)
21:03
Modify generation of resource header file for MSVC so that it can work from outside the working directory. (check-in: 20caf80cb3 user: mistachkin tags: trunk)
19:53
More test cases an bug fixes for the ORDER BY optimization of joins. All veryquick tests now pass. (check-in: 0d57332005 user: drh tags: qp-enhancements)
17:31
Test cases and bug fixes applied to the ORDER BY optimization for joins. Some test cases fail, but except for the new orderby1.test failures, all failures appear to be issues with the tests, not with the core code. (check-in: 75cda864ed user: drh tags: qp-enhancements)
15:05
Add more bits to the bit vector that is used to disable optimizations for built-in test. Add specific bit patterns to disable ORDER BY using an index in general and for joins. Use macros to test for bits in the disabled-optimization bit vector, in order to make the code clearer. (check-in: d2fcba1e14 user: drh tags: qp-enhancements)
14:11
Enable ORDER BY clauses that span joins to be optimized out. (check-in: c29538f9b1 user: drh tags: qp-enhancements)
12:11
Merge the "PRAGMA busy_timeout" change into trunk. (check-in: 1a679a1ef3 user: drh tags: trunk)
12:05
Further tweaks to the query planner logic in preparation for adding ORDER BY opt-out for joins. (check-in: 53efc10af9 user: drh tags: qp-enhancements)
2012-09-26
23:17
Further refactoring of the ORDER BY related query-planning logic in order to make it easier to extend to support optimizing out ORDER BY on joins. No actual behavior changes, yet. (check-in: 96496ddae1 user: drh tags: qp-enhancements)
2012-09-25
20:43
Augment the WhereBestIdx structure to pass down into the query planner information that might be used to better detect ORDER BY and DISTINCT optimizations spanning multiple tables of a join. (check-in: 4226e51ff8 user: drh tags: qp-enhancements)
14:29
Pass information around between the major routines of the query planner using a single pointer to a structure rather than a long list of parameters. (check-in: 1104d42e10 user: drh tags: qp-enhancements)
12:45
Merge updates from trunk. (check-in: 4a470741b6 user: mistachkin tags: configReadOnly)
2012-09-24
19:50
Remove an unused subfunction parameter and an obsolete comment from the query planner logic in where.c. (check-in: 349a55cd8b user: drh tags: trunk)
15:30
Change the internal sqlite3WhereBegin() to report that the ORDER BY clause is satisfied by indices using the WhereInfo.nOBSat field of the returned structure. (check-in: 22989f3588 user: drh tags: trunk)
11:43
Update documentation to describe the threadsafety of sqlite3_enable_shared_cache(). (check-in: e081890cd7 user: drh tags: trunk)
2012-09-21
22:50
Enable query planner tracing using the new (and undocumented) ".wheretrace 1" command in the command-line shell if both the shell and the core are compiled with SQLITE_DEBUG and SQLITE_ENABLE_WHERETRACE. This is not a supported API. Use for testing and debugging only. (check-in: 1be4b16b9e user: drh tags: trunk)
13:40
Command-line shell enhancements: Added the ".print" command. Enhanced the ".width" command so that negative widths will right-justify. (check-in: a1d8269da3 user: drh tags: trunk)
00:04
Consolidate more of the DISTINCT processing logic into a single spot in the code. Reduce the number of OP_Column operations needed to perform a WHERE_DISTINCT_ORDERED. (check-in: 79e922f7ae user: drh tags: trunk)
2012-09-20
15:41
Continuing incremental enhancements of SELECT code generation: Remove the Select.affinity field. Use SelectDest.affSdst instead. (check-in: cf40b7b5eb user: drh tags: trunk)
14:26
Refactoring of DISTINCT code. Change the name of the local variable "distinct" to "distinctTab". Generate cleaner code w/o unnecessary P4 and P5 values on the OP_Null for WHERE_DISTINCT_ORDERED. (check-in: 0cda241a2b user: drh tags: trunk)
2012-09-19
21:15
Tighter VDBE code for the WHERE_DISTINCT_ORDERED case of DISTINCT keyword handling. (check-in: 94b48064db user: drh tags: trunk)
17:31
Add comments to the WHERE_DISTINCT_* macros. No changes to code. (check-in: 8232050190 user: drh tags: trunk)
00:35
Merge the covering-index-scan optimization into trunk. (check-in: ddd5d789e7 user: drh tags: trunk)
2012-09-18
23:21
Silence harmless compiler warning seen with SQLITE_OMIT_DEPRECATED. (check-in: c5cee96932 user: mistachkin tags: trunk)
19:29
Enhance IN processing to allow efficient use of indices with numeric affinities. Add test cases for IN processing that would have spotted the error in the [2be661a48023f4] check-in. (check-in: 5ded9b6838 user: drh tags: trunk)
17:32
This change generates incorrect code when there are two or more IN operators in the WHERE clause that are both used by the same index. Was: Omit an unnecessary OP_IfNull that immediately follows an OP_Rowid. (Closed-Leaf check-in: 2be661a480 user: drh tags: mistake)
17:08
Enhancements to the comments on sqlite3FindInIndex(). No code changes. (check-in: b1a4c39499 user: drh tags: trunk)
14:00
Add the stack_usage.tcl script for analyzing the output of objdump on the amalgamation and estimating the sizes of stack frames on each function. (check-in: 030013ff0c user: drh tags: trunk)
13:20
Update the vdbe-compress.tcl script so that it accepts variable declarations inside of #ifdef...#endif. This enhancement is needed due to the change of check-in [39866c0ede5d6ef4]. (check-in: e7db056a0d user: drh tags: trunk)
2012-09-17
21:24
Make sure the WHERE_IDX_ONLY flag is not set on query plans that will not be using an index. (Closed-Leaf check-in: 698b2a2800 user: drh tags: fullscan-covering-index)
20:44
Add the ability to disable the covering-index-scan optimization at compile-time, start-time, or at run-time. Add test cases to check this configurability. (check-in: ccb8ecc30c user: drh tags: fullscan-covering-index)
19:26
Merge recent trunk changes into the fullscan-covering-index branch. (check-in: 1c0bf0305c user: drh tags: fullscan-covering-index)
19:12
Remove obsolete bits from the bitvector that defines disabled optimizations in the SQLITE_TESTCTRL_OPTIMIZATIONS verb of sqlite3_test_control(). (check-in: 4c21ee2d26 user: drh tags: trunk)
18:56
Remove an unnecessary parameter from sqlite3Utf8Read() resulting in a slight performance increase. (check-in: 8b962c94a2 user: drh tags: trunk)
17:16
Make sure the KeyInfo.aSortOrder array is always allocated so that we never have to test for KeyInfo.aSortOrder==0 in performance-critical loops. (check-in: 45793f0b84 user: drh tags: trunk)
15:36
Performance enhancement in the sqlite3VdbeSerialType() routine. (check-in: ad298f52ef user: drh tags: trunk)
2012-09-15
18:45
Attempt to use a covering index even on a full table scan, under the theory that the index will be smaller and require less disk I/O and thus be faster. (check-in: cfaa7bc128 user: drh tags: fullscan-covering-index)
13:39
Make sure the name of rollback journal files are double-zero terminated when they are passed into the VFS. (check-in: 8711a8447d user: drh tags: trunk)
13:29
Factor out the code that generates a co-routine for evaluating the SELECT on the RHS of an INSERT statement so that the same code can potentially be reused in other places. (check-in: a93ee09cdc user: drh tags: trunk)
2012-09-13
19:59
Improved alignment of fields in the Expr object gives an 8-byte size reduction on 64-bit machines. (check-in: 6b252a0d1a user: drh tags: trunk)
16:12
Fix WAL capability checking in one of the test files. (check-in: 0ebe7cc574 user: mistachkin tags: trunk)
15:26
Fix an unused variable warning with SQLITE_OMIT_WAL. (check-in: 39866c0ede user: mistachkin tags: trunk)
15:24
Improved reporting of filename translation errors in the Windows VFS. (check-in: eb0f1c292e user: mistachkin tags: trunk)
14:42
Reduce the size of the Table object by 16 bytes on 64-bit machines, mostly by avoiding intermixing pointer fields with integer fields. (check-in: 1cb9aedfcf user: drh tags: trunk)
14:22
Change boolean fields in the Column object from unsigned characters into bits in a single bit mask variable. (check-in: 4163f5f194 user: drh tags: trunk)
12:10
Add the RTREE_INT_ONLY configuration parameter to the compile-time options logic. (check-in: 98b971fb24 user: drh tags: trunk)
01:51
Allow SQLite to work on Win32 with SQLITE_OS_WINNT=0 as long as WAL is disabled. (check-in: c1a8557008 user: mistachkin tags: trunk)
2012-09-12
18:45
Add an implementation of the REGEXP operator and function. Only defined if compiled with SQLITE_ENABLE_REGEXP. (Closed-Leaf check-in: 8398f77c5a user: drh tags: regexp)
00:11
Update version number to 3.7.15. Delete some obsolete build scripts. (check-in: 9402f81fad user: drh tags: trunk)
2012-09-11
02:00
Added sqlite3_errstr API to translate a result code to the corresponding error message. (check-in: bf8a9ca5b5 user: mistachkin tags: trunk)
2012-09-10
23:44
Correct two duplicated test names. (check-in: ced49974a9 user: mistachkin tags: trunk)
15:02
Remove the stale implementation of the ifnull and coalesce functions - code that has been commented out for ages. No functional changes. (check-in: c2ad691174 user: drh tags: trunk)
10:29
Initial prototype of SQLITE_CONFIG_READONLY. (check-in: 7c3401657a user: mistachkin tags: configReadOnly)
09:33
Avoid using the sqlite3ErrStr function in the Tcl package if USE_SYSTEM_SQLITE is defined. (check-in: a716b9a309 user: mistachkin tags: trunk)
08:48
Make header comments for some Tcl test commands more consistent. No changes to code. (check-in: af870ca982 user: mistachkin tags: trunk)
07:56
More test cleanup. (Closed-Leaf check-in: b8d5359bb7 user: mistachkin tags: testClean)
07:29
Refine error messages in the sqlite3 Tcl command when a NULL database connection is returned from sqlite3_open_v2. (check-in: f260d7d567 user: mistachkin tags: trunk)
06:02
Fix typo in documentation for sqlite3_open_v2. No changes to code. (check-in: b532120a4a user: mistachkin tags: trunk)
2012-09-07
20:10
Correct two test names to make them unique. (Closed-Leaf check-in: 43e474d3e9 user: mistachkin tags: busy-timeout-pragma)
18:49
Have PRAGMA busy_timeout return 0 if the busy handler has been changed or cancelled. (check-in: 7be5bc3679 user: drh tags: busy-timeout-pragma)
16:46
Add an experimental busy_timeout pragma to facilitate access to the sqlite3_busy_timeout() interfaces for programmers that are working from behind a language wrapper that does not expose that interface. (check-in: 22ebc66851 user: drh tags: busy-timeout-pragma)
2012-09-04
21:34
Avoid repeating calls to the sqlite3_trace() callback when the same statement is evaluted multiple times by sqlite3_step() due to an SQLITE_SCHEMA reprepare. (check-in: 39f763bfc0 user: drh tags: trunk)
2012-09-03
15:42
Version 3.7.14 (check-in: c0d89d4a97 user: drh tags: trunk, release, version-3.7.14)
12:40
Fix compiler warnings in test_spellfix1.c (check-in: ebb08d0b4d user: drh tags: trunk)
11:39
Add resources describing the version number and other information to EXEs and DLLs generated using MSVC. (check-in: a15a70840e user: drh tags: trunk)
11:14
Insert additional tab character. (Closed-Leaf check-in: 3af7c1a6af user: mistachkin tags: win32Resources)
11:01
Linking and cleaning fixes for the tclsqlite3.exe target in the MSVC makefile. (check-in: 96d43c7a35 user: mistachkin tags: win32Resources)
10:32
Add Win32 version resources to the applicable binaries built by the MSVC makefile. (check-in: e2f27d28b5 user: mistachkin tags: win32Resources)
2012-08-31
14:55
In the spellfix phonehash() function, add letter W into the same character class as V. (check-in: 7536101317 user: drh tags: trunk)
14:23
Update with latest trunk changes. (check-in: 87995dc940 user: dan tags: sessions)
14:10
Merge in latest trunk changes. (check-in: bc9b9cd058 user: dan tags: apple-osx)
12:31
Changes for ERROR_PATH_NOT_FOUND in addition to ERROR_FILE_NOT_FOUND in winAccess(). (check-in: 527340abff user: drh tags: trunk)
2012-08-30
20:24
Exclude the atof1.test test script from the valgrind permutations test since valgrind sets up the floating point hardware in an unusual way that makes atof1 fail. (check-in: d3cf6832a5 user: drh tags: trunk)
11:22
Fix an out-of-bounds read in the demonstration code in test_spellfix.c. (check-in: 5919431154 user: dan tags: trunk)
2012-08-29
10:28
Fix a typo in a comment in vdbe.c. No changes to code. (check-in: 9fbe858b62 user: drh tags: trunk)
2012-08-28
14:45
Fix a case where SQLite was failing to detect a syntax error in queries like "SELECT ... FROM (<select-1> UNION ALL <select-2>)" when <select-1> and <select-2> return different numbers of result columns. (check-in: 200a81358c user: dan tags: trunk)
04:20
Issue a log message if the temporary directory has not been set when running on WinRT. (check-in: 9ee3910294 user: mistachkin tags: trunk)
01:44
Enable the use of a simpler command line when cross-compiling in the MSVC build environment. (check-in: 8ade136a03 user: mistachkin tags: trunk)
00:17
Formatting changes to the C code example in the documentation for sqlite3_temp_directory(). No changes to code. (check-in: 5b4b39788e user: drh tags: trunk)
00:09
Update API docs to include notes about the WinRT temporary directory. No changes to code. (check-in: eaeeb06992 user: mistachkin tags: trunk)
2012-08-27
21:19
Add to #undef statements to the command-line shell, go make sure that the macros definitions that follow do not collide with system definitions. (check-in: 24420d6d20 user: drh tags: trunk)
14:39
Fix an incorrect assert in the virtual table logic - it could fire following an I/O error after sqlite3_close_v2() was added. (check-in: 4ccc18e999 user: drh tags: trunk)
2012-08-25
10:01
Fix all known instances of 'repeated the' style typos in comments. No changes to code. (check-in: 9b19b84753 user: mistachkin tags: trunk)
02:11
Fix a harmless compiler warning. (check-in: 929b51840b user: drh tags: trunk)
01:38
Merge all the latest trunk changes into the apple-osx branch. (check-in: 6723add4f4 user: drh tags: apple-osx)
01:21
Merge the latest trunk changes into the sessions branch. (check-in: aa62d6881b user: drh tags: sessions)
00:49
Backport check-in [62678be3df35cd]: When the same index is used for all OR-terms in a WHERE clause, then try to use that index as a covering index. (Leaf check-in: 865dfcbaa5 user: drh tags: branch-3.7.2)
2012-08-24
23:56
When the same index is used for all OR-terms in a WHERE clause, then try to use that index as a covering index. (check-in: 62678be3df user: drh tags: trunk)
23:24
Move field WhereLevel.pCovidx inside the union to WhereLevel.u.pCovidx. (Closed-Leaf check-in: b722143d07 user: drh tags: multi-or-covering-index)
21:54
Remove a NEVER() that is in fact reachable on an OOM. This probably has nothing to do with the multi-or-covering-index change but just happened to be found while testing that change. (check-in: 5499af53eb user: drh tags: multi-or-covering-index)
19:58
Another test for whereD.test. (check-in: 29d586178d user: dan tags: multi-or-covering-index)
19:52
Add extra tests to whereD.test. (check-in: 7e961eef6b user: dan tags: multi-or-covering-index)
18:44
Fix a problem to do with multi-or queries and automatic indexes. (check-in: a3e26038a1 user: dan tags: multi-or-covering-index)
17:52
More test cases for OR-optimization covering indices. (check-in: e5c3190c27 user: drh tags: multi-or-covering-index)
15:29
Additional test cases for OR-optimization with covering indices, including one test case that currently fails. (check-in: d8b7ab3712 user: drh tags: multi-or-covering-index)
10:52
Experimental change to support the covering index optimization for queries with OR terms in the WHERE clause that search a single index more than once. (check-in: 1dc8c7c741 user: dan tags: multi-or-covering-index)
01:07
Merge the nested aggregate query enhancements into trunk. (check-in: d4cd6017c9 user: drh tags: trunk)
2012-08-23
22:45
Merge changes for the new sqlite3_win32_set_directory API to trunk. (check-in: 20f184f2d5 user: mistachkin tags: trunk)
19:46
Add test cases and fix bugs associated with the previous check-in enhancements to nested aggregate subquery processing. (Closed-Leaf check-in: 00b1dc71be user: drh tags: nested-agg)
16:18
Further improvements to the processing of nested aggregate queries. (check-in: 3c3ffa901f user: drh tags: nested-agg)
2012-08-22
15:16
Do not let the multi-core sorter use lookaside memory, which is not thread-safe. (Leaf check-in: acdc7d1270 user: drh tags: threads-sort-ex1)
00:39
Modify the MSVC makefile to make it easier to select the heap subsystem to use. (check-in: b1dbf49086 user: mistachkin tags: trunk)
00:18
Add assert to check that the memory block for the previous directory value was allocated via sqlite3_malloc or related function. (Closed-Leaf check-in: 1246f15b14 user: mistachkin tags: win32SetDir)
2012-08-21
23:33
Added sqlite3_win32_set_directory API to assist in portability to WinRT. (check-in: 600de08d40 user: mistachkin tags: win32SetDir)
17:46
Merge in all the latest trunk changes. (check-in: 45cdc32f1e user: drh tags: threads-sort-ex1)
17:44
Update the spellfix virtual table so that all OOM errors are reported out to the application. (check-in: 573770f5a6 user: drh tags: trunk)
17:36
Cherry-pick [555fc07]: Changes to the thread routines to disable them when threading is turned off using sqlite3_config(). Also merge all recent trunk changes. (check-in: c92b0fe137 user: drh tags: threads)
13:08
Update the spellfix virtual table so that all OOM errors are reported out to the application. ERROR: A single edit was missed in spellfix1 which means that this particular check-in won't build "make test". (Closed-Leaf check-in: c2cf498513 user: drh tags: mistake)
2012-08-20
17:24
Add the SQLITE_DISABLE_FTS4_DEFERRED compile time option. (check-in: e799222f3b user: dan tags: trunk)
16:23
Change the checkSpacing utility program to ignore whitespace at end-of-line unless the --wseol option is used. (check-in: be1faadebd user: drh tags: trunk)
16:08
Silence harmless compiler warnings in the test code. (check-in: 7653973a52 user: drh tags: trunk)
15:53
Remove tab characters from source code files. Replace them with spaces. (check-in: 7edd10a960 user: drh tags: trunk)
15:46
Add a command-line program to tool/ that will check source code files for the presence of tabs, carriage-returns, whitespace at the ends of lines, and blank lines at the ends of files. (check-in: 656a9c8b47 user: drh tags: trunk)
12:36
Changes to the thread routines to disable them when threading is turned off using sqlite3_config(). (check-in: 555fc07efd user: drh tags: threads-sort-ex1)
2012-08-17
13:44
Clarify that the number-of-bytes parameter to sqlite3_bind_blob() must be non-negative. (check-in: b1b01c4cd9 user: drh tags: trunk)
12:13
Fix MSVC compiler warning in the spellfix module. Also, add an assert. (check-in: e66cf0401f user: mistachkin tags: trunk)
11:47
Skip defining some WAL specific things in the Win32 VFS code when compiling without WAL support. Also, fix an example command line in the MSVC makefile. (check-in: 61b1ae1217 user: mistachkin tags: trunk)
2012-08-16
20:05
Attempt to use two cores to do sorting. Unfortunately, instead of making sorts go faster as was hoped, this changes slows sorting down by about 10%. (Later:) The previous measurement was compiled using -pg. When compiled using -Os, this new code is roughly 10% faster than the original. (check-in: 11dd05e598 user: drh tags: threads-sort-ex1)
11:24
Update the threads branch to include all the latest trunk changes. (check-in: f4125771e2 user: drh tags: threads)
2012-08-15
16:43
Changes to the spellfix test script to make the results deterministic. (check-in: 31c07db256 user: drh tags: trunk)
16:21
Merge all the latest trunk changes into the sessions branch. (check-in: fc07a4795e user: drh tags: sessions)
16:06
Change autoconf so that the --with-tcl=DIR option will override the TCL configuration that is found using tclsh. (check-in: 772d0de3f3 user: drh tags: trunk)
15:57
Experimental change to speed up ORDER BY clauses that sort based on a single expression. (Leaf check-in: 2bb8c49261 user: dan tags: sorter-exp)
2012-08-14
19:04
Silence three harmless compiler warnings in vdbesort.c. (check-in: a5431c86df user: drh tags: trunk)
18:43
Add an assert() to the btree rebalancer in order to silence a clang/scan-build warning. (check-in: 6730579cf5 user: drh tags: trunk)
17:29
Update the spellfix virtual table to the latest development code. (check-in: 6954fef006 user: drh tags: trunk)
01:45
Refer to the file mapping Win32 API functions only when absolutely necessary. (check-in: 1de2237d00 user: mistachkin tags: trunk)
2012-08-13
22:05
Refer to the WaitForSingleObjectEx and SetFilePointerEx Win32 functions only for platforms where they are going to be used. (check-in: 9888ce9294 user: mistachkin tags: trunk)
2012-08-08
14:04
When populating an index b-tree as part of a CREATE INDEX or REINDEX statement, distribute cells between up to three siblings in balance_nonroot() instead of four. This produces identical database files, but is slightly faster. (check-in: b0d31e779e user: dan tags: trunk)
11:55
When building a b-tree as part of a CREATE INDEX or REINDEX statement, attempt to pack keys into pages as tightly as possible. (check-in: efea62b96c user: dan tags: trunk)
10:14
Change to securedel2.test so that it works even if SQLITE_DEFAULT_AUTOVACUUM=1 is defined. (check-in: 1e6f5ea481 user: dan tags: trunk)
2012-08-07
22:53
Simplifications to the sorter to support full-coverage testing. (check-in: de804f4c90 user: drh tags: trunk)
17:41
Add extra tests for secure-delete mode. (check-in: e380cd3ce3 user: dan tags: trunk)
15:19
Fix a bug in hash.c introduced by [305b66672653]. (check-in: 17cb5e951e user: dan tags: trunk)
14:18
Do not run test script spellfix.test if SQLITE_OMIT_VIRTUAL_TABLE is defined. Fix walro.test so that it works if DEFAULT_AUTOVACUUM is defined. (check-in: 26428b459b user: dan tags: trunk)
13:55
Fix a bug in walthread.test causing intermittent failures. (check-in: a192a718d5 user: dan tags: trunk)
01:37
Parser bug fix: Make sure the table constraints allowed by prior releases can still be parsed, even if they are technically not allowed by the syntax diagram. This is a cherry-pick of [a1c014d8a87c8940b3], [38bf90af1ede6ee64e], and [e536ac041815b118c4]. (Leaf check-in: 28aed847c6 user: drh tags: apple-osx-ml)
2012-08-06
23:21
Backport VSIX packaging support and related changes. (Closed-Leaf check-in: 0620285da6 user: mistachkin tags: vsix-3.7.13)
22:29
Modify VSIX package generation tool to put the PDB files in the Debug directory. (check-in: 9d0720833f user: mistachkin tags: trunk)
19:28
Merge the sorter-coalesce-writes branch into the trunk. This improves CREATE INDEX performance on some platforms. (check-in: e1e9cb08b0 user: dan tags: trunk)
19:12
Fix a crash that could follow an OOM condition. (Closed-Leaf check-in: 2e5741f774 user: dan tags: sorter-coalesce-writes)
18:50
When reusing pages as part of creating a new index, allocate the leaves from each free-list trunk page in ascending order, instead of trying to maximize localization for each individual allocation. This increases the chance that pages will be written to disk in ascending order by a large CREATE INDEX statement, improving overall performance. (check-in: d045f8b2d4 user: dan tags: sorter-coalesce-writes)
18:10
Update sorter-coalesce-writes branch with latest trunk changes. (check-in: 214f8cda17 user: dan tags: sorter-coalesce-writes)
10:51
Update description strings in the VSIX package. (check-in: 541e9310a7 user: mistachkin tags: trunk)
2012-08-03
10:00
Correct comment about WinRT compiler define. No changes to code. (check-in: 335e91e599 user: mistachkin tags: trunk)
2012-08-01
20:20
Fix typos of function names sqlite3_result_error_toobig and sqlite3_result_error_nomem in the documentation. No changes to code. (check-in: bec97c9813 user: mistachkin tags: trunk)
2012-07-31
08:15
Make the list of platforms dynamic in the SDK manifest inside the VSIX package. (check-in: 22b72e499d user: mistachkin tags: trunk)
00:43
Modify metadata for the VSIX package and add tooling support for PDBs. (check-in: 12cbf6a934 user: mistachkin tags: trunk)
2012-07-30
14:53
Replace a few sqlite3_malloc()+memset() sequences with calls to sqlite3MallocZero(). (check-in: 305b666726 user: dan tags: trunk)
2012-07-27
23:03
Improve consistency in handling of build outputs and native library paths in the multi-platform build tool for MSVC. (check-in: e71f2de2cc user: mistachkin tags: trunk)
22:29
Minor adjustments to the multi-platform build tool for MSVC. (check-in: e76b8f7765 user: mistachkin tags: trunk)
08:33
For the clean makefile targets, delete the generated VSIX file as well. (check-in: d575d9619a user: mistachkin tags: trunk)
08:21
Modify the multi-platform build tool for MSVC to support the latest RC version. (check-in: 95b65883bb user: mistachkin tags: trunk)
07:13
Add tool to build the core DLL for multiple platforms using MSVC. (check-in: e42f5812f1 user: mistachkin tags: trunk)
02:36
Add tool to generate a VSIX package usable by Visual Studio 2012 RC. (check-in: 8b90e0c4db user: mistachkin tags: trunk)
2012-07-26
09:21
Update some comments in vdbesort.c. (check-in: f4b3fded23 user: dan tags: sorter-coalesce-writes)
2012-07-24
19:46
Mark parameters to sorter interfaces as const where appropriate. (check-in: d8da26f1f4 user: drh tags: trunk)
06:02
Add another define to the MSVC makefile that is sometimes required to build cleanly for WinRT. (check-in: d582cd890d user: mistachkin tags: trunk)
2012-07-23
21:43
Refactor field names in the SelectDest object to make them distinct and easier to grep for. (check-in: b589f1efb3 user: drh tags: trunk)
20:10
Fix an edge case in vdbesort.c. (check-in: 4ba266fc53 user: dan tags: sorter-coalesce-writes)
19:25
Modify the code in vdbesort.c so that most reads and writes to temporary files are aligned page-sized blocks. (check-in: 55e47ef338 user: dan tags: sorter-coalesce-writes)
06:47
Add an assert() to help verify the return code from the Win32 thread wait function. (check-in: ed3dc7a89f user: mistachkin tags: threads)
02:00
Enhance implementation of the Win32 thread wait function. (check-in: 049b041173 user: mistachkin tags: threads)
2012-07-21
22:49
Add Win32 support to the internal threads interface. Also, add several asserts and fix a few typos. (check-in: 793195d371 user: mistachkin tags: threads)
19:40
Add an internal interface that allows the code to take advantage of multiple cores by pushing subcomputations off into separate threads. The interface is not currently used. (check-in: 0e4d977a4a user: drh tags: threads)
2012-07-19
20:27
Further tweaks to malloc paths. (Closed-Leaf check-in: 0a33444105 user: dan tags: calloc)
2012-07-18
16:07
Remove another branch from the DbMalloc() paths. (check-in: defd828e90 user: dan tags: calloc)
11:28
Reorganize code to remove a few of the branches introduced into the critical sqlite3DbMallocXXX() path by the previous commit. (check-in: 75c095ee46 user: dan tags: calloc)
2012-07-17
19:32
Enhance the custom memory allocation interface to allow the user to specify a calloc() function. (check-in: 8752237d12 user: dan tags: calloc)
17:46
Cherrypick [8c9ee1d78f] and [e416359633] from trunk: Ensure that there is always at least one aReadMark slot usable by an unprivileged reader while a checkpoint is running. Also, if one or more transactions are recovered from a log file, initialize one of the aReadMark slots to contain mxFrame as part of the recovery process. (check-in: 6503591226 user: drh tags: apple-osx)
14:37
Ensure that there is always at least one aReadMark slot usable by an unprivileged reader while a checkpoint is running. Also, if one or more transactions are recovered from a log file, initialize one of the aReadMark slots to contain mxFrame as part of the recovery process. (check-in: e416359633 user: dan tags: trunk)
02:56
Amplification of a comment in wal.c. Change the aReadMark[] processing so that one read mark is left at zero when a WAL resets. (check-in: 8c9ee1d78f user: drh tags: trunk)
2012-07-16
23:13
Merge the spellfix1 changes for supporting matchlen into trunk. (check-in: 6f167adf60 user: drh tags: trunk)
22:16
Fix compiler warnings about unused code in spellfix. Fix the editDist3Core() routine to return the matchlen in characters instead of bytes. (Closed-Leaf check-in: f96d4e7bd7 user: drh tags: spellfix-matchlen)
14:52
Fix a bug in the phonetic-hash routine in spellfix1: Even if the first character of a word is deemed to be "silent", do not apply the special handling intended for the first character of each word to the second. (check-in: 6333b42dd2 user: dan tags: spellfix-matchlen)
10:25
Merge trunk changes. (check-in: 90df64ab80 user: dan tags: spellfix-matchlen)
10:06
If a specific database is nominated as part of a "PRAGMA integrity_check" or "PRAGMA quick_check" command, search for problems in the nominated database only. i.e. "PRAGMA main.quick_check" now only scans the main database, not all attached databases as before. (check-in: 4353e40b74 user: dan tags: trunk)
2012-07-13
19:26
Add the "matchlen" column to the spellfix1 virtual table. (check-in: f24b9d87f6 user: dan tags: spellfix-matchlen)
16:15
Update test_spellfix.c with latest changes. (check-in: cba2a65870 user: dan tags: trunk)
11:09
Fix bug in spellfix1 xUpdate() method introduced by the previous commit. (Closed-Leaf check-in: b31aafa5a3 user: dan tags: spellfix-matchlen)
2012-07-12
19:43
Add the "matchlen" column to the spellfix virtual table. (check-in: 4a582c4d30 user: dan tags: spellfix-matchlen)
2012-06-30
22:22
Setup the necessary library paths for cross-compilation with MSVC. (check-in: 7fac56ed9f user: mistachkin tags: trunk)
19:24
Simplify usage of some linker options in the MSVC makefile. (check-in: 0301602066 user: mistachkin tags: trunk)
16:22
Make use of the predefined nmake command macro CC when possible instead of the literal string 'cl.exe'. Improve support for cross-compilation. Eliminate problematic use of double quotes in macro preprocessing expressions. (check-in: 6c88229aa3 user: mistachkin tags: trunk)
2012-06-27
16:41
Another changes to the shell in support of SQLITE_OMIT_AUTOINIT. (check-in: 3b4f5add04 user: drh tags: trunk)
16:12
Update the shell so that it works with SQLITE_OMIT_FLOATING_POINT and SQLITE_OMIT_AUTOINIT. (check-in: 95c0c995fd user: drh tags: trunk)
2012-06-21
17:21
Remove code that was incorrectly changing SQLITE_MISUSE errors into SQLITE_OK in sqlite3_finalize(). (check-in: d5e6880279 user: drh tags: trunk)
15:51
Add the sqlite3_close_v2() interface (from the deferred-close branch) that allows close operations to happen out-of-order in bindings to garbage-collected langauges. (check-in: fb8893abee user: drh tags: trunk)
15:22
Merge changes to trunk that ensure that floating point values are exactly preserved on a round-trip through ".dump". (check-in: 4cebd60704 user: drh tags: trunk)
15:12
Fix spelling typo. (check-in: 6131a0002f user: mistachkin tags: trunk)
15:09
Remove more references to OS/2. (check-in: eebd594d6b user: mistachkin tags: trunk)
15:02
Disable the atof1.test module when compiling on MSVC. (Closed-Leaf check-in: 0f706acfc7 user: drh tags: floating-point-conversions)
14:31
Increase the version number to 3.7.14 and rerun autoconf (check-in: 8c9f564a2a user: drh tags: trunk)
14:25
Fix the SQLITE_ZERO_MALLOC compile-time option so that it works on windows. (check-in: b80bc52f89 user: drh tags: trunk)
14:05
Merge several compiler compatibility fixes to trunk. (check-in: d3d491a546 user: mistachkin tags: trunk)
13:00
Remove support for OS/2 from the source tree. (check-in: ff828c67e5 user: drh tags: trunk)
04:21
When linking to the MSVC runtime library, use the debug library when necessary. Also, link dynamically to the MSVC runtime library when required (e.g. WinRT) or requested via the USE_CRT_DLL build macro. (check-in: f6be345ad5 user: mistachkin tags: trunk)
2012-06-19
06:35
Add tests to check that the "unicode61" and "icu" tokenizers both identify white-space codepoints outside the ASCII range. (check-in: bfb2d4730c user: dan tags: trunk)
04:36
Move variable declaration to fix compilation with MSVC. (check-in: d45f7a013f user: mistachkin tags: floating-point-conversions)
03:59
Fix an incorrect testcase for the round() function. All tests are passing now, including new real->text->real round-trip tests. (check-in: 963eb24f73 user: drh tags: floating-point-conversions)
03:35
Round-trip conversions of real->text->real are now lossless on x64 with GCC. Untested on other platforms so far. Still a corner-case problem with round(). (check-in: fd7bd4a593 user: drh tags: floating-point-conversions)
03:11
Improved accuracy on text-to-real and real-to-text conversions. Most conversions now round-trip correctly. Still need to fix some corner cases. (check-in: 8ecffca900 user: drh tags: floating-point-conversions)
00:45
Improved rounding accuracy on text-to-float conversions. (check-in: 699b792c6a user: drh tags: trunk)
2012-06-18
20:52
Fix a problem with identifying white-space characters outside of the ascii range in the ICU tokenizer. (check-in: 892b74116a user: dan tags: trunk)
17:15
Allow the SQLITE_API macro to apply to the sqlite3_win32_sleep function. (Closed-Leaf check-in: 21266c68af user: mistachkin tags: compiler-compat)
14:23
Add the ieee754() SQL function that interprets a blob as a big-endian double. Arrange for the quote() SQL function to emit ieee754() functions in its output so that floating-point values in the database are exactly preserved by a ".dump" command in the shell. (Closed-Leaf check-in: 87597e988f user: drh tags: ieee754-func)
08:00
Fix a few compilation issues that can occur with certain compilers (e.g. GCC 2.95.3, MSVC). (check-in: f970a3de61 user: mistachkin tags: compiler-compat)
2012-06-16
15:26
In Lemon, when comparing the output to the *.h file to see if it has changed, make sure that the proposed new output and the preexisting output are the same size before deciding that they are the same. (check-in: 0c2fb18d25 user: drh tags: trunk)
2012-06-15
20:42
Fix compiler warning. (Closed-Leaf check-in: 37d9bc061d user: mistachkin tags: deferred-close)
2012-06-11
02:05
Version 3.7.13 (check-in: f5b5a13f73 user: drh tags: trunk, release, version-3.7.13)
2012-06-09
19:15
Merge latest trunk changes with sessions branch. (check-in: 47f8f0711d user: dan tags: sessions)
18:52
Add missing targets for fts3_unicode.lo and fts3_unicode2.lo to Makefile.in. (check-in: 0ae0ce630a user: dan tags: trunk)
2012-06-08
14:11
Merge the vtab1 test script fix and the FTS3 memory leak fix from trunk into the apple-osx branch. (check-in: 892d8779cc user: drh tags: apple-osx)
14:01
Fix an obscure memory leak in FTS3 that can come about when two memory allocations are immediately adjacent to one another. (check-in: 025227be54 user: drh tags: trunk)
11:48
Fix a problem in vtab1.test causing it to fail when run with any permutation that executes SQL within the tcl "sqlite3" command. (check-in: 006db55526 user: dan tags: trunk)
01:13
Merge trunk changes into the apple-osx branch. (check-in: 9d1b851562 user: drh tags: apple-osx)
2012-06-07
23:58
Merge all trunk changes, including the WinRT enhancements, into the sessions branch. (check-in: c621403983 user: drh tags: sessions)
17:57
Documentation and evidence mark updates. Remove a redundant assert(). (check-in: cfcbf9375f user: drh tags: trunk)
17:16
Fix a problem preventing a shared in-memory database from being attached to a read-only connection. (check-in: 7caca1939c user: dan tags: trunk)
15:53
Add the "tokenchars=" and "separators=" options, for customizing the set of characters considered to be token separators, to the unicode61 tokenizer. (check-in: e56fb462aa user: dan tags: trunk)
07:24
Fix a malloc/free mismatch in pager.c (sqlite3_free() called on a buffer allocated by sqlite3DbMalloc()). (check-in: 506008f000 user: dan tags: trunk)
02:35
Provide an (undocumented) compile-time option to disable the page cache overflow counter, in order to avoid a mutex. (check-in: 208825cd83 user: drh tags: trunk)
2012-06-06
23:59
Fix harmless Clang warnings. (check-in: 31fe1985ad user: drh tags: trunk)
23:25
Fix an #if that is applicable to WinRT, even thought it is currently disabled by another #if. (check-in: baa8b78307 user: mistachkin tags: trunk)
23:23
Merge the changes need to compile on WinRT into trunk. (check-in: 61360ca6ca user: drh tags: trunk)
19:51
Disable FTS unicode61 by default. It is enabled by specifying compile time option SQLITE_ENABLE_FTS4_UNICODE61. (check-in: eccd6b6580 user: dan tags: trunk)
19:30
Have the FTS unicode61 strip out diacritics when tokenizing text. This can be disabled by specifying the tokenizer option "remove_diacritics=0". (check-in: 790f76a589 user: dan tags: trunk)
19:01
Avoid resetting the shared-cache schema when on of the connections using the shared cache closes. Delay resetting the schema until the last connection closes. (check-in: 635e3a762d user: drh tags: trunk)
10:56
Make sure the Index.azColl pointers do not point to connection-specific memory. Also, remove an unnecessary reinitialization to sqlite3.pDfltColl. (Closed-Leaf check-in: c469850b2e user: drh tags: shared-schema)
2012-06-05
19:20
Merge the latest trunk changes into shared-schema branch. Also fix a C99-ism in that branch. (check-in: 42338e9e69 user: drh tags: shared-schema)
13:56
Add sqlite3_quota_ferror() and sqlite3_quota_file_available() interfaces to test_quota.c. Change sqlite3_quota_fwrite() to use a const input buffer. (check-in: 61669c9585 user: drh tags: trunk)
02:24
Correct docs regarding use of malloc and free by the Windows VFS layer. No changes to code. (Closed-Leaf check-in: 8e8590a4dc user: mistachkin tags: winrt)
2012-06-04
05:18
When not compiling for WinRT, skip using a couple Win32 APIs unavailable when compiling with MinGW. (check-in: eb29e2d939 user: mistachkin tags: winrt)
2012-06-02
17:09
Revert sqlite3_close() to legacy behavior. Create a new sqlite3_close_v2() interface that exhibits the deferred-close behavior. This minimizes the chance of breakage in legacy apps. (check-in: c4b8621125 user: drh tags: deferred-close)
14:32
The sqlite3_close() interface returns SQLITE_OK even if there are outstanding sqlite3_stmt and sqlite3_backup objects. The connection becomes a zombie. Resource deallocation is deferred until the last sqlite3_stmt or sqlite3_backup object closes. This is intended to help SQLite play nicer with garbage collectors. (check-in: e276a02b7f user: drh tags: deferred-close)
2012-05-31
22:12
Update several APIs to enable compilation with newer revisions of WinRT. (check-in: 54de739f05 user: mistachkin tags: winrt)
13:10
Avoid calling fchown() if the process is not running as root. (check-in: 70c419a434 user: drh tags: trunk)
00:21
Only call fchown when running as root and supporting files mismatch the database owner & perms (check-in: ed53b645cc user: adam tags: apple-osx)
2012-05-29
19:25
Link the NDEBUG macro to SQLITE_DEBUG so that when SQLITE_DEBUG is defined, NDEBUG is automatically undefined an dwhen SQLITE_DEBUG is undefined NDEBUG is automatically defined. (check-in: 07935d10d3 user: drh tags: trunk)
17:59
Fix a typo (a repeated "or") in the documentation. No changes to code. (check-in: 6fec6cf1fb user: drh tags: trunk)
17:02
Changes some NDEBUG macros to SQLITE_DEBUG in os_unix.c. The is a notational change only and really should not effect the code. (check-in: 8e3025709e user: drh tags: trunk)
00:48
Merge the 64-to-32-bit RTree rounding fixes from trunk into the sessions branch. (check-in: 7eff45c280 user: drh tags: sessions)
00:39
In the RTree module, make sure all double-to-float conversions round in a direction to increase the size of element bounding boxes. (check-in: 0abdc2903d user: drh tags: trunk)
00:30
Refactor the float-to-double rounding routines so that they compile without warnings. (Closed-Leaf check-in: f607ad27c1 user: drh tags: rtree-32bit-rounding)
2012-05-28
20:22
Fix the MSVC makefile so that it works with the unicode61 tokenizer. (check-in: 480158143b user: drh tags: trunk)
20:16
Simplification to the coordinate rounding logic in RTree. (check-in: df24072de2 user: drh tags: rtree-32bit-rounding)
19:19
When converting 64-bit floating point coordinates to 32-bit in RTree, take care to round the values such that the size of the bounding box is enlarged. (check-in: f4e8ff03ea user: drh tags: rtree-32bit-rounding)
18:22
Merge the unicode61 tokenizer and the shared-cache-memory database changes into the sessions branch. (check-in: df817e70af user: drh tags: sessions)
17:51
Updates regarding URI query parameters and shared cache in the documentation derived from comments in sqlite.h.in. No changes to code. (check-in: bcc72d413e user: drh tags: trunk)
15:32
Fix Makefile.in so that it works with the new unicode tokenizer of FTS3/4. Update the version number to 3.7.13. (check-in: b8720d0416 user: drh tags: trunk)
13:58
Add the mode=memory option to URI filenames, which when present forces the database to be an in-memory database. This enables named in-memory databases. (check-in: 651520fa84 user: drh tags: trunk)
12:22
Omit the fts3 unicode character class routines from the build if fts3/4 is disabled. (check-in: c00bb5d460 user: drh tags: trunk)
2012-05-27
22:42
Merge into trunk the changes that permit :memory: databases to use shared cache. (check-in: e72179f3a4 user: drh tags: trunk)
01:19
Have user interfaces report out the filename of in-memory databases as an empty string, as it always has. This simplifies the changes. (Closed-Leaf check-in: 595dfdbffe user: drh tags: shared-cache-memdb)
00:11
Fix corner-case problems with shared-cache for in-memory databases. (Closed-Leaf check-in: 997ef5f61e user: drh tags: shared-cache-memdb)
2012-05-26
20:08
Only allow :memory: databases to share cache if there are created using a URI filename. This minimizes the risk of breakages in legacy applications that have shared-cache enabled but also use :memory: databases which they expect to keep separate. (check-in: e3ad61e030 user: drh tags: shared-cache-memdb)
18:42
Merge fts4-unicode branch with trunk. (check-in: 25ba1f84f2 user: dan tags: trunk)
18:28
If SQLITE_DISABLE_FTS3_UNICODE is defined, do not build the "unicode61" tokenizer. (Closed-Leaf check-in: e71495a817 user: dan tags: fts4-unicode)
18:06
Enable the use of shared cache for an in-memory database, so that separate database connections can share the same in-memory database. (check-in: 4590e433f2 user: drh tags: shared-cache-memdb)
17:57
Change the format of the tables used by sqlite3FtsUnicodeTolower() to make them a little smaller. (check-in: b89d3834f6 user: dan tags: fts4-unicode)
16:22
Add coverage tests for fts3_unicode.c. (check-in: 07d3ea8a3c user: dan tags: fts4-unicode)
15:44
Add fault-injection tests that use the unicode61 tokenizer. Fix a problem revealed by the same. (check-in: ed28c48a3d user: dan tags: fts4-unicode)
14:54
Change the name of the "unicode" tokenizer to "unicode61" to emphasize that the case folding and separator-character identification routines are based on unicode version 6.1. (check-in: 8f3e60aa22 user: dan tags: fts4-unicode)
2012-05-25
19:50
Add special fast paths to sqlite3FtsUnicodeTolower() and Isalnum() for codepoints in the ASCII range. (check-in: cf7b25d476 user: dan tags: fts4-unicode)
18:48
Fix comments in generated file fts3_unicode2.c. (check-in: 3dc567ef47 user: dan tags: fts4-unicode)
17:50
Add an experimental tokenizer to fts4 - "unicode". This tokenizer works in the same way except that it understands unicode "simple case folding" and recognizes all characters not classified as "Letters" or "Numbers" by unicode as token separators. (check-in: 0c13570ec7 user: dan tags: fts4-unicode)
2012-05-22
19:25
Use the new test suite helper procedure 'get_pwd' to query the current directory from tests. (check-in: 1dd01e4081 user: mistachkin tags: winrt)
17:39
Merge the 3.7.12.1 trunk changes into the WinRT branch. (check-in: b9ed0b26de user: drh tags: winrt)
13:11
Version 3.7.12.1 (check-in: 972e75bb5d user: drh tags: apple-osx)
13:01
Version 3.7.12.1 (check-in: d07b7b67d1 user: drh tags: sessions)
02:45
Version 3.7.12.1 (check-in: 6d326d44fd user: drh tags: trunk, release, version-3.7.12.1)
2012-05-21
22:45
Increase the version number to 3.7.12.1. Minor changes to test scripts. (check-in: 5519cc5ef4 user: drh tags: trunk)
21:26
Merge the nested aggregate query fix (ticket [c2ad16f997ee9c8ed]) unto trunk. (check-in: e459c3360b user: drh tags: trunk)
21:20
Mark and always-true conditional as such. Add the fuzz-oss1.test test module. (Closed-Leaf check-in: bdc01fd0fa user: drh tags: nested-agg)
20:13
Candidate fix for the nested aggregate query problem of ticket [c2ad16f997ee9c8e]. (check-in: f3dd1fafd4 user: drh tags: nested-agg)
19:11
Convert the NameContext object from using u8 booleans to using individual bits in a single u8 as its booleans. This change might become a basis for a fix for [c2ad16f997ee9c]. (check-in: 7222609693 user: drh tags: nested-agg)
16:59
Make sure lookaside memory allocations are unusable after they are freed. (check-in: 3869aef634 user: drh tags: trunk)
12:25
Move some #defines earlier in the file for test_quota.c in order to avoid a use before definition. (check-in: fda1ea0bee user: drh tags: trunk)
05:02
Allow the sqlite3ExplainBegin function to be compiled by MSVC. (check-in: 18555128f5 user: mistachkin tags: trunk)
03:15
Change the ".schema" command of the shell to output VIEWs in declared order, rather than alphabetical order, so that nested views will appear in the correct order. Fix for ticket [cfe84e86839e59e8]. (check-in: e092ff69e2 user: drh tags: trunk)
2012-05-20
20:23
Fix a test case so that it works even with very long pathnames. (check-in: ecd4a06359 user: drh tags: trunk)
20:14
Check-in included unrelated debugging code by mistake. Was: Fix a test case in the shell1.test script so that it works even for very long pathnames. (Closed-Leaf check-in: 0c0a03987c user: drh tags: mistake)
2012-05-17
21:04
Merge updates from trunk. (check-in: 224c65e4a5 user: mistachkin tags: winrt)
14:17
Stylistic fixes: limit source code line length to 80 characters. C89-style comments only, not C++/C99 style. (check-in: 4068abe05c user: drh tags: apple-osx)
2012-05-16
22:08
Improve error reporting from sqlite3_file_control, SQLITE_FCNTL_REPLACE_DATABASE shouldn't copy file security/ACL metadata, bad bit mask fixed (check-in: 92e7bb9078 user: adam tags: apple-osx)
14:29
Return SQLITE_MISUSE if an application attempts to register a virtual table module with the same name as an existing module. (check-in: ea2cd55e09 user: dan tags: shared-schema)
01:24
Avoid using sqlite3ResetAllSchemasOfConnection() purely for its side-effects. (check-in: 5587c73bad user: drh tags: shared-schema)
2012-05-15
18:28
The former sqlite3ResetInternalSchema() routine was really two different routines, selected by parameter, each with a confused mission. So split this routine up into three separate smaller routines, calling each separately as needed. Hopefully this will make further refactoring and schema reset collateral damage containment easier. (check-in: aa0c3493d3 user: drh tags: shared-schema)
17:15
When a connection disconnects from a shared-cache database, only delete the in-memory schema if there are no other connections. (check-in: 46f4eb5430 user: dan tags: shared-schema)
12:49
Add assert()s to verify that Table objects in the schema never use lookaside memory. (check-in: 736d6ea677 user: drh tags: trunk)
2012-05-14
12:20
Add an assert() that verifies that the statement pointer from the sqlite3_prepare() family of functions is always NULL if the routines return other than SQLITE_OK. (check-in: 0bb1cfc63f user: drh tags: trunk)
02:05
Version 3.7.12 (check-in: d9348b2a4e user: drh tags: apple-osx)
01:58
Version 3.7.12 (check-in: be71d2f667 user: drh tags: sessions)
01:41
Version 3.7.12 (check-in: 8654aa9540 user: drh tags: trunk, release, version-3.7.12)
2012-05-12
22:36
Fix a typo in a comment which is used to generate documentation. No changes to code. (check-in: af525b5d25 user: drh tags: trunk)
18:29
Parser bug fix: Make sure the table constraints allowed by prior releases can still be parsed, even if they are technically not allowed by the syntax diagram. (check-in: e536ac0418 user: drh tags: trunk)
14:59
Merge trunk changes with apple-osx branch. (check-in: bf57f0fb73 user: dan tags: apple-osx)
11:50
Update sessions branch with trunk changes. (check-in: 3f4848a871 user: dan tags: sessions)
05:30
Before running each test script, make sure the FTS enhanced query syntax is disabled. (check-in: f84d87bcc0 user: dan tags: trunk)
01:14
Use the regexp result option for a test case in shell1.test. (check-in: 93061c6e06 user: drh tags: trunk)
2012-05-11
23:03
Adjust some of the pager tests to accommodate longer database pathnames. (check-in: 22eef1d8a8 user: drh tags: trunk)
23:01
Fix the wal2.test script so that it works on big-endian machines. (check-in: c4ab72f750 user: drh tags: trunk)
20:43
Fix a bug in the wal.test script so that it works on big-endian systems. (check-in: 40fe9088fb user: drh tags: trunk)
15:53
Fix a harmless compiler warning inside an assert() statement within test code. (check-in: e68a3527de user: drh tags: trunk)
15:31
Fix an evidence-mark typo in the comments of sqlite3.h. No changes to code. (check-in: 2b07408591 user: drh tags: trunk)
11:28
Fix a harmless compiler warning. (check-in: 2b77301b96 user: drh tags: trunk)
00:56
Make sure the WAL file is deleted when changing to DELETE journal mode. (check-in: 6670868590 user: drh tags: apple-osx)
2012-05-10
17:43
Have the FTS auxiliary functions correctly handle terms that appear in non-matching branches of the FTS expression. Fix for [bdc6bbbb38]. (check-in: 4d3e1673b3 user: dan tags: trunk)
13:03
Merge the table constraint parser fixes from trunk. (check-in: 12bb31dd6f user: drh tags: winrt)
12:17
Merge in the windows AV-defense enhancements for open() and the table constraint parser fixes for legacy schemas, all from trunk. (check-in: 323570b8bd user: drh tags: sessions)
12:09
Merge in the legacy table constraint parsing fixes from trunk. (check-in: e87702834e user: drh tags: apple-osx)
2012-05-09
22:36
Added support for SQLITE_ENABLE_PERSIST_WAL compile time macro, retrieving lastErrno from WAL file and setting last errno when writes fail due to space constraints (check-in: 6547929410 user: adam tags: apple-osx)
2012-05-08
11:17
Further changes to constraint parsing to support legacy syntax. (check-in: 38bf90af1e user: drh tags: trunk)
2012-05-07
22:29
Merge parser adjustments from the trunk. (check-in: 0d8b920b2c user: mistachkin tags: winrt)
20:28
Merge Windows directory checking changes from trunk. (check-in: 7a7466f400 user: mistachkin tags: winrt)
19:21
Adjust the parser so that certain legacy schema constructs (that are not valid according to the syntax diagram) continue to be accepted, so that older databases that happen to use those constructs are still readable. This fixes an issue introduced by check-in [1b75f301affac6] (check-in: a1c014d8a8 user: drh tags: trunk)
18:10
Merge Windows directory checking changes to trunk. (check-in: a4555a53ea user: mistachkin tags: trunk)
17:16
Simplify directory checking for winOpen and add checking to winDelete. (Closed-Leaf check-in: b08530e1a0 user: mistachkin tags: win-check-dir)
13:15
Do not do the AV retry loop on open if the file that is attempting to be opened is really a directory. (check-in: 03875633f4 user: drh tags: win-check-dir)
2012-05-05
01:03
Merge the latest trunk changes into the apple-osx branch. (check-in: 2a99c0074a user: drh tags: apple-osx)
2012-05-04
23:31
Update the sessions branch with all the latest changes from trunk. (check-in: 0f347fbfc7 user: drh tags: sessions)
23:11
Sync the latest trunk changes into the winRT branch. (check-in: be4ab188cf user: drh tags: winrt)
13:22
Minor tweaks to the hebrew transliteration tables. (Leaf check-in: 7b6de5c35d user: drh tags: translit-tokenizer)
02:58
Add an experimental tokenizer to FTS3/4: one that transliterates latin, greek, cyrillic, and hebrew characters into pure ascii. (check-in: 930115693a user: drh tags: translit-tokenizer)
2012-05-01
14:21
Update a test in io.test to account for [05f98d4eec]. (check-in: bfa61e781c user: dan tags: trunk)
2012-04-27
16:38
Fix a minor deviation from the coding style guidelines. (check-in: 1e51bffe77 user: drh tags: trunk)
01:09
Enhance the processing of ORDER BY clauses on compound queries to better match terms of the order by against expressions in the result set, in order to enable better query optimization. (check-in: a49e909c87 user: drh tags: trunk)
01:08
Enhance the do_test proc in the test suite so that if the expected result is of the form "/.../" or "~/.../" then regular expression matching is done between result and the "..." part of the expectation. In the ~/.../ case, we expect there to be no match. (check-in: c9a734406c user: drh tags: trunk)
2012-04-26
22:47
Allow virtual table constructors to be invoked recursively. A test case for this has been added to TH3. (check-in: 696a5a40bb user: drh tags: trunk)
2012-04-24
13:14
New test cases for the ".dump" and ".mode insert" commands of the shell. (check-in: dfce856976 user: drh tags: trunk)
12:46
Move the shell test scripts into the test/ subfolder so that they are run automatically by "make test". (check-in: 9fb7da6904 user: drh tags: trunk)
12:12
Fix a sign-extension problem for BLOB output in ".insert" mode of the command-line shell. (check-in: 282f2a74c2 user: drh tags: trunk)
2012-04-23
12:38
Update the ".table" command in the shell to show all tables in all attached databases, and to avoid using the deprecated sqlite3_get_table() function. (check-in: ce2d06e253 user: drh tags: trunk)
2012-04-21
11:33
If terminating interactive input to the command-line shell with ^D, issue an extra \n to move the cursor to the next line before exiting. This check-in also accidently adds the test_spellfix.c file to the source tree. (check-in: feff1ef0b8 user: drh tags: trunk)
00:31
Merge the latest trunk changes into the WinRT branch (fixes for tickets [2a5629202f] and [385a5b56b9]). (check-in: 25478dcff5 user: mistachkin tags: winrt)
2012-04-20
16:59
Do not consider a DISTINCT clause redundant unless a subset of the result-set is collectively subject to a UNIQUE constraint and it can be guaranteed that all columns of the subset are NOT NULL (either due to NOT NULL constraints WHERE clause terms). Fix for [385a5b56b9]. (check-in: 7b8548b187 user: dan tags: trunk)
15:24
Fix for [2a5629202f]. When considering whether or not a UNIQUE index may be used to optimize an ORDER BY clause, do not assume that all index entries are distinct unless there is some reason to believe that the index contains no NULL values. (check-in: 9870e4c4fe user: dan tags: trunk)
12:02
Remove obsolete art. (check-in: 372a90e226 user: drh tags: trunk)
08:23
Merge the latest trunk changes into the WinRT branch (fixes various MSVC compiler warnings). (check-in: 294a5cca50 user: mistachkin tags: winrt)
2012-04-19
20:43
Update the apple-osx branch so that it includes all of the latest trunk changes. (check-in: b72f07b4a2 user: drh tags: apple-osx)
20:00
Merge the latest trunk changes into the sessions branch. (check-in: 2b7a91e617 user: drh tags: sessions)
18:04
Fix harmless compiler warnings on x64 MSVC, mostly in test code, but also in tclsqlite.c and in the FTS4 module. (check-in: 3281972eaa user: drh tags: trunk)
17:19
Fix a harmless compiler warning in tclsqlite.c for MSVC x64. Fix a test case associated with the FTS4 merge feature. (check-in: de3f7187eb user: drh tags: trunk)
15:49
Fix harmless compiler warnings (unused parameter warnings) in the aggregate query analyzer. (check-in: 2d43562084 user: drh tags: trunk)
2012-04-18
10:29
Merge build tool updates from trunk. Also, modify MSVC makefile to allow for debugging of build tool issues. (check-in: b2a2fdb0ac user: mistachkin tags: winrt)
10:13
Fix a harmless compiler warning in the mkkeywordhash.c utility program. (check-in: 6015200beb user: drh tags: trunk)
09:59
Fix a typecast problem in lemon that could cause problems on 64-bit machines. (check-in: 4a5641cc0a user: drh tags: trunk)
05:57
Import all the latest trunk changes into the WinRT branch. Refactor and/or remove WinCE-specific macros and functions used for file locking to improve clarity of presentation. (check-in: ad5cd15f49 user: mistachkin tags: winrt)
01:41
Import all the latest trunk changes into the sessions branch. (check-in: 87a0eab5d9 user: drh tags: sessions)
2012-04-17
21:00
When compiling for WinRT, always use the 'appcontainer' linker option. (check-in: 300bcfe311 user: mistachkin tags: winrt)
16:38
Improved handling of aggregate subqueries within an aggregate query. (check-in: 430bb59d79 user: drh tags: trunk)
09:09
Add an undocumented and possibly ephemeral ".breakpoint" command to the command-line shell, to call a no-op routine on which it is convenient to set a symbolic debugger breakpoint. (check-in: 8e2363ad76 user: drh tags: trunk)
2012-04-16
17:22
Fix a bug in the command-line shell logic that attempts to continue with a ".dump" even after encountering database corruption. (check-in: 020b5e90f9 user: drh tags: trunk)
2012-04-14
13:25
In the unix VFS, always set every open file to close-on-exec using either O_CLOEXEC at open (preferred) or FD_CLOEXEC in an ioctl after opening. Before this changes, many files were done this way, but not all. (check-in: 9efbeb11ae user: drh tags: trunk)
11:48
Fix a typo in a comment that is extracted for documentation. No changes to code. (check-in: e87371c508 user: drh tags: trunk)
2012-04-11
23:22
Add a testcase() macro to ensure that the sqlite3AuthCheck() call inside the query flattener really is effective. (check-in: a134e6e739 user: drh tags: trunk)
11:38
Fix harmless static-analysis warnings, mosting having to do with memory leaks in the command-line shell. Add a clang analysis of the command-line shell to the "warnings-clang.sh" script. Other minor cleanups to the command-line shell code. (check-in: 93a0f452a7 user: drh tags: trunk)
2012-04-10
17:53
Add new interfaces to the test_quota.c module: sqlite3_quota_ftruncate(), sqlite3_quota_file_size(), sqlite3_quota_file_truesize(), and sqlite3_quota_file_mtime(). (check-in: 2fa9f54309 user: drh tags: trunk)
16:05
Fix a copy/paste error in a comment in the fuzzer. No changes to code. (check-in: 7433f2b550 user: drh tags: trunk)
2012-04-07
00:09
Fix the application-defined function logic so that functions with a variable number of parameters can be replaced or deleted correctly. Also refactor some of the function-finder code for clarity of presentation. (check-in: 09d5581c81 user: drh tags: trunk)
2012-04-06
00:09
Update sqlite3_analyzer to correctly find all database files when the multiplexor is being used. (check-in: 1bfc30cb0f user: drh tags: trunk)
2012-04-05
20:04
Ignore the value of SQLITE_FCNTL_CHUNK_SIZE if it is negative. (check-in: 1b08fef945 user: drh tags: trunk)
01:37
Performance improvements for the RowSet object when it undergoes many cycles between RowSetInsert and RowSetTest. (check-in: 49d20ede5f user: drh tags: trunk)
2012-04-04
16:56
Add the ".trace" option to the command-line shell. (check-in: b9ac3d7e34 user: drh tags: trunk)
13:58
Fix the multiplexor logging so that it works with SQLITE_ENABLE_8_3_NAMES. (check-in: 9e1e2fe295 user: drh tags: trunk)
13:51
Fix the multiplexor logging so that it works with SQLITE_ENABLE_8_3_NAMES. (Leaf check-in: 627eff32a2 user: drh tags: nx-devkit)
13:47
In the multiplexor extension, improve the error logging when a chunk fails to open. (check-in: e6806f0dc6 user: drh tags: nx-devkit)
13:43
In the multiplexor extension, improve the error logging when a chunk fails to open. (check-in: 781453c686 user: drh tags: trunk)
2012-04-03
19:43
Cherrypick commit [1d5e744cc6] from the trunk in order to avoid leaving a file-descriptor open in test scripts capi3.test and capi3c.test. This is the version of SQLite that ships by default on the original Mountain Lion release. (check-in: 86b8481be7 user: dan tags: apple-osx, mountain-lion)
18:34
Do not run attempt to run test file fts4merge3.test unless the build includes FTS. (check-in: 0506bf86d3 user: dan tags: trunk)
18:33
Modify capi3.test and capi3c.test so that they work with SQLITE_OMIT_AUTORESET builds. (check-in: 1d5e744cc6 user: dan tags: trunk)
17:43
Modify the integrity-check code to reduce the size of the large allocation from 4 bytes to 1 bit for each page in the database file. (check-in: fa3a498dfe user: dan tags: trunk)
17:05
Fix a typo in the rtree6.test script that prevented it from running. (check-in: 221fe4a8ea user: drh tags: trunk)
17:01
Rerun autoconf to update the configure script for version 3.7.12 (check-in: 6d73eb20e8 user: drh tags: trunk)
15:10
If the SELECT that finds all root pages in the showdb fails, then report an error. (check-in: 4b16141501 user: drh tags: trunk)
14:59
Enhance the "showdb" utility program with the "pgidx" option. Now requires linkage with the amalgamation. (check-in: 4b5737014c user: drh tags: trunk)
2012-04-02
23:42
bad assert (check-in: 0c0150f2a3 user: adam tags: apple-osx)
23:35
Merge in latest changes, autologging options, read only file system wal support, test config conditionalization, WAL frame write prebuffering (check-in: d51c086e5c user: adam tags: apple-osx)
21:35
The SQLITE_RTREE_INT_ONLY compile-time option causes the RTree extension to use only integer math and store only integer coordinates. (check-in: 02b7640f51 user: drh tags: trunk)
17:18
Add #ifdefs to allow a test build to succeed even if SQLITE_ENABLE_FTS3 is not defined. (check-in: fb121980e4 user: drh tags: trunk)
2012-03-31
19:12
Fix a compiler warning by removing a redundant variable. (check-in: af602d8773 user: drh tags: trunk)
17:50
Test cases for RELEASE and ROLLBACK TO of a nested savepoint while queries are pending. Ticket [27ca74af3c083] (check-in: d2bf0efa7d user: drh tags: trunk)
17:17
Do not abort pending queries on a RELEASE of a nested SAVEPOINT. This is a candidate fix for ticket [27ca74af3c083f787]. (check-in: 79a4a3a84f user: drh tags: trunk)
15:08
Modify selectColumnsFromExprList() to avoid ever incorrectly returning SQLITE_NOMEM. (check-in: e7cb6b73ac user: dan tags: trunk)
11:58
Change the ICU tokenizer so that it does not attempt to call strlen(NULL). (check-in: 04298f1ac4 user: dan tags: trunk)
09:59
Fix a bug in the EXPLAIN code for listing trigger programs that was causing an out-of-bounds read. (check-in: c9342ca581 user: dan tags: trunk)
02:46
Merge all the latest trunk changes into the apple-osx branch. (check-in: 18ec60cacd user: drh tags: apple-osx)
02:34
Do more aggressive optimization of the AND operator where one side or the other is always false. (check-in: f9a7e179cb user: drh tags: trunk)
2012-03-30
17:30
Merge all recent trunk changes into the sessions branch. (check-in: fb9b9987de user: drh tags: sessions)
16:44
Avoid using the OVERLAPPED struct on WinCE. (check-in: 196ca3a8b0 user: mistachkin tags: trunk)
15:57
Simplify the winRead and winWrite VFS functions to reduce the number of system calls. (check-in: b34491869c user: drh tags: trunk)
15:48
When a named CHECK constraint fails, include the name of the constraint in the error message. (check-in: 1b75f301af user: drh tags: trunk)
14:59
Fix MSVC compiler warnings in test code. (check-in: cb7a850439 user: drh tags: trunk)
14:01
Merge the latest trunk changes into the winrt branch. (check-in: a1a85b846a user: drh tags: winrt)
13:34
Fix an FTS4 test script problem for windows. (check-in: 36aa6665e7 user: drh tags: trunk)
12:27
Simplify the winRead and winWrite VFS functions to reduce the number of system calls. (check-in: 10ce846759 user: mistachkin tags: winrt)
12:10
Change the name of a local variable from "not" to "bNot" to lessen the chances of it colliding with some prior #define in the appliation. (check-in: cbdd863876 user: drh tags: trunk)
00:05
In the ".output" command of the shell, if the first character of the output filename is '|' then use popen() instead of fopen(). (check-in: fa82062c65 user: drh tags: trunk)
00:00
Fix compiler warnings on GCC and MSVC and fix a C89-ism that broke the build for MSVC. (check-in: b451c0f97f user: drh tags: trunk)
2012-03-29
15:11
Merge fts4-incr-merge with trunk. (check-in: 4d6de3e9be user: dan tags: trunk)
14:29
Disable the LIKE optimization if the column on the left-hand-side of the LIKE operator belongs to a virtual table. (check-in: 0bacb879e1 user: dan tags: trunk)
07:51
Fix an out of date comment on sqlite3ArrayAllocate(). (check-in: 4afdd5ae53 user: dan tags: trunk)
2012-03-28
18:08
Do the accounting for incr-merge work in pages instead of blocks. (Closed-Leaf check-in: 83037d5844 user: dan tags: fts4-incr-merge-exp)
16:44
Merge in the latest changes from trunk. (Closed-Leaf check-in: 66c4aaadda user: drh tags: fts4-incr-merge)
16:22
Avoid loading overflow pages just to satisfy typeof() or length() functions if the correct result can be computed without the extra page fetches. (check-in: 0733c98c32 user: drh tags: trunk)
16:14
Minor changes to the core of OP_Column for performance and to clarify the critical path. (Closed-Leaf check-in: 868394761e user: drh tags: faster-typeof-and-length)
15:44
This change turned out to the code slower. Side track it. Was: Tweaks to the OP_Column opcode for clarity of presentation. (Closed-Leaf check-in: 4d516240d2 user: drh tags: mistake)
13:55
Fix a problem in fts4merge3.test. (check-in: 64fc8b30f8 user: dan tags: fts4-incr-merge)
13:41
Improvements to comments. Minor changes to code in the hot path of OP_Column - with the hope of get a few cycles of performance improvement. (check-in: ca09310343 user: drh tags: faster-typeof-and-length)
02:51
Test cases for length() of a large blob in an aggregate query. (check-in: d095fa4bfa user: drh tags: faster-typeof-and-length)
02:43
Fix the typeof() and length() optimization so that it works for aggregates as well as scalar queries. (check-in: bc18215a8a user: drh tags: faster-typeof-and-length)
01:34
Evaluate typeof(X) and length(Y) where X is any column and Y is a blob column without actually loading X and Y from disk. (check-in: b899dbeb60 user: drh tags: faster-typeof-and-length)
2012-03-27
18:00
Add output of PRAGMAs auto_vacuum and encoding to the "schema" command of the fts3view utility program. (check-in: e310763193 user: drh tags: fts4-incr-merge)
15:10
Really delete the fts3merge.test script (should have been deleted by the previous commit). (check-in: 83838149d9 user: dan tags: fts4-incr-merge)
15:00
Remove the fts3merge.test script in favour of changing the fts4merge.test script so that it runs tests using both fts4 and fts3. Fix some problems with incr-merge and FTS3 tables. (check-in: 5c447e226a user: dan tags: fts4-incr-merge)
14:54
In the fts3view utility, label the blank segments used to mark the end of a segment sequence for a level/idx as "null". Improve the alignment of root segment names. (check-in: 04aea0245e user: drh tags: fts4-incr-merge)
13:51
Enhance the fts3view tool with the big-segment command and fix a bug in the display of doclists. (check-in: e9436d8038 user: drh tags: fts4-incr-merge)
13:44
Merge the fts4-incr-merge-exp branch with fts4-incr-merge. (check-in: eb00b95885 user: dan tags: fts4-incr-merge)
11:48
Allow multiple incremental merges to proceed concurrently. This is required to prevent a large crisis-merge from occuring while an even larger incremental-merge is underway. (Closed-Leaf check-in: 7ed9d2f24a user: dan tags: fts4-incr-merge-exp)
00:38
Minor correct errors in the file format description for FTS3/4 contained in the fts3.c header comment. (check-in: fb8aacdd8f user: drh tags: fts4-incr-merge)
00:34
Enhance fts3view to show decodes of segments and doclists. (check-in: 6d09de231b user: drh tags: fts4-incr-merge)
2012-03-26
21:57
Add the fts3view utility program. (check-in: f936c8ea16 user: drh tags: fts4-incr-merge)
14:36
Fix FTS3 so that it works even without SQLITE_DEBUG. (check-in: a18c103121 user: drh tags: fts4-incr-merge)
10:57
Modify the FTS integrity-check so that the checksums do not depend on the results of signed integer overflow, which is undefined in C. (check-in: f907fc3fb3 user: dan tags: fts4-incr-merge)
10:47
Add a comment to explain how the FTS integrity-check works. (check-in: 64e8a116f3 user: dan tags: fts4-incr-merge)
10:36
Add an experimental integrity-check function to FTS. (check-in: 40fc880474 user: dan tags: fts4-incr-merge)
2012-03-25
17:25
Increase the version number to 3.7.12 (check-in: d95f9fb713 user: drh tags: trunk)
2012-03-24
20:09
Add SQLITE_DBSTATUS_CACHE_WRITE to the command-line shell. (check-in: 30b8dd326d user: drh tags: trunk)
20:06
Add SQLITE_DBSTATUS_CACHE_WRITE. Used to query a database connection for the cumulative number of database pages written. (check-in: 05f98d4eec user: drh tags: trunk)
19:44
Add SQLITE_DBSTATUS_CACHE_WRITE. Used to query a database connection for the cumulative number of database pages written. (check-in: 3cb6a879f1 user: dan tags: fts4-incr-merge)
17:29
Enable fts3 tables to use incremental merge by automatically creating the %_stat table when it is needed. (check-in: cc051fc0b2 user: drh tags: fts4-incr-merge)
17:09
Fix a failing assert() in the FTS3_LOG_MERGES related code. (check-in: 4220d52cb3 user: dan tags: fts4-incr-merge)
16:43
Add a comment to fts3SyncMethod() to justify the nMinMerge=64 constant. (check-in: af55ca5fc6 user: dan tags: fts4-incr-merge)
16:18
Fix a bug in debugging code enabled when FTS3_LOG_MERGES is defined. (check-in: 2e06babf49 user: drh tags: fts4-incr-merge)
16:11
Remove the Fts3Table.mxLevel variable. (check-in: 67a0cffc9d user: dan tags: fts4-incr-merge)
14:45
Merge auto-incr-merge with incr-merge branch. (check-in: 1c68687ab6 user: dan tags: fts4-incr-merge)
14:45
Modify the way the number of leaves written and the maximum relative level are calculated in the auto-incr-merge code. (Closed-Leaf check-in: 0d841c957c user: dan tags: fts4-auto-incr-merge)
02:20
An attempt at automatic incremental merging for FTS4. (check-in: ed69434cd8 user: drh tags: fts4-auto-incr-merge)
2012-03-23
18:26
Fix a spurious SQLITE_CONSTRAINT error that may be returned by an incr-merge operation. (check-in: ed7c17ea16 user: dan tags: fts4-incr-merge)
15:38
Add a test to verify that sqlite3_total_changes() works with incr-merge operations. (check-in: 1c72cecc6b user: dan tags: fts4-incr-merge)
14:38
Remove an incorrect assert() statement. Fix a const-related warning. (check-in: 96ed47493b user: dan tags: fts4-incr-merge)
14:23
When an incremental blob cursor is invalidated (occurs when an SQL statement modifies or deletes the row the blob cursor points to) release all page references held by the cursor. Otherwise, the presence of these references may cause other code in btree.c to incorrectly infer that the database is corrupt. (check-in: 341b703ce1 user: drh tags: trunk)
13:40
Fix another test case issue in trace2.test. (check-in: 02a8e4236c user: dan tags: fts4-incr-merge)
12:28
Update MSVC makefile to support compiling for WinRT using one setting. (check-in: c10794bfac user: mistachkin tags: winrt)
11:09
When an incremental blob cursor is invalidated (occurs when an SQL statement modifies or deletes the row the blob cursor points to) release all page references held by the cursor. Otherwise, the presence of these references may cause other code in btree.c to incorrectly infer that the database is corrupt. (check-in: 82c3f2ba42 user: dan tags: fts4-incr-merge)
11:07
Update a couple of existing test cases. (check-in: dcb8fa0f77 user: dan tags: fts4-incr-merge)
2012-03-22
17:48
Add test cases to fts4merge.test. (check-in: ecab208333 user: dan tags: fts4-incr-merge)
16:48
Following an incr-merge operation that does not completely consume its input segments, store context in the rowid==1 row of the %_stat table that allows the next incr-merge to pick up where the previous left off. (check-in: ab0a4f44fb user: dan tags: fts4-incr-merge)
12:50
Always quote the names of tables in the output of the shell's ".dump" command, even if the name is pure alphabetic text, in case the name is a keyword. (check-in: 638b711502 user: drh tags: trunk)
2012-03-21
14:34
Add fts4merge3.test, for testing that older versions of FTS4 may interoperate with incr-merge capable versions. (check-in: 903ec5126d user: dan tags: fts4-incr-merge)
2012-03-20
17:04
Merge trunk changes into the fts4-incr-merge branch. (check-in: f61d5fb028 user: drh tags: fts4-incr-merge)
15:10
Remove the _SafeInit() entry points from the TCL interface. They have long been no-ops. Removing them completely avoids confusion as to why they don't work. (check-in: 0fb26c7bfa user: drh tags: trunk)
11:35
Version 3.7.11 (check-in: 00bb9c9ce4 user: drh tags: trunk, release, version-3.7.11)
03:10
Fix out-of-bounds array references in the "echo" virtual table module used for testing. No changes to the SQLite core. (check-in: 7b449b301e user: drh tags: trunk)
02:18
Add WinRT comments to MSVC makefile. (check-in: ddea657bd8 user: mistachkin tags: winrt)
02:10
Remove version information from the MSVC makefile as it is no longer necessary. (check-in: 6f0c1f9761 user: mistachkin tags: winrt)
2012-03-19
23:32
Merge updates from trunk. (check-in: 4ab1ffd45d user: mistachkin tags: winrt)
23:28
Fix typo, use the syscall table for osOutputDebugStringA. (check-in: 9598c2a398 user: mistachkin tags: winrt)
17:42
Add additional test cases to e_insert.test. Update evidence marks. no changes to core code. (check-in: 036395c0a8 user: drh tags: trunk)
16:21
Merge latest trunk changes into apple-osx branch. (check-in: f999197b75 user: dan tags: apple-osx)
14:57
Fix one more compiler warning missed by the previous check-in. (check-in: bc03d99a78 user: drh tags: trunk)
14:51
Suppress harmless compiler warnings on windows in FTS4 and RTREE. (check-in: 4fd68647c8 user: drh tags: trunk)
14:28
Avoid a compiler warning (an incorrect compiler warning, at that) in vs2010. (check-in: 7dd97f12cd user: drh tags: trunk)
11:17
Merge the latest trunk changes into the sessions branch. (check-in: 2277c70b6f user: dan tags: sessions)
10:21
Ensure that compatible malloc and free functions are used with stat3 data if SQLITE_ENABLE_STAT3 is defined. (check-in: 32bb1ecee4 user: dan tags: trunk)
2012-03-18
03:22
On Windows, when no temporary path is available, skip prepending the directory separator. (check-in: 32b5c20e54 user: mistachkin tags: winrt)
01:32
Add SQLITE_OMIT_SHUTDOWN_DIRECTORIES compile-time option to disable clearing the sqlite3_data_directory and sqlite3_temp_directory variables during sqlite3_shutdown. Also, only clear the variables if the heap was actually shutdown. (check-in: 1ae9f9e4f7 user: mistachkin tags: winrt)
2012-03-17
16:56
Fix various incorrect and missing comments and other style issues in and around the FTS incremental merge code. (check-in: 7aabb62c8c user: dan tags: fts4-incr-merge)
15:12
In pager1.test, use "file attr test.db -readonly 0" before "file attr test.db -perm rw-rw-rw-", not after. (check-in: 4f5283f18f user: dan tags: trunk)
09:43
Modify a test in ioerr2.test to account for the new SQLITE_ABORT_ROLLBACK extended error code. (check-in: affaebde10 user: dan tags: trunk)
2012-03-16
17:00
Update the trace2.test script for languageid. (check-in: a11528ac57 user: drh tags: trunk)
16:52
Cherrypick the [3475092cff] fix for 32-bit overflow with large language-ids into trunk. (check-in: 2755edc7f1 user: drh tags: trunk)
15:54
Fix some integer overflow problems that can occur when using large langauge id values. (check-in: 3475092cff user: dan tags: fts4-incr-merge)
14:54
Add a comment to the FTS getAbsoluteLevel() function. No actual code changes. (check-in: 7e0f861bed user: dan tags: fts4-incr-merge)
10:28
Reset the sqlite3_data_directory and sqlite3_temp_directory variables when the sqlite3_shutdown function is called since they may refer to memory allocated by the heap subsystem that was just shutdown. (check-in: cd70bc4b78 user: mistachkin tags: winrt)
00:28
Fix harmless compiler warnings. (check-in: 74eadeec34 user: drh tags: trunk)
2012-03-15
22:54
Add the sqlite3_db_readonly() API to trunk. (check-in: fed134a5f3 user: drh tags: trunk)
21:28
Add the sqlite3_db_readonly() interface. This is still tentative, pending a closer look at other ideas to accomplish the same thing. (Closed-Leaf check-in: 254f99ea9f user: drh tags: db-readonly-api)
17:45
Modify incremental merge code to merge nMin segments at a time. (check-in: cd34bc1af4 user: dan tags: fts4-incr-merge)
03:40
Add SQLITE_WIN32_HEAP_CREATE compiler define to control whether or not the Win32 native allocator will create an isolated heap for all allocated data. (check-in: 8693fb652e user: mistachkin tags: winrt)
2012-03-14
23:08
Fix macro issues for osGetProcessHeap and sqlite3_win32_write_debug. (check-in: d3d071598a user: mistachkin tags: winrt)
20:20
Fix typos, use #if instead of #ifdef when checking for the Win32 native heap validation define. (check-in: 845aa46f69 user: mistachkin tags: winrt)
20:17
Avoid redefining macros. Enable use of the Win32 native heap on WinRT. Use the syscall table to call OutputDebugStringW and fix type casting warnings. (check-in: 46c412a8f6 user: mistachkin tags: winrt)
20:01
Add tests for incremental merge code. (check-in: 570473729d user: dan tags: fts4-incr-merge)
12:17
Avoid allocating a large object on the stack in the incremental merge code. Use sqlite3_malloc() instead. (check-in: 36ae510de4 user: dan tags: fts4-incr-merge)
11:51
Fix another bug in the incremental merge code. (check-in: f97b12e095 user: dan tags: fts4-incr-merge)
03:41
Remove SQLITE_OS_WINRT setting from MSVC makefile. (check-in: df4caf1326 user: mistachkin tags: winrt)
01:28
Add warning to the docs about changing the data directory when a database connection is open. (check-in: c07cd85ca9 user: mistachkin tags: winrt)
00:44
Add experimental support for resolving relative database file paths using a fixed user-defined directory. (check-in: 7354ae8fd3 user: mistachkin tags: winrt)
2012-03-13
19:56
Fix some bugs in the incremental merge code. Some remain. (check-in: bff2168370 user: dan tags: fts4-incr-merge)
03:38
Add assert to verify the number of characters to write in sqlite3_win32_write_debug. (check-in: 8083f6164f user: mistachkin tags: winrt)
03:35
Defer creation of the sleep event object until it is needed. Added sqlite3_win32_write_debug and sqlite3_win32_sleep APIs to assist in portability to WinRT. (check-in: 7af88ad306 user: mistachkin tags: winrt)
01:30
Cleanup the Windows syscall table, removing the unused CreateFileMapping entry. (check-in: fb7d8bf6ec user: mistachkin tags: winrt)
01:16
More changes required to compile for WinRT using VS 11 beta. Also, replace more APIs with their WinRT alternatives. (check-in: 6b997d9c32 user: mistachkin tags: winrt)
2012-03-09
22:02
Candidate fix for the optimizer problem described in ticket [b7c8682cc17f3] which can causes a LEFT JOIN to be changed into a INNER JOIN if there are OR terms in the WHERE clause. (check-in: 0dc4cb9355 user: drh tags: trunk)
12:52
Minor commenting and stylistic changes only. (check-in: a1747086c5 user: drh tags: fts4-incr-merge)
2012-03-08
20:39
Merge test current directory value fix from trunk and fix uri tests. (check-in: 88963c33c1 user: mistachkin tags: winrt)
20:28
On Windows, make sure the returned test current directory value does not contain any backslashes. (check-in: efee39e64b user: mistachkin tags: trunk)
20:22
Merge and manually resolve testing updates from trunk. (check-in: 5eecdb44dd user: mistachkin tags: winrt)
20:00
On Windows, make sure the current directory value used by the test suite is 'normalized' to what the parent command shell sees. Also, clean the test directories used by the quota2.test file. (check-in: 82bcd7ec15 user: mistachkin tags: trunk)
18:39
Add the 'merge=?,?' command to fts4. This still needs some work. (check-in: 741b8f8977 user: dan tags: fts4-incr-merge)
2012-03-07
20:11
When compiled for WinRT, use the CreateFile2 and LoadPackagedLibrary functions instead of CreateFile and LoadLibrary. (check-in: 27d6942ca2 user: mistachkin tags: winrt)
19:13
If a CHECK constraint is named, report that name on the error message when the constraint fails. (Closed-Leaf check-in: 9a0f90d9de user: drh tags: named-check-constraints)
16:52
Merge in the latest trunk changes. (check-in: ca4708531a user: drh tags: winrt)
2012-03-06
03:00
Fix for test issues when there is no current directory support due to being compiled for WinRT. (check-in: a811cb0152 user: mistachkin tags: winrt)
2012-03-05
22:52
Add compile-time define to indicate if the VFS supports the concept of a current directory (as WinCE and WinRT do not). Avoid using the GetTempPath and GetFullPathName APIs on WinRT. Some tests still need adjustments. (check-in: 86c049a171 user: mistachkin tags: winrt)
16:39
Pull in all the latest trunk changes. (check-in: 504bf49086 user: drh tags: apple-osx)
16:26
Merge in the latest trunk changes. (check-in: ff86875ca3 user: drh tags: sessions)
16:24
Fix a problem compiling the test code in fts3_test.c when SQLITE_ENABLE_FTS3 is not defined. (check-in: b00ccda307 user: dan tags: trunk)
15:33
Merge the fts4-languageid branch with the trunk. (check-in: 99a9073b5e user: dan tags: trunk)
2012-03-04
02:56
When creating the event used to sleep on WinRT, request the minimum access rights required for the desired operations on it (i.e. SYNCHRONIZE). (check-in: ed603d7594 user: mistachkin tags: winrt)
2012-03-03
18:46
Add the xLanguageid method to sqlite3_fts3_tokenizer versions 1 and greater. (Closed-Leaf check-in: f8e9c445dd user: dan tags: fts4-languageid)
13:15
When compiled for WinRT, avoid using MapViewOfFile and GetFileAttributes. Also, reset the private 'sleep' event handle when the VFS is cleaned up. (check-in: 38df8fc1b4 user: mistachkin tags: winrt)
01:44
Add a test case for ticket [3557ad65a076c]. (check-in: 4f34d7077b user: drh tags: trunk)
00:34
Fix a bug [3557ad65a07] that causes incorrect DISTINCT processing on an indexed query involving the IN operator. (check-in: dec9a995d7 user: drh tags: trunk)
2012-03-02
23:53
When compiled for WinRT, avoid using the FORMAT_MESSAGE_ALLOCATE_BUFFER flag to FormatMessage (i.e. because LocalFree is unavailable). (check-in: 9eb331be7e user: mistachkin tags: winrt)
22:41
Fix test pragma-19.5 so that it works on file names that may contain spaces and/or backslashes. (check-in: 9aaa1ab7c6 user: mistachkin tags: trunk)
22:38
When running on Windows with an NT-based kernel, always use the LockFileEx/UnlockFileEx functions (with the correct flags). (check-in: 3e7ba3ddb9 user: mistachkin tags: winrt)
20:34
Remove an obsolete comment from FTS3. No code changes. (check-in: 74d224b144 user: drh tags: trunk)
19:53
Fix problems with combining content= and languageid= in a single fts4 table. (check-in: 22491e7bc3 user: dan tags: fts4-languageid)
16:18
Add test for FTS 'rebuild' command. (check-in: 181bc35731 user: dan tags: fts4-languageid)
13:47
Add new Win32 APIs used to the system call table. Add error handling code for SetFilePointerEx. Make sure the last error number is saved from the call to GetFileInformationByHandleEx. (check-in: a782d2dc3c user: mistachkin tags: winrt)
12:26
Fix the FTS 'optimize' command on multi-lingual databases. (check-in: 65fa693729 user: dan tags: fts4-languageid)
11:48
Fix a bug in merging FTS language tables for languages other than language 0. (check-in: d281cb8984 user: dan tags: fts4-languageid)
00:00
Omit all ANSI APIs for winRT. (check-in: cbf23b461f user: drh tags: winrt)
2012-03-01
22:44
Use GetInformationByHandleEx() instead of GetFileSize() on winRT. (check-in: 119f251de7 user: drh tags: winrt)
22:33
Do not run the large file tests if a file named "skip-big-file" exists in the test directory. This enables tests to be run much faster on systems that lack sparse file support. (check-in: 5a83912352 user: drh tags: winrt)
22:06
Use SetFilePointerEx() instead of SetFilePointer() on winRT. (check-in: 36efafc618 user: drh tags: winrt)
21:30
Fix a typo in the header comment of sqlite3_commit_hook(). (check-in: 3784d1475b user: drh tags: trunk)
21:19
Use WaitForSingleObjectEx() as a substitute for Sleep on winRT. (check-in: bf897be0da user: drh tags: winrt)
20:05
Add recognition of the SQLITE_OS_WINRT compile-time option. Use InitializeCriticalSectionEx() under winRT. (check-in: 8b7ca8a09f user: drh tags: winrt)
19:44
Add the "languageid=" option to fts4. This code is still largely untested and alsmost certainly buggy. (check-in: bea257f70f user: dan tags: fts4-languageid)
19:14
Add back in some #includes that were removed incorrectly by the previous check-in. (check-in: 718905367f user: drh tags: winrt)
18:16
Remove unused #defines from os.h. (check-in: c0891296b4 user: drh tags: winrt)
2012-02-28
17:57
Fix spurious errors that may occur if an empty database is opened and then initialized as a WAL database by a second connection. (check-in: 16330a2f72 user: dan tags: trunk)
11:52
Fix a case where an error code was being overwritten in multiplexDelete(). (check-in: c267893a08 user: dan tags: trunk)
2012-02-27
14:28
Fix the xDelete implementation of the multiplexor VFS so that it correctly deletes overflow WAL files. (check-in: e44e26771e user: drh tags: trunk)
2012-02-24
16:13
Separate multiplexor overflow pages for -wal and -journal files into separate namespaces when in 8+3 filename mode. (check-in: d6850667ea user: drh tags: trunk)
15:57
Fix the multiplexor so that it works with WAL mode and 8+3 filenames. (check-in: a9fcb46bc0 user: drh tags: trunk)
14:33
Add #ifdef SQLITE_ENABLE_ZIPVFS around those bits of code that are only used by ZIPVFS. (check-in: 3130275c64 user: drh tags: trunk)
00:03
If the SQLITE_FCNTL_PRAGMA file control returns something other than SQLITE_NOTFOUND, then skip the rest of Pragma code generation. (check-in: 9e6d340f55 user: drh tags: trunk)
00:02
A simple change that allows the SQLITE_32BIT_ROWID compile-time option to work better. (check-in: f9df4063fb user: drh tags: trunk)
2012-02-23
17:35
Fix an obscure bug that causes a crash when parsing certain invalid SQL statements. (check-in: c8c7846fb9 user: drh tags: trunk)
16:45
Fix a typo made inside an assert() statement in the previous commit. (check-in: f0640615f2 user: dan tags: trunk)
15:35
Add the sqlite3PagerWalFramesize() function to pager.c. This is used by zipvfs. (check-in: 786e24dc56 user: dan tags: trunk)
14:28
Expose the sqlite3_stricmp() interface. Add the SQLITE_FCNTL_PRAGMA file control. (check-in: c539cf21ef user: drh tags: trunk)
2012-02-22
20:08
Move test logic for SQLITE_FCNTL_PRAGMA out of os_unix.c and into test_vfs.c. (Closed-Leaf check-in: c81fc40b2b user: drh tags: file-control-pragma)
19:56
If the SQLITE_FCNTL_PRAGMA file-control returns anything other than SQLTIE_NOTFOUND and SQLITE_OK, then treat the result as an error. (check-in: 5643618108 user: drh tags: file-control-pragma)
19:03
Disable the "filename" pragma implemented by os_unix.c except when compiled with SQLITE_TEST. (check-in: 9a1da91850 user: drh tags: file-control-pragma)
18:21
Make benign any malloc failures inside the sqlite3_file_control() call within PRAGMA parsing. Add a couple simple tests for SQLITE_FCNTL_PRAGMA. (check-in: a1f29fa653 user: drh tags: file-control-pragma)
16:58
Change the SQLITE_FCNTL_PRAGMA file-control so that it can return a string value. (check-in: fd8d744027 user: drh tags: file-control-pragma)
14:45
Begin adding support for SQLITE_FCNTL_PRAGMA. (check-in: 5be07904ba user: drh tags: file-control-pragma)
2012-02-21
18:35
Avoid redefining NDEBUG if the fuzzer is included in an amalagmated source file. (check-in: f8ac826f95 user: drh tags: trunk)
18:00
Prevent the fuzzer from ever returning a string longer than 100 bytes. (check-in: 969095ca30 user: dan tags: trunk)
14:11
Further fuzzer test cases. Fix a case in the fuzzer where an error code was being dropped. (check-in: 8b77d3953f user: dan tags: trunk)
10:36
Add further test cases and minor fixes for the fuzzer. (check-in: 583dde93a9 user: dan tags: trunk)
2012-02-20
22:44
Updates to the instructions in the header comment of the fuzzer implementation. New test cases for the fuzzer. (check-in: bf1dc7907c user: drh tags: trunk)
20:03
Change the way the fuzzer (test_fuzzer.c) works so that it loads its configuration from a database table. (check-in: 90b7b957f8 user: dan tags: trunk)
19:36
Fix a case in test_fuzzer.c causing transformations from the wrong ruleset to be applied in some cases. (check-in: cb5f5ebc56 user: dan tags: trunk)
2012-02-14
18:56
Increase the maximum ruleset id in the fuzzer from 50 to 2^31-1. (check-in: 760e009adc user: drh tags: trunk)
15:34
Enhance the fuzzer virtual table to support multiple rule sets. (check-in: a82938731b user: drh tags: trunk)
2012-02-13
21:24
Merge the non-blocking ROLLBACK changes into trunk. (check-in: 9c572d424a user: drh tags: trunk)
20:28
Fix a harmless compiler warning introduced by the previous check-in. (check-in: a8a042a751 user: drh tags: trunk)
20:16
On unix, ignore the umask when creating journal files. That way, journal files will have exactly the same permissions as the original database and any process that has permission to write to the database can also recover hot journals. (check-in: 84b324606a user: drh tags: trunk)
17:01
Add the new SQLITE_ABORT_ROLLBACK extended error code to be returned for statements that are cancelled due to a rollback. (Closed-Leaf check-in: 549f4fd00d user: drh tags: nonblocking-rollback)
16:43
Change the ROLLBACK command so that pending statements to not block it. The pending statements instead return SQLITE_ABORT upon next access. Note: This causes separate shared-cache connections in read_uncommitted mode to abort as well. (check-in: 9b66c79e05 user: drh tags: nonblocking-rollback)
13:44
Generalize the interrupt mechanism so that individual statements can be interrupted and so that codes other than just SQLITE_INTERRUPT can be returned as a consequence of an interrupt. (Closed-Leaf check-in: 922bcbb423 user: drh tags: generalize-interrupt)
10:00
Changes to various test scripts so that veryquick.test runs with OMIT_COMPOUND_SELECT defined. (check-in: 76bb649ee2 user: dan tags: trunk)
08:50
Fix a typo in the type of the fchown() function in os_unix.c. (check-in: bfbfe05b81 user: dan tags: trunk)
2012-02-11
23:55
Make fchown() an overrideable system call in os_unix.c. (check-in: 98efac9630 user: drh tags: trunk)
22:19
Cleanup some directories and files left by the MinGW build, even when using the MSVC Makefile. (check-in: 3ab89e255d user: mistachkin tags: trunk)
21:56
Revise the preprocessor directives used to handle malloc.h and _msize, in order to detect and handle the MSVC special-case automatically. (check-in: 90e73dc368 user: mistachkin tags: trunk)
21:21
Silence GCC compiler warnings about unused return value from fchown(). (check-in: b022547389 user: drh tags: trunk)
19:53
Another attempt to fix warnings in the randomFunc() function. (check-in: 768df4e116 user: drh tags: trunk)
19:23
When creating journal files (including -wal and -shm files) try to set the ownership to be the same as the original database. This will prevent root from locking out the original owner of the file. (check-in: 1254dffe40 user: drh tags: trunk)
18:51
Remove a redundant test from the shared-memory logic in os_unix.c. (check-in: 31142ca795 user: drh tags: trunk)
2012-02-10
20:43
Fix a warning coming from the Solaris Studio compiler. (check-in: 33294bbd17 user: drh tags: trunk)
18:18
Pull the latest trunk changes into the apple-osx branch. (check-in: e248598649 user: drh tags: apple-osx)
17:54
Pull all the latest trunk changes into the sessions branch. (check-in: 361fb66a79 user: drh tags: sessions)
17:38
Disable the ability to have multiple values in the VALUES clause of an INSERT statement when SQLITE_OMIT_COMPOUND_SELECT is used. (check-in: 92131195d0 user: drh tags: trunk)
03:10
Fix an important bug in the handling of EINTR in unixRead(). Never came up on x86 but crashes on sparc. (check-in: 1a16db0bca user: drh tags: trunk)
01:25
Fix a boundary case for the integer affinity routine for non-x86 processors. (check-in: bea05ddddf user: drh tags: trunk)
2012-02-08
12:13
Add an autoconf test for malloc.h and use the results of that test to conditionally #include the malloc.h header file. (check-in: 16a471129d user: drh tags: trunk)
2012-02-07
14:22
Port the command-line shell enhancements including the new --cmd option to the nx-devkit branch. (check-in: 81ce52afb1 user: drh tags: nx-devkit)
14:13
Command-line shell enhancements: Reorganize the "usage" comment so that options are in alphabetical order. Add the new "--cmd" option. Allow either "--option" or "-option" for options. (check-in: 9497893b1b user: drh tags: trunk)
2012-02-02
21:02
More structure packing for smaller objects and less memory usage. (check-in: f14e7f29ff user: drh tags: trunk)
19:37
Reduce the size of the MemPage object by about 32 bytes. Other structure size optimizations. (check-in: 21695c3476 user: drh tags: trunk)
18:46
When non-aggregate columns occur in an aggregate query with a single min() or max(), then the values of the non-aggregate columns are taken from one of the rows that was the min() or max(). (check-in: fa13edd39c user: drh tags: trunk)
18:42
Fix a problem with NULL handling in aggregate min/max when returning values from the row containing the min or max. (Closed-Leaf check-in: f27c7b4fb1 user: drh tags: output-minmax-row)
17:35
For queries of the form "SELECT p, max(q) FROM t1", the value of column p returned is the one on the same row that holds the maximum value of q. (check-in: adb29232b6 user: drh tags: output-minmax-row)
15:50
Data structure cleanup. Remove unused fields. Rearrange other files for tighter packing and reduced memory usage. (check-in: 0bc594e861 user: drh tags: trunk)
03:38
Simplified array allocation in the IdList and AggInfo objects. (check-in: 25df2a7458 user: drh tags: trunk)
03:11
Fix a possible segfault after an OOM fault. This has been in the code for ages but only expressed itself following the previous check-in. (check-in: a3553b8a03 user: drh tags: trunk)
01:58
Remove the nAlloc field from the ExprList object. (check-in: 5963de303a user: drh tags: trunk)
2012-02-01
19:03
Very small performance enhancement and reduction in size of the sqlite3_stmt object. (check-in: a38d57a4e5 user: drh tags: trunk)
01:13
Fix ALTER TABLE RENAME so that it correctly handles triggers that attach to the table using the name in a different case. Ticket [ae6794effd404]. (check-in: 0d78ebb8e4 user: drh tags: trunk)
2012-01-31
23:34
Fix a compiler warning in FTS4. (check-in: b4cad1ce78 user: drh tags: trunk)
14:24
Futher pedantic fixes to the sqlite3_uri_boolean() interface. (check-in: 77b3430de6 user: drh tags: trunk)
13:35
Improvements to the documentation for sqlite3_uri_boolean(). (check-in: b0a161791d user: drh tags: trunk)
05:11
Change a comment in test script backup.test. (check-in: 313546b456 user: dan tags: trunk)
2012-01-30
18:40
Bring the documentation and implementation of sqlite3_uri_boolean() into closer agreement. Ticket [5f41597f7c9c] (check-in: 7b053d699f user: drh tags: trunk)
18:00
Fix compiler warnings in the TCL test harness. (check-in: c4cd38a0c7 user: drh tags: trunk)
16:13
Do not rely on the _WIN32_WINNT macro as vs2005 does not define it by default. Instead, always assume winNT unless the makefile explicitly sets SQLITE_OS_WINNT=0. (check-in: 4f0997c7fa user: drh tags: nx-devkit)
16:02
Do not rely on the _WIN32_WINNT macro as vs2005 does not define it by default. Instead, always assume winNT unless the makefile explicitly sets SQLITE_OS_WINNT=0. (check-in: 1ce4d21d52 user: drh tags: trunk)
2012-01-28
21:08
Update the .dump command of the command-line shell so that it (1) avoids putting the semicolon of a DDL statement on the same line as a comment, (2) avoids long expression, even when dumping a table with many columns, and (3) avoids unnecessary quoting of the table name. This fixes tickets [c04a8b8a4f] and [232637c465]. Shell change only; no changes to the SQLite core. (check-in: e6eea8d50d user: drh tags: trunk)
19:44
Remove a couple of unnecessary nonterminals from the grammar. (check-in: 2b2a7d8d73 user: drh tags: trunk)
19:41
Add support for IF NOT EXISTS on CREATE VIRTUAL TABLE. (check-in: 230983e86a user: drh tags: trunk)
15:26
Update the version number to 3.7.11 and rerun autoconf. (check-in: 6f9b265dd0 user: drh tags: trunk)
15:22
Add support for multiple rows of VALUES in an INSERT statement. (check-in: eb3b6a0ceb user: drh tags: trunk)
2012-01-25
22:08
Cherrypick the FTS fix in [c05c3fd20d9] into the nx-devkit branch. Ticket [edb497982c]. (check-in: 2a7170f03c user: drh tags: nx-devkit)
20:43
Only invalidate the schema when the OP_ParseSchema opcode fails, not on any general failure of a vdbe program. (check-in: 11f68d997d user: drh tags: trunk)
16:29
Fix an FTS problem triggered by querying for an N character prefix using an N+1 character prefix index after rows have been deleted from the FTS table. Fix for [edb497982c]. (check-in: c05c3fd20d user: dan tags: trunk)
2012-01-24
10:08
Changes to the async-io module so that the xFileControl method returns SQLITE_NOTFOUND when a file-control is not recognized and so that it adds the second nul-terminator byte to filenames passed to the xOpen method of the underlying VFS. (check-in: 7036886e83 user: dan tags: trunk)
2012-01-20
15:05
Cherrypick the fix from [629108c8e5376f989] into the nx-devkit branch. (check-in: d7374568cb user: drh tags: nx-devkit)
2012-01-19
16:57
Make the use and function of SQLITE_DYNAMIC clearer. Add assert() statement to help ensure that SQLITE_DYNAMIC is not misused. (check-in: ab80f2c3b2 user: drh tags: trunk)
2012-01-18
18:22
Avoid overriding the malloc_usable_size symbol using the C preprocessor as this might be confusing the build on some systems. (check-in: bbaec351dd user: drh tags: trunk)
12:46
Add the SQLITE_WITHOUT_MSIZE and SQLITE_WITHOUT_ZONEMALLOC macros in mem1.c to disable the use of _msize() on windows and the zone memory allocator on Apple products, respectively. (check-in: 238e35a441 user: drh tags: trunk)
01:14
Remove a redundant assignment from the VM. (check-in: d0dabe2f37 user: drh tags: trunk)
01:09
Fix typo in comment. (check-in: 199edb6869 user: mistachkin tags: trunk)
2012-01-17
15:29
Remove the undocumented PRAGMA omit_readlock hack. (check-in: 96900c47e4 user: drh tags: trunk)
2012-01-16
16:56
Enhance the command-lin shell to interpret CSV files as described by the wikipedia article on CSV. (check-in: 93aa17d866 user: drh tags: trunk)
16:39
Test the fts4 content and prefix options together. (check-in: de11cd5cc9 user: dan tags: trunk)
13:28
Version 3.7.10 (check-in: ebd01a8def user: drh tags: trunk, release, version-3.7.10)
13:00
Rebuild the configure script using autoconf 2.68 since autoconf 2.65 (previously used) appears to build incorrect scripts for Mac. (check-in: 9da1cd0a06 user: drh tags: trunk)
12:33
Support building with SQLITE_ENABLE_SESSION under MSVC. (check-in: 2845654d42 user: mistachkin tags: sessions)
2012-01-14
14:13
Merge the latest trunk changes into the apple-osx branch. (check-in: 2cc414cd14 user: drh tags: apple-osx)
13:50
Update sessions branch with latest changes from trunk. (check-in: 01c84fd391 user: dan tags: sessions)
03:34
Make sure the EXTERN macro is properly defined when building targets that require it (e.g. on MinGW). (check-in: 88ad2f23c5 user: mistachkin tags: trunk)
00:42
In the multiplexor routine that determines the size of an overflow file, return 0 and leave the error code unchanges if there were prior errors. This prevents some I/O errors from going unreported in nx-devkit tests. (check-in: 6da0821a47 user: drh tags: trunk)
2012-01-13
16:48
Fix documentation typos. No changes to code. (check-in: 0b857613e2 user: drh tags: trunk)
16:16
Add the -uri option to the usage comment that is printed by the "sqlite3" TCL command when an unknown command-line option is supplied. (check-in: 7987e28578 user: drh tags: trunk)
15:50
Update the documentation for the sqlite3_uri_*() routines to make it clear that there argument must be a database filename passed into xOpen(). No changes to code. (check-in: 08230a3a8c user: drh tags: trunk)
15:21
Fix backup2.test so that it passes on OpenBSD (which produces a slightly different error message in one case). (check-in: 227cfe11c4 user: dan tags: trunk)
14:50
Do not throw an error from within test_journal.c if a database file size is not an integer multiple of the page-size. (check-in: 3f4899a923 user: dan tags: trunk)
10:51
Omit test file zerodamage.test from the inmemory_journal permutation. (check-in: 0c0051b1a5 user: dan tags: trunk)
10:04
Fix test case issues related to errors in file-controls and the PSOW flag. (check-in: 5afbcd49f9 user: dan tags: trunk)
2012-01-12
16:41
Fix issues in test cases so that they work with DEFAULT_AUTOVACUUM defined. And with a small default cache-size. (check-in: a298465c39 user: dan tags: trunk)
15:05
Fix typos in a testcase() macro introduced by the previous commit. (check-in: 0467742fd6 user: dan tags: trunk)
14:25
Remove some assert() statements that can fail with corrupt databases. (check-in: 7654ae71bd user: dan tags: trunk)
2012-01-11
16:16
Remove code made unreachable by the enhancement of the previous check-in. (check-in: 9e31a275ef user: drh tags: trunk)
15:47
Make the pager less vulnerable to problems caused by shifting sector sizes when rolling back a hot journal. (check-in: 629108c8e5 user: drh tags: trunk)
11:20
Fix the sqlite3_quota_file() function in test_quota.c so that it adds the second nul-terminator to all file names that will be passed to a VFS xOpen method. (check-in: 3013f9a67c user: dan tags: trunk)
01:01
Prevent winOpenSharedMemory from masking the real return code from its call to winOpen. Also, add asserts to check the double-zero termination of database file names. (check-in: 93a65776dc user: mistachkin tags: trunk)
00:38
Make sure filenames handed to the VFS by the fake_big_file test procedure are double-zero terminated. (check-in: d0a868607e user: drh tags: trunk)
2012-01-10
23:18
Only require double-zero terminators on database filenames, not any every files supplied to the xOpen method. This backs out [2544f233f1]. Also refactor the fillInUnixFile() routine in os_unix.c to reduce the number of parameters. (check-in: cb774b26e1 user: drh tags: trunk)
17:59
Refactor sqlite3OsFileControlNoFail() into sqlite3FileControlHint(). (check-in: 722735a4f3 user: drh tags: trunk)
17:28
Avoid passing strings with a single nul-terminator (two are required) to the VFS xOpen() method from within the code that checks to see if a master-journal file may be safely deleted. (check-in: 2544f233f1 user: dan tags: trunk)
16:56
Add function sqlite3OsFileControlNoFail(), which is the same as sqlite3OsFileControl() except that it does not simulate OOM errors. This saves adding calls to the BenignMalloc() functions around each of the invocations of sqliteOsFileControl() that ignore the return code. (check-in: af59b182d7 user: dan tags: trunk)
16:40
Check the return code from sqlite3OsFileControl() in sqlite3BtreeCopyFile() and report any errors that it generates. (check-in: 7f852ac643 user: drh tags: trunk)
00:24
Remove the BenignMalloc() from around the call to FCNTL_OVERWRITE. Add new ones around sqlite3OsDelete(). Fix an assert that causes problems for the nx-devkit. (check-in: 38bc4236d5 user: drh tags: trunk)
2012-01-09
14:57
Cherry-pick the fix to surplus overflow files in the multiplexor, check-in [1238619756c0c] in the trunk. (check-in: 2f8c62c337 user: drh tags: nx-devkit)
14:19
Cosmetic changes to lemon. No changes to core functionality nor impact on SQLite. (check-in: 393fc78a18 user: drh tags: trunk)
13:41
Make sure the multiplexor does not create unnecessary overflow files. (check-in: 1238619756 user: drh tags: trunk)
11:37
Have test_multiplex.c add a second nul-terminator byte to the strings that it passes to the xOpen method of the underlying VFS, in case that VFS passes the string to sqlite3_uri_parameter() or similar. (check-in: 12f5b8c9c9 user: dan tags: trunk)
2012-01-08
22:18
Fix typos in commands. Combine the ExpandBlob and expandBlob macros into one. (check-in: fc9179e154 user: drh tags: trunk)
12:32
Make sure the shared-memory filename sythesized by os_win.c is double-zero terminated, so that it can be used with sqlite3_uri_parameter(). (check-in: 429380f99c user: drh tags: trunk)
00:54
Fix harmless compiler warning seen with MSVC. (check-in: 9612bcd648 user: mistachkin tags: trunk)
2012-01-07
15:17
Fix a bug in lemon in computation of which non-terminals can generate an empty string. This bug and the fix make absolutely no difference for the grammar used by SQLite, but it can make a difference when lemon is used in other grammars. (check-in: ce32775b23 user: drh tags: trunk)
2012-01-06
13:58
Add missing finish_test to the end of the zerodamage.test module. Disable the zerodamage module if virtual tables are omitted from the build. (check-in: d2a5685b5e user: drh tags: trunk)
2012-01-05
23:32
Combine various boolean variables in the BtShared structure into a single boolean vector. Also make performance improvement simplifications to sqlite3BtreeMovetoUnpacked(). (check-in: 119493318e user: drh tags: trunk)
21:19
Make sure the name of the shared memory file has two zero-terminators in the UNIX VFS, so that sqlite3_uri_parameter() will work correctly on that name. (check-in: 3d088ba5e3 user: drh tags: trunk)
18:33
Fix an incorrect assert() on the sqlite3FileSuffix3() function. (check-in: 24db54bd49 user: drh tags: trunk)
16:07
Change the unix VFS so that it ignores all but the least-significant bit of the syncDir flag to xDelete. Add an assert to prove that the core only ever uses that one bit. (check-in: e75fd3b274 user: drh tags: trunk)
13:02
Merge all of the latest trunk changes into the sessions branch. (check-in: a9bcb432f5 user: drh tags: sessions)
12:38
Ensure 8-byte alignment of Index.aiRowEst elements even if the size of an Index object is not a multiple of 8 bytes. (check-in: 1378f905d3 user: drh tags: trunk)
11:43
Remove the SQLITE_FCNTL_SYNC_OMITTED cases from the unix and windows VFSes as they are no longer needed because of check-in [fd3822f1f2]. (check-in: 7cf568a101 user: drh tags: trunk)
2012-01-04
12:57
Fix typos and comments and make minor changes to a few function names, as suggested by readership. (check-in: e9d05cbb76 user: drh tags: trunk)
2012-01-03
21:54
Pull all the latest trunk changes over into the apple-osx branch. (check-in: 8a048423f0 user: drh tags: apple-osx)
21:33
Experimental changes to prevent buffer overreads when parsing a corrupt database file. (Closed-Leaf check-in: 9e5add51ee user: drh tags: no-overread)
14:50
Make sure filenames passed into sqlite3OsOpen() always have the extra zero-terminators needed by sqlite3_uri_parameter(). (check-in: d73e93cfdc user: drh tags: trunk)
2012-01-02
18:20
Remove the code that attempts to find the sector size from the OS and hardcode the xSectorSize methods of the unix and windows VFSes to return SQLITE_DEFAULT_SECTOR_SIZE, which is now set to 4096 unless overridden. (check-in: 03d8362cd2 user: drh tags: trunk)
18:00
Change page quantities in pcache1.c to unsigned. (check-in: da52e6e8b4 user: drh tags: trunk)
16:38
Remove an incorrect assert() in btree.c. (check-in: c1691d998a user: drh tags: trunk)
15:45
Make sure large negative arguments to PRAGMA cache_size do not cause 32-bit signed integer overflow. Also correct a requirements mark. (check-in: 17c30634a7 user: drh tags: trunk)
14:50
Have SQLITE_FCNTL_SYNC_OMITTED use the normal method of returning an error code. (check-in: fd3822f1f2 user: dan tags: trunk)
12:41
Fix the build so that it works when SQLITE_ENABLE_8_3_NAMES=1. (check-in: d9761f15a1 user: drh tags: trunk)
2012-01-01
13:58
Tweaks to improve testability. (check-in: e3a929e431 user: drh tags: trunk)
2011-12-31
21:51
Fix typos in comments. No changes to code. (check-in: 6827338ecb user: drh tags: trunk)
10:18
Add calls to the BenignMalloc() functions around the SQLITE_FCNTL_OVERWRITE call in backup.c. (check-in: 3e0833dbb7 user: dan tags: trunk)
2011-12-30
18:16
Add calls to the BenignMalloc() functions around the SQLITE_FCNTL_SIZE_HINT call in pager.c. (check-in: c17a3f5e5d user: dan tags: trunk)
16:16
Fix a typo in the documentation for PCACHE2. No changes to code. (check-in: 46e7903ab9 user: drh tags: trunk)
16:09
Change dbstatus.test to account for the fact that the value reported by DBSTATUS_SCHEMA_USED may be slightly lower than the actual memory used on osx (check-in: 6f2010c862 user: dan tags: trunk)
16:07
Fix up requirements marks for syntax diagrams to reflect the new and improved GIF renderings. (check-in: 1bb23a3b52 user: drh tags: trunk)
15:17
Update the text of requirements associated with sqlite3_pcache_methods2. Update requirements marks embedded in code. All of the above are comment changes only; there are no changes to code in this check-in. (check-in: f945c41a72 user: drh tags: trunk)
11:43
Hold the database handle mutex for the duration of sqlite3_db_release_memory(). (check-in: eeaf298800 user: dan tags: trunk)
10:54
Minor changes to fix compilation with SQLITE_OMIT_WAL and SQLITE_OMIT_WSD defined. (check-in: 26a513a8d2 user: dan tags: trunk)
09:00
Change an implicit i64-to-int cast in pager.c to an explicit cast. (check-in: 6a71ba9ce9 user: dan tags: trunk)
05:08
Fix some typos in comments. No code changes. (check-in: 4edc5994b2 user: dan tags: trunk)
2011-12-23
20:49
Documentation updates. No changes to code. (check-in: a8a1a639fe user: drh tags: trunk)
13:32
Avoid excess syncs when padding a transaction in a WAL. (check-in: 1f24ae716d user: drh tags: trunk)
11:07
Fix a problem with [f9c4a7c8f4] as applied to this branch. (Leaf check-in: e6a04bf9f1 user: dan tags: branch-3.7.6)
02:07
Merge the POWERSAFE_OVERWRITE features and the use of statvfs() from the statvfs branch into trunk. (check-in: 2370d70eb5 user: drh tags: trunk)
01:04
Change the name ZERO_DAMAGE to the more descriptive POWERSAFE_OVERWRITE. The query parameter used to control this device characteristic is now "psow". (Closed-Leaf check-in: 6191c5e451 user: drh tags: statvfs)
00:25
Merge the latest trunk changes into the statvfs branch. (check-in: d5e36327c1 user: drh tags: statvfs)
00:07
Add interfaces sqlite3_uri_boolean() and sqlite3_uri_int64() which are wrappers around sqlite3_uri_parameter() combined with internal routines for converting strings to booleans and 64-bit integers. (check-in: 83d26b9a91 user: drh tags: trunk)
2011-12-22
18:44
Backport the fixes for Coverity-discovered problems in [1c27d84216], [676acce274], and [f9c4a7c8f4] from trunk to the 3.7.6 branch. (check-in: a61786e760 user: drh tags: branch-3.7.6)
17:31
Fix minor issues with FTS and RTREE discovered by coverity. (check-in: 1c27d84216 user: drh tags: trunk)
17:10
Check the return code from sqlite3_initialize() called from within sqlite3_soft_heap_limit64() and return an error from sqlite3_soft_heap_limit64() if sqlite3_initialize() fails. (check-in: 676acce274 user: drh tags: trunk)
15:30
Fix a problem in fts3_write.c causing stack memory to be referenced after it is out of scope. (check-in: f9c4a7c8f4 user: dan tags: trunk)
02:10
Merge recent trunk changes into the statvfs branch. (check-in: 995ec8a41a user: drh tags: statvfs)
01:46
Remove a redundant assignment operator. (check-in: 19a6852a1e user: drh tags: statvfs)
2011-12-21
23:38
Cherry-pick the SQLITE_DIRECT_OVERFLOW_READ fix for ticket [ac0ff496b7e] of changes [c5256b59ad] and [c723e3e18a] into the nx-devkit branch. (check-in: 42f31f190a user: drh tags: nx-devkit)
18:04
Fix other problems where 32-bit integer overflow may cause a problem. Two that require an improbably large sub-journal and two in test harness code. Ticket [ac0ff496b7e2] (check-in: c723e3e18a user: dan tags: trunk)
17:00
Avoid 32-bit overflow when calculating the byte offset of an overflow page in SQLITE_DIRECT_OVERFLOW_READ code. Fix for [ac0ff496b7]. (check-in: c5256b59ad user: dan tags: trunk)
14:42
Add the ability to enable or disable SQLITE_IOCAP_ZERO_DAMAGE using a URI parameter for both unix and windows. Add a file-control to query or disable the ZERO_DAMAGE setting. Add the -uri option to the "sqlite3" TCL command in tclsqlite3.c. Allow the sqlite3_uri_parameter() interface to accept a NULL pointer for its first parameter. (check-in: c83627b732 user: drh tags: statvfs)
2011-12-20
22:18
Remove the code that tries to detect OOO header writes on a WAL recovery. The code is made obsolete by syncing the WAL header. (check-in: 7ac713a14e user: drh tags: statvfs)
20:13
Refactor the sqlite3WalFrames() routine for clarity of presentation. Do the padded transaction sync as the write pointer crosses the final sector boundary instead of at the end, for efficiency. Always sync the WAL header immediately after it is written. (check-in: 92c73b421b user: drh tags: statvfs)
13:13
Assert that the isCommit parameter to sqlite3WalFrames() is zero if and only if the nTruncate parameter is zero. (check-in: 979daf92e0 user: drh tags: trunk)
2011-12-19
15:46
Add test for WAL mode to unixexcl.test. (check-in: 4d518bd480 user: dan tags: trunk)
11:57
Merge [21b76af6ed] into statvfs branch. (check-in: e694f7b166 user: dan tags: statvfs)
11:16
Fix a couple of test cases to account for the master-journal name related change in [cf3bccc2]. (check-in: 21b76af6ed user: dan tags: trunk)
10:07
Modify test cases to account for the ZERO_DAMAGE change. (check-in: 68684495f1 user: dan tags: statvfs)
00:31
Some fixes to the test suite so that it works with ZERO_DAMAGE set to true. Still lots more problems remain. (check-in: 41891b231e user: drh tags: statvfs)
2011-12-17
20:02
For improved clarity of presentation, refactor some of the code associated with ZERO_DAMAGE and sector-size. (check-in: 1dde96c9ee user: drh tags: statvfs)
19:49
Add SQLITE_IOCAP_ZERO_DAMAGE and enable it for both unix and windows. Use this device characteristic to reduce the required work in journaling. A side effect is that this changes the default page exists back to 1024 even with the use of statvfs(). (check-in: a0be6ea464 user: drh tags: statvfs)
16:25
Fix a bad #endif with the previous check-in on this branch. (check-in: 915713ffe4 user: drh tags: statvfs)
16:09
Add support for statvfs() in os_unix.c, for determining the sector size. This causes many TCL test failures under Linux. (check-in: e0d44450b9 user: drh tags: statvfs)
13:45
Merge in changes that cause the first sector of the WAL file to be synced when the WAL restarts. This is a fix for the power-loss corruption problem described in ticket [ff5be73dee086] (check-in: 44ca4d1233 user: drh tags: trunk)
08:10
Add tests to walcrash3.test. (check-in: d768804280 user: dan tags: trunk)
01:31
Make sure the Salt-1 value in the WAL file is sequentially numbered at each checkpoint, as it says it should be in the documentation. (check-in: 7b63b11b93 user: drh tags: trunk)
2011-12-16
21:26
Enhance the WAL header sync so that it honors the various synchronous pragmas, settings, and device characteristics. (Closed-Leaf check-in: 9799241f7d user: drh tags: wal-header-sync)
19:34
Proposed changes that ensure that the WAL header is written prior to the first commit mark. (check-in: 91d0437c07 user: drh tags: wal-header-sync)
17:01
Add code for a test that was failing before the persistent-wal related changes of [09ccc4a1be]. (check-in: 49d21ce50f user: dan tags: trunk)
15:38
Merge the fix for [a1fa75cbdd02] from the experimental branch. Also fix the persistent-wal mode feature of truncating the WAL on close so that it always truncates the WAL to zero bytes. (check-in: 09ccc4a1be user: drh tags: trunk)
15:11
Improved logging of master-journal name conflicts. (check-in: b1005ef46c user: drh tags: trunk)
13:42
Merge the nx-devkit changes into trunk. (check-in: cf3bccc2e9 user: drh tags: trunk)
13:24
Experimental fix for [a1fa75cbdd]. (Closed-Leaf check-in: 6492af76ea user: dan tags: experimental)
05:50
Tweaks to the way multiplexSubOpen() works, for backwards compatibility. (check-in: bb40338887 user: drh tags: nx-devkit)
05:09
Fix a potential infinite loop (inserted by the previous check-in) on the multiplexWrite() method of the multiplexor. (check-in: 022bf427c2 user: drh tags: nx-devkit)
04:57
The xTruncate method for the multiplexor now changes surplus overflow files to zero-length by default. Or if the "truncate" query parameter is used, it actually deletes the surplus overflow files. This allows VACUUM to shrink the database again. (check-in: 5aefef04d6 user: drh tags: nx-devkit)
01:30
Call sqlite3_log() with an appropriate message if unable to find a unique master-journal filename. (check-in: e9177f7d4e user: drh tags: nx-devkit)
01:21
A better solution to being unable to find a unique master-journal filename: just delete an existing master-journal and reuse it. (check-in: 2685c2b949 user: drh tags: nx-devkit)
00:33
Make sure the antipenultimate character of master-journal filenames is a "9" in order to avoid collisions with other files in 8+3 filename mode. Also, limit the number of attempts at finding a unique master-journal filename. (check-in: 34a0483605 user: drh tags: nx-devkit)
2011-12-15
17:44
Add stdio support to the quota VFS. (check-in: 322bd15f97 user: drh tags: trunk)
17:42
Use _commit() rather than FlushFileBuffers() as a substitute for fsync() on windows. Also cast for C++ and add support for SQLITE_FCNTL_VFSNAME. (Closed-Leaf check-in: e85cfe9a17 user: drh tags: quota-stdio)
17:00
When deleting a file with the multiplexor VFS, also delete any overflow files that exist. (check-in: 3af1feaa35 user: dan tags: nx-devkit)
13:29
Make sure the chunksize in test_multiplex does not cause the pending byte to fall near the end of a chunk. Adjust the chunksize upward as necessary to prevent this. (check-in: e05f8a2998 user: drh tags: nx-devkit)
11:45
Fix some problems with dropped error codes in multiplexOpen(). (check-in: 2d50f78188 user: dan tags: nx-devkit)
02:22
In the multiplexor, do not try to delete overflow files that do not exist. And assume all but the last overflow file is the size of the chunk size. (check-in: a822a80d3c user: drh tags: nx-devkit)
2011-12-14
18:33
Merge the nx-devkit changes into trunk. This includes the new SQLITE_FCNTL_VFSNAME file-control. (check-in: da118e02c0 user: drh tags: trunk)
18:28
Merge the VFSNAME file-control addition into the nx-devkit branch. (check-in: 08c1dc517c user: drh tags: nx-devkit)
17:53
Add a file-control that will discover the name of the bottom-level VFS and all the shims in between. (Closed-Leaf check-in: cdbfb553af user: drh tags: vfsname-filectrl)
01:38
Improvements to comments. No code changes. (check-in: 08bbbd8e38 user: drh tags: nx-devkit)
00:37
Treat a zero return value from the Win32 APIs MultiByteToWideChar and WideCharToMultiByte as an error condition. (check-in: c65e5a36f1 user: mistachkin tags: trunk)
00:04
Harden the utf8-to-mbcs converter in the quota module against failures. (check-in: 1cda511deb user: drh tags: quota-stdio)
2011-12-13
23:26
Enhancements to test_quota.c: Remove the external dependency on sqlite3_win32_utf8_to_msbc(). Add an extra parameter to quota_fflush() that will also do an fsync (or the equivalent). (check-in: 92f4188f90 user: drh tags: quota-stdio)
19:03
Add a hard limit to the number of chunks a multiplexed database may consist of if ENABLE_8_3_NAMES is defined. (check-in: 43a1264088 user: dan tags: nx-devkit)
18:22
Change the SQLITE_EXTRA_INIT routine to take a single argument which is a pointer to a string. Call SQLITE_EXTRA_INIT with a NULL argument. Fixes to multiplexor to treat the VFS properly in corner cases. Fix the initialization of multiplex3.test. (check-in: 8e65b91325 user: drh tags: nx-devkit)
16:40
Add extra tests for the multiplexor VFS. No changes to code. (check-in: c7de6f683d user: dan tags: nx-devkit)
15:37
Merge the nx-devkit changes into trunk. (check-in: 03a70c3dae user: drh tags: trunk)
15:25
Update the multiplex.test script to conform to that found in the "experimental" branch off of trunk. (check-in: 2eb79efbff user: drh tags: nx-devkit)
15:02
Move the multiplexor changes in the experimental branch (check-ins [255d21499b] and [199f52bced]) into the nx-devkit branch. (check-in: eb95d2f72c user: drh tags: nx-devkit)
12:10
This branch merged with nx-devkit and from there into trunk. Was: In the multiplexor, instead of generating a unique file-name when SQLite opens a temp file, allow the underlying VFS to generate a different temp file for each chunk. Given the changes to the xFileSize method, it is no longer necessary for the different chunks of a temp file to use the same base name. (Closed-Leaf check-in: 199f52bced user: dan tags: experimental)
11:15
Change the way IO errors are handled in the xFileSize method of the multiplexor VFS. Add test file multiplex3.test. (check-in: 255d21499b user: dan tags: experimental)
04:08
When an sqlite3_auto_extension() function fails, report back its actual error code, not the generic SQLITE_ERROR. (check-in: ce55f250f5 user: drh tags: nx-devkit)
02:41
When the multiplexor FileSize procedure fails to open the file, assume that the file is zero bytes in size. (check-in: dc8118cd89 user: drh tags: nx-devkit)
01:34
Add a compile-time shutdown procedure to be called by sqlite3_shutdown() to undo the effects of the compile-time initialization procedure. (check-in: c2ed86f594 user: drh tags: nx-devkit)
2011-12-12
20:01
Backport a minimal set of changes needed to get 8+3 filenames and the multiplexor shim playing well together. (check-in: c4e2ce4862 user: drh tags: nx-devkit)
19:48
Fix os_unix.c so that, unless 8.3 filenames are actually in use, journal and wal file permissions are assigned correctly even if SQLITE_ENABLE_8_3_NAMES is defined. (check-in: 169e12295c user: dan tags: trunk)
19:47
Make sure the quota logic is usable as C++. (check-in: f4534bd302 user: drh tags: quota-stdio)
18:55
Change the multiplexor VFS so that xTruncate is a no-op on database files. (check-in: ee1e012256 user: dan tags: trunk)
18:21
Fix for the xFileSize method of test_multiplex.c when used on a file opened with the DELETEONCLOSE flag set. (check-in: 713071c493 user: dan tags: trunk)
16:51
Add magic comments to shell.c to make it easier for scripts to insert additional version information displays for custom builds. (check-in: 9b2691aa91 user: drh tags: trunk)
2011-12-11
22:44
In the multiplexor shim, when using 8+3 filenames, begin numbering journal overflow files with 101 instead of 001 to avoid name collisions with the main database file. (check-in: 05bf8a0b17 user: drh tags: trunk)
21:51
Update comments describing the flattening optimization in select.c. (check-in: dab4c137a8 user: drh tags: trunk)
02:30
Fix STAT3 so that it works with the new uninitialized register logic of the VDBE. Ticket [7bbfb7d4422ff] (check-in: d11a57985c user: drh tags: trunk)
02:29
Fix harmless compiler warnings. (check-in: 1e6a698aab user: drh tags: trunk)
2011-12-10
23:18
Minor cleanups of the compound-subquery flattening logic. New test cases added for joins the compound subquery. (check-in: 5061d85ff9 user: drh tags: trunk)
17:17
Allow UNION ALL compounds to be promoted up to replace a simple wrapper SELECT even if the compounds are joins. (check-in: 3d4b4f4fb7 user: drh tags: trunk)
15:55
Import the experimental parse-tree explainer, with fixes, from the tree-explain branch. Disabled by default. Use SQLITE_ENABLE_TREE_EXPLAIN to turn it on. (check-in: bcbc7152d4 user: drh tags: trunk)
14:44
Merge the latest trunk changes into tree-explain branch. (Closed-Leaf check-in: 1a360da0f8 user: drh tags: tree-explain)
13:49
Always use _msize() to get memory allocation sizes on windows, without having to do anything special in the makefile. (check-in: 256e27bd11 user: drh tags: trunk)
2011-12-09
18:06
Change the VDBE so that all registers are initialized to "Invalid" instead of NULL and report errors on any attempted read of an Invalid register. This will help prevent future bugs similar to [7bbfb7d442]. (check-in: 0064bab771 user: drh tags: trunk)
17:51
Remove an unnecessary condition. (Closed-Leaf check-in: d9ba023c60 user: drh tags: uninit-vdbe-mem)
17:38
Remove an unnecessary initialization of Vdbe.aOnceFlag. (check-in: 421714dad3 user: drh tags: uninit-vdbe-mem)
17:27
Take out the OP_JumpOnce opcode. Revert compound SELECT to use OP_IfNot, which is the correct behavior. Mark trigger registers as initially invalid. (check-in: 6a9fb47d50 user: drh tags: uninit-vdbe-mem)
16:59
Previous check-in broke auto-increment. This check-in appears to fix it. (check-in: 28ffd39c71 user: drh tags: uninit-vdbe-mem)
16:21
Make no assumptions about the initial state of VDBE registers. (check-in: 521d72bdf6 user: drh tags: uninit-vdbe-mem)
13:24
Modify the OP_Once opcode so that it works correctly in trigger sub-programs. This is a candidate fix for [7bbfb7d442]. (check-in: 557c69055a user: dan tags: trunk)
05:52
The Windows OS flavor #ifdefs must be performed after the 'windows.h' file has been included. (check-in: 3702a31e56 user: mistachkin tags: trunk)
2011-12-08
21:08
Merge the latest trunk changes into the apple-osx branch. (check-in: 59e0d4f3d9 user: drh tags: apple-osx)
20:41
Hand merge the zone allocator for MacOS from the apple-osx branch. (check-in: 0d955c20c0 user: drh tags: trunk)
19:50
In persistent WAL mode, truncate the WAL file to the size specified by the journal_size_limit pragma when disconnecting from the WAL. (check-in: 9687b305c2 user: drh tags: trunk)
03:51
Follow the previously established pattern for detecting preprocessor defines for specific flavors of Windows (for NT in this case). (check-in: a0d92193dd user: mistachkin tags: trunk)
2011-12-07
22:49
Additional detail added to the tree-explain output for SELECT statements. (check-in: 7b457ea455 user: drh tags: tree-explain)
15:33
More compact notation for the parse-tree view. (check-in: 0eb3f8b1e3 user: drh tags: tree-explain)
01:55
Cherrypick the [7e5b56b1c6] fix for the sqlite3SelectDup() routine into trunk. (check-in: 7fc535090c user: drh tags: trunk)
01:47
Bug fix in sqlite3SelectDup(). Make sure the pNext pointer is valid. (check-in: 7e5b56b1c6 user: drh tags: tree-explain)
01:23
Improvements to the data-structure explain subsystem. Most queries now give a reasonably detailed graph of their parse tree. (check-in: 0aa7d3d234 user: drh tags: tree-explain)
2011-12-06
19:44
Begin adding the data-structure explaining subsystem. All is contained within (check-in: 79ae51c5b1 user: drh tags: tree-explain)
13:46
Add file tkt-3a77c9714e.test, containing tests to verify that the problem documented by ticket [3a77c9714e] has been fixed. (check-in: 162421dadf user: dan tags: trunk)
13:24
Do not reuse temp registers originally allocated to a subroutine within the main body of the program logic, since if the subroutine is called while the reused temp registers are in use, their values will get clobbered. Candidate fix for ticket [3a77c9714e63330] (check-in: 092d53315e user: drh tags: trunk)
00:47
Merge the winGetLastError fixes into trunk. (check-in: 5b03ba9db0 user: drh tags: trunk)
2011-12-03
00:13
Add the sqlite3_quota_fflush() interface. Enhance sqlite3_quota_remove() so that it can remove entire directories. (check-in: abcb65af4c user: drh tags: quota-stdio)
2011-12-02
15:31
One minor documentation enhancement. (check-in: 8cfd3575c8 user: drh tags: quota-stdio)
15:27
Documentation improvements and additional test cases. (check-in: fa71896089 user: drh tags: quota-stdio)
2011-12-01
22:12
Run quota-stdio tests in binary mode so that they work on windows. (check-in: 71e4e97d9c user: drh tags: quota-stdio)
22:07
Progress toward getting things to work better on windows. (check-in: 253dd7072e user: drh tags: quota-stdio)
20:48
Add test logic and some test cases. (check-in: a4730586cc user: drh tags: quota-stdio)
18:44
Add stdio-like I/O interfaces to the test_quota VFS. This is a prototype change for discussion and is mostly untested. This is an alternative to adding stdio-like I/O interfaces in the core. There is no guarantee that this code will make it into the trunk. If it does get to trunk, there could be many changes to the interface first. (check-in: bd3ce723f1 user: drh tags: quota-stdio)
02:32
Add a prototype implementation of stdio-like routines for accessing the VFS. This is intended as documentation. The code is untested. There is no guarantee that any of this will ever make it into trunk. Substantial revision is possible prior to reaching trunk, if it ever does. (Closed-Leaf check-in: 8936542b22 user: drh tags: vfs-stdio)
2011-11-29
15:40
Remove unused fields from the Parse object. Documentation and formatting improvements on data structure definitions. (check-in: 431556cac0 user: drh tags: trunk)
15:04
Remove unused boolean fields from the UnpackedRecord object. (check-in: b10d091ec0 user: drh tags: trunk)
14:46
Removed the unused "type" field from the CollSeq (collating sequence) object. (check-in: ab89b047e8 user: drh tags: trunk)
2011-11-25
21:51
Update the version number to 3.7.10. (check-in: ed0151ba83 user: drh tags: trunk)
17:51
Fix a typo in the documentation for sqlite3_stmt_busy(). (check-in: 7812626d1d user: drh tags: trunk)
17:21
Add the sqlite3_stmt_busy() interface. (check-in: 95cc4af686 user: drh tags: trunk)
2011-11-21
00:54
Cleanup the semantics surrounding use of the GetLastError function on Windows. (Closed-Leaf check-in: 7e657bbb80 user: mistachkin tags: winGetLastError)
2011-11-18
13:10
Change the multiplexor to use a 3-digit suffix. (check-in: 0b7edc4475 user: drh tags: trunk)
2011-11-17
11:49
Improvements to the documentation of the sqlite3_db_filename() interface. (check-in: 1c45b2a0c0 user: drh tags: trunk)
11:43
Restore the test for sqlite3OsFullPathname() failure that was mistakenly removed when [ceee03c79a] was backed out by [69ec53fc1c]. (check-in: 4d3cf9e1d8 user: drh tags: trunk)
00:56
Add the sqlite3_db_filename() interface. (check-in: 93a947989b user: drh tags: trunk)
2011-11-16
23:29
Back out the [ceee03c79a] change. (check-in: 69ec53fc1c user: drh tags: trunk)
19:29
Add the sqlite3_db_release_memory() interface and the shrink_memory pragma. (check-in: 3f58e7c889 user: drh tags: trunk)
18:08
Merge the PCACHE2 changes into trunk. (check-in: 457513f21f user: drh tags: trunk)
17:32
Change the multiplexor suffix from 2 to 3 digits. (Closed-Leaf check-in: 06e0cdaf91 user: drh tags: 3-digit-multiplex-suffix)
16:23
Remove code made obsolete by the changes to index processing that allow range search on the rowid. (check-in: a5418c7fc2 user: drh tags: trunk)
15:41
Fix an invalid assert() statement added by [3b58f5f066]. (check-in: 888b09dd8f user: dan tags: trunk)
15:27
Where possible, take advantage of the rowid at the end of index records to optimize range constraints (<, >, <=, >=) on the rowid column. (check-in: 3b58f5f066 user: dan tags: trunk)
08:18
Update memsubsys1.test to account for the recently increased size of the MemPage structure in btreeInt.h. (check-in: 4fb3ca756a user: dan tags: trunk)
2011-11-14
12:34
Further work on mmap(). Still does not work right - autovacuum tests are the first to fail. (Closed-Leaf check-in: 638a39bbaa user: drh tags: mmap-experimental)
03:00
Forward port the 8-byte alignment fix from branch-3.7.9. (check-in: ebf6eb6ed7 user: drh tags: trunk)
02:53
Fix a 8-byte alignment problem that causes a SIGBUS on Sparc. (check-in: 54cc119811 user: drh tags: branch-3.7.9)
01:55
Begin making experimental changes to use mmap() for reading content from a database. The code compiles, but crashes on the test suite. (check-in: 09be42d5fa user: drh tags: mmap-experimental)
2011-11-13
21:44
Add a version number to the sqlite3_pcache_methods2 object. Other PCACHE2 documentation improvements. (Closed-Leaf check-in: 9f839ac05a user: drh tags: experimental-pcache)
2011-11-12
23:10
Attempt to modify btree.c so that it assumes that calls to sqlite3PagerWrite() will reallocate the page buffer. As there is not good way to test this assumption yet, probably a few spots were missed. (check-in: ceee03c79a user: drh tags: experimental-pcache)
16:46
Remove a couple of incorrect assert statements so that the test suite will run with -DSQLITE_DEFAULT_CACHE_SIZE=0. (check-in: 87614b62ac user: drh tags: trunk)
15:41
Merge the windows xSyscall enhancements into trunk. (check-in: c1fab9aca1 user: drh tags: trunk)
03:17
Make sure to flag benign malloc failures in the Windows VFS as such. Expand use of the DO_OS_MALLOC_TEST to cover the VFS functions that can now return an out of memory error. Support an experimental --match option to the test suite that will run only those tests matching the specified pattern. (Closed-Leaf check-in: 76dec8aa9d user: mistachkin tags: winSyscall)
2011-11-11
23:51
Catch and report errors from sqlite3OsFullPathname(). (check-in: 77119785c8 user: drh tags: trunk)
23:31
Remove use of malloc and free from the Windows VFS. Also, prevent sqlite3BtreeOpen from assuming that sqlite3OsFullPathname cannot fail. (check-in: 8966ec1797 user: mistachkin tags: winSyscall)
22:08
Work in progress to implement the 'syscall' functionality for Windows. (check-in: ed88fb0024 user: mistachkin tags: winSyscall)
14:12
Pull over all the latest changes from trunk. (check-in: 1bbbf8574a user: drh tags: experimental-pcache)
00:27
Make sure a corrupt index does not cause a buffer overread in sqlite3VdbeRecordCompare(). (check-in: 471cf0d8e7 user: drh tags: trunk)
2011-11-10
21:45
Expand passing of a last error argument to the getLastErrorMsg function. Also, remove unused SQLITE_W32_THREADS define. (check-in: 8f28797984 user: mistachkin tags: trunk)
20:21
In winAccess, save the Win32 last error value prior to invoking user logging callback. Also, explicitly pass the Win32 last error value to winLogError in order to keep it accurate. Fixes a problem reported on the mailing list. (check-in: 32ab365715 user: mistachkin tags: trunk)
02:39
Follow-on to the previous check-in to prevent a division by zero if the lookahead slot size is something goofy like 6 on a 32-bit machine. (check-in: 6bda711f93 user: drh tags: experimental-pcache)
02:24
Use sqlite3MallocSize() to get the actual size of the memory allocation used for lookaside cache and increase the size of the cache to use the full allocation. (check-in: 0e53ecad94 user: drh tags: experimental-pcache)
2011-11-09
18:07
Omit an unnecessary Sleep() call in windows pending-lock retry logic. Enhance the comment on that logic to discourage people from copying it into other VFSes. (check-in: 0c951a9704 user: drh tags: trunk)
17:01
When compiling with MSVC, use the _msize function. (check-in: 797a147934 user: mistachkin tags: experimental-pcache)
16:12
Minor changes needed to restore full branch test coverage. (check-in: bc10a75357 user: drh tags: experimental-pcache)
14:23
A negative value N for the cache_size pragma adjusts the number of cache pages to use approximately N kibibytes of memory. (check-in: b3faa680ae user: drh tags: experimental-pcache)
01:53
For the mem1.c system malloc implementation, use the malloc_usable_size() function if the HAVE_MALLOC_USABLE_SIZE macro is defined. Update autoconf to look for that function when configuring. (check-in: 2e8ab3cedf user: drh tags: experimental-pcache)
00:06
Update the API documentation for the new pcache2 interface. Change the order of parameters on the xCreate method of pcache2. (check-in: 4da7095683 user: drh tags: experimental-pcache)
2011-11-08
20:08
Experimental change to the pcache interface to allow page buffers to be allocated separately from their associated container structures. (check-in: c275c9d323 user: dan tags: experimental-pcache)
15:06
Cherrypick the [5dbfaed8c3] patch so that SQLITE_OMIT_WAL works again. (Closed-Leaf check-in: a499ae3835 user: drh tags: omit-wal-fix)
2011-11-07
18:16
Make the unix VFS tolerant of read() calls that return less than the requested number of bytes. (check-in: a210695abc user: drh tags: trunk)
17:54
Amplify the restriction on commit-hooks that they cannot recursively run SQL on the same database connection. (check-in: 4fe5b73115 user: drh tags: trunk)
16:46
Add a makefile target for tclsqlite3.c to Makefile.in. (check-in: f521b6b7e4 user: drh tags: trunk)
13:05
Change the default file format from 1 to 4. This means that, unless PRAGMA legacy_file_format=ON is used first, new databases will not be readable by versions prior to 3.3.0 (2006-01-10). (check-in: a35f52b1ad user: drh tags: trunk)
2011-11-06
05:06
Move function sqlite3PagerClearCache() out of the "ifndef SQLITE_OMIT_WAL" block and into an "ifndef SQLITE_OMIT_VACUUM" block. (check-in: 5dbfaed8c3 user: dan tags: trunk)
2011-11-04
14:36
Update the xfer optimization code so that the xfer optimization can be used with INTEGER PRIMARY KEY ON CONFLICT ... as long as the destination table is initially empty. Improvements to the comments on the xfer optimization. New test cases added. (check-in: e3f368cd5e user: drh tags: trunk)
12:05
Change a memcpy() in sqlite3FileSuffix() to memmove() on the grounds that the source and destination may overlap. (check-in: 5e1d247e5b user: dan tags: trunk)
10:37
Add a missing va_end() macro to fts3.c. (check-in: e6f825748a user: dan tags: trunk)
02:24
Use mkdir() and rmdir() rather than open() and unlink() to create the lock files with the unix-dotlock VFS. The change is backwards compatible and, we are told, works better on some network filesystems. (check-in: e2f08426d7 user: drh tags: trunk)
00:35
Enhance the shell so that the ".schema" command works with case insensitive LIKE patterns even with PRAGMA cache_sensitive_like=ON. (check-in: b06bf3b360 user: drh tags: trunk)
00:23
Make sure the INSERT INTO ... SELECT statement works correctly even when the destination table contains an INTEGER PRIMARY KEY ON CONFLICT... column. Ticket [676bc02b87176125]. (check-in: 6f9898db7f user: drh tags: trunk)
2011-11-01
15:45
If the read() system call in unix returns fewer bytes than expected, retry it until it either returns zero or an error. (Closed-Leaf check-in: 7225663477 user: drh tags: retry-short-reads)
00:52
Version 3.7.9 (check-in: c7c6050ef0 user: drh tags: trunk, release, version-3.7.9)
2011-10-31
19:59
Fix a problem with sqlite3_backup_step() that resulted from a faulty merge. (check-in: dacdec78d0 user: drh tags: apple-osx)
19:34
Fix the os_unix.c source file so that it will build as part of an amalgamation on non-apple platforms. (check-in: b2f7639c8f user: drh tags: apple-osx)
14:42
Pull the latest trunk changes into the apple-osx branch. (check-in: 4fa9ee7947 user: drh tags: apple-osx)
14:34
Merge in all changes found in the version 3.7.9 release candidate. (check-in: 23580718e1 user: drh tags: sessions)
12:25
Fix a typo in a comment. No code changes. (check-in: 6635cd9a77 user: drh tags: trunk)
11:36
Add new file ext/fts3/README.content, describing the experimental FTS4 content option. (check-in: 13a9d085e1 user: dan tags: trunk)
06:52
Update fts3fault.test to account for the sqlite3_errmsg() related changes in [8f88cc4e61] and [dcb7879347]. (check-in: 3f2d49c678 user: dan tags: trunk)
2011-10-29
19:25
Update fkey_malloc.test to account for the sqlite3_errmsg() related changes in [8f88cc4e61] and [dcb7879347]. (check-in: 5b82ec6fbb user: dan tags: trunk)
15:29
Add a test for [48f29963] that does not depend on FTS. (check-in: fb15f5458e user: dan tags: trunk)
12:42
Fix some code formatting in sqlite3Ext.h to avoid lines longer than 80 characters. (check-in: 3ec20c3020 user: drh tags: trunk)
11:43
Avoid attempting to call savepoint related methods on deleted sqlite3_vtab objects. Fix for [48f299634a]. (check-in: 3565fcf898 user: dan tags: trunk)
01:33
Avoid reporting a NOMEM error if a memory allocation fails while copying the error message from a prepared statement into the database connection. (check-in: dcb7879347 user: drh tags: trunk)
2011-10-27
15:19
If an error occurs within sqlite3_step() on a statement prepared using sqlite3_prepare_v2(), transfer both the error code and error message to the database handle before sqlite3_step() returns (so that they are available via sqlite3_errcode() and sqlite3_errmsg(). Prior to this commit, only the error code was transfered. The error message was not available until after either sqlite3_reset() or sqlite3_finalize() had been called on the statement handle. (check-in: 8f88cc4e61 user: dan tags: trunk)
2011-10-25
21:18
Cherrypick the [3513bf6ee090d9] so that the sqlite_source_id() function works correctly even with newer versions of Fossil (check-in: 89d63a0e1d user: drh tags: branch-3.7.2)
20:36
Cherrypick changes [53f5cfe115] and [1f7ef0af8d] in order to fix an issue with DISTINCT (check-in: 14bc58ca70 user: drh tags: branch-3.7.2)
2011-10-22
21:00
Avoid a harmless reference to an uninitialized variable following an error in FTS3. This is not a bug. The change is to silence a valgrind warning. (check-in: d980c5b22f user: drh tags: trunk)
2011-10-21
19:06
Purge lingering references to SQLITE_STAT2 from the code and test scripts. (check-in: aed2bf7a3c user: drh tags: trunk)
17:18
Merge the latest trunk changes into the apple-osx branch. (check-in: be62ef058b user: drh tags: apple-osx)
17:08
Merge the latest trunk enhancements into the sessions branch. (check-in: 8baef58170 user: drh tags: sessions)
16:47
Remove stale requirements marks from the query planner. (check-in: 76de9914be user: drh tags: trunk)
14:27
If an error occurs while writing to the database file during a VACUUM, discard the contents of the in-memory cache. This is required as if the database is a zipvfs database, the contents of the cache may be inconsistent with respect to the database as stored on disk. (check-in: 07159e84b4 user: dan tags: trunk)
2011-10-20
18:23
Fix an issue with finding the access permissions of journal files when 8+3 filenames are in use. (check-in: 2b35c5144d user: drh tags: trunk)
00:55
Enhancements to the omittest.tcl script used to verify that the SQLITE_OMIT compile-time options are working. (check-in: 4344483f7d user: drh tags: trunk)
2011-10-19
18:21
Fix harmless compiler warnings in FTS4. (check-in: 1af4a25631 user: drh tags: trunk)
17:13
Fix comments on SQLITE_CONFIG_HEAP so that they do not interfere with the requirements scanner. (check-in: a3151ce15c user: drh tags: trunk)
16:20
Merge the fts4-content branch with the trunk. (check-in: 8a4077057d user: dan tags: trunk)
15:52
Have FTS3 ignore ^ prefixes. The ^ syntax is only supported on FTS4 tables. (Closed-Leaf check-in: df36ac9481 user: dan tags: fts4-content)
11:57
Change the way ^ tokens work in FTS so that the filtering is done as part of reading the FTS index instead of waiting until an entire doclist has been retrieved and then filtering it. (check-in: 9b58c59eb4 user: dan tags: fts4-content)
10:18
Add tests for FTS ^ searches and matchinfo(). (check-in: 92618c1463 user: dan tags: fts4-content)
09:40
Fix a problem in FTS to do with ^ tokens and the snippet() function. (check-in: 2c03b24f4c user: dan tags: fts4-content)
2011-10-18
22:07
Fix the virtual table rename logic so that it works even if the database encoding is something other than UTF8. Ticket [8290242b2a9a81683] (check-in: d65f63531c user: drh tags: trunk)
19:39
If a token within an FTS query is prefixed with a '^' character, it must be the first token in a column of data to match. (check-in: 63ac33c860 user: dan tags: fts4-content)
19:14
Fix an uninitialized variable in OR-clause processing. (check-in: 54aecd9298 user: drh tags: trunk)
18:10
Improved handling of USING and NATURAL JOIN in 3-way and higher joins. Ticket [3338b3fa19ac4ab] (check-in: 551ce407bd user: drh tags: trunk)
12:49
Cherrypick patch [3126754c72] from the trunk into the content= branch. (check-in: f9b5b21708 user: dan tags: fts4-content)
12:44
Fix a floating-point exception that can occur when an FTS4 query contains a large number of tokens connected by AND or NEAR operators. (check-in: 3126754c72 user: dan tags: trunk)
2011-10-17
23:15
Change the OP_JournalMode implementation so that it works even if a substitute sqlite3PagerFilename() that might return NULL is used. (check-in: 491ff5fb25 user: drh tags: trunk)
20:41
Avoid 32-bit integer overflow when evaluating the exponent of a floating point value during ascii to binary conversion. (check-in: 4becc47eb4 user: drh tags: trunk)
12:14
Performance improvement for ascii to floating-point conversions with very large exponents. (check-in: 59bb999c8b user: drh tags: trunk)
2011-10-15
00:16
Added the tool/warnings-clang.sh script. Changes so that there are no warnings with either gcc or clang even including FTS4 and RTREE and both with and without SQLITE_THREADSAFE=0. (check-in: 39408702a9 user: drh tags: trunk)
2011-10-14
22:57
Fix a few minor and harmless clang warnings in FTS3 and RTREE. (check-in: b3324f6cc2 user: drh tags: trunk)
21:49
Add assert() statements and eliminate needless variable assignments in order to get the clang scan-build utility to report zero problems against the SQLite core. Clang's static analysis did find one real problem - but it was in the command-line shell, not in the SQLite core. (check-in: 60fee9574b user: drh tags: trunk)
2011-10-13
18:08
Change the makefile to delete both plain and ".exe" variants of build tools. Ticket [92bd6eaf04e117] (check-in: 19536a3828 user: drh tags: trunk)
18:00
Simplifications to the upper() and lower() SQL functions. Updates to documentation on sqlite3_bind_text() and sqlite3_result_text() to make it clear that users should not try to create strings with embedded NULs and that if they do the result of expression on those strings is undefined. Ticket [57c971fc74524a] (check-in: 9984cc20ca user: drh tags: trunk)
17:16
Handle updating the only row of an FTS table correctly. Fix for [9fd058691]. (check-in: 7e24645be2 user: dan tags: trunk)
17:09
An improved fix for the page_count and quick_check problem previously patched at [150592b4b4d8637] (check-in: c3cb7f4fad user: drh tags: trunk)
16:36
Provide a complete prototype for isatty() in the command-line shell sources. (check-in: 8bf13b036a user: drh tags: trunk)
16:30
Change the command-line shell to do the ".dump" inside of a SAVEPOINT rather than a transaction, since this allows it to be run from within a transaction. (check-in: 6df7343b4c user: drh tags: trunk)
16:02
Enable large-file support for fopen() and friends in the command-line shell. Ticket [92af7da36b6fbd] (check-in: eeeba4f0d2 user: drh tags: trunk)
15:35
Make sure the query optimizer for aggregate queries knows that expressions (x='a') and (x='A') are different. Ticket [fa7bf5ec94801e7e] (check-in: e43da426e6 user: drh tags: trunk)
14:41
Make sure the page_count and quick_check pragmas work properly even when their names are capitalized. Fixes a problem reported on the mailing list. (check-in: 150592b4b4 user: drh tags: trunk)
14:18
Adjust the symbols.sh script for STAT3. Add the symbols-mingw.sh script for testing on windows with MinGW. (check-in: c41d1d4652 user: drh tags: trunk)
14:05
Make sure all non-API functions in os_win.c have file scope. Ticket [35c54c874987] (check-in: 17e4fde5c5 user: drh tags: trunk)
13:34
Do the ".dump" command inside of a transaction to prevent other processes from modifying the database while the dump is underway. Ticket [2466653295e65] (check-in: 1c00d5454c user: drh tags: trunk)
01:01
Fix a harmless compiler warning introduced into os_unix.c by one of the recent changes. (check-in: 4bf4d5ebfb user: drh tags: trunk)
00:41
If errors are encountered while processing the ".dump" command in the command-line shell, print error messages as comments in the output and ROLLBACK at the end rather than committing. Ticket [ee19e690ec9a5a2] (check-in: 8a8dcd6bd0 user: drh tags: trunk)
00:11
Be sure to allocate plenty of space for error messages coming out of sqlite3_load_extension(), so that filenames and procedure names are not truncated. Ticket [7d32c69b50f89d] (check-in: af8bcdd951 user: drh tags: trunk)
2011-10-12
23:49
The sqlite3_overload_function() interface returns an error if it is unable to create the overload function. Ticket [20f9d4fbbff3a3] (check-in: d5b6b374c5 user: drh tags: trunk)
23:13
The date/time functions return NULL if the xCurrentTime or xCurrentTimeInt64 VFS methods fail. Ticket [0b803bff856c644c] (check-in: c96651dd6c user: drh tags: trunk)
19:04
Suppress a compiler warning that occurs with SQLITE_OMIT_VIRTUALTABLE. (check-in: 6bedb49d68 user: drh tags: trunk)
18:52
Clean up obsolete comments in printf.c. (check-in: 97ef4f5013 user: drh tags: trunk)
17:00
Clarify a comment and fix a code formatting issue in btree.c. (check-in: 4f1a558d00 user: drh tags: trunk)
2011-10-11
20:41
Put in code to defend against signed/unsigned character problems in the command-line shell. (check-in: b94a80a832 user: drh tags: trunk)
20:14
Add a couple of asserts trying to make the operation of sqlite3SelectNew() clearer. (check-in: b21b1c7bc4 user: drh tags: trunk)
18:38
Simplify the readonly_shm implementation so that it conforms to the implementation on trunk. Update the test cases to agree with the new behavior. (check-in: 9efb74cefb user: drh tags: apple-osx)
18:18
Change the behavior of the readonly_shm=1 query parameter so that it never attempts to open the -shm file read/write. (check-in: f136400483 user: drh tags: trunk)
17:54
Remove all precision and width limits from formatting fields in the sqlite3_mprintf() family of functions. Malloc for space as necessary. The prevents a stack overflow on very large numbers using %f. (check-in: 1f843fb383 user: drh tags: trunk)
15:03
Fix a locking error introduced when porting the new Apple locking code. (check-in: cce1f52136 user: drh tags: apple-osx)
14:19
Merge the latest trunk changes into the apple-osx branch. (check-in: 7e2c489822 user: drh tags: apple-osx)
12:58
Merge all the latest trunk changes into the sessions branch - especially the SQLITE_ENABLE_STAT3 enhancements. (check-in: 403431cac6 user: drh tags: sessions)
12:39
Fix requirements marks associate with STAT3. (check-in: 9325c1a8c4 user: drh tags: trunk)
00:09
Patches to the apple-osx-377 branch so that it will compile and run on non-Mac unix platforms. (Leaf check-in: b431a63437 user: drh tags: apple-osx-377)
2011-10-10
23:53
Forward port the Apple-specific changes from [db5b7b778c] in the apple-osx-377 branch. Fix this up so that it will compile and run on Linux. (check-in: 6cb43f6c6e user: drh tags: apple-osx)
22:11
Merging in cherry picked diffs for persist wal, alloc padding, wal-safe vacuum and sqlite3_file_control based lockstate checking (check-in: db5b7b778c user: adam tags: apple-osx-377)
18:59
Cherrypick the sqlite_data_count() changes from [d4f95b3b6e] and [9913996e7b] into the apple-osx branch for version 3.7.7. (check-in: aef7945c42 user: drh tags: apple-osx-377)
16:06
Enhance sqlite3_analyzer so that it is able to deal with multiplexed databases that have 8+3 filenames. (check-in: e5169f9a5b user: drh tags: trunk)
12:04
Fix a typo in a comment for PRAGMA journal_mode. Also amplify that same comment. (check-in: c8ff2a4840 user: drh tags: trunk)
2011-10-08
21:39
All the soft_heap_limit to be exceeded by 10% in test cases. (check-in: 4be9dccc71 user: drh tags: trunk)
14:57
Add the SQLITE_DIRECT_OVERFLOW_READ compile time option. (check-in: 2ab14a8467 user: dan tags: trunk)
2011-10-07
23:52
Change the ANALYZE command so that it no longer tried to delete unused sqlite_stat2 and sqlite_stat3 tables. Change the DROP TABLE command so that it is able to drop those tables. (check-in: 589f3f5652 user: drh tags: trunk)
18:24
Make sure sqlite3_data_count() behaves as documented, even for EXPLAIN QUERY PLAN queries. (check-in: d4f95b3b6e user: drh tags: trunk)
17:52
Improved handling of OR terms in the WHERE clause with multi-column indexes. (check-in: b23ae13187 user: drh tags: trunk)
17:45
Add testcase() macros to ensure good test coverage. (Closed-Leaf check-in: 5c13259282 user: drh tags: or-opt)
16:57
Add the SQLITE_FCNTL_OVERWRITE file-control. Used by SQLite to indicate to the OS layer that the current transaction will overwrite the entire file. (check-in: 1da87fcdac user: dan tags: trunk)
16:08
More test cases for the OR optimization. (check-in: 4997d8b81c user: drh tags: or-opt)
14:40
Prevent infinite recursion of in the query planner for some pathological test cases by disabling OR-clause processing upon first recursion. (check-in: 9fca05eac5 user: drh tags: or-opt)
13:33
Begin an effort to enhance the query planner to do a better job with OR terms in the WHERE clause. This change allows ANDs outside of the OR to be factored into the OR terms if that is helpful in finding better indices. (check-in: 876bd21aaa user: drh tags: or-opt)
12:59
Enhance the sqlite3_data_count() routine so that it can be used to determine if SQLITE_DONE has been seen on the prepared statement. (check-in: 9913996e7b user: drh tags: trunk)
2011-10-05
19:46
Add the --pageinfo and --stats options to the sqlite3_analyzer utility. (check-in: baa80c7bc3 user: drh tags: trunk)
18:18
Update the sqlite3_analyzer utility program to provide more details about the compression performance of ZIPVFS database files. (check-in: fa5ed53296 user: drh tags: trunk)
17:36
Fix test code related to reporting the size of overflow pages in zipvfs databases. (check-in: ad7c9eed8b user: dan tags: trunk)
15:26
When finding the appropriate file permissions for journal files with SQLITE_ENABLE_8_3_NAMES, ignore "-" characters in the name of the containing directory. (check-in: 328cc1867f user: drh tags: trunk)
15:11
Change FTS4 so that if both the content=xxx option and column names are specified, the virtual table assumes that the named columns correspond to columns of table xxx. (check-in: 289ee43179 user: dan tags: fts4-content)
06:07
Fix a problem with IO error handling in the rebuild-index code. (check-in: c6ba81fcad user: dan tags: fts4-content)
2011-10-04
19:41
Improve test coverage of fts3.c. (check-in: 0f439944ab user: dan tags: fts4-content)
16:37
Add tests to check that modifying the schema of an FTS content table does not cause a crash in the FTS module. Also disable the deferred token optimization for content=xxx FTS tables. (check-in: be86c7061b user: dan tags: fts4-content)
11:22
Add experimental 'content' option to FTS4. (check-in: 1d27ea741f user: dan tags: fts4-content)
2011-10-03
15:30
Merge the STAT3 changes into trunk. (check-in: 774d0842bc user: drh tags: trunk)
2011-10-02
05:23
Update MSVC makefile to allow targets to be built with support for ICU. (check-in: eb5da5e1db user: mistachkin tags: trunk)
2011-09-30
12:01
Disable the xfer optimization if "PRAGMA count_changes=1" is configured. Ticket [c48d99d690]. (check-in: 9ddfe1e413 user: dan tags: trunk)
2011-09-28
01:10
In the shell, allow arbitrary table names on the ".import" command. Ticket [d1d84037b90a449]. (check-in: f4dd32d30e user: drh tags: trunk)
00:50
Enhance the stat VFS to report out the total size of all pages used by a table, even if the ZIPVFS compression backend is in play. Update the sqlite3_analyzer logic to use these new outputs. (check-in: 19b8eaaf70 user: drh tags: trunk)
2011-09-27
13:40
Changes to sqlite3_analyzer to try to avoid integer overflow problems when linking against older versions of TCL. (check-in: 8c846311a0 user: drh tags: trunk)
2011-09-26
19:32
Changes to the analyzer script to make it work with zipvfs databases. (check-in: d82cffab6a user: dan tags: trunk)
2011-09-25
17:49
If an open as read/write fails, do not try to reopen as read-only if in exclusive access mode. (check-in: 263c5fb280 user: drh tags: trunk)
17:47
If an open as read/write fails, do not try to reopen as read-only if in exclusive access mode. (Closed-Leaf check-in: 4a153f0100 user: drh tags: stat3-trunk)
2011-09-24
09:54
Fix misc3.test so that it works with OMIT_MERGE_SORT builds. (check-in: 87946c627f user: dan tags: trunk)
05:55
Fix some test files so that they work with SQLITE_OMIT_WAL builds. (check-in: a38668dcff user: dan tags: trunk)
2011-09-23
18:58
Add SQLITE_DBSTATUS_CACHE_HIT and _MISS to the ".stat" command in the shell. (check-in: d279e1a309 user: drh tags: trunk)
16:34
Add the -DBUILD_sqlite option to the compiler when building testfixture.exe using the configure script. (check-in: 15a13b6c59 user: drh tags: trunk)
14:40
Merge the latest trunk changes into the stat3-trunk branch. (check-in: 0beb88a92c user: drh tags: stat3-trunk)
13:59
Testability enhancements. (check-in: be44928cf2 user: drh tags: stat3-trunk)
13:25
Fix typos in the format description comment of analyze.c. (check-in: 74e27fad33 user: drh tags: stat3-trunk)
2011-09-22
20:52
Remove the restriction on the number of entries per index in sqlite_stat3. (check-in: 374343c8ad user: drh tags: stat3-trunk)
18:46
Fix an issue in ANALYZE when STAT3 is disabled but both sqlite_stat2 and sqlite_stat3 tables exist. Also add testability tweaks to the STAT3 code. (check-in: 3ca7e449e2 user: drh tags: stat3-trunk)
15:31
Remove a redundant (and undefined) "forcedelete" command from corruptE.test. (check-in: 6d8d4e1694 user: dan tags: trunk)
14:56
Remove the SQLITE_PAGECACHE_BLOCKALLOC compilation option. (check-in: 4eb4689834 user: dan tags: trunk)
14:41
Add the SQLITE_DB_STATUS_CACHE_HIT and MISS options. For querying the number of cache hits and misses on a per-connection basis. (check-in: 5100b6e9dc user: dan tags: trunk)
03:13
Merge the cache-stats enhancement into trunk. (Closed-Leaf check-in: 646db97188 user: drh tags: mistake)
00:56
Update the version number to 3.7.9. (check-in: 14e28eb954 user: drh tags: trunk)
00:28
Fix an uninitialized variable and a misuse of memcpy(). (check-in: ee110d5a4a user: drh tags: stat3-trunk)
00:06
Integrate build changes for sqlite3_analyzer into the MSVC makefile. Also, more cleanup of build files, including sqlite3_analyzer, for all makefiles. (check-in: af1c571829 user: mistachkin tags: trunk)
2011-09-21
20:10
Minor tweaks to the TCL code for sqlite3_analyzer. (check-in: 3a261f383f user: drh tags: trunk)
18:29
Remove unnecessary dependencies from the sqlite3_analyzer targets in makefiles. (check-in: 0bd8fd352d user: drh tags: trunk)
17:04
Fix the sqlite3_analyzer target in the configure-generated Makefile. (check-in: 256cdbdc81 user: drh tags: trunk)
16:43
Change the way the sqlite3_analyzer executable is built. (check-in: 05e3cced8a user: dan tags: trunk)
00:09
Pull in the latest changes from trunk. Update the STAT3 documentation. (check-in: 63fc3e4bea user: drh tags: stat3-trunk)
2011-09-20
15:53
Add SQLITE_STMTSTATUS_CACHE_HIT/MISS and SQLITE_DB_STATUS_CACHE_HIT/MISS. For querying the number of pager cache hits and misses on a statement or connection basis. (Closed-Leaf check-in: 892723575c user: dan tags: cache-stats)
2011-09-19
20:56
Minor comment change in the description of the different memory allocator options. No changes to code. (check-in: 36be31ff0a user: drh tags: trunk)
20:36
Merge in all changes through the 3.7.8 release. (check-in: 9607600b6c user: drh tags: stat3-trunk)
20:32
Merge in all trunk changes through the 3.7.8 release. (check-in: ade72b1874 user: drh tags: apple-osx)
20:28
Merge in all trunk changes through the version 3.7.8 release. (check-in: 98619a23fd user: drh tags: sessions)
18:00
Version 3.7.8 (check-in: 3e0da808d2 user: drh tags: trunk, release, version-3.7.8)
13:01
Increase the default lookaside cache line size from 100 to 128 bytes. (check-in: db01946503 user: drh tags: trunk)
11:57
Remove a stray merge-sort related change from pager.c and pager.h. (check-in: 69823ed163 user: dan tags: trunk)
2011-09-17
18:56
Remove a couple of comments that were causing problems for the amalgamation generator script. (check-in: ffed86bf96 user: drh tags: apple-osx)
17:29
Add a new script to build an amalgamation that omits FTS3/4 and RTREE. (check-in: b31a7d7db9 user: drh tags: trunk)
15:34
Make sure the file structure is zeroed prior to calling the VFS to open a file. (check-in: 29c4d0dd43 user: mistachkin tags: trunk)
2011-09-16
22:10
Fix a problem with SQLITE_OMIT_TRACE that was introduced by the recent OP_Once change. (check-in: 96be3f7b59 user: drh tags: trunk)
20:43
Fix #if's in winSync to avoid compiler warnings about unused local variables. Also, update version numbers in the MSVC makefile. (check-in: 2e66e41457 user: mistachkin tags: trunk)
20:16
Silence harmless compiler warning about redefinition of the _CRT_SECURE_NO_WARNINGS macro by shell.c. (check-in: 690220717f user: mistachkin tags: trunk)
19:40
Merge the latest trunk changes into the sessions branch. (check-in: 5efb02949d user: drh tags: sessions)
19:36
Merge the latest trunk fixes into the apple-osx branch. (check-in: 070bf203bb user: drh tags: apple-osx)
19:29
Merge all the latest trunk changes into the experimental STAT3 branch. (check-in: 51908c8f2b user: drh tags: stat3-trunk)
19:04
Remove unreachable branches from the previous change. Add additional test cases. (check-in: cf51ef8ab8 user: drh tags: trunk)
17:43
When analyzing the right-hand side of IN operators to see if the IN operator can work with an index, be sure to decend into nested subqueries. Fix for ticket [1a1308d2538d7] (check-in: 0156f10e23 user: drh tags: trunk)
16:00
Further streamlining of the subquery materializer. New test cases for ticket [002caede898a] (check-in: ff8b76b25b user: drh tags: trunk)
01:38
Merge the [002caede898] fix into trunk. (check-in: 95708ae223 user: drh tags: trunk)
01:34
Add the new OP_Once opcode. Use it to clean up and simplify various one-time initialization sections in the code, including the fix for ticket [002caede898ae]. (Closed-Leaf check-in: 7f00552b73 user: drh tags: tkt-002caede898)
2011-09-15
23:58
Materialize subqueries using a subroutine and invoke that subroutine prior to each use of the materialization. Fix for ticket [002caede898aee4] (check-in: 4b8357ee3c user: drh tags: tkt-002caede898)
19:39
Adding test case for ticket [002caede898] (check-in: 62dfc51a49 user: drh tags: tkt-002caede898)
00:40
Cleanup/fix error handling when no arguments are supplied to the SQLite analyzer. (check-in: 3fc566ac5d user: mistachkin tags: trunk)
2011-09-14
19:41
Merge latest changes from the trunk into the sessions branch. (check-in: c00e45ede7 user: dan tags: sessions)
19:05
Merge in the latest changes from trunk. (check-in: 2456b4d0d2 user: drh tags: apple-osx)
18:19
Remove 'const' from a variable that might actually be written when an OOM error occurs. Also, fix a couple MSVC/Win32 compiler warnings. (check-in: 3035dc1c73 user: mistachkin tags: trunk)
13:41
Remove unused parameters from internal routines in vdbesort.c. This is an additional simplification made possible by recent optimizations. (check-in: a1f3aeeb09 user: drh tags: trunk)
13:23
Remove code from vdbesort.c that was made unreachable by the recent sqlite3VdbeRecordUnpack() optimizations. (check-in: 607aba6cd7 user: drh tags: trunk)
2011-09-13
19:09
Merge the latest trunk changes into the stat3-trunk branch. (check-in: 11ca4ed8bf user: drh tags: stat3-trunk)
19:08
Allocate the correct size for the output buffer in fts3DoclistOrMerge(). Fix for [56be976859]. (check-in: 07788c0f7f user: dan tags: trunk)
2011-09-11
10:14
Cleanup pdb/ilk files generated by the MSVC makefile. (check-in: a9db247b75 user: mistachkin tags: trunk)
2011-09-05
20:16
Fix a minor performance regression in btreeMoveto(). (check-in: d0712dfb24 user: dan tags: trunk)
14:20
Refactor the sqlite3VdbeRecordUnpack() interface to better accommodate the vdbesort.c module. (check-in: f115b23035 user: dan tags: trunk)
2011-09-04
01:27
Fix a compiler warning about an unused parameter in the merge-sort code. (check-in: 6b657ae750 user: drh tags: trunk)
01:11
Improve the testability of the merge-sort logic. (check-in: b5179baf87 user: drh tags: trunk)
2011-09-03
17:07
Performance improvements to the external merge-sorter. Keep content on an in-memory linked lists rather than an ephemeral table prior to spilling to disk. Use the external merge-sorter to implement ORDER BY and GROUP BY in addition to CREATE INDEX. (check-in: 4c43e8b2d2 user: drh tags: trunk)
16:42
Simplification and performance tweaks in vdbeSorterMerge(). (Closed-Leaf check-in: 99e34bdce4 user: drh tags: merge-sort)
14:36
Reduce the number of VdbeRecordUnpack() calls made in vdbesort.c. (check-in: 666c2c3cff user: dan tags: merge-sort)
00:17
The build works again with -DSQLITE_OMIT_MERGE_SORT. The merge-sorter now avoids spilling to disk (letting the in-memory linked list grow without bound) if PRAGMA temp_store=3. (check-in: 68e26c4487 user: drh tags: merge-sort)
2011-09-02
21:42
Remove some dead code. Fix a faulty assert(). Improve some variable names. (check-in: a9a64592cf user: drh tags: merge-sort)
18:03
Combine two malloc calls in vdbesort.c. (check-in: cf48ad8353 user: dan tags: merge-sort)
15:41
Reduce the number of malloc() calls made when creating an index on more than 2 columns. (check-in: 065b0c9858 user: dan tags: merge-sort)
15:08
Remove unused local variable. (check-in: 61bda876af user: mistachkin tags: trunk)
11:45
If all data being sorted fits in memory, avoid writing any data out to temporary files in vdbesort.c. (check-in: 71075673c6 user: dan tags: merge-sort)
10:31
Instead of a temporary b-tree, use a linked-list and merge-sort to sort records in main memory in vdbesort.c. (check-in: 7769fb988d user: dan tags: merge-sort)
2011-09-01
16:01
Use OP_SorterOpen instead of OP_OpenEphemeral to implement GROUP BY. (check-in: ebf819aaa5 user: drh tags: merge-sort)
15:32
Experimental code-generator changes to utilize new opcodes for sorting. (check-in: bab2e560f6 user: drh tags: merge-sort)
2011-08-31
23:57
Avoid using uninitialized variables after failures in the merge sort code. (check-in: 2869ed2829 user: drh tags: trunk)
21:01
Formerly, we enabled fdatasync() on linux only. But now we learn that fdatasync() is not supported on Android. So we disable fdatasync() on Linux too. It can be reenabled at compile-time for those who really need it. (check-in: 70b5b30956 user: drh tags: trunk)
20:47
Add the SQLITE_MAX_SCHEMA_RETRY compile-time option to the set of options understood by "PRAGMA compile_options;" and by the "sqlite_compileoption_used()" function. (check-in: 1b124af40a user: drh tags: trunk)
19:40
The server1.test script should only run if mutexes are functional. Fix to the #ifdef change of check-in [9e6a4c1473]. (check-in: 6489848590 user: drh tags: trunk)
18:35
Always include the unixShm.id field, even when not debugging. (check-in: 0780347620 user: drh tags: trunk)
18:04
Only create the sqlite3OSTrace global variable if compiling with SQLITE_TEST. (check-in: 9e6a4c1473 user: drh tags: trunk)
17:46
Backslash escaping is not working right in tostr.awk on the latest ubuntu. The easiest fix is to simply not use any backslashes in the spaceanal.tcl script. (check-in: df55006665 user: drh tags: trunk)
13:27
Add checks to make sure cells in corrupt database files do not overflow a page when doing autovacuum. Problem detected by valgrind. (check-in: d0b347b412 user: drh tags: trunk)
2011-08-30
19:52
Enable the thread test logic to work with the SQLITE_HAS_CODEC compile-time option. (check-in: 20ddfb4780 user: drh tags: trunk)
01:29
Change the build process so that it does not require the unix "sort" command. This avoids confusion between ms-sort and mingw-sort on windows systems. (check-in: f1bd5bbae5 user: drh tags: trunk)
01:23
Make sure SQLITE_FCNTL_SIZE_HINT a no-op if the chunk size is not greater than zero. (check-in: 88b763e8d7 user: mistachkin tags: trunk)
00:58
Fix a total unimportant file descriptor leak in lemon. This is to silence warning messages. (check-in: e95cf2c576 user: drh tags: trunk)
00:53
Fix a buffer overrun in test logic. No impact on the core SQLite. (check-in: 49cd60e38b user: drh tags: trunk)
2011-08-29
18:24
Fix a broken assert() statement in select.c. (check-in: ad78ef2b3a user: dan tags: trunk)
11:56
Back out [05c9832e5f6eb] since it was causing a performance regression with no obvious benefit. (check-in: 639cc85a91 user: drh tags: trunk)
03:08
Merge performance enhancements into trunk. (check-in: 5a00d24b27 user: drh tags: trunk)
02:49
About a 1% overall performance improvement by using a macro to avoid no-op calls to sqlite3MemReleaseExternal(). (Closed-Leaf check-in: ff71d20a9e user: drh tags: experimental)
02:16
Small performance improvement to OP_Column. (check-in: b6b73a747a user: drh tags: experimental)
2011-08-28
02:15
About a 3% improvement in the performance of OP_Column. (check-in: edff9d4a99 user: drh tags: experimental)
00:19
Correctly display P4_ADVANCE values on opcode traces. Mark an always-taken branch in OP_Column as such. (check-in: 087dc96086 user: drh tags: experimental)
2011-08-27
18:48
Experimental changes to improve the performance of OP_Next. (check-in: 1a24984525 user: dan tags: experimental)
2011-08-26
20:55
Fix several harmless compiler warnings and a documentation bug. (check-in: 5454d0fe22 user: drh tags: trunk)
19:20
Merge the latest trunk changes into the sessions branch. (check-in: eb036d6f81 user: drh tags: sessions)
19:18
Merge the latest trunk changes into the apple-osx branch. (check-in: 55af80035f user: drh tags: apple-osx)
18:28
Veryquick and min.rc tests now passing. (Closed-Leaf check-in: a7e1846882 user: drh tags: stat3-3.7.2)
18:04
Merge the branch-3.7.2 changes into the stat3-3.7.2 subbranch. Also fix some test script issues. (check-in: a42db19d52 user: drh tags: stat3-3.7.2)
17:17
Cherrypick the recursion fix to test_vfs.c from [065e5a5ea4f82]. Also fix the nan.test module to handle upper/lower case changes in TCL. (check-in: 41b5f86971 user: drh tags: branch-3.7.2)
15:51
Get stat3 working after import from trunk-based the stat3-enhancement branch. There is still a problem in the wal2 test. (check-in: 01cc4ff6af user: drh tags: stat3-3.7.2)
13:52
Merge branches branch-3.7.2 and stat3-enhancement into a new branch for testing purposes. (check-in: 0df04f920b user: drh tags: stat3-3.7.2)
13:16
Merge the stat3-enhancement branch with trunk, but keep the resulting merge in a separate branch for now. (check-in: 63f2c7859f user: drh tags: stat3-trunk)
11:25
Update compiler error message regarding the choice of memory allocator defines. (check-in: 1dada51582 user: mistachkin tags: trunk)
11:18
Merge Win32 native heap support into trunk. (check-in: 5238a74987 user: mistachkin tags: trunk)
05:40
In the MSVC makefile, allow symbols to be enabled without NDEBUG defined. Also, for the win32lock test, make sure the database is closed prior to shutdown. (Closed-Leaf check-in: 5ed7633d41 user: mistachkin tags: winNativeHeap)
01:45
Disable checking the winMemData structure signature when compiled with NDEBUG. (check-in: 50edc2f914 user: mistachkin tags: winNativeHeap)
01:32
Allow the Win32 native heap flags to be overridden at compile-time. (check-in: 1c2ecec8e7 user: mistachkin tags: winNativeHeap)
00:34
Create a new pager type, PAGER_SORTER, for use in the external merge sort. Such pagers are always held in memory but do report when they are under memory pressure by calling pagerStress. (check-in: c71d73201d user: drh tags: trunk)
2011-08-25
20:18
Reorder some of the branches in backup.c in order to make the code easier to test. (check-in: 2c443d47ec user: drh tags: trunk)
19:28
Replace an assert() that a condition may not occur in backup.c with code to handle that condition, which can occur. (check-in: 472c74b345 user: dan tags: trunk)
18:54
Fix harmless compiler warnings in test code. No changes to the core. (check-in: 16f83fec77 user: drh tags: trunk)
18:01
Disable external merge source when SQLITE_TEMP_STORE==3. Add documentation to the OP_OpenSorter opcode. (check-in: 5a69048681 user: drh tags: trunk)
13:46
Fix the SQLITE_DISABLE_DIRSYNC compile time option. (check-in: 6deb3ea1f0 user: dan tags: trunk)
04:09
Add comments for the various debug levels. When debugging, disable optimizations. Prevent the win32lock tests from spinning forever. (check-in: 401859236b user: mistachkin tags: winNativeHeap)
03:38
Fix an file separator character issue with test_quota.c that was causing it to fail on windows. (check-in: ddb8d3e80d user: drh tags: trunk)
02:02
In the MSVC makefile, support several levels of debugging, each one building on the previous. Also, add comment about the SQLITE_WIN32_MALLOC_VALIDATE macro. (check-in: 4257e9b7ca user: mistachkin tags: winNativeHeap)
01:58
Cherrypick the [d4f6437f8d] change so that SQLITE_FCNTL_SIZE_HINT is always honored and never undone by memory pressure on windows. (check-in: 67ff8d27f6 user: drh tags: trunk)
01:42
Add the sqlite3_quota_file() interface to test_quota.c. (check-in: 2b7fe8e5b7 user: drh tags: trunk)
01:16
Make sure that SQLITE_FCNTL_SIZE_HINT on Windows does not shrink the file. (check-in: d4f6437f8d user: mistachkin tags: winNativeHeap)
00:14
Add the SQLITE_EXTRA_INIT macro. (check-in: a3220f36c1 user: drh tags: trunk)
2011-08-24
17:42
Add error logging to native Win32 heap support. (check-in: 7fca5a284c user: mistachkin tags: winNativeHeap)
16:13
Experimental work to allow SQLite to use the native Win32 heap API. (check-in: bf3d0ab538 user: mistachkin tags: winNativeHeap)
15:18
Updates to the sqlite3_mem_methods documentation. (check-in: 988998fe7b user: drh tags: trunk)
15:12
Fix some harmless compiler warnings. (check-in: 46f5a68bfa user: drh tags: trunk)
01:25
Changes to test_quota.c to make quota groups persistent even after files are closed. Files remain a part of the quota group until they are deleted. (check-in: 04111ce980 user: drh tags: trunk)
2011-08-23
23:41
Simplifications to the SQLITE_PAGECACHE_BLOCKALLOC logic. Reduce the number of difficult-to-reach branches. (check-in: d5d835fe83 user: drh tags: trunk)
20:11
If the application-defined openDirectory() function returns SQLITE_CANTOPEN, then silently ignore the error. This allows the chromium sandbox to disallow opening of directories without causing errors. (check-in: 880b51150a user: drh tags: trunk)
19:46
Change the way the "crash" VFS (test6.c) handles SQLITE_FCNTL_SIZE_HINT. (check-in: 40dd8a60be user: dan tags: trunk)
18:06
Merge latest trunk changes into the apple-osx branch. (check-in: c5f7977b89 user: dan tags: apple-osx)
16:41
Have the "crash" VFS used by the tcl tests (test6.c) handle SQLITE_FCNTL_SIZE_HINT internally, instead of passing it directly through to the underlying VFS. This is important if the crash VFS is simulating non-default device characteristics such as SQLITE_DEVCAP_SEQUENTIAL or ATOMIC. (check-in: fac8bc8f34 user: dan tags: trunk)
13:27
Ifdef out routines in pcache1.c that are used only when SQLITE_PAGECACHE_BLOCKALLOC is defined. (check-in: 0da292da3b user: drh tags: trunk)
12:50
Merge the PAGECACHE_BLOCKALLOC changes into trunk. (check-in: 768c1846d4 user: drh tags: trunk)
11:47
When copying a rollback mode database over a WAL database using the backup API, leave the destination database in WAL mode (instead of switching it to rollback mode). Fix for [af95b8c609]. (check-in: 35e6ac18e3 user: dan tags: trunk)
05:10
Change to test instrumentation of os_unix.c: Regard IO errors that occur within SQLITE_FCNTL_SIZE_HINT requests as benign. (This check-in was intended for trunk and went onto the branch accidentally.) (Closed-Leaf check-in: ca47da2a1f user: dan tags: pager-blockalloc)
00:01
Remove a branch that is always true. (check-in: a65681926d user: drh tags: trunk)
2011-08-22
20:33
Remove an unreachable branch in the FK code. (check-in: 6c227cc853 user: drh tags: trunk)
14:55
Modify test cases so that veryquick.test passes with PAGECACHE_BLOCKALLOC defined. (check-in: c61000705b user: dan tags: pager-blockalloc)
09:54
Fix for [b1d3a2e531]. (check-in: 3f3acee465 user: dan tags: trunk)
2011-08-19
18:15
Experimental change: If SQLITE_PAGECACHE_BLOCKALLOC is defined, instead of allocating pages one at a time, allocate blocks of between 15 and 63 pages in a single allocation. (check-in: 63597097ee user: dan tags: pager-blockalloc)
14:54
When retrying a write() after an EINTR error on unix, be sure to also rerun the previous lseek(). Ticket [e59bdf6116036a] (check-in: 21452f3ae6 user: drh tags: trunk)
2011-08-18
17:47
Ensure that the Tcl "db onecolumn" command returns an empty string if the SELECT statement returns zero rows. (check-in: 928bcaf0f0 user: dan tags: trunk)
13:45
Fix the stat3 analysis loader to be compatible with sqlite3_db_status(). Also fix some OOM issues with the stat3 analysis loader. (Closed-Leaf check-in: eaf447ea87 user: drh tags: stat3-enhancement)
02:51
Fix a bug in the cleanup of stat tables on a DROP TABLE in autovacuum mode. (check-in: 3fe5d54f63 user: drh tags: stat3-enhancement)
01:10
Fix an error with OOM processing in the ANALYZE logic. (check-in: b26ec79c69 user: drh tags: stat3-enhancement)
2011-08-17
07:46
Properly process x64 DLL exports, which do not contain a leading underscore, in the MSVC makefile. (check-in: d5936324d2 user: mistachkin tags: trunk)
02:19
Add vdbesort.c to the MSVC makefile. (check-in: 8eaa2cd3f4 user: mistachkin tags: trunk)
00:40
Use OP_Sort rather than OP_Rewind in order to sort the content of a new index on the CREATE INDEX statement. Add an ALWAYS() to the merge sort logic to document an unreachable branch. (check-in: f01766f423 user: drh tags: trunk)
2011-08-16
17:06
Fix a few harmless compiler warnings. Add SQLITE_ENABLE_STAT3 to the standard compiler warning script. (check-in: 3d68f9afee user: drh tags: stat3-enhancement)
02:07
Allow the sqlite3VdbeJumpHere() routine to accept a negative or zero address if a prior memory allocation error has occurred. The new sqlite_stat3 logic needs this. (check-in: 9650d79628 user: drh tags: stat3-enhancement)
01:15
Add the analyze8.test test module for sqlite_stat3. (check-in: 2c83ac89dc user: drh tags: stat3-enhancement)
2011-08-15
19:44
Updated comments on the multiplexor extension. No changes to code. (check-in: 0f42ef697e user: drh tags: trunk)
15:37
Fix an assert() in the merge-sort logic to account for I/O errors. (check-in: c1daa809a1 user: drh tags: trunk)
15:27
New makefile target "sqlite3-debug.c" builds an amalgamation that include appropriate "#line" macros relating the code back to the original source files. (check-in: 26f2da24b0 user: drh tags: trunk)
14:41
When opening a temporary file to use in a merge-sort, pass SQLITE_OPEN_TEMP_JOURNAL instead of SQLITE_OPEN_TEMP_DB. This is a better fit, as merge-sort files are written and read sequentially like journal files. (check-in: bd04756b66 user: dan tags: trunk)
12:58
Update some test cases to work with sqlite_stat3 instead of sqlite_stat2. (check-in: 2504bcfb0c user: drh tags: stat3-enhancement)
12:02
Fix a couple of typos in comments in analyze.c. (check-in: ae31dc67aa user: dan tags: stat3-enhancement)
2011-08-13
19:35
Further testing and bug fixing for sqlite_stat3. Added the Index.avgEq field to index statistics. Fixed several problems in the query planner associated with stat3. (check-in: 89b2f70884 user: drh tags: stat3-enhancement)
15:25
Add the sqlite_stat3.nDLT field. Use an linear congruence PRNG to choose which samples to select from among those with the same nEq field. (check-in: 1dcd24283e user: drh tags: stat3-enhancement)
10:47
Fix the header comment on the implementation of the file_control_sizehint_test TCL command in test1.c. (check-in: 309198085f user: drh tags: trunk)
00:58
The ANALYZE command picks for 15 samples for sqlite_stat3 with the largest nEq fields, plus 5 other evenly spaced samples. (check-in: 8225924ea0 user: drh tags: stat3-enhancement)
2011-08-12
16:47
Merge the experimental changes to use a merge-sort when creating an index into the trunk. (check-in: 346a453d1f user: dan tags: trunk)
16:34
Update Makefile.in and configure to account for new source file vdbesort.c. (Closed-Leaf check-in: 69e4b41de2 user: dan tags: experimental)
16:30
Merge latest trunk changes into experimental branch. (check-in: 7e515055f2 user: dan tags: experimental)
16:11
Remove an unused parameter from a function in vdbesort.c. Fix some comments and other details in the same file. (check-in: 1a8498d803 user: dan tags: experimental)
15:02
Add the SQLITE_OMIT_MERGE_SORT pre-processor directive. To omit the code in vdbesort.c. (check-in: 4ced2394b1 user: dan tags: experimental)
11:59
Add tests to improve coverage of vdbesort.c. (check-in: 87a15917d7 user: dan tags: experimental)
01:51
Begin a branch that experimentally replaces sqlite_stat2 with a new table called sqlite_stat3 that will hopefully facilitate better query planning decisions. (check-in: 52e1d7e8dd user: drh tags: stat3-enhancement)
2011-08-10
01:52
Make the openDirectory routine in os_unix.c overrideable so that it can be turned into a harmless no-op for the chromium sandbox. (check-in: 6b236069e1 user: drh tags: trunk)
2011-08-09
18:14
Add command-line utilities "offsets.c" and "extract.c" for use in low-level analyzsis of database files. (check-in: dfa22ed438 user: drh tags: trunk)
2011-08-08
23:48
In os_unix.c, do not open the directory containing the database file when the database file is opened. Instead, wait until time to fsync() the directory. And do not report an error if the open fails, since some systems (Ex: AIX and a chromium sandbox) are unable to open and fsync directories. (check-in: 713b1b7dc1 user: drh tags: trunk)
23:18
Allow the unlink() system call to be overridden in os_unix.c. (check-in: 8d1b5c3ac0 user: drh tags: trunk)
19:26
Remove redundant parameter from vdbeSorterInitMerge() in vdbesort.c. (check-in: eec8c0df07 user: dan tags: experimental)
17:18
Add code to actually use the sqlite_stat2.cnt field in the query planner. This changes some plans resulting in a few failures in analyze5.test. (Closed-Leaf check-in: d1248165e3 user: drh tags: query-planner-tweaks)
16:44
Add fault-injection and other tests (and fixes) to improve coverage of vdbesort.c. (check-in: 0e6defa6aa user: dan tags: experimental)
2011-08-07
01:31
Remove relevant elements from the sqlite_stat2 table when doing a DROP INDEX or DROP TABLE. (check-in: 3c8f97ae52 user: drh tags: trunk)
00:21
The ANALYZE command adds the sqlite_stat2.cnt column if it does not already exist. (check-in: 794fde6f91 user: drh tags: query-planner-tweaks)
2011-08-06
19:48
The sqlite_stat2.cnt field is parsed if it is present. But it is not yet used. A large comment added to analyze.c to explain the format of the ANALYZE system tables. (check-in: 6d1e2372fe user: drh tags: query-planner-tweaks)
15:09
Fix a problem with building large indexes introduced by the previous commit. (check-in: 038ec9ea92 user: dan tags: experimental)
12:01
In temp files used for merge sorting, store the size of each packed-memory-array at the start of the array itself. This is to avoid having to store the offsets of all arrays in the (potentially very large) file in main-memory. (check-in: 8051c1767c user: dan tags: experimental)
02:03
Merge together the fork in the query-planner-tweaks branch. (check-in: 2daab6bd42 user: drh tags: query-planner-tweaks)
01:22
Fix a compiler warning when STAT2 is off. More test cases. Fix legacy tests to deal with the new STAT2 logic. (check-in: 7e914aa999 user: drh tags: query-planner-tweaks)
2011-08-05
22:31
Bug fixes to the sample-count logic for STAT2. A few test cases added. (check-in: e93c248c84 user: drh tags: query-planner-tweaks)
21:13
Add a column to the sqlite_stat2 table that contains the number of entries with exactly the same key as the sample. We do not yet do anything with this extra value. Some tests in analyze2.test are failing. (check-in: eb43422827 user: drh tags: query-planner-tweaks)
11:49
Minor internal changes to vdbesort.c. Also, default to merging lists together 16 at a time. (check-in: 9ddc324a34 user: dan tags: experimental)
01:09
Allow the sqlite_stat2 table to contain a number of samples other than the default of 10. (check-in: b9d41c3490 user: drh tags: query-planner-tweaks)
2011-08-04
18:43
Fix a comment in vdbesort.c. (check-in: db8518cab8 user: dan tags: experimental)
12:14
Change to using packed-memory-arrays instead of b-trees when performing an offline merge-sort for CREATE INDEX. This makes it easier to control the number of disc seeks required when merging. (check-in: a4770d079c user: dan tags: experimental)
2011-08-03
22:06
Merge the winopen-retry-logic branch into trunk. The biggest change here is to test scripts, which should now use such as copy_file and delete_file from tester.tcl rather than the raw file commands of TCL. (check-in: b90c28be38 user: drh tags: trunk)
21:46
Merge the latest trunk changes into the sessions branch. (check-in: c570903608 user: drh tags: sessions)
21:32
Avoid segfaulting on an incremental blob write if SQLITE_ENABLE_PREUPDATE_HOOK set but no pre-update hooks are defined. (check-in: 62c4463404 user: drh tags: sessions)
16:40
Update the OP_Move opcode to shift the pScopyFrom pointer of aliases when compiled with SQLITE_DEBUG. Ticket [d63523637517386191]. (check-in: a2135ad130 user: drh tags: trunk)
01:07
Adjust the output row estimating logic when using STAT2. (check-in: c8ba8855d8 user: drh tags: query-planner-tweaks)
2011-08-02
23:45
Add explanatory comment to the win32lock-2.2 test case. (Closed-Leaf check-in: 4cb17881d9 user: mistachkin tags: winopen-retry-logic)
23:34
Correct subtle timing issues in the win32lock test cases and in the lock_win32_file Tcl command. Also, eliminate superfluous MSVC compiler warnings. (check-in: 7baf02946e user: mistachkin tags: winopen-retry-logic)
20:19
Fix missing info exists check for win32lock-2.2 (the one previously applied to win32lock-1.2). (check-in: 8a52698e64 user: mistachkin tags: winopen-retry-logic)
20:14
Exclude the 8_3_names.test script from the inmemory_journal permutation. (check-in: 78fc94c8d1 user: drh tags: trunk)
20:03
Replace the missed 'file copy' in malloc_common.tcl with copy_file. (check-in: cd20b4ef60 user: mistachkin tags: winopen-retry-logic)
20:01
Merge in the permutation changes from trunk. (check-in: b30a5e307f user: drh tags: winopen-retry-logic)
19:59
Also exclude backcompat.test from inmemory_journal since inmemory_journal is not compatible with WAL mode. (check-in: 861a5b6243 user: drh tags: trunk)
19:42
Merge the latest trunk changes into the winopen-retry-logic branch. (check-in: 8bef97a0eb user: drh tags: winopen-retry-logic)
19:30
Omit backcompat.test from the journaltest permutation because it uses WAL mode which is incompatible with journaltest. (check-in: 2bbf3150a4 user: drh tags: trunk)
18:25
Merge all the latest trunk changes into the apple-osx branch. (check-in: 77376b332b user: drh tags: apple-osx)
10:56
Minor fixes to vdbesort.c code in preparation for a major rework. (check-in: 7f339c0e26 user: dan tags: experimental)
01:57
Make sure IS NOT NULL constraints work on virtual tables. Fix for ticket [6c14288a473ceff]. (check-in: a55f4ab999 user: drh tags: trunk)
00:57
Add retry logic for AV defense to winOpen. Also, refactor test suite to allow the key Tcl file operations (e.g. copy and delete) to be retried. (check-in: 9007586fda user: mistachkin tags: winopen-retry-logic)
2011-07-30
23:50
Fix a (humorous) typo in the lemon documentation. (check-in: ed630b012f user: drh tags: trunk)
2011-07-28
20:48
Merge changes for the new sqlite3_file_control() that will cause the -wal and -shm files to persist after the last database connection closes. (check-in: 1b56677bdf user: mistachkin tags: trunk)
19:16
Remove redundant sub-expression from retry loop invariant in winAccess. Also, make check for SQLITE_ACCESS_READWRITE formally correct. (check-in: 93079a92c4 user: mistachkin tags: trunk)
07:34
Fix conditional for retry logic in winAccess and add missing call to logIoerr. (check-in: 8a145863d1 user: mistachkin tags: trunk)
00:14
Use osStat() instead of stat() consistently in os_unix.c (check-in: 9109128cb5 user: drh tags: trunk)
2011-07-26
17:53
Fix errors in a comment in sqlite3session.c. No changes to code. (check-in: d5f4c4c0bf user: dan tags: sessions)
16:23
Test cases added. Fix the query mode. (Closed-Leaf check-in: a9d8794ae9 user: drh tags: persistent-wal-patch)
16:03
Prototype change for a new sqlite3_file_control() that will cause the -wal and -shm files to persist after the last database connection closes. (check-in: e34c553bf0 user: drh tags: persistent-wal-patch)
15:57
Fix a test case in sessionfault.test. No changes to code. (check-in: dc6ecacd77 user: dan tags: sessions)
15:50
Fix a problem causing sqlite3changeset_invert() to effectively drop UPDATE changes. (check-in: bb3e65d972 user: dan tags: sessions)
2011-07-25
23:25
Enable the SQLITE_FCNTL_SIZE_HINT on unix even if SQLITE_FCNTL_CHUNK_SIZE has not been set. (check-in: 05c9832e5f user: drh tags: trunk)
2011-07-23
13:54
Merge the winAccess retry logic from the anti-antivirus branch into the trunk. (check-in: 08d0e8799e user: drh tags: trunk)
13:11
In the multiplexor, close auxiliary files before deleting them when doing a truncate. (check-in: 6fb7cfc2ef user: drh tags: trunk)
2011-07-22
21:25
Add retry logic for AV defense to winAccess(). Also allow OS tracing to be enabled by a compile-time option. (Closed-Leaf check-in: a6b85c7340 user: drh tags: av-defense)
12:49
Merge the latest trunk changes into the sessions branch. (check-in: 110cfd6920 user: drh tags: sessions)
11:23
Also add the sqlite3-all.c target to the MSVC makefile. (check-in: 8ce2b74a82 user: drh tags: trunk)
11:16
Add makefile targets sqlite3-all.c. (check-in: 71f7be586f user: drh tags: trunk)
10:53
Adjust the maximum number of open database connections in wal3.test down for OpenBSD. (check-in: b38e52f675 user: drh tags: trunk)
10:33
Use $(TCLSH_CMD) instead of tclsh in the autoconf makefile. (check-in: fd36d8067b user: drh tags: trunk)
2011-07-21
21:29
Compile with the SQLITE_ENABLE_8_3_NAME macro set to 2 to force 8+3 filenames to be on all the time. (check-in: ae83dac701 user: drh tags: trunk)
20:59
All multiplexor chunk sizes up to 4GiB. Disable the multiplexor if the chunk size is set to 0. (check-in: 83191ad6f3 user: drh tags: trunk)
2011-07-20
17:59
For an existing multiplexed database, try to set the chunk size automatically based on the sizes of the preexisting pieces. (check-in: 427a9a5120 user: drh tags: trunk)
17:13
All the SQLITE_OPEN_URI flag to propagate down into the VFS. (check-in: 29866f9598 user: drh tags: trunk)
16:35
When the multiplexor opens an auxiliary file, it now persists the name of that file until it is closed, as it should. Remove the limit on the number of auxiliary files used by the multiplexor. (check-in: 1ffa542bf9 user: drh tags: trunk)
2011-07-19
18:29
Formatting changes on the multiplexor code - make sure no lines exceed 80 characters. No logical changes. (check-in: ed5f0aad6b user: drh tags: trunk)
15:27
Increase the version number to 3.7.8. (check-in: 4355bf2908 user: drh tags: trunk)
2011-07-18
15:22
Fix the sqlite3session_isempty() method so that it returns, as documented, non-zero when no changes have been recorded by the session object. (check-in: d04e0fd82a user: dan tags: sessions)
2011-07-16
18:35
Fix error in a comment in sqlite3session.h. No changes to code. (check-in: 70c84e5020 user: dan tags: sessions)
18:05
Note in the documentation that when iterating through a changeset, all changes to a single table are grouped together. Also add the sqlite3session_isempty() function. (check-in: 364f3b820a user: dan tags: sessions)
2011-07-15
19:11
Add a few casts required by 64-bit VS2010 to the sessions code. (check-in: 5ac4a06111 user: dan tags: sessions)
13:43
In os_unix.c, check if the ESTALE macro is defined before using it. (check-in: 87017410f2 user: dan tags: trunk)
2011-07-13
18:53
Cherrypicked from trunk: Do not try to use STAT2 for row estimates if the index is unique or nearly so. (check-in: d55b64ef7e user: drh tags: branch-3.7.2)
18:31
Do not try to use STAT2 to refine the row estimate of a query that uses a unique or nearly-unique index. (check-in: efffc49baf user: drh tags: trunk)
16:03
Added the SQLITE_FCNTL_WIN32_AV_RETRY file control for configuring the retry counts and delays in the windows VFS. (check-in: 7aaf0a6ae1 user: drh tags: trunk)
15:21
Add the xFilter callback to the sqlite3changeset_apply() function. This callback allows the application to accept or reject changes on a per-table basis when applying a changeset. (check-in: 282474c42f user: dan tags: sessions)
2011-07-12
14:48
Cherrypick change [9f14fa56ba] (the fix for [54844eea3f]) from the trunk. (check-in: 7afb2354d3 user: dan tags: branch-3.7.2)
14:38
Merge the improved anti-virus defenses into the trunk. (check-in: 0207fd9b0c user: drh tags: trunk)
14:28
Experimental support for speeding up CREATE INDEX commands using an offline merge sort. (check-in: 30dbf0feab user: dan tags: experimental)
14:02
Revise logic in winDelete to check the file prior to attempting to delete it. (Closed-Leaf check-in: 36f11acc53 user: mistachkin tags: av-defense)
13:51
Improvements to the logging that occurs on an antivirus I/O retry. (check-in: ff0ff75c35 user: drh tags: av-defense)
11:04
Update the anti-virus retry logic for DeleteFile(). Invoke sqlite3_log() for each anti-virus retry. Make the retry delay configurable at compile-time. (check-in: 89f1848d7f user: drh tags: av-defense)
2011-07-11
23:45
Update the TCL commands for setting windows manditory locks. Add test cases for manditory lock delays under windows. (check-in: 03af4c175c user: drh tags: trunk)
19:45
Modifications so that the sessions extension works with blob handles. (check-in: 82ac16c4f8 user: dan tags: sessions)
18:17
Change the windows backend to retry read and write requests if the encounter ERROR_LOCK_VIOLATION and ERROR_SHARING_VIOLATION errors - which we think sometimes happens due to aggressive anti-virus software. (check-in: c20aca0661 user: drh tags: trunk)
15:52
Here is an attempted enhancement to the query planner that didn't work out. But it seems good to save this change for historical reference, even if it does not belong on the trunk. (Closed-Leaf check-in: 8daf6e1b42 user: drh tags: query-planner-deadend)
2011-07-09
16:17
Fix harmless compiler warnings on unix. (check-in: 90b1aea174 user: drh tags: trunk)
13:00
In where.c::findIndexCol - make sure that the Expr.op is TK_COLUMN before accessing the Expr.iColumn and Expr.iTable fields. Also fix a couple of unreachable branches. (check-in: 418a4da2a9 user: drh tags: trunk)
2011-07-08
17:02
Change the default chunk size on test_multiplex.c to 2147418112 bytes (formerly 1073741824 bytes) and make the default configurable at compile-time using SQLITE_MULTIPLEX_CHUNK_SIZE and at run-time using the "chunksize" URI query parameter. Add support fo test_multiplex to the shell. (check-in: e305b5a931 user: drh tags: trunk)
16:10
Fix for [54844eea3f]: Do not create automatic indexes on correlated sub-queries. (check-in: 9f14fa56ba user: dan tags: trunk)
13:07
Extend the SQLITE_TESTCTRL_OPTIMIZATIONS option to disable DISTINCT optimizations. (check-in: 18501dd1a8 user: drh tags: trunk)
2011-07-07
08:52
Update the tool/symbols.sh script to check for accidentally exported global variables. (check-in: 71b749a9dc user: drh tags: trunk)
08:19
Add a target to main.mk that will fail if the amalgamation contains any exported symbols that do not begin with "sqlite3_". Run this target from within releasetest.tcl. Add "static" to a couple of private functions in mem3.c. (check-in: a68b6580c7 user: dan tags: trunk)
07:37
Remove accidental global variable "doclist" from fts3Int.h. (check-in: f244b2f395 user: dan tags: trunk)
2011-07-06
09:36
Expose the value of compile time symbol SQLITE_MAX_DEFAULT_PAGE_SIZE to test scripts. (check-in: 335736637c user: dan tags: trunk)
2011-07-04
06:52
Adjust a couple of test scripts so that they work with OMIT_UTF16 builds. (check-in: 6c51bad0a3 user: dan tags: trunk)
2011-07-02
19:12
Add a testcase macro to ensure testing a boundary case in DISTINCT processing. (check-in: ff9fc722dc user: drh tags: trunk)
15:42
Cherrypick change [27c65d4d9c] into the 3.7.2 branch. (check-in: 9bbcd8c076 user: dan tags: branch-3.7.2)
15:32
Ensure that automatic indexes are only created in scenarios where they may be used more than once. (check-in: 27c65d4d9c user: dan tags: trunk)
13:34
Cherrypick [45e581bff7] into the 3.7.2 branch. (check-in: c593792ce0 user: dan tags: branch-3.7.2)
09:46
Merge experimental changes improving optimization of DISTINCT queries with the trunk. (check-in: 45e581bff7 user: dan tags: trunk)
06:44
Fix a broken assert() in where.c. (Closed-Leaf check-in: 090b29177f user: dan tags: experimental)
2011-07-01
18:43
Merge latest trunk changes with experimental branch. (check-in: e56be74eab user: dan tags: experimental)
18:26
Improve use of indexes to optimize DISTINCT queries. (check-in: 6c202ea024 user: dan tags: experimental)
14:22
Test case for ticket [d6ddba6706353915ceed] (check-in: 953e169e8a user: drh tags: trunk)
14:21
Improvements and tests for detection of redundant DISTINCT qualifiers. (check-in: 7337293c87 user: dan tags: experimental)
13:50
Ignore the database name on the target table when parsing a CREATE TABLE statement out of the sqlite_master table. This is a fix for ticket [d6ddba6706353] that preserves backwards compatibility. (check-in: 009c96ea78 user: drh tags: trunk)
2011-06-30
20:17
Experimental changes to improve optimization of DISTINCT queries. (check-in: f7ba0219ef user: dan tags: experimental)
2011-06-29
17:11
Pass the BTREE_UNORDERED hint into both sqlite3BtreeOpen() and into sqlite3BtreeCreateTable(). (check-in: 591de898f4 user: drh tags: trunk)
2011-06-28
17:39
Version 3.7.7.1. (Leaf check-in: af0d91adf4 user: dan tags: release, version-3.7.7.1, branch-3.7.7)
14:16
Merge the fts3-changes branch back into the trunk. (check-in: b9477eb056 user: dan tags: trunk)
11:58
Add a fix and tests for the FTS deferred token logic. (Closed-Leaf check-in: 91daea7d2e user: dan tags: fts3-changes)
09:51
Merge latest trunk changes with fts3-changes branch. (check-in: 226686475c user: dan tags: fts3-changes)
07:15
Changes to allow FTS to be compiled as a loadable module again. (check-in: 29e69f389c user: dan tags: trunk)
2011-06-27
23:39
Update the version number to 3.7.7.1 (check-in: de8ad5f817 user: drh tags: branch-3.7.7)
23:32
Create a branch that contains just the fix for the case_sensitive_like pragma bug, ticket [25ee81271091ec]. (check-in: ec8f23fc04 user: drh tags: branch-3.7.7)
19:37
Remove an unnecessary assignment from vdbeapi.c. (check-in: 6c871ac1fa user: dan tags: trunk)
19:25
Merge latest trunk changes. (check-in: 11ea98e454 user: dan tags: fts3-changes)
19:12
Remove an unnecessary assignment from vdbeapi.c. (check-in: 25e5b7686a user: dan tags: fts3-changes)
16:55
Add a case to permutations.test to run the veryquick test suite using sqlite3_prepare() instead of sqlite3_prepare_v2(). This helps to test the fix for bug [25ee812710]. (check-in: d9f7993bfa user: dan tags: trunk)
11:15
Changes to improve the selection of deferred tokens within phrases. (check-in: 2c4bbd90e2 user: dan tags: fts3-changes)
00:01
Make sure all new statements begin life unexpired, even if they registered functions or did other actions during preparation that would have expired all statements. Fix for ticket [25ee81271091] (check-in: faa38c8724 user: drh tags: trunk)
2011-06-26
23:44
Modifications to the "like.test" script in order to expose the problem reported by ticket [25ee81271091ec27a8c5]. (check-in: c4db5b6406 user: drh tags: trunk)
2011-06-25
21:43
Changes to make pragma synchronous sticky when SQLITE_DEFAULT_WAL_SAFETYLEVEL is used (check-in: c6158b254f user: adam tags: apple-osx)
16:35
Fix test cases so that they work with SQLITE_DEFAULT_WAL_SAFETYLEVEL defined. (check-in: 8f8b373eed user: dan tags: apple-osx)
01:14
Support using nmake via cmd.exe, allow Tcl related variables to be overridden via the environment, and add 'dll' to the 'all' target. (check-in: 0cb0f30603 user: mistachkin tags: trunk)
2011-06-24
21:47
Fix the build. (check-in: 97729542d5 user: drh tags: apple-osx)
20:47
Merging local changes to apple-osx (check-in: 34f0efa2b1 user: adam tags: apple-osx)
18:43
Explicitly cast an argument to printf() to (int), in case the result of the pointer arithmetic expression is a 64-bit integer on some platforms. (check-in: 90cfeaf7b6 user: dan tags: trunk)
13:50
Fix a Windows line ending issue in a test case that was causing an incrblob test to fail. (check-in: afbe9023a7 user: shaneh tags: trunk)
11:29
Fix some harmless compiler warnings that were occurring with THREADSAFE=0. (check-in: 9b191bb4c7 user: drh tags: trunk)
2011-06-23
19:49
Version 3.7.7. (check-in: 4374b7e83e user: drh tags: trunk, release, version-3.7.7)
17:42
Pull the last-minute fixes for 3.7.7 into the apple-osx branch. (check-in: 2d4458af59 user: drh tags: apple-osx)
17:40
Pull the latest version 3.7.7 release-candidate changes into the sessions branch. (check-in: 840bf9c2d9 user: drh tags: sessions)
17:29
Add a bit to the SQLITE_TESTCTRL_OPTIMIZATIONS setting that will disable affinity when writing to any index, regardless of whether or not the index is on a manifestation of a view. This allows better testing of the fix for ticket [91e2e8ba6ff2e2]. (check-in: b61a76a53a user: drh tags: trunk)
17:09
Fix some of the code issues (missing comments etc.) in the new FTS code. (check-in: 8230d83120 user: dan tags: fts3-changes)
16:40
Add a test for ticket [91e2e8ba6f]. No changes to code. (check-in: c271f7e88f user: dan tags: trunk)
16:18
Do not do affinity transformations on inserts into an index for the manifestation of a view or subquery. Fix for ticket [91e2e8ba6ff2e2]. (check-in: 0b3174e0b1 user: drh tags: trunk)
02:30
Pull the latest changes from trunk into the apple-osx branch. (check-in: b5acda0445 user: drh tags: apple-osx)
02:11
Pull the latest trunk changes into the sessions branch. (check-in: 5d95b42946 user: drh tags: sessions)
01:42
Provide the SQLITE_MAX_SCHEMA_RETRY compile-time parameter for adjusting the number of reparse attempts after a schema change. (check-in: 8dca748b23 user: drh tags: trunk)
01:07
Remove unused variables from test_vfs.c (check-in: 07884cc218 user: drh tags: trunk)
00:59
If "PRAGMA page_size" commands are not authorized, the FTS module will assume a page size of 1024. (check-in: ba39382ef5 user: drh tags: trunk)
2011-06-22
20:14
Added limited support to omittest.tcl for nmake makefile. (check-in: f5f46dc7b8 user: shaneh tags: trunk)
15:40
Update a test case for Windows that failed because of size_hint implementation differences. (check-in: f853fa63c3 user: shaneh tags: trunk)
15:21
Print a warning in oserror-1.1.1 that a valgrind warning might occur but that it is benign. (check-in: 13e96376e1 user: drh tags: trunk)
14:43
Adjust a test case in triggerC.test to handle non-default SQLITE_MAX_TRIGGER_DEPTH settings. (check-in: f14339c54b user: shaneh tags: trunk)
14:21
Add a flush of stdout so some test code reading from a command pipe works correctly on Windows. (check-in: 6705f21eff user: shaneh tags: trunk)
12:01
Update sessions branch with latest trunk changes. (check-in: 48d5cab3ac user: dan tags: sessions)
11:24
Update apple-osx branch with the latest trunk changes. (check-in: fb7ad09dec user: dan tags: apple-osx)
10:56
Change a test case in types3.test slightly so that it works with the latest versions of Tcl. (check-in: 6e1f4df51a user: dan tags: trunk)
10:37
Modify the implementation of the test code in test_vfs.c so that test VFS objects may be invoked recursively. (check-in: 065e5a5ea4 user: dan tags: trunk)
2011-06-21
19:39
Fix typo in previous tester.tcl commit. (check-in: c2e5faca14 user: shaneh tags: trunk)
19:38
Update filepath_normalize for unix. (check-in: 30dd4f8879 user: shaneh tags: trunk)
19:30
Update a few of the uri tests to work on Windows. (check-in: a2a0cd4aa4 user: shaneh tags: trunk)
18:12
Updates to nmake makefile to allow options to be passed to lib.exe. (check-in: 9eac4a6bbe user: shaneh tags: trunk)
15:58
Give the osLocaltime() function file scope in date.c. (check-in: 1abce55a1e user: dan tags: branch-3.7.6)
15:54
Give the osLocaltime() function file scope in date.c. (check-in: 1577484595 user: drh tags: trunk)
15:38
Initialize a variable introduced as part of the fix for [bd484a090c8077] in order to silence a compiler warning. (check-in: 6b9877fa43 user: dan tags: trunk)
15:27
Add a missing initializer for sqlite3GlobalConfig.bLocaltimeFault. (check-in: 7fe8ba2ec7 user: dan tags: trunk)
15:24
Fix main.mk so that the "amalgamation-testfixture" target works again. (check-in: 22265323f7 user: dan tags: trunk)
15:15
Backport the localtime() failure fix of ticket [bd484a090c8077] to the 3.7.6 branch. (check-in: 5d4b0c5bfc user: drh tags: branch-3.7.6)
15:01
Rework the localtime logic yet again in order to make all branches reachable and to follow GNU standards for HAVE_LOCALTIME_R-type macros. Ticket [bd484a090c8077]. (check-in: 176248095b user: drh tags: trunk)
14:35
Simplifications to the localtime() interface. Fix the case where localtime_r() is available so that it works. Ticket [bd484a090c8077]. (check-in: 5b68dae320 user: drh tags: trunk)
13:46
Change the error message returned when localtime_r() fails to "local time unavailable". Ticket [bd484a090c8077] (check-in: 0e82175fd8 user: dan tags: trunk)
12:53
Fix an error made in the previous commit. The parameters to localtime_s() were accidentally reversed. Ticket [bd484a090c807]. (check-in: 97e86ec6df user: dan tags: trunk)
12:47
Return an error if localtime_r() fails within one of the date/time functions. Fix for [bd484a090c]. (check-in: 76ae8257ef user: dan tags: trunk)
03:36
Add a new AWK script in the tool/ folder for converting text files into C string literals. Use it for building sqlite3_analyzer. (check-in: dcb46d3f68 user: drh tags: trunk)
01:30
Merge the latest trunk changes into the apple-osx branch. (check-in: 76005fdca0 user: drh tags: apple-osx)
01:29
Merge the latest trunk changes into the sessions branch. (check-in: f3d148e0d1 user: drh tags: sessions)
2011-06-20
23:51
More typo fixes in evidence marks. No code changes. (check-in: e60eefc76f user: drh tags: trunk)
22:34
Fix typos in evidence marks on tests. (check-in: bd980be471 user: drh tags: trunk)
21:47
Fix more documentation typos. (check-in: b9cbab739a user: drh tags: trunk)
20:52
Add ability to pass linker specific options to nmake makefile. (check-in: b4f09c9393 user: shaneh tags: trunk)
20:50
Fix a couple of compiler issues on Windows due to warning clean up. (check-in: 81e6f151d3 user: shaneh tags: trunk)
20:48
Add additional error check for disk full on Windows. (check-in: 3ee5d1a51d user: shaneh tags: trunk)
20:39
Fix documentation typos. No changes to code. (check-in: 3276f3f7c9 user: drh tags: trunk)
20:15
Remove the SQLITE_OMIT_CONFLICT_CLAUSE preprocessor define which was no longer in use. (check-in: 9024955973 user: drh tags: trunk)
19:00
More compiler warning fixes. (check-in: ed2dda9329 user: drh tags: trunk)
18:27
Fix compiler warnings in lemon by removing some of the code added by Ryan Gordon in [1e8b842039cc0]. (check-in: 76b18b2be0 user: drh tags: trunk)
18:00
Rework the autoconf script to better deal with utime() and dlopen(). (check-in: f69ed286ff user: drh tags: trunk)
17:41
Update a couple test scripts to account for more floating point display variation in Windows-based versions of TCL. (check-in: a4a8402bfe user: shaneh tags: trunk)
17:24
Fix various harmless compiler warnings in FTS3 and RTREE. (check-in: fe62179efd user: drh tags: trunk)
15:24
Enable crnl to nl translation for the mksqlite3c.tcl script. (check-in: 161379d205 user: drh tags: trunk)
12:24
Update some test cases in fts4aa.test. (check-in: 65e5f7706d user: dan tags: trunk)
11:57
Merge the latest trunk changes into the apple-osx branch. (check-in: 4c69e827f4 user: drh tags: apple-osx)
11:17
Merge trunk changes with sessions branch. (check-in: 699b884383 user: dan tags: sessions)
11:15
Fix a problem where FTS test code was not being included in the testfixture build when SQLITE_ENABLE_FTS4 was defined. (check-in: e539d08a4d user: dan tags: trunk)
10:46
Add tests for the "column:term" query syntax to fts3auto.test. (check-in: d138b0e659 user: dan tags: trunk)
10:44
Merge the latest trunk changes into the sessions branch. (check-in: 4c5e276c90 user: drh tags: sessions)
2011-06-19
21:17
Do not run test tkt-2d1a5c67d.test in the inmemory_journal permutation since that test requires WAL mode which does not work with inmemory_journal. (check-in: 228c43c726 user: drh tags: trunk)
2011-06-17
18:52
Fix a header dependency in nmake Makefile. (check-in: 54492212af user: shaneh tags: trunk)
17:37
Avoid loading doclists for infrequent terms that are part of phrases twice. (check-in: 8f939723f7 user: dan tags: trunk)
16:04
Add a missing declaration to fts3Int.h. (check-in: 3bfd4466f5 user: dan tags: trunk)
15:57
Fix a few more issues with the nmake makefile. (check-in: a117005f50 user: shaneh tags: trunk)
15:55
Update walro.test script for Windows. (check-in: d6443f8eb3 user: shaneh tags: trunk)
15:54
Force almagamation gen scripts to use unix line endings for consistency across platforms. (check-in: a4adc7f78b user: shaneh tags: trunk)
07:22
More updates to the nmake makefile. (check-in: 55bb56d336 user: shaneh tags: trunk)
07:07
Add Microsoft nmake compatible makefile; update a few test cases for Windows. (check-in: a7590af65f user: shaneh tags: trunk)
2011-06-16
16:06
Fix a problem with NEAR queries executed inside a transaction that writes the FTS table. (check-in: 051c756c36 user: dan tags: trunk)
00:54
Changes to #ifdefs so that the build goes correctly if the only FTS macro defined is SQLITE_ENABLE_FTS4. (check-in: a0b43a320e user: drh tags: trunk)
2011-06-15
23:34
Fix the multiplex.test module so that it works with the inmemory_journal permutation. (check-in: 03d9480fc4 user: drh tags: trunk)
19:18
Further tweaks to the wal7.test test case. (check-in: 177e2d72a8 user: drh tags: trunk)
17:04
Add a couple of pointer type casts to test file test_quota.c. (check-in: 0df061b055 user: dan tags: trunk)
16:07
Fix the wal7.test script so that it works even if secure_delete is engaged. (check-in: 68fb7a548c user: drh tags: trunk)
13:11
Merge the improved incremental doclist loading test from the broken-build branch (which is now fixed) into trunk. (check-in: f9750870ee user: drh tags: trunk)
13:02
Fix so that the TCL test harness works even if SQLITE_ENABLE_FTS is omitted. (Closed-Leaf check-in: 63ebcb52a1 user: drh tags: broken-build)
12:43
Fix a couple of compiler warnings. (check-in: 3899f3b95e user: drh tags: broken-build)
08:30
Add an interface to better test incremental loading of doclists by FTS4. Also some tests for this and term prefix queries. (check-in: 7a3813138d user: dan tags: broken-build)
2011-06-14
14:18
Fix a memory leak that can follow an OOM error in a user-function that uses sqlite3_set_auxdata(). (check-in: 0185c4b689 user: dan tags: trunk)
11:50
Merge fts3-prefix-search branch with trunk. (check-in: b1f9c1e0ac user: dan tags: trunk)
11:32
Add a couple of extra tests. (Closed-Leaf check-in: aefd46dfae user: dan tags: fts3-prefix-search)
09:00
Fix another bug caused by NEAR/matchinfo/order=DESC interaction. (check-in: 04907fbade user: dan tags: fts3-prefix-search)
07:22
Merge recent trunk changes into fts3-prefix-search branch. (check-in: 135ce30f62 user: dan tags: fts3-prefix-search)
07:14
Remove unused parameters from internal fts3 function. (check-in: 06de3f2cbc user: dan tags: fts3-prefix-search)
2011-06-13
18:21
Update trace2.test to account for new FTS queries. (check-in: 2c20129297 user: dan tags: fts3-prefix-search)
17:00
Add tests for deferred tokens to fts3auto.test. Fix a problem with OR queries and deferred tokens. (check-in: b9fb69e55b user: dan tags: fts3-prefix-search)
13:48
Changes to fts3auto.test to test OR, AND and NOT operations. (check-in: e4ab6cdb10 user: dan tags: fts3-prefix-search)
12:19
Use only unsigned values in the implementatin of LIKE and GLOB so that values won't overflow to negative when dealing with malformed UTF8. (check-in: 77f01578bb user: drh tags: trunk)
09:11
Fix a bug exposed by combining matchinfo(), NEAR and "ORDER BY rowid DESC". (check-in: 5f6b87f420 user: dan tags: fts3-prefix-search)
2011-06-10
18:33
When updating a field that requires foreign key constraints be checked, ensure that the indexes and tables are consistent when the FK logic is run. Otherwise, it may detect the inconsistency and report database corruption. (check-in: 2b3d9996a8 user: dan tags: trunk)
16:33
Fix minor problems with foreign key constraints where the parent table is the same as the child table. (check-in: 442d8d8bfe user: dan tags: trunk)
2011-06-09
17:53
Fix a line in pcache1.c where a global data structure is accessed without using the GLOBAL() macro. This causes a subtle malfunction on test systems that use SQLITE_OMIT_WSD. (check-in: b11b2e1f8c user: dan tags: trunk)
10:48
Fix problems to do with using both OR and NEAR operators in a single expression. (check-in: 4e8dd19eef user: dan tags: fts3-prefix-search)
2011-06-08
18:39
Fix various issues to do with deferred tokens, NEAR expressions and matchinfo(). (check-in: 3972a787df user: dan tags: fts3-prefix-search)
2011-06-07
18:35
Have NEAR queries use incremental merging. Fix issues surrounding the deferred token optimization. (check-in: 9d10a6846b user: dan tags: fts3-prefix-search)
18:31
Fix a comment type on the description of the Schema object. (check-in: 095cd9a6ec user: drh tags: trunk)
2011-06-06
18:14
Merge the latest trunk changes into the fts3-prefix-search branch. (check-in: 567dd84359 user: drh tags: fts3-prefix-search)
14:51
Modify fts3rnd.test to run tests for both "ORDER BY docid ASC" and "ORDER BY docid DESC" with both order=ASC and order=DESC FTS tables. Fixes for some bugs found. (check-in: 89f2f482e0 user: dan tags: fts3-prefix-search)
13:38
Add assert() statements to verify that u16 pointers associated with the enhancement in [897f56a158] are always 2-byte aligned. (check-in: 98ccfa930e user: drh tags: trunk)
06:55
Clean up the code for processing FTS4 options a bit. (check-in: 0425138a23 user: dan tags: fts3-prefix-search)
2011-06-04
20:13
Remove some unreachable code. (check-in: 650e1a79ed user: dan tags: fts3-prefix-search)
20:04
Allow the "order=DESC" and "order=ASC" parameters in FTS4 "CREATE VIRTUAL TABLE" statements. Tables created with "order=DESC" store all doclists in descending order, which allows optimizations normally applied to "ORDER BY docid ASC" queries to be used with "ORDER BY docid DESC" queries instead. (check-in: f6a0193f5a user: dan tags: fts3-prefix-search)
01:43
Performance improvement to the btree search routine. (check-in: 65db822f20 user: drh tags: trunk)
2011-06-03
23:28
Performance improvements on memory copies inside of btree by moving 2 bytes at a time instead of just 1 byte at a time. (check-in: 897f56a158 user: drh tags: trunk)
21:34
Performance enhancement to the blob-literal tokenizer. (check-in: 61aa2031f1 user: drh tags: trunk)
20:11
Create and use a function especially for adding the ParseSchema opcode. This gives a small reduction in code and a small performance increase. (check-in: 957b2ab67c user: drh tags: trunk)
18:00
FTS changes: Remove unreachable code. Fix bugs. When processing a large doclist incrementally, read from disk incrementally too. (check-in: a4c7e28208 user: dan tags: fts3-prefix-search)
17:50
Factor an "if" out of a loop in balance_nonroot() for about a 1% performance increase. (check-in: 1bd72d0c61 user: drh tags: trunk)
14:19
Hush some harmless compiler warnings in the URI parsing logic. (check-in: 0206bc6f87 user: drh tags: trunk)
13:28
Include more detailed version information in the command-line shell output. (check-in: 049c3c42fd user: drh tags: trunk)
13:06
Add shell scripts used for testing compiler warnings (tool/warnings.sh), for verifying that the library exports the correct symbols (tool/symbols.sh), and to demonstrate building a full-featured command-line shell (tool/build-shell.sh). (check-in: 3aca9a92c8 user: drh tags: trunk)
13:02
Fix the build when using SQLITE_OMIT_PRAGMA. (check-in: 051f4635bf user: drh tags: trunk)
12:15
Fix an #ifdef of SQLITE_OMIT_VIRTUALTABLE that had an extra "_" character. (check-in: 93e0be2bbf user: drh tags: trunk)
2011-06-02
19:57
Changes to improve performance and support LIMIT clauses on fts3 tables. This branch is unstable for now. (check-in: 28149a7882 user: dan tags: fts3-prefix-search)
17:24
Fix a faulty assert() in the WAL-mode logic for read-only shared memory. (check-in: a13cfe6162 user: drh tags: trunk)
15:48
Add a missing check for out-of-memory in the lemon code generator. (check-in: efb20b9da6 user: drh tags: trunk)
13:07
Merge the latest trunk changes, including the read-only shared memory enhancement, into the apple-osx branch. (check-in: ce5f95dee6 user: drh tags: apple-osx)
13:04
Merge the read-only shared memory branch into trunk. After this merge, an unprivileged process can open WAL-mode databases owned by another user as long as a database connection with write permission exists on the database file and if the readonly_shm=1 URI query parameter is supplied. (check-in: 19084a6641 user: drh tags: trunk)
2011-06-01
20:13
Make use of the sqlite3GetBoolean() interface for more robust processing of the readonly_shm query parameter inside of unixShmMap(). (Closed-Leaf check-in: 1f930d7e04 user: drh tags: wal-readonly)
20:01
Simplify the wal-readonly branch so that it does not require changes to anything other than os_unix.c and wal.c and a couple of new error codes. (check-in: d6b4709de4 user: drh tags: wal-readonly)
19:44
Pull the latest trunk changes into the wal-readonly branch. (check-in: 0b63b71357 user: drh tags: wal-readonly)
19:16
Avoid unnecessary duplication of SQL parameter names. (check-in: e704e8690a user: drh tags: trunk)
18:15
Refactor the SQL parameter processing so that parameter names for values that are optimized out of the prepare statement are not forgotten. (check-in: b3aaf715b6 user: drh tags: trunk)
11:26
Toward version 3.7.5.1. This check-in updates the version number and also patches the pager so that it never spills cache while in WAL mode. The latter patch fixes ticket [2d1a5c67dfc23] and also prevents excessive WAL file sizes if the pager cache starts thrashing. A few test cases fail. (Leaf check-in: 2e5a912ad7 user: drh tags: branch-3.7.5)
2011-05-31
17:08
Merge the latest trunk changes into the wal-readonly branch. (check-in: 2c6b5a28e3 user: drh tags: wal-readonly)
16:50
Fix a problem in the sqlite3TestErrorName() function (used only for testing) that appears to have originated from a bad merge. (check-in: a0ae314c7f user: drh tags: trunk)
11:56
Update the documentation to state that any parameter that is optimized out of a prepared statement becomes an anonymous parameter for which sqlite3_bind_parameter_name() returns NULL. (check-in: 701b8a23e3 user: drh tags: trunk)
2011-05-30
23:42
Minor performance improvements. (check-in: f9950c6af1 user: drh tags: trunk)
15:06
Update evidence marks on the URI filename tests to conform to the latest documentation. (check-in: 1bab03c481 user: drh tags: trunk)
14:35
Make sure the P5 argument to the OP_VUpdate opcode is always set to a valid conflict resolution code. (check-in: e3350dbd9f user: drh tags: trunk)
13:39
Merge the latest trunk changes into the sessions branch. (check-in: 832886b1e6 user: drh tags: sessions)
2011-05-28
19:24
Fix a "#ifdef" from check-in [03f7d36a8a] that should have been "#ifndef". (check-in: edb865c354 user: drh tags: trunk)
15:57
Minor changes made while planning a larger change. (check-in: 84097a4c75 user: dan tags: fts3-prefix-search)
15:53
Print a log message on each cache spill if compiled with SQLITE_LOG_CACHE_SPILL. (check-in: 5f15579f8c user: drh tags: trunk)
2011-05-26
14:19
Changes to work with SQLITE_OMIT_VIRTUAL_TABLE. (check-in: 03f7d36a8a user: drh tags: trunk)
2011-05-25
23:18
Fix some minor and harmless compiler warnings. (check-in: a4755e7088 user: drh tags: trunk)
20:25
Ignore malloc failures within the WAL file truncation attempt for journal_size_limit. (check-in: dd19105aa9 user: drh tags: trunk)
19:17
If a prefix index of size N is not present, use a prefix index of size N+1 along with the terms index for queries for prefixes of length N. (check-in: cc83991caa user: dan tags: fts3-prefix-search)
18:47
Merge trunk changes into experimental fts3-prefix-search branch. (check-in: f0f0a03db2 user: dan tags: fts3-prefix-search)
18:46
Fix a case where a malloc() error could lead to mismatched virtual-table xBegin/xCommit/xRollback callbacks. (check-in: d807304a69 user: dan tags: trunk)
18:34
Change fts4 so that the prefix= parameter is passes a comma-separated list of integers. For each integer N, a separate index of all prefixes of length N bytes is created. (check-in: be59bf4940 user: dan tags: fts3-prefix-search)
15:54
Fix a compiler warning. (check-in: 6df99e52da user: drh tags: trunk)
01:16
Changes to savepoint in virtual tables for simpler and more consistent operation. (check-in: 92f26a8b8f user: drh tags: trunk)
2011-05-24
18:49
If the fts4 option prefix=1 is specified, have the fts4 module maintain an index of prefixes as well as terms. (check-in: b5bdc63989 user: dan tags: fts3-prefix-search)
15:36
Do not invoke the xRollbackTo or xRelease methods of a virtual table without having first invoked an appropriate xSavepoint method. Add assert() statements to FTS3/4 to verify that this is happening in all cases. (check-in: 651ef24249 user: drh tags: trunk)
00:35
Make sure the savepoint index is correct one calls to sqlite3VtabSavepoint with SAVEPOINT_BEGIN. (check-in: a9d095660c user: drh tags: trunk)
2011-05-23
18:37
Minor cleanups to the header comments on various test_*.c file, to make the suitable for programmer-level documentation. (check-in: a65d043a2a user: drh tags: trunk)
2011-05-20
20:42
Adjustments to documentation hyperlinks to accommodate the new VFS documentation. (check-in: 139a8f53ae user: drh tags: trunk)
13:26
Add a big comment to the top of test_vfstrace.c to explain how to compile and use that module. (check-in: a6a0fefbe5 user: drh tags: trunk)
01:50
Fix the URI test script so that it works even if there is a subdirectory named "test". (check-in: 2018d4e108 user: drh tags: trunk)
01:49
Mark an unreachable branch in the recent WAL problem as unreachable. (check-in: 3e8a29ff89 user: drh tags: trunk)
2011-05-19
13:26
Version 3.7.6.3. (check-in: ed1da510a2 user: drh tags: release, branch-3.7.6, version-3.7.6.3)
07:53
Add another test for [2d1a5c67df]. (check-in: 97fcd9e888 user: dan tags: trunk)
02:48
Merge all the latest trunk changes into the sessions branch, especially the disappearing WAL transaction fix. (check-in: 5b1b536cf8 user: drh tags: sessions)
02:34
Bring the apple-wal-readonly branch up to date with the latest changes in apple-osx, and especially the fix for disappearing WAL transactions. (Leaf check-in: 5791232778 user: drh tags: apple-wal-readonly)
01:51
Pull all the latest trunk changes, and especially the fix for WAL cache spills causing transactions to disappear, into the apple-osx branch. (check-in: 8d1a6bb002 user: drh tags: apple-osx)
01:46
Backport the [67bf1c9a88] fix for vanishing WAL transactions due to small cache spillage. Ticket [2d1a5c67dfc236]. Also bump the version number to 3.7.6.3 in preparation for patch release. (check-in: e4d0f7ace8 user: drh tags: branch-3.7.6)
01:21
When committing a WAL transaction, make sure at least one page is written to the WAL file so that the WAL subsystem will have a page on which to set the commit flag. Ticket [2d1a5c67dfc236]. (check-in: 67bf1c9a88 user: drh tags: trunk)
2011-05-18
17:15
Enable URI filenames in the command-line shell. Add a check to the beginning of the shell to make sure it is compiled with the same SQLite source and header. (check-in: de58cb2838 user: drh tags: trunk)
03:02
Make sure the multiplexor shim uses a full pathname for temp file that it creates. (check-in: 186d7ff1d9 user: drh tags: trunk)
02:41
Remove unreachable branches from the 8.3 filename logic. (check-in: 4f7e7b44f2 user: drh tags: trunk)
02:22
Update multiplex VFS to handle empty filenames which can occur for during vacuuming (temp file names.) (check-in: a074986045 user: shaneh tags: trunk)
2011-05-17
20:36
Add the ability to limit filenames to 8+3 using the SQLITE_ENABLE_8_3_NAMES compile-time option together with a URI parameter of "8_3_names=1". (check-in: 96d6098560 user: drh tags: trunk)
19:43
Fix an off-by-one error in the new sqlite3_uri_parameter() function. (check-in: 9593a64079 user: drh tags: trunk)
18:53
Add the sqlite3_uri_parameter() interface function for use in building new VFSes. (check-in: 6b5de95fb5 user: drh tags: trunk)
15:56
Add extended return code SQLITE_CORRUPT_VTAB. Returned when the tcontents of the sqlite tables used internally by a virtual table module are invalid or inconsistent. (check-in: 8844e8bfb8 user: dan tags: trunk)
15:21
Avoid exceeding array bounds when reading a corrupt database file in autovacuum mode. Fixes a problem discovered by John Regehr and Peng Li using a customized clang compiler. (check-in: f7c525f5fc user: drh tags: trunk)
14:41
Avoid including fts3_term.c in the amalgamation, as it contains test code only. (check-in: f392b7ae02 user: dan tags: trunk)
2011-05-16
21:00
Enhance WAL mode so that the WAL file honors the journal size limit set by PRAGMA journal_size_limit. (check-in: db7e500f69 user: drh tags: trunk)
2011-05-13
18:51
Make arrangements so that virtual table inserts into shadow tables do not modify the sqlite3_last_insert_rowid() return. Document that this is how sqlite3_last_insert_rowid() works. (check-in: e569f18b98 user: drh tags: trunk)
17:11
Rather than document goofy behavior, it seems better to make the behavior less goofy. (Was: <i> Updates to the sqlite3_last_insert_rowid() documentation - to make it clear that the function does not work for virtual tables.</i>) (Closed-Leaf check-in: f88dfac383 user: drh tags: mistake)
17:11
Also add fts3_term.c to main.mk. (check-in: 966f2d2c1f user: drh tags: trunk)
2011-05-12
21:01
Add fts3_term.c to amalg gen script and configure input files. (check-in: 6ee0773290 user: shaneh tags: trunk)
15:32
Pull in the patches to support read-only WAL databases into a new branch off of the apple-osx branch. This also pulls in all the other pending 3.7.7 changes such as URI support. (check-in: 97b9801076 user: drh tags: apple-wal-readonly)
2011-05-11
20:54
Improvements to documentation hyperlinks. Change the value of SQLITE_OPEN_URI to an unreserved value. (check-in: 851ab75d5f user: drh tags: trunk)
19:00
URI filename documentation updates. (check-in: 8885c8677b user: drh tags: trunk)
17:36
Add missing comments associated with readonly shm changes. (check-in: 6a2ea52e6c user: dan tags: wal-readonly)
15:53
Merge latest trunk changes. Add a couple of readonly shm tests. (check-in: cde45a033e user: dan tags: wal-readonly)
14:57
Only open a read-only connection to shared-memory if the "readonly_shm=1" option is specified as part of the database file URI (and if a read-write connection fails). (check-in: 671ba5fc59 user: dan tags: wal-readonly)
2011-05-10
18:39
Have flags passed to sqlite3_open_v2() apply to the main and any attached databases. And change things so that any "mode=xxx" or "cache=xxx" options specified as part of a URI for the main database do not also apply to attached databases. (check-in: 3e49091530 user: dan tags: trunk)
17:43
Update URI test cases to account for the new error message format. (check-in: 5bde568028 user: dan tags: trunk)
17:31
Add experimental support for read-only connections to WAL databases. (check-in: bb59f9862d user: dan tags: wal-readonly)
14:52
Provide the ability to specify an alternative mutex subsystem at compile-time. - This check-in should have gone on the trunk, not on the 3.7.6 branch. (Closed-Leaf check-in: 489c453d4e user: drh tags: mistake)
10:17
Add new documentation keywords to the sqlite3_vfs description. (check-in: ad3389a9ab user: drh tags: trunk)
2011-05-09
19:20
Return a suitable error message if the mode= argument to a URI specifies a higher mode than what is allowed by context. Other minor cleanups for the URI parsing logic. (check-in: d9bc1c7fe0 user: drh tags: trunk)
2011-05-07
18:40
Set the sqlite3.mallocFailed flag if sqlite3ParseUri fails with SQLITE_NOMEM. (check-in: ca3797d496 user: drh tags: trunk)
18:18
Return SQLITE_MISUSE from the sqlite3_open_v2() function if the 3rd parameter is not a valid set of bit-values. (check-in: 3c926ce097 user: drh tags: trunk)
14:40
Fix minor compiler warnings. (check-in: 139eecbe1b user: drh tags: trunk)
2011-05-06
18:55
Merge the uri branch with the trunk. (check-in: 88df33c45f user: dan tags: trunk)
18:53
Remove some unnecessary modifications from the uri branch. Add a test to show that ATTACH only interprets its argument as a URI if the connection was opened with SQLITE_OPEN_URI (or URI interpretation is globally enabled). (Closed-Leaf check-in: aa90b94325 user: dan tags: uri)
18:34
Update comments and documentation associated with new URI parsing code. Add test file e_uri.test, containing tests mapped to documentation regarding URI filenames. (check-in: 92751788ea user: dan tags: uri)
13:58
Merge windows test case fixes. No changes to code. (check-in: 2e5c0ed724 user: dan tags: trunk)
00:19
Increase the iVersion for sqlite3_module needed for the xSavepoint, xRelease, and xRollbackTo methods from 1 to 2. This is so that it will conform to published documentation. (check-in: 0f4954e979 user: drh tags: trunk)
2011-05-05
23:07
Fix an incorrect assert() in sqlite3_value_config(). Updates to the sqlite3_value_config() documentation. (check-in: 22cbc01a26 user: drh tags: trunk)
19:44
Changes to various test scripts so that they pass on windows. (Closed-Leaf check-in: 1586244b6d user: dan tags: win32-test-fixes)
18:53
Have the xFullpath method in os_win.c discard the initial "/" if a filename begins with "/X:", where X is any alphabetic character. Also fix some test issues in uri.test. (check-in: fe57a8f621 user: dan tags: uri)
17:41
Fix sqlite3_vtab_on_conflict() to return the correct values for ABORT, FAIL, and IGNORE. (check-in: f0617d619d user: drh tags: trunk)
17:00
Fix a bug in memory usage tracking that was introduced by check-in [4e33a0eaf83922]. (check-in: 8ba456ae0b user: drh tags: trunk)
15:52
Merge the latest trunk changes into the apple-osx branch. (check-in: f9b149e538 user: drh tags: apple-osx)
15:46
Merge the latest trunk changes into the sessions branch. (check-in: 6883580e6c user: drh tags: sessions)
15:39
Bump the version number to 3.7.7 on account of the new sqlite3_vtab_config() and sqlite3_vtab_on_conflict() interfaces. Updates to the documentation on those interfaces. (check-in: 930be6a1bd user: drh tags: trunk)
13:54
Change sqlite3_create_module() so that it avoids resetting the schema as long as preexisting modules are unchanged. (check-in: 8485855afc user: drh tags: trunk)
13:53
Add a #include to test_demovfs.c in an effort to get it to compile on Solaris. (check-in: 8f06ea33c9 user: drh tags: trunk)
12:35
Fix a problem in the URI code preventing the amalgamation from building. Add comments describing SQLITE_CONFIG_URI and SQLITE_OPEN_URI to sqlite.h.in. (check-in: ea562d6d67 user: dan tags: uri)
2011-05-04
17:35
Merge latest trunk changes with uri branch. (check-in: af279f367e user: dan tags: uri)
17:23
Merge vtab-conflict branch with trunk. (check-in: 8f9666af5f user: dan tags: trunk)
16:30
Fix a couple of compiler warnings in the FTS code. (Closed-Leaf check-in: 1a11335970 user: dan tags: vtab-conflict)
15:41
Fix a performance problem in queries that use "ORDER BY rowid DESC" and one or more FTS auxiliary functions. (check-in: 95e09b20e9 user: dan tags: vtab-conflict)
12:52
Optimize "ORDER BY rowid/docid DESC/ASC" clauses on FTS tables. (check-in: 13395121e3 user: dan tags: vtab-conflict)
2011-05-03
15:09
Remove some unused code related to URI parsing. (check-in: 008cd0ef6b user: dan tags: uri)
11:53
Allow only "localhost" and "" as authorities in URIs. Do not allow escapes (%HH) in the authority part of a URI. (check-in: b8a0f1b523 user: dan tags: uri)
10:22
Change the supported URI options to "mode" and "cache". (check-in: 0a694a0b27 user: dan tags: uri)
2011-05-02
17:41
Merge the latest trunk changes into uri branch. (check-in: 7fdd0786c7 user: dan tags: uri)
2011-05-01
22:57
Backport check-ins [0900e35348f4b9bf3] and [4fead8e714c7e50] to the 3.7.2 branch. These check-ins provide hints to the btree layer for when it is possible to use a hash table rather than a btree to implement an index. The SQLite BTree layer does not use these hints, but alternative btree layers might. (check-in: 7155e6f328 user: drh tags: branch-3.7.2)
2011-04-28
18:46
Have r-tree virtual tables support on-conflict clauses. (check-in: 822ab52f10 user: dan tags: vtab-conflict)
2011-04-27
19:54
In windows, ignore ERROR_NOT_LOCKED when calling the read-lock removal routine. (check-in: f55156c519 user: drh tags: trunk)
18:08
Change the name of an internal function to avoid conflicts with the math library. (check-in: 1bd1484cd7 user: drh tags: trunk)
16:05
Expose the UTF8 to MBCS conversion routine in os_win.c to external applications. (check-in: 7b479b9bee user: drh tags: trunk)
16:02
Add documentation for the newly introduced sqlite3_vtab_config() and on_conflict() API functions. Test that encountering an SQLITE_MISMATCH in fts3 does not corrupt the full text index. (check-in: abdd70ae04 user: dan tags: vtab-conflict)
12:08
Fix problems related to savepoint rollback and fts3. (check-in: ff69f823f2 user: dan tags: vtab-conflict)
01:00
Fix a comment typo. (check-in: 19c6625abd user: drh tags: trunk)
2011-04-26
19:21
Extra tests for fts3. And fixes for conflict-handling related problems in fts3. (check-in: fb4a355871 user: dan tags: vtab-conflict)
2011-04-25
18:49
Add support for on conflict clauses to fts3/fts4. (check-in: 6d2633a6d0 user: dan tags: vtab-conflict)
18:20
Test case for the ".log" command to the command-line shell. (check-in: 7d0ff26a95 user: drh tags: trunk)
18:03
Add the (deliberately undocumented) sqlite_log() SQL function as a built-in. (check-in: f7806e0399 user: drh tags: trunk)
18:01
Invoke the unix open() system call through a wrapper to avoid problems resulting from differing declarations to that function in various systems. (check-in: 4c7ff4dd35 user: drh tags: trunk)
2011-04-24
22:56
Disable the transfer optimization if the destination table contains any foreign key constraint and foreign key constraints are enabled. Ticket [6284df89debdf]. (check-in: ddeea5ab5f user: drh tags: trunk)
2011-04-23
19:06
Test that it is now possible to use different VFSs for two databases attached to a single handle. (check-in: 2af51f856c user: dan tags: uri)
15:54
Have the ATTACH command do URI interpretation in the same way as sqlite3_open() and sqlite3_open_v2() do. (check-in: 68240e75e8 user: dan tags: uri)
10:12
Fix parsing of %00 in uri handling code. (check-in: 44f0874a95 user: dan tags: uri)
2011-04-22
22:55
Add the "getlock" utility for determining if a database file (on unix) is currently locked. (check-in: 0ab24b133e user: drh tags: trunk)
19:37
Add the start of the "uri-filenames" feature. (check-in: b8a8132e71 user: dan tags: uri)
2011-04-20
13:35
Update a comment in e_createtable.test. (check-in: d8b149f5e4 user: dan tags: trunk)
2011-04-19
06:43
Avoid passing NULL to the xOpen method of an FTS3/4 tokenizer. (check-in: 0dd09fc034 user: dan tags: trunk)
2011-04-18
17:30
Merge trunk changes into sessions branch. (check-in: b91b4c31fe user: dan tags: sessions)
15:47
Fix further missing comments and other minor issues in the session module code. (check-in: 99f0f35092 user: dan tags: sessions)
12:05
Fix some missing comments and other issues with session module code. (check-in: 20d7c28023 user: dan tags: sessions)
07:36
Further coverage tests for the session module. (check-in: 69a01c708b user: dan tags: sessions)
2011-04-17
17:25
Version 3.7.6.2 (check-in: 154ddbc171 user: drh tags: release, version-3.7.6.2, branch-3.7.6)
17:17
Bump the version number to 3.7.6.2 (check-in: c429edf30a user: drh tags: branch-3.7.6)
17:14
Change the prototype for the open() system call to agree with Posix. Though a faulty function prototype in a pointer cast is a seemingly innocuous error, the correct prototype is necessary for pthreads to work correctly on NetBSD. (check-in: 986f2f25ba user: drh tags: branch-3.7.6)
17:09
Change the prototype for the open() system call to agree with Posix. Though a faulty function prototype in a pointer cast is a seemingly innocuous error, the correct prototype is necessary for pthreads to work correctly on NetBSD. (check-in: 3e135748f1 user: drh tags: trunk)
00:55
Adjust some test cases in triggerC.test to handle non-default SQLITE_MAX_TRIGGER_DEPTH settings. (check-in: 9d6c6129fd user: shaneh tags: trunk)
2011-04-16
19:23
Improve test coverage of session module. (check-in: f46d4b641d user: dan tags: sessions)
2011-04-15
21:37
Adjust test case in quota.test to handle Windows dir seperators. (check-in: 75ed1bcee8 user: shaneh tags: trunk)
20:18
Updates to test code in os_win to bring winSync inline with unixSync (test code only). Updated a few test scripts to account for dirsync counting issues on Windows. (check-in: 8f99c5bf63 user: shaneh tags: trunk)
19:30
Remove stray semi-colon that MSVC complained about. (check-in: 7a085271ff user: shaneh tags: trunk)
19:18
Improve coverage of session module. (check-in: 3dfd1d63bd user: dan tags: sessions)
16:39
Changes to memory allocator usage tracking to delay the onset of integer overflow. (check-in: 4e33a0eaf8 user: drh tags: trunk)
16:03
Add tests and fixes for OOM handling in sqlite3changeset_concat(). (check-in: df0b2d21dc user: dan tags: sessions)
15:18
Backport check-in [9f9f32882501ac9] to provide EXPLAIN QUERY PLAN output for the count(*) optimization. Also backport check-in [a8761a9128de945aa] to prevent unordered indices from being used on a full table scan. The first backport was necessary in order to test the second. (check-in: 8d924e1607 user: drh tags: branch-3.7.2)
15:04
Have sqlite3changeset_concat() return SQLITE_SCHEMA if an attempt is made to concatenate changesets based on incompatible database schemas. (check-in: 343b64517d user: dan tags: sessions)
14:46
Do not do full table scans of unordered indices. (check-in: a8761a9128 user: drh tags: trunk)
14:33
Fix #ifs involving SQLITE_ENABLE_LOCKING_STYLE so that they check the value of that macro and not whether it is defined. (check-in: 8775f159c1 user: drh tags: trunk)
13:29
Add retry logic to GetFileAttributesEx() on windows. (Closed-Leaf check-in: 1cca9a49f2 user: drh tags: experimental)
12:36
Make sure the unix backend returns SQLITE_FULL if write() fails with an ENOSPC error code. (check-in: 721e3c16b3 user: drh tags: trunk)
12:04
Add documentation for sqlite3changeset_concat() to sqlite3session.h. (check-in: ada9efa53a user: dan tags: sessions)
2011-04-14
18:01
Add further tests for the sqlite3changeset_concat() function. Also fixes. (check-in: 1fc3f15d88 user: dan tags: sessions)
11:16
Start adding the sqlite3changeset_concat() function to the session module. (check-in: 8927b2260b user: dan tags: sessions)
2011-04-13
23:42
Remove extra CR and NL characters from FormatMessage() generated error messages in the windows VFS. (check-in: 8332949c28 user: drh tags: trunk)
20:26
Add new extended error codes for I/O errors on seek and shared-memory map. Add sqlite3_log() calls in the windows backend to record details of errors. (check-in: fe603217fc user: drh tags: trunk)
16:52
Fix a usage comment typo in the showdb utility. (check-in: 8744ced4ec user: drh tags: trunk)
15:42
Update the apple-osx branch to version 3.7.6.1. (check-in: 289194d68e user: drh tags: apple-osx)
14:40
Version 3.7.6.1 (check-in: a35e83eac7 user: drh tags: trunk, release, version-3.7.6.1)
14:02
Bump the version number to 3.7.6.1 in preparation for a bug-fix release. (check-in: 5f0c394a5a user: drh tags: trunk)
13:42
Make sure the array of overloadable system calls is always correctly sized, regardless of the compile-time configuration. Ticket [bb3a86e890c8e96ab]. (check-in: c6e727ab3b user: drh tags: trunk)
2011-04-12
01:58
Version 3.7.6. (check-in: f9d43fa363 user: drh tags: trunk, release, version-3.7.6)
2011-04-11
18:35
Do not override the fchmod system call in unix unless the SQLITE_ENABLE_LOCKING_STYLE compile-time option is engaged. (check-in: 51029d8430 user: drh tags: trunk)
15:36
Updates to the OS/2 patches. This change also move the location of a global variable declaration in shell.c which might effect other build targets. (check-in: 73906b67dc user: drh tags: trunk)
15:35
Fix a signed integer overflow problem in the testcase() macro. (check-in: f18f5f5893 user: drh tags: trunk)
13:57
Apply OS2 WAL patch. Changes to os_os2.c only. (check-in: eac1710680 user: dan tags: trunk)
05:38
Change exists.test to run all tests with and without "PRAGMA journal_mode=WAL". (check-in: c4e624db1a user: dan tags: trunk)
2011-04-10
16:39
Add a simple test program to aid in verifying that journals are cross-platform. (check-in: a65a7a59d1 user: drh tags: trunk)
2011-04-09
19:17
Add test file unordered.test. (check-in: f346dae127 user: dan tags: trunk)
18:13
Pull all the latest trunk changes into the apple-osx branch. (check-in: 4eaef4ad4c user: drh tags: apple-osx)
18:07
Merge the latest trunk changes into the sessions branch. (check-in: 83705e90a5 user: drh tags: sessions)
17:53
Remove an always-true conditional. Replace it with an assert(). (check-in: 1c2f0f8477 user: drh tags: trunk)
17:32
Add VerifyCookie instructions to "DROP XXX IF EXISTS" statements if the specified database object does not exist when the statement is prepared. (check-in: a46f32900a user: dan tags: trunk)
15:39
Add an OP_VerifyCookie instruction to "CREATE XXX IF NOT EXISTS" commands. This way, if the specified database object existed when the statement was compiled but removed from the database before sqlite3_step() was called, the statement still works as expected (and creates the object). (check-in: b9dbd99361 user: dan tags: trunk)
03:30
Back port the unordered-index-hack to the 3.7.2 branch. (check-in: 803530209f user: drh tags: branch-3.7.2)
03:20
If the keyword "unordered" appears at the end of the SQLITE_STAT1.STAT column for an index, then use that index for equality lookups only, never for range queries or sorting. This feature is currently undocumented and my change or be removed in a future release. (check-in: 8a42e23670 user: drh tags: trunk)
03:04
Back out the SQLITE_OMIT_UNIQUE_ENFORCEMENT compile-option. It is an unneeded complication. (check-in: 927e955b93 user: drh tags: trunk)
02:34
When ATTACH-ing a new database to an existing database with a codec, do not enable the codec in the attached database if it is not enabled in the existing database and it is not requested by the USING clause. (check-in: 4caa5fc86e user: drh tags: trunk)
02:09
Do not do a backup if the number of reserved bytes in the source and destination do not match. Try to make the match, but if unable fail. (check-in: 0ca8a2332b user: drh tags: trunk)
2011-04-08
23:36
Backport test cases from trunk that seek to prove that the IS NOT NULL query optimization is working. (check-in: 9eff470226 user: drh tags: branch-3.7.2)
23:05
Make sure the query planner is able to correctly analyze NULL value samples in the sqlite_stat2 table. This is a backport of changes from check-in [f73a167b434f] (check-in: 1d6378898a user: drh tags: branch-3.7.2)
23:04
Make sure the left-hand side of the IS NOT NULL operator is a simple column and not a general expression before applying the IS NOT NULL optimization. This is a backport of check-in [543f75a6abe3]. (check-in: e8177e0149 user: drh tags: branch-3.7.2)
21:35
Always make sure the left-hand side of the IS NOT NULL operator is a simple column, not a general expression, before applying the IS NOT NULL query optimization. (check-in: 543f75a6ab user: drh tags: trunk)
18:47
Add some rtree tests to the backcompat.test script. (check-in: 8ea3601cd1 user: dan tags: trunk)
17:22
Fix incrvacuum2.test so that it works with the inmemory_journal permutation. (check-in: 7b8e176143 user: dan tags: trunk)
2011-04-07
19:56
Change two new internal functions in where.c from global to file scope. (check-in: 5bbfa17d4d user: drh tags: trunk)
15:24
Add test case to verify [d03d63d77e] works. (check-in: bf78acb9df user: dan tags: trunk)
14:47
When searching a list of freelist trunk pages looking for a specific page to allocate, avoid unnecessary journalling of the unchanged trunk pages towards the start of the list. (check-in: d03d63d77e user: drh tags: trunk)
14:05
Avoid running thread1.test or thread2.test if SQLITE_MUTEX_NOOP is defined. (check-in: 532ae32ea0 user: dan tags: trunk)
10:09
Do not run multi-threaded Tcl tests if the library was built with SQLITE_MUTEX_NOOP defined. (check-in: e4e99606fd user: dan tags: trunk)
05:17
Fix test script attach4.test so that it works with type 1 VFS implementations (no wal). And wal.test so that it work with a small default pager cache size. (check-in: 29c7b42587 user: dan tags: trunk)
03:41
Fix a couple of MSVC compiler warnings; (check-in: 748c9109c9 user: shaneh tags: trunk)
01:54
Fix an issue with an analyze test. No code changes. (check-in: cddf79db83 user: shaneh tags: trunk)
01:14
Fix typos in documentation comments. No changes to code. (check-in: 9c64b5a99c user: drh tags: trunk)
2011-04-06
23:40
Add a missing "extern C" terminator to the end of sqlite3session.h. (check-in: 29090b695a user: drh tags: sessions)
23:39
Fix VC++ compiler warnings. (check-in: 7b7c8d366c user: drh tags: sessions)
22:33
Merge in the latest changes from the trunk. (check-in: 435b57dc2b user: drh tags: sessions)
22:05
Fix a performance regression: Keep two btree masks in each prepared statement; one for btrees used and another for btrees that require locks. Only try to lock the btrees identified by the second mask. (check-in: 614de91a50 user: drh tags: trunk)
19:15
Fix a benign inaccuracy in the os_unix.c SQLITE_FCNTL_SIZE_HINT code. (check-in: 61a6ccbe3c user: dan tags: trunk)
17:54
Changes to support building with various SQLITE_OMIT_XXX options defined. (check-in: 2039ed952a user: dan tags: trunk)
12:38
Update a comment in sqliteLimit.h. No changes to code or tests. (check-in: b7296fd380 user: dan tags: trunk)
12:37
Add configurations featuring the -ftrapv switch and large values for SQLITE_MAX_ATTACHED to releasetest.tcl. (check-in: 989588abf3 user: dan tags: trunk)
2011-04-05
22:13
Merge the latest trunk changes into the sessions branch. (check-in: 45f2026172 user: drh tags: sessions)
22:10
Merge the latest trunk changes into the apple-osx branch. (check-in: c77a767cbd user: drh tags: apple-osx)
22:08
Suppress many harmless compiler warnings, mostly signed/unsigned comparisons within asserts or unused parameters in extensions. (check-in: 3eeb0ff78d user: drh tags: trunk)
19:27
Simplifications to the sqlite3BtreeEnterAll() and LeaveAll() routines. Just have them call BtreeEnter and BtreeLeave() repeatedly rather than trying to be clever. (check-in: 51039b3578 user: drh tags: trunk)
19:26
Simplifications to the sqlite3ResetInternalSchema() logic to eliminate unreachable branches. (check-in: a4c3ac989d user: drh tags: trunk)
18:34
Remove dead code from the OP_JournalMode opcode in the VDBE. This code seems to have been useless since [f88c6367d2] on [2010-08-07]. (check-in: a89f24e2c9 user: drh tags: trunk)
17:31
Remove the mutex counter and the logic that attempts to verify that btree mutexes are held continuously. We are not making that assumption at this time. (check-in: 242ce7cff4 user: drh tags: trunk)
16:09
When committing a WAL transaction, do not write any pages to the WAL file with page numbers greater than the size of the database image in pages. (check-in: 311d0b613d user: dan tags: trunk)
14:22
Fix a documentation typo. (check-in: d25c17ef6e user: drh tags: trunk)
13:38
Pull the latest changes from trunk (and hence from schema-parse-refactor) into the apple-osx branch. (check-in: 8e885ddea0 user: drh tags: apple-osx)
13:27
Pull the latest trunk changes (and hence the schema-parse-refactor changes) into the sessions branch. (check-in: 03ca83422f user: drh tags: sessions)
13:12
Merge the scheme-parse-refactor changes into trunk: (1) added sqlite3SchemaMutexHeld() asserts, (2) Use -1 instead of 0 to mean "all" in sqlite3ResetInternalSchema(), and other cosmetic changes. (check-in: 5db4511d8a user: drh tags: trunk)
12:25
Fix the P4_TRANSIENT constant so that it works correct - so that it really makes a copy of the string for the P4 argument. Use P4_TRANSIENT wherever appropriate. Change P4_STATICs of schema names to P4_TRANSIENT. (check-in: bf664b206b user: drh tags: trunk)
11:26
Improved comment on the sqlite3SrcListLookup function. (check-in: bcbc9ff568 user: drh tags: trunk)
02:33
Added ifcapable wal to some test scripts; (check-in: 6b270381da user: shaneh tags: trunk)
02:21
Added ifcapable utf16 to a few test cases; (check-in: 57e0919b08 user: shaneh tags: trunk)
2011-04-04
23:08
Add a comment to the VACUUM implementation explaining when all schemas are reset and not just the "main" schema. (Closed-Leaf check-in: 2aff1b0ca8 user: drh tags: schema-parse-refactor)
21:48
Changes for consistent use of SQLITE_OS_UNIX and removal of legacy OS_UNIX from testfixture source; (check-in: 78b6eee200 user: shaneh tags: trunk)
21:25
Additional schema mutex checks for sqlite3RootPageMoved(). Reduce the scope of sqlite3ResetInternalSchema() in a few places. (check-in: 39c0090783 user: drh tags: schema-parse-refactor)
20:40
Minor comment typo corrections. Simplify an assert. No functional changes. (check-in: 82c2316240 user: drh tags: schema-parse-refactor)
18:22
Add a description of access rules for the Schema object and lots of asserts to verify that the access rules are followed. (check-in: ae8374af05 user: drh tags: schema-parse-refactor)
15:38
<nowiki>Add the "--start=[permutation:][testfile]" option to tester.tcl. For starting quick.test or all.test at the nominated permutation and/or test file.</nowiki> (check-in: a97e8505f2 user: dan tags: trunk)
14:05
Merge test_syscall.c fix from the trunk. (check-in: 1e1a23cc56 user: dan tags: schema-parse-refactor)
14:03
Have test_syscall.c include "sqliteInt.h". Otherwise the SQLITE_OS_UNIX symbol may not be defined correctly. (check-in: fda8fadd83 user: dan tags: trunk)
13:40
Rename sqlite3SchemaFree() to sqlite3SchemaClear() to more accurately reflect its function. (check-in: 71d7440023 user: drh tags: schema-parse-refactor)
13:19
Merge the latest changes of trunk into the session branch. (check-in: 95d53c4432 user: drh tags: sessions)
13:11
Merge in the latest changes from trunk. (check-in: 6d78a25ddc user: drh tags: apple-osx)
13:07
Merge in the latest changes from trunk. (check-in: 47b79c40cf user: drh tags: schema-parse-refactor)
12:29
Move the expired-statement test for OP_Function until after all memory has been freed. The test is still commented out, however. (check-in: 425e3edb14 user: drh tags: trunk)
07:05
Changes to oserror.test and syscall.test so that they work with the in-memory journal permutation test. (check-in: 4e996f36c7 user: dan tags: trunk)
03:27
Suppress unused parameter warnings in sqlite3VdbeEnter() and related routines. (check-in: f8e98ab306 user: drh tags: trunk)
00:14
Remove the BtreeMutexArray object - use the Vdbe.btreeMask field to accomplish the same result. Add a generation counter to btree mutexes in order to assert that mutexes are never temporarily dropped over a range of instructions in order to do deadlock avoidance in some subroutine. Lock all btrees in any Vdbe program that uses OP_ParseSchema. (check-in: d81708f7d1 user: drh tags: trunk)
2011-04-03
18:19
Make sure that the constant 1 is cast to yDbType before shifting to create an attached database mask. This check-in is a follow-up and fix to the [7aaf8772274422] change that increases the maximum number of attached databases from 30 to 62. (check-in: e2a09ea73c user: drh tags: trunk)
02:41
Fix typos in comments. No changes to code. (check-in: 28c5f12e98 user: drh tags: trunk)
2011-04-02
20:08
Merge in the latest changes from trunk. (check-in: 0d99229a7a user: drh tags: schema-parse-refactor)
20:01
Change the name of the "tAttachMask" datatype to "yDbMask". (check-in: 3d6f2e8235 user: drh tags: trunk)
17:00
Avoid returning SQLITE_NOTFOUND when the unix xSetSystemCall interface is invoked with NULL passed as the second argument, even if all the default system calls are already installed. (check-in: 3b91eaaa0b user: dan tags: trunk)
16:50
When resetting any non-TEMP schema, also reset the TEMP schema since it might be holding references to the non-TEMP schema that just got reset. (check-in: 211d5dde1f user: drh tags: schema-parse-refactor)
16:28
Begin a series of changes designed to reduce the scope and frequency of invalidating schemas. Design goals are that the internal schema should never be deleted out from under a prepared statement that is running and that all prepared statements should be expired if the schema is invalidated. At the same time, minimize the number of schema invalidations. This change merely revises the sqlite3ResetInternalSchema() function to use -1 as the wildcard for "all" rather than 0, so that we can reset the main schema independently of all the others. (check-in: 6a8ad6e31e user: drh tags: schema-parse-refactor)
09:44
Fix a race condition in OP_ParseSchema. (check-in: 71a799b02a user: dan tags: trunk)
09:25
Do not attempt to run tests that use the 'wholenumber' virtual table if the build does not support virtual tables. (check-in: 20afd81a4c user: dan tags: trunk)
06:44
Fix additional test cases so that they work with DEFAULT_AUTOVACUUM. (check-in: 139bc5655e user: dan tags: trunk)
2011-04-01
23:49
Add the "wholenumber" virtual table module to the test suite - useful in populating tables with many rows of content prior to a test. (check-in: 975dff155b user: drh tags: trunk)
20:54
Fix up the Makefile.in so that the configuration script works for "make test". (check-in: 2e03830c1e user: drh tags: trunk)
20:47
Merge the word-fuzzer branch into trunk. (check-in: f77609d441 user: drh tags: trunk)
20:28
Add additional test data and documentation to the fuzzer virtual table. (Closed-Leaf check-in: a6a81d4fda user: drh tags: word-fuzzer)
19:14
Changes to wal tests so that they work with DEFAULT_AUTOVACUUM defined. (check-in: b477852f82 user: dan tags: trunk)
18:39
Merge the multiplexer enhancements back into the trunk. (check-in: 2c125710cb user: drh tags: trunk)
18:12
Add a script that will break the amalgamation source file up into 4 or 5 smaller source files, each 32K lines or fewer, and a single "sqlite3-all.c" source file that #includes the others. (check-in: 5d34e64d4d user: drh tags: trunk)
17:53
Change analyze7.test so that it works without SQLITE_ENABLE_STAT2 defined. (check-in: 9415201c8a user: dan tags: trunk)
16:50
When simulating an error in the close() system call, close the file descriptor anyway. Otherwise long running tests leak too many file-descriptors and crash. (check-in: 81ddbf4336 user: dan tags: trunk)
15:43
Merge latest trunk changes. (check-in: d184cf0057 user: dan tags: sessions)
15:30
If the sessions module is being built as part of the amalgamation, do not try to include sqliteInt.h and vdbeInt.h. (check-in: f87bfe6e12 user: dan tags: sessions)
15:15
Ensure that it is not possible to add a column to a system table using ALTER TABLE. (check-in: d9707ef8dc user: dan tags: trunk)
14:26
Merge the ANALYZE-index enhancement into trunk. (check-in: 7e237aea22 user: drh tags: trunk)
14:22
Removed dependency on sqliteInt.h so that multiplex VFS shim can be compiled as loadable module. (Closed-Leaf check-in: 718f1ad7df user: shaneh tags: multiplex-enhancements)
14:04
Test cases for ANALYZE-index. (Closed-Leaf check-in: 365896cb08 user: drh tags: analyze-idx)
13:29
Move a variable declaration inside an #ifdef to avoid a compiler warning. (check-in: 7a6d05dfbc user: drh tags: trunk)
11:56
In os_unix.c, do not return SQLITE_BUSY to SQLite following an error in fcntl(F_UNLCK), regardless of the value of errno. (check-in: ff6dfe6ed7 user: dan tags: trunk)
09:04
Fix some problems in os_unix.c when compiled with ENABLE_LOCKING_STYLE on OSX. Also some minor issues with test scripts. (check-in: 8088031bc9 user: dan tags: trunk)
02:26
Fix two compiler errors associated with non-standard compile-time options. (check-in: e3bf2d5ce4 user: drh tags: trunk)
01:38
Fix a compiler warning and an unreachable branch. Restore 100% branch test coverage. (check-in: 4dc148bb4c user: drh tags: trunk)
2011-03-31
18:36
Provide hints to the btree layer Next and Previous primitives to let them know if they can be no-ops if the underlying index is unique. (check-in: a5aae1743a user: drh tags: branch-3.7.2)
15:11
Enable/disable support. (check-in: b3c6d9aa9e user: shaneh tags: multiplex-enhancements)
13:14
Add tests and fixes for SELECT multiplex_control(op, val); (check-in: fee9734c19 user: shaneh tags: multiplex-enhancements)
05:31
Additional test cases; Round chunk size up to a multiple of max page size; (check-in: 36e364a3fe user: shaneh tags: multiplex-enhancements)
02:03
Change the ANALYZE command so that it will accept an index name as its argument and only reanalyze that one index. A quick smoke-test works. Need to study the implications to the query planner and test corner cases. (check-in: c8f9edd962 user: drh tags: analyze-idx)
2011-03-30
21:04
Add the SQLITE_ENABLE_PREUPDATE_HOOK compile-time option. (check-in: 6634521461 user: drh tags: sessions)
21:03
Updates to multiplex.test script; misc. bug fixes; (check-in: c41ff2358e user: shaneh tags: multiplex-enhancements)
19:08
Further tests for os_unix.c. (check-in: a84f771194 user: dan tags: trunk)
17:25
Disable the truncate optimization if there is a preupdate hook. (check-in: d051694e02 user: drh tags: sessions)
17:07
Add documentation to the sqlite3_preupdate_hook() interface and its relatives. (check-in: 8180f2881f user: drh tags: sessions)
14:54
Do not generate sqlite_stat1 entries for empty tables when running ANALYZE. Ticket [83ea97620bd31016451] (check-in: 3a27af5b3c user: drh tags: trunk)
02:03
Merge in all the latest changes from trunk. (check-in: b11d941e92 user: drh tags: sessions)
01:43
Move to an O(NlogN) algorithm for the priority queue. An insertion sort was way too slow. (check-in: 7958cbba73 user: drh tags: word-fuzzer)
2011-03-29
23:41
Add support for rowid. (check-in: 2cf4158ff0 user: drh tags: word-fuzzer)
18:28
Add tests to syscall.test and sysfault.test. (check-in: 3d2de01181 user: dan tags: trunk)
18:21
The first simple test-case appears to be working now. (check-in: dd41155bc7 user: drh tags: word-fuzzer)
15:40
Fix a problem whereby following an IO error in CommitPhaseTwo() of a multi-file transaction the b-tree layer could be left in TRANS_WRITE state, causing problems later on. (check-in: dbe569a099 user: dan tags: trunk)
15:00
If the keyword "unordered" appears at the end of the SQLITE_STAT1.STAT column for an index, then use that index for equality lookups only, never for range queries or sorting. (Closed-Leaf check-in: 3b964155f6 user: drh tags: unordered-index-hack)
14:08
Further improvements to the fuzzer. It still is not quite working. Pausing to work on other things.... (check-in: 5f2f2fce40 user: drh tags: word-fuzzer)
10:04
Fix a problem in the unix VFS implementation of xNextSystemCall(). Also some typos that prevent compilation when HAVE_POSIX_FALLOCATE is defined. (check-in: bc6cce8156 user: dan tags: trunk)
05:06
In-progress changes - do not use; Removed prefix support; Added file control interface to enable/disable and adjust chunk size; added app-def function for same; (check-in: bc02d0c193 user: shaneh tags: multiplex-enhancements)
01:47
Fix the documentation for the sqlite3_column_*_name() functions to describe that the information can be invalidated when a prepared statement is reprepared by the first invocation of an sqlite3_step() for a particular execution cycle. (check-in: 7270f80ac5 user: drh tags: trunk)
2011-03-28
19:10
Add test infrastructure (and some tests) to inject faults into os_unix.c using the new xSetSystemCall interface. (check-in: 0e1d20dfae user: dan tags: trunk)
2011-03-26
19:04
Added most of the logic. Simple test runs without segfaulting but does not give the correct answer. (check-in: fb4c31eac8 user: drh tags: word-fuzzer)
15:05
Skeleton code for the word-fuzzer virtual table. (check-in: ea3a4ee136 user: drh tags: word-fuzzer)
2011-03-25
19:06
Improve coverage of session module a bit more. (check-in: 4255a9f609 user: dan tags: sessions)
10:52
Improve coverage of session module code. (check-in: 666123c8d0 user: dan tags: sessions)
2011-03-24
17:43
Minor change to sqlite3Utf8Read() to make consistent with READ_UTF8() usage and avoid implementation defined usages of <<. Added some additional UTF-8 test cases. (check-in: 7173b3929f user: shaneh tags: trunk)
17:37
Fix problem with tableapi.test on Windows. (check-in: 69fe0c873d user: shaneh tags: trunk)
16:53
Fix handling of schema changes mid-session. (check-in: 76d2d2ad3b user: dan tags: sessions)
16:04
Fix handling of schema mismatches in sqlite3session.c so that it matches the docs in sqlite3session.h. (check-in: 506a0d7a71 user: dan tags: sessions)
11:22
Store primary key definitions for modified tables in changesets. Add the sqlite3changeset_pk() API to extract this data from a changeset iterator. (check-in: 54298ee5ed user: dan tags: sessions)
01:34
The changes to fix [f7b4edece25c9948] mean that the schema is always loaded whenever a prepared statement is running. This means that a couple of branches can be eliminated and one operand of OP_ParseSchema can be removed. (check-in: b6e268fce1 user: drh tags: trunk)
2011-03-23
22:54
Fix a signed/unsigned comparison compiler warning. (check-in: c81da6f98d user: drh tags: trunk)
22:51
Update the test_vfstrace.c shim to conform to the new VFS interface for xSetSystemCall and xGetSystemCall. (check-in: ad4dc7b95f user: drh tags: trunk)
22:48
Merge in all the latest changes from the trunk, and especially the interface changes to the SystemCall methods of the VFS. (check-in: 9c3a6e4799 user: drh tags: sessions)
22:02
Change the xSetSyscall methods of the VFS so that they do not cast object pointers into function pointers. Fix other unrelated compiler warnings. (check-in: e059152adc user: drh tags: trunk)
18:22
Increase the upper bound on SQLITE_MAX_ATTACHED from 30 to 62. (check-in: 7aaf877227 user: drh tags: trunk)
17:10
Fix a bug in fts4 to do with matchinfo and deferred tokens. (check-in: 30d42dc66f user: dan tags: trunk)
16:03
Add the "indirect flag" to the changeset blob format. Also the sqlite3session_indirect() API. (check-in: 1feaf2d35f user: dan tags: sessions)
11:16
In the shell, make sure the ".log" command has at least one argument. (check-in: 1ed5e361ca user: drh tags: trunk)
10:52
Fix a numbering issue in rtree6.test. Add a couple of extra tests. (check-in: 0b7668a71e user: dan tags: trunk)
10:38
Change the rtree module to support queries with multiple comparison operators (i.e. > or <) of the same type on a single column. (check-in: 387b55aa9b user: dan tags: trunk)
2011-03-22
18:45
Add API function sqlite3_preupdate_depth(), for determining the depth of the trigger stack from within a pre-update callback. (check-in: bdea70895c user: dan tags: sessions)
16:54
Fix a crash that can follow an OOM when "all tables" are registered with a session module. (check-in: 183c236e99 user: dan tags: sessions)
15:21
If a NULL pointer is passed to sqlite3session_attach() in place of a table name, attach all database tables to the session object. (check-in: e9037e4e4c user: dan tags: sessions)
12:08
Add OOM tests and related fixes for the session module. (check-in: 06048a68b3 user: dan tags: sessions)
02:03
Fix a couple typos for consistency in sessions documentation. (check-in: 510198f171 user: shaneh tags: sessions)
2011-03-21
19:41
Remove some unreachable code in sqlite3session.c. Add test cases. (check-in: 39cdfa5324 user: dan tags: sessions)
17:17
Merge in the sqlite3_db_config() enhancements for enabling and disabling FKs and triggers from trunk. (check-in: 2b3c8b9d9a user: drh tags: sessions)
17:15
Add the ability to enable and disable foreign key constraints and triggers using calls to sqlite3_db_config(). (check-in: 09e167f9c1 user: drh tags: trunk)
16:17
Add start of fault-injection tests for session module. Fix some bugs related to the same. (check-in: 32e95164d1 user: dan tags: sessions)
11:55
Clarify handling of NULL values in PK columns in sqlite3session.h. Add tests and fixes for the same. (check-in: aed4273054 user: dan tags: sessions)
11:03
Fix session module problems with real (floating point) values. (check-in: a192d04f4e user: dan tags: sessions)
07:23
Fix some typos in sqlite3session.h. (check-in: 0853e530cc user: dan tags: sessions)
2011-03-20
11:20
Documentation format updates to sqlite3session.h. (check-in: f227f60210 user: dan tags: sessions)
2011-03-19
19:19
Fix a problem involving session objects and attached databases. (check-in: ad91d30073 user: dan tags: sessions)
18:46
Fix a bug in changeset generation code. (check-in: 825df75ba4 user: dan tags: sessions)
17:07
Move session1.test from test/ to ext/session/. (check-in: c4436a936a user: dan tags: sessions)
16:26
Fix a problem with resizing a hash table in sqlite3session.c. (check-in: 6e5907e14d user: dan tags: sessions)
15:37
Fix some bugs in sqlite3changeset_apply(). (check-in: 7250318dda user: dan tags: sessions)
08:38
Fix a problem with INTEGER PRIMARY KEY columns and the pre-update hook. (check-in: 24d4d5dd00 user: dan tags: sessions)
02:37
Merge the fix to ticket [f7b4edece25c99485] into the sessions branch. (check-in: 1b736ac293 user: drh tags: sessions)
02:04
Add a test case to verify that ticket [f7b4edece25c994857] is fixed. (check-in: eedbcf0a0b user: drh tags: trunk)
2011-03-18
21:55
Add a generation counter to the Schema object and enhance OP_VerifySchema to also check the Schema generation. Fix for ticket [f7b4edece25c99]. (check-in: 36c04dd169 user: drh tags: trunk)
18:03
Hold the database mutex for the duration of an sqlite3changeset_apply() call. Also for the duration of all sqlite3session_xxx() calls. (check-in: c615c38c32 user: dan tags: sessions)
16:47
Fixes for compiler warnings. Minor code cleanup. (check-in: 9604d13001 user: drh tags: sessions)
16:13
Further improvements to documentation in sqlite3session.h. (check-in: 07019bb9e8 user: dan tags: sessions)
15:13
Fix a memory allocation issues in the preupdate hook so that the hook.test script runs clean in valgrind. (check-in: bd94f4c8b1 user: drh tags: sessions)
13:05
Update comments in sqlite3session.h. More to come. (check-in: e73e9082f3 user: dan tags: sessions)
12:35
Merge all the latest trunk enhancements into the sessions branch. (check-in: 94fd5bb6da user: drh tags: sessions)
2011-03-17
19:20
Change to the session module to use user-defined primary keys instead of rowids when collecting changes. (check-in: 6614cfcb9c user: dan tags: sessions)
16:45
Update the implementation of ".testctrl" in the command-line shell to use a look-up table rather than a long sequence of if-elses. Shorten source code lines of shell.c to 80 characters or less. (check-in: 54bacb95dd user: drh tags: trunk)
01:58
Comment enhancement to better explain the logic in the "x IS NULL" optimization. (check-in: 869f894798 user: drh tags: trunk)
01:53
Backport the "x IS NULL" query planner enhancement of [2353176811f] to the 3.7.2 branch. (check-in: 68daf20d01 user: drh tags: branch-3.7.2)
01:34
Enhances to the query planner such that "x IS NULL" constraints take the STAT2 statistics into account, just like "x=VALUE" constraints. (check-in: 2353176811 user: drh tags: trunk)
2011-03-16
19:59
Add the sqlite3_preupdate_new() API, for retrieving the new.* values from within a pre-update callback. (check-in: 526545c49f user: dan tags: sessions)
18:54
Additional interpretation of flags and constants in the VFS trace output. (check-in: 3e984195f1 user: drh tags: trunk)
17:05
Add the -vfstrace option to the usage error message in the shell. (check-in: baca45c549 user: drh tags: trunk)
16:56
Add the VFS-trace shim. (check-in: f49a9ef338 user: drh tags: trunk)
09:49
Remove the sqlite3_transaction_hook() API. (check-in: b0015a1cfe user: dan tags: sessions)
2011-03-15
19:08
Make the "unix-excl" VFS work exactly like "unix" if the database file is read-only. (check-in: d984683499 user: drh tags: trunk)
18:35
Fix an out-of-order variable declaration in shell.c. (check-in: 7257084650 user: drh tags: trunk)
16:37
Fix some bugs and other code issues in the session module. (check-in: f2930840e4 user: dan tags: sessions)
04:45
Allow multiplex file names to be preceeded by prefix of the form ":multiplex:chunksize:maxchunks:" Still work to be done, though it compiles and prefixes are ignored. (check-in: cfa4a2f7ea user: shaneh tags: multiplex-enhancements)
02:55
Fix cut-and-paste typo in debugging print statement in winMutexTry(). (check-in: def98fd23e user: shaneh tags: trunk)
2011-03-14
19:49
Fix handling of return values from the conflict handler. Document the conflict handler arguments and return codes in sqlite3session.h. (check-in: cbbb274e50 user: dan tags: sessions)
13:54
Merge the unix-excl VFS into the trunk. This merge also adds the -vfs option to the command-line shell. (check-in: 3934b004e9 user: drh tags: trunk)
2011-03-12
18:10
In the "unix-excl" VFS, use the heap for shared memory, since only a single process is able to read or write the database. (Closed-Leaf check-in: a05a6d4087 user: drh tags: unix-excl)
17:22
Fix some issues with UPDATE changes in the session module. (check-in: 57862efe71 user: dan tags: sessions)
17:02
Add the new optional "unix-excl" VFS. This VFS grabs an exclusive lock on the database preventing other processes from accessing it, but continues to allow other database connections from the same process. (check-in: 00051c3296 user: drh tags: unix-excl)
05:55
Backport the SQLITE_OMIT_UNIQUE_ENFORCEMENT change from check-in [b86999436e] on the trunk. (check-in: 668b91dbff user: shaneh tags: branch-3.7.2)
04:58
More tests for SQLITE_OMIT_UNIQUE_ENFORCEMENT and minor change to implementation. (check-in: b86999436e user: shaneh tags: trunk)
2011-03-11
19:05
Add the sqlite3changeset_apply() function. Does not yet handle all cases. (check-in: 2b19be7bf7 user: dan tags: sessions)
16:15
Remove an unused field from the unix sqlite3_file object. (check-in: f957f23a8a user: drh tags: trunk)
2011-03-10
21:48
Simplification of tests and more added for SQLITE_OMIT_UNIQUE_ENFORCEMENT tests. (check-in: 75a38411a8 user: shaneh tags: trunk)
21:13
Skip unique constraint enforcement if compiled with SQLITE_OMIT_UNIQUE_ENFORCEMENT. (check-in: ba85bf8cb8 user: shaneh tags: trunk)
03:54
Minor clean-up of previous mem5 allocator fix. (check-in: 3643842316 user: shaneh tags: trunk)
2011-03-09
22:09
Backport the OP_Next and OP_Prev for UNIQUE indices patch from checkin [f000c9b2b7] on the trunk. (check-in: 2d55234ea3 user: drh tags: branch-3.7.2)
21:36
Fix issue with mem5 allocator when min request size is larger thatn 2^30. (check-in: d7dae06fb2 user: shaneh tags: trunk)
21:02
Omit unnecessary OP_Next and OP_Prev operators when uniqueness constraints guarantee that the code will only make one pass through the loop. (check-in: f000c9b2b7 user: drh tags: trunk)
11:17
Add a function to the session extension invert a changeset. (check-in: 75d5dff725 user: dan tags: sessions)
11:04
Updates to the OS/2 implementation from Rich Walsh. (check-in: dc46156a22 user: drh tags: trunk)
2011-03-08
19:22
Add start of sessions feature. (check-in: 269a81a37d user: dan tags: sessions)
16:39
Merge the syscall-override changes into trunk. (check-in: 36d79e6f54 user: drh tags: trunk)
14:05
Unix errno integer can vary from one system to the next. So do not depend on specific errno values in test cases. (check-in: ddb747d33a user: drh tags: trunk)
13:06
Fix two compiler warnings. No functional code changes. (check-in: c829868aa2 user: drh tags: trunk)
02:38
Fix additional cases of possible signed integer overflow, especially with regard to negation. (check-in: 2d5800bd8c user: drh tags: trunk)
2011-03-06
21:54
Another minor simplification brought to light by clang. (check-in: 3bfbf026dd user: drh tags: trunk)
21:28
Remove dead code identified by the clang static analyzer. (check-in: 01a79d5a7a user: drh tags: trunk)
2011-03-05
21:41
Simplifications to the overflow-free multiplier. Also remove some commented-out code that was left in that subroutine by mistake on the previous check-in. (check-in: 55fc25fdab user: drh tags: trunk)
20:59
Fix all known instances of signed-integer overflow. Within SQL expressions, integer overflow now forces coercion to floating point. The shift operators work with any integer right-hand operand with negative values reversing the direction of the shift. (check-in: abf2139412 user: drh tags: trunk)
13:54
Fix an instance of signed arithmetic overflow and an one bit-shift overflow. Mark six other signed arithmetic overflow locations that need fixing. (check-in: 04abab71ec user: drh tags: trunk)
2011-03-04
15:43
Handle EINTR errors from open(). (Closed-Leaf check-in: a7d176b27c user: drh tags: syscall-override)
01:23
Backport the query planner enhancement of [952f5e8c69904] to the 3.7.2 branch. (check-in: 440d995661 user: drh tags: branch-3.7.2)
00:56
Do a better job of choosing the join table order when the tables having very different numbers of rows. (check-in: 952f5e8c69 user: drh tags: trunk)
2011-03-03
20:06
Add the experimental sqlite3_transaction_hook() API. (check-in: 093d8cd8e2 user: dan tags: sessions)
2011-03-02
22:07
Fix quoting of the result in rtreeB.test. (check-in: c6532b35cc user: drh tags: trunk)
19:06
Add additional VFS methods to retrieve system call pointers and to get a list of all changeable system calls. (check-in: 3855836349 user: drh tags: syscall-override)
18:01
Add more system calls to the set that can be overridden in os_unix.c. Also merge in recent fixes from trunk. (check-in: 80fac2a6e0 user: drh tags: syscall-override)
17:54
Fix bugs in [7b6e30e6a7] that only show up on Mac. (check-in: ec55e8c6bb user: drh tags: trunk)
15:44
Make sure the rtreenode() testing and analysis routine in the RTREE extension can handle 64-bit rowids. This fix is in response to a message on the mailing list. (check-in: 24602557fc user: drh tags: trunk)
15:09
Proof-of-concept prototype for the proposed xSetSystemCall extension method on the VFS. (check-in: 92b5a76abc user: drh tags: syscall-override)
02:08
Log all error from close() in os_unix.c to sqlite3_log() but do not attempt to report errors back up to the application. Update the unix error logging to put the most important information earlier in the message. (check-in: 7b6e30e6a7 user: drh tags: trunk)
2011-03-01
18:42
Add the experimental sqlite3_preupdate_hook() API. (check-in: 6145d7b89f user: dan tags: sessions)
2011-02-25
03:25
Comment out some code in os_unix.c that only runs on MacOSX with SQLITE_ENABLE_LOCKING_STYLE. (check-in: 4e50b0362a user: drh tags: trunk)
2011-02-24
21:10
Fix a typo in a comment. No changes to code. (check-in: af4756184a user: drh tags: trunk)
2011-02-23
22:39
Reserve a range of bits in the SQLITE_OPEN_xxxx bit vector for future expansion. (check-in: 9b9046546d user: drh tags: trunk)
14:33
Automatically retry system calls that fail with EINTR. This is a backport of the changes from [b9d29ea385bafc] and [af9ba2a6d2c379]. (Leaf check-in: 8609a15dfa user: drh tags: branch-3.7.4)
14:05
Backport the os_unix.c error logging enhancements from check-in [01076528a43b61a]. (check-in: a4333b1545 user: drh tags: branch-3.7.4)
14:00
Fix a typo in the robust_flock() macro for systems without EINTR. (check-in: af9ba2a6d2 user: drh tags: trunk)
13:53
The robust_flock() fix that accidently included some unrelated, though harmless changes. <i>I should follow my own checklist!</i> (Closed-Leaf check-in: e701efbd1d user: drh tags: mistake)
13:33
Retry selected system calls on unix when they fail with EINTR. (check-in: b9d29ea385 user: drh tags: trunk)
2011-02-22
03:34
When a stale schema-cookie is seen, expire only the one statement that encountered the bad cookie, not every statement on the database connection. Ticket [b72787b1a7cea1f] (check-in: 1bca0a7e19 user: drh tags: trunk)
2011-02-21
17:49
Fix a problem with "EXPLAIN QUERY PLAN SELECT count(*) FROM tbl". (check-in: 9f9f328825 user: dan tags: trunk)
11:46
Have os_unix.c call sqlite3_log() following errors in certain system calls. (check-in: 01076528a4 user: dan tags: trunk)
2011-02-20
21:03
Pull in the fix to STAT2 processing from check-in [70a3d81742f]. (check-in: 692aafb17e user: drh tags: branch-3.7.4)
03:40
Do not report the database corruption if the the db size header field is greater than the file size on disk unless the two change-counter header fields are identical. Fix for ticket [89b8c9ac54]. Backport by cherrypick of [00c4596f0b270]. (check-in: e2616004df user: drh tags: branch-3.7.4)
03:32
Make sure the change-counter and SQLite-version fields of the header are set correctly even after vacuuming. This is a backport of changes [0be92a7576] and [04fa1e1690] to address ticket [5d863f876ee]. (check-in: 442be1358e user: drh tags: branch-3.7.4)
03:27
Do not raise an SQLITE_CORRUPT error in Recoverymode if the database size in the header is larger than the physical file size. This is a cherrypick of checkin [114640d920e16c8] (check-in: 7701b07759 user: drh tags: branch-3.7.4)
03:22
Backport the sqlite3.h generator fix so that it works with newer versions of Fossil. See [3513bf6ee090d9b] for the original. (check-in: 29597a71d0 user: drh tags: branch-3.7.4)
03:20
Backport the changes of checkin [cf86affcb7d308949] ("Make wal_checkpoint a no-op if a prior checkpoint has already copied all WAL content into the database.") to the 3.7.4 release. (check-in: e6e540ab77 user: drh tags: branch-3.7.4)
03:11
Backport the SQLITE_PROTOCOL fix and the extra defensive measure to version 3.7.4. (check-in: bcc22c4b80 user: drh tags: branch-3.7.4)
2011-02-19
23:18
An SQLITE_PROTOCOL error counts as a locking error for verification purposes. (check-in: e87d499a4f user: drh tags: trunk)
17:02
Change a testcase() added by the previous checkin into an assert(). (check-in: 6f3dad32aa user: drh tags: trunk)
16:51
Add testcase macros to verify that all return values from walTryBeginRead() are tested. (check-in: 262b6fca0b user: drh tags: trunk)
15:22
Changes to make WAL more robust against SQLITE_PROTOCOL errors. (check-in: fd578a32f8 user: drh tags: trunk)
14:19
Changes which attempt to address an obscure SQLITE_PROTOCOL error. (Leaf check-in: 1725aa7501 user: drh tags: wal-trace-375)
2011-02-18
17:23
Fix the sqlite3ValueFromExpr() routine so that it returns SQLITE_NOMEM on an OOM when trying to extract a NULL. (check-in: 1061e94fa9 user: drh tags: trunk)
2011-02-17
15:58
Remove a no-op code path from sqlite3ExprIsInteger(). Replace it with an assert() that proves it always does nothing. (check-in: 7af66d1bd5 user: drh tags: trunk)
13:52
Remove an assert() that was made redundant by the previous checkin. (check-in: 21db719156 user: drh tags: trunk)
13:33
Add an ALWAYS() around a always-true test in where.c. (check-in: 8123283ee1 user: drh tags: trunk)
2011-02-16
23:32
Fix harmless compiler warnings in the query planner. (check-in: 31fc4ba66e user: drh tags: trunk)
01:23
Add "do_not_use_codec" logic to some of the TCL based test cases that read/write directly to the DB. (check-in: edd27669f3 user: shaneh tags: trunk)
2011-02-14
03:49
Skip some tests in capi3e.test when compiled with SQLITE_OMIT_UTF16. (check-in: b04304b967 user: shaneh tags: trunk)
2011-02-12
14:23
Fix the expected output on tests so that it corresponds to the new query planner results. All of veryquick.test is now passing with SQLITE_ENABLE_STAT2. (check-in: f2a8b5ccfb user: drh tags: branch-3.7.2)
05:34
Fix problems in the backport, reducing the number of errors in the TCL tests to just a few dozen. Most of the remaining errors seem to be real and desirable changes of behavior. (check-in: 9d2b0af266 user: drh tags: branch-3.7.2)
01:59
This is the beginning of an attempt to backport recent query planner enhancements to version 3.7.2. The code in this version builds and runs and seems to give correct answers, but it generates suboptimal query plans and hence many of the test cases fail. The test script gives up after 1000 errors. (check-in: e72cf118cb user: drh tags: branch-3.7.2)
2011-02-11
22:54
Add a NEVER() around a test that is believed to always be false. (check-in: f7e2ea33d5 user: drh tags: trunk)
20:52
Skip flattening if subquery has LIMIT and outer query is DISTINCT. Fix for ticket [752e1646fc]. (check-in: 5597399988 user: shaneh tags: trunk)
06:59
Fix a bug in the new WHERE-clause processing that tries to use an index to resolve IS NOT NULL constraints when SQLITE_ENABLE_STAT2 is defined. The bug could cause memory overruns and segfaults. The bug was new to the code and has not appeared in an official release. Found during structural testing. (check-in: a5c36b9f39 user: drh tags: trunk)
03:56
Allow an index paired with an IS NULL constraint to be used for sorting under the condition that the index be treated as a non-unique index. (check-in: d78949fc93 user: drh tags: trunk)
02:43
Disable unused NULL tests when SQLITE_ENABLE_STAT2 is not in use. (check-in: 5ecd117882 user: drh tags: trunk)
2011-02-10
21:08
Add .testctrl option to CLI. (check-in: f85afa0ecc user: shaneh tags: trunk)
18:56
Split the documentation for sqlite3_wal_checkpoint_v2() and its constants onto separate pages. No changes to code. (check-in: 0ef8ffd12f user: drh tags: trunk)
17:46
Prevent a segfault when automatic indices try to use a column with an unknown collating function. Ticket [77aa3b1e6592582e38605d36]. This check-in also removes some stray \r characters unrelated to the problem. (check-in: f01030a0df user: drh tags: trunk)
01:49
This is a version of the SQLite 3.7.5 release with Apple's changes for MacOS. (check-in: 55d2e55b7b user: drh tags: apple-osx)
00:08
Refactor the cost function in the query planner. Give extra cost (thus reduce likelihood of selection) to full table scans. (check-in: 878da276eb user: drh tags: trunk)
2011-02-09
19:55
Make sure code *compiles* with each OMIT and ENABLE option. Mostly changes to test modules. (check-in: 7cc515edc9 user: shaneh tags: trunk)
18:19
Do not report corruption if the the db size header field is greater than the file size on disk unless the two change-counter header fields are identical. Fix for ticket [89b8c9ac54]. (check-in: 00c4596f0b user: dan tags: trunk)
15:25
Update Makefile.in for fts3_aux changes. (check-in: 38b7cb33c5 user: shaneh tags: trunk)
03:04
Use macros to define the relative costs of search and seek operations when computing costs in the query planner. Current constants seems wrong and need to be fixed, but doing so will alter test results. Need more experimentation to determine accurate relative costs. (check-in: 5f2ec44b22 user: drh tags: trunk)
03:03
Simplifications to the sqlite3_wal_checkpoint_v2() logic. (check-in: 652b8835c5 user: drh tags: trunk)
2011-02-07
23:56
Cleanup to the OP_Checkpoint opcode. (check-in: f611a5a879 user: drh tags: trunk)
16:24
Fix some test cases in walfault.test. Extend one test case to restore code coverage. Add wal5.test to the "coverage-wal" permutation. (check-in: f83b07ace3 user: dan tags: trunk)
15:12
Change blocking-checkpoint tests so that they run once using "PRAGMA wal_checkpoint" and once using calls to sqlite3_wal_checkpoint_v2(). Also fix edge cases surrounding the output variables set by wal_checkpoint_v2(). (check-in: 5a4b6652cf user: dan tags: trunk)
2011-02-05
15:47
Ensure fts4aux can handle a table name in single or double quotes as a constructor argument. (check-in: 929d62e496 user: dan tags: trunk)
14:37
Add test cases for fts4aux. Fix a bug affecting fts3 tables with multiple columns. (check-in: dc511e60a6 user: dan tags: trunk)
2011-02-04
18:56
Change fts4aux to (additionally) report on term frequency in individual columns of an fts table. (check-in: 3996f92a9a user: dan tags: trunk)
14:28
Significant changes have occurred since the 3.7.5 release so go ahead and increase the version number to 3.7.6. (check-in: 999c915a4a user: drh tags: trunk)
06:36
Merge the stat2 query planner enhancements into the trunk. (check-in: 499edcbc8a user: drh tags: trunk)
05:47
If a deferred foreign key constraint fails on a statement that is not part of a larger transation, make sure that the statement fully ends so that subsequent invocations of the same statement will not pass the constraint because they think the transaction is not closed. This is a merge of the deferred-fk-quirk branch together with a test case. (check-in: 2f94d4623f user: drh tags: trunk)
00:51
Fix the ATTACH command so that the filename argument can be any expression and so that if authorizer callback gets a NULL pointer for the filename if the filename argument is anything other than a string literal. Ticket [9013e13dba5b58c7] (check-in: e64e1453a9 user: drh tags: trunk)
2011-02-03
12:48
Extra tests for fts4 compress/uncompress hooks. Fix some minor problems with the same. (check-in: 80225abe79 user: dan tags: trunk)
10:56
Extra tests for the fts4aux module. (check-in: cfc475690d user: dan tags: trunk)
01:26
Fix a superlock test case to conform to the new wal_checkpoint returns. (check-in: 8bf2d51b6a user: drh tags: trunk)
2011-02-02
19:17
Fix minor problems with the output of "PRAGMA wal_checkpoint". In both code and tests. (check-in: aef61036b3 user: dan tags: trunk)
17:30
Optimize handling of equality and range constraints on the "term" column of an fts4aux table. (check-in: 386701ded2 user: dan tags: trunk)
16:34
Merge in the blocking-checkpoint enhancement, including the new sqlite3_wal_checkpoint_v2() interface and the PRAGMA wal_checkpoint(full) statement. (check-in: bac7342c36 user: drh tags: trunk)
04:40
Merge fts4aux branch. (check-in: c6d9f7d8c4 user: dan tags: trunk)
04:26
Add missing file fts3_aux.c. (Closed-Leaf check-in: 0147d9739f user: dan tags: fts4aux)
2011-02-01
18:59
Remove extra instances of the text "checked out." from sqlite.h.in. Also add new file fts3_aux.c to mksqlite3c.tcl. (check-in: 9897da22c5 user: dan tags: fts4aux)
18:00
Fix a problem causing builds with SQLITE_OMIT_WAL defined to fail. (check-in: b9b48dd8dd user: dan tags: fts4aux)
17:55
Fix a case in fts4 where a corrupt %_stat table could lead to a crash. (check-in: 4ade96ce97 user: dan tags: fts4aux)
16:34
Add virtual table module "fts4aux", used to inspect the full-text index of an fts4 table directly. Also add the "compress" and "uncompress" fts4 options. (check-in: b010ddcc52 user: dan tags: fts4aux)
00:04
Version 3.7.5 (check-in: ed759d5a9e user: drh tags: trunk, release, version-3.7.5)
2011-01-28
17:02
Bogus release candidate. (Closed-Leaf check-in: 38ca1daa23 user: drh tags: mistake)
16:45
Add test script pagerfault3.test. No changes to code or existing tests. (check-in: 682fe41efd user: dan tags: trunk)
15:46
Change pager_truncate() to a different method for extending files while also ensuring that writes are page-size and page-aligned. (check-in: 874bc8844f user: drh tags: trunk)
15:07
When extending a database file, do so by writing one or more page-size chunks of data to the file, instead of just a single byte to the end. (check-in: 58577135a8 user: dan tags: trunk)
03:13
Reactivate the analyze5.test script. (Closed-Leaf check-in: a2a9f6401c user: drh tags: stat2-enhancement)
01:57
Change the weighting of binary searches on tables to 1/10th the cost of a search on an index. Change the assumed reduction in search space from a indexed range constraint from 1/3rd to 1/4th. Do not let the estimated number of rows drop below 1. (check-in: 4847c6cb71 user: drh tags: stat2-enhancement)
2011-01-27
18:48
Pull in all the changes from trunk up through the version 3.7.5 release candidate 1. (check-in: 09d6c91dcf user: drh tags: apple-osx)
14:35
SQLite version 3.7.5 release candidate 1 (check-in: 35ac78f551 user: drh tags: trunk)
2011-01-26
19:46
Update all built-in VFSes to return SQLITE_OK for the SQLITE_FCNTL_SYNC_OMITTED file-control operation. Also change the xFileControl methods to return SQLITE_NOTFOUND for unrecognized operation codes. (check-in: 6f2c72a0f6 user: drh tags: trunk)
15:23
Update test file mutex1.test to account for [e3b500fb5d]. (check-in: c86e46f4fd user: dan tags: trunk)
13:28
More mutexes around another sqlite3StatusAdd() call. (check-in: e3b500fb5d user: drh tags: trunk)
13:24
Add a mutex around an sqlite3StatusAdd() call to prevent the pagecount overflow measurements from getting off in multithreaded applications. (check-in: 3d8b298dc2 user: drh tags: trunk)
07:25
Update mutex1.test so that it works with the memsubsys1 permutation (pagecache memory). Change a few instances of SQLITE_MUTEX_STATIC_LRU2 in comments and test code to STATIC_PMEM. (check-in: 456bd5c63b user: dan tags: trunk)
06:13
Changes to exclusive2.test to make it more deterministic. (check-in: 84b0c2bc71 user: dan tags: trunk)
00:07
Rename the PCache1.mxPinned field to n90pct (since it is 90% of nMax) in order to distinguish it from PGroup.mxPinned. Fix the computation of n90pct so that it does not overflow adversely on excessively large cache sizes. (check-in: c85202baac user: drh tags: trunk)
2011-01-25
18:30
Fix new compiler warnings in pcache1.c that were introduced by the recent performance enhancement patches of [e14649301138b684]. (check-in: c17703ec1e user: drh tags: trunk)
18:19
Add a missing call to sqlite3PagerSync() removed by [ce552d975] to the backup code. (check-in: 1965b85318 user: dan tags: trunk)
16:48
Make sure the return code from doing an xSync is correctly initialized so that a valid return code is produced regardless of the path taken through the logic. (check-in: f12b5d7685 user: drh tags: trunk)
16:20
Change the name of SQLITE_FCNTL_SYNC to SQLITE_FCNTL_SYNC_OMITTED and only send it when PRAGMA synchronous=OFF. Add better documentation to explain what that file-control opcode is used for. (check-in: 6491498085 user: drh tags: trunk)
13:43
Fix a couple of typos in comments. No changes to actual code. (check-in: 9167fdb356 user: dan tags: trunk)
11:33
Fix a broken assert() in pager.c. (check-in: 13108ce13c user: dan tags: trunk)
09:54
Fix a problem in memsubsys1.test. Modifications to test code only. (check-in: 7ef3f7cba7 user: dan tags: trunk)
04:34
Shave a few cycles so that performance is better than 3.7.4 in speed tests. (check-in: e146493011 user: drh tags: trunk)
2011-01-24
20:18
Modify the test_quote.c demonstration shim so that it works when SQLITE_THREADSAFE=0 is defined. (check-in: b70bcccaf5 user: drh tags: trunk)
19:45
Fix a typo in the documentation for sqlite3_snprintf(). No changes to code. (check-in: 8d1065411a user: drh tags: trunk)
19:14
Fix a harmless compiler warning (a shadowed local variable) in analyze.c. (check-in: a1ad7fb38b user: drh tags: trunk)
17:46
Restructuring and generalizing analyze5.test. The whole script is currently disabled and will need to be reenabled prior to merging with trunk. (check-in: 31fcc7067b user: drh tags: stat2-enhancement)
16:00
Ensure that if a deferred FK constraint is violated by a statement that creates its own implicit transaction, the statement is not an "active-write" after sqlite3_step() returns. (Closed-Leaf check-in: 8063197ef1 user: dan tags: deferred-fk-quirk)
15:11
Change the cost estimator in the query planner to take into account the logN rowid lookup cost when going from an index to a table. (check-in: b442525b0b user: drh tags: stat2-enhancement)
2011-01-22
13:32
Modify the trace callback mechanism so that SQL commands executed from within virtual table or user function callbacks are passed to the trace callback without parameter expansion and enclosed in SQL comments. (check-in: a764915b87 user: dan tags: trunk)
00:10
Add the ability to use indices for constraints of the form "x IS NOT NULL" when sqlite_stat2 is available and most entries for column x are NULL. (check-in: 5d5bddd290 user: drh tags: stat2-enhancement)
2011-01-21
18:25
Change sqlite3StrAccumAppend() to use realloc instead of malloc. (check-in: 380f61df07 user: dan tags: trunk)
18:18
Adjustments to the result row estimator for the IN operator so that it gives the same estimates as the equivalent OR operator. Test cases for the same. (check-in: c82cb9c028 user: drh tags: stat2-enhancement)
16:27
Make use of histogram data to make better estimates for the number of rows that will be returned from "x IN (v1,v2,v3,...)" constraints. (check-in: fd3977a27a user: drh tags: stat2-enhancement)
15:52
Add options to test command [do_faultsim_test] to support testing VFS implementations. (check-in: 503ad889da user: dan tags: trunk)
14:37
Add the ability to use indices when a range contraint is bounded on the lower end by NULL. (check-in: f73a167b43 user: drh tags: stat2-enhancement)
2011-01-20
20:36
Update ANALYZE test cases to check out the use of histograms for equality constraints. (check-in: c7b59afaf0 user: drh tags: stat2-enhancement)
16:52
Use histogram data to improve the row-count estimates on equality constraints. (check-in: 6bfc5c69eb user: drh tags: stat2-enhancement)
02:56
The first of a planned series of enhancements to the query planner that enable it to make better use of sqlite_stat2 histograms when the table has many repeated values. (check-in: 2cd374cd23 user: drh tags: stat2-enhancement)
2011-01-19
21:58
Comment improvements in pcache1.c. No changes to code. (check-in: 9660a0a225 user: drh tags: trunk)
2011-01-18
17:34
Pull over all the latest trunk changes. (check-in: ca86d04be1 user: drh tags: wal-trace-375)
17:03
Do not use mutexes in the pcache implementation unless SQLITE_ENABLE_MEMORY_MANAGMENT is defined. This is a performance enhancement. A side effect is that pcaches will not steal pages from one another unless ENABLE_MEMORY_MANAGEMENT is set, or unless SQLITE_THREADSAFE=0. (check-in: e5ca59e63b user: drh tags: trunk)
16:13
Get all test cases working with the mutex-free-pcache implementation. (Closed-Leaf check-in: 2dc98d2999 user: drh tags: mutex-free-pcache)
15:17
Do not use SQLITE_MUTEX_STATIC_MEM2 since it has been reused as STATIC_OPEN. Instead, create a new static mutex STATIC_PMEM which is an alias for the unused STATIC_LRU2. (check-in: f1cf02efcb user: drh tags: mutex-free-pcache)
2011-01-17
21:32
Here is a completely new implementation of the mutex-free-pcache. This one uses a common code base and automatically selects whether or not to use mutexes depending on compile-time and start-time options. (check-in: d094a1bfb7 user: drh tags: mutex-free-pcache)
18:30
Fix a typo in the documentation for sqlite3_stmt_readonly(). (check-in: 56417a3386 user: drh tags: trunk)
17:42
Add the SQLITE_OMIT_AUTORESET compile-time option which if enabled causes the sqlite3_step() routine to return SQLITE_MISUSE if it is called after it has previously returned anything other than SQLITE_ROW, SQLITE_BUSY, or SQLITE_LOCKED. (check-in: 053ce76deb user: drh tags: trunk)
02:24
Add back an ALWAYS() to regain full test coverage. (check-in: b93f6f3e67 user: drh tags: trunk)
2011-01-16
22:37
On a backup from a smaller to a larger page size, do not begin committing the transaction until the source pages after the pending byte have been copied. (check-in: 612e2599d3 user: drh tags: trunk)
00:56
Make sure the change-counter and SQLite-version fields of the header are set correctly even when doing a VACUUM with locking_mode=EXCLUSIVE. Ticket [5d863f876ee9561b]. (check-in: 04fa1e1690 user: drh tags: trunk)
2011-01-15
21:42
Make sure the change counter and SQLite version numbers in the header are set correctly, even when running in WAL mode and when VACUUMing in WAL mode. Ticket [5d863f876ee9561b9]. (check-in: 0be92a7576 user: drh tags: trunk)
18:11
Fix the change-counter increment for WAL pages so that it works even when invoked from xStress. Ticket [5d863f876ee9561b95e2]. (Closed-Leaf check-in: 228e7c34c6 user: drh tags: bug-5d863f87)
17:12
Increment the change counter and update the SQLite version number whenever page 1 is added to the WAL. Ticket [5d863f876ee9561b9] (check-in: c1e0d09cd3 user: drh tags: bug-5d863f87)
16:52
Add a test case demonstrating the problem described by ticket [5d863f876e]. (check-in: af54963f0f user: dan tags: trunk)
2011-01-14
16:43
Rerun autoconf to bring the configure script up-to-date. (check-in: 142174640d user: drh tags: trunk)
16:12
Provide an alternative and experimental pcache implementation that avoids the use of mutexes at the expense of using more memory. (Closed-Leaf check-in: 2ea5bd1287 user: drh tags: mutex-free-pcache)
15:17
Fix comments, including some documentation comments, in the page cache logic. No code changes. (check-in: c80e9c1a0d user: drh tags: trunk)
11:51
Fix a bug in test code (test_vfs.c). (check-in: 772a3845f8 user: dan tags: trunk)
2011-01-13
16:10
Fix a typo on the sqlite3_open_v2() documentation. (check-in: b0add45abc user: drh tags: trunk)
11:20
Fix a couple of crashes in fts3 that can occur if the database contents are inconsistent. (check-in: 811e12cddf user: dan tags: trunk)
10:58
Fix a segfault that can occur in matchinfo if an fts4 table contains mostly zero-length documents. Specifically, if the table contains more rows than it does bytes of text. (check-in: fe9047668e user: dan tags: trunk)
2011-01-12
17:56
Do not raise an SQLITE_CORRUPT error in Recoverymode if the database size in the header is larger than the physical file size. This facilitates recovery of a database in which the database size field has been corrupted. (check-in: 114640d920 user: drh tags: trunk)
2011-01-11
17:40
Merge accidentally created fork. (check-in: b7d080b8e8 user: dan tags: trunk)
17:39
Add the SQLITE_FCNTL_SYNC file-control. (check-in: b3f2f465c3 user: dan tags: trunk)
17:38
Change the page size of the destination database in a backup, if it is changeable, prior to starting the backup. (check-in: a5e4e0caad user: drh tags: trunk)
16:09
If a rollback is attempted in journal_mode=off mode, force SQLite to discard the contents of the pager cache before processing any subsequent queries. (check-in: ece7efce27 user: dan tags: trunk)
12:46
Fix the sqlite3.h generator script so that it generates the correct SQLITE_SOURCE_ID string with the latest versions of Fossil that include fractional seconds on the date/time stamp. (check-in: 3513bf6ee0 user: drh tags: trunk)
01:42
A proposed change to the sqlite3_step() API such that it will only auto-reset following an SQLITE_BUSY or SQLITE_LOCKED error. Calls after any other result other than SQLITE_ROW will return SQLITE_MISUSE. (Closed-Leaf check-in: d1b3c54f42 user: drh tags: step-autoreset)
2011-01-10
21:01
Update pager requirements to account for the ZIPVFS extension. (check-in: d94e59b514 user: drh tags: trunk)
2011-01-07
02:50
Reorder the fields in private structures in an effort to reduce alignment gaps and thus make the structures smaller, and to put frequently accessed fields first. Also update some obsolete comments. Valgrind shows a very slight performance improvement. (check-in: 378a1d13af user: drh tags: trunk)
2011-01-06
15:51
Enhance the showdb tool to show overflow page pointers at the end of overflow cells. (check-in: cda5eab18f user: drh tags: trunk)
01:26
Enhance the showdb tool to show a btree page layout. Add limit checks so that overflow content does not overflow the buffer. (check-in: 57ffa07e26 user: drh tags: trunk)
2011-01-05
21:46
Fix a bug in the showdb utility: the serial types for BLOB and TEXT where reversed. (check-in: 65a13faf1e user: drh tags: trunk)
21:20
Enhancements to the "showdb" debugging tool. Add the ability to display the content of a cell. (check-in: e9023a4e1e user: drh tags: trunk)
13:43
Increment the version number to 3.7.5. (check-in: 9ec3896e2f user: drh tags: trunk)
13:07
Cherrypick the WAL error logging from the pre-3.7.5 line into a branch for version 3.7.2. Include the sqlite3_vsnprintf() interface. This checkin is intended for debugging and not for release. (Leaf check-in: 6549e7672b user: drh tags: wal-trace-372)
12:50
Add detailed error logging to WAL in an effort to track down an obscure SQLITE_PROTOCOL problem. This code is intended for debugging and not for release. (check-in: 2c2afdd0ad user: drh tags: wal-trace-375)
12:20
Add the sqlite3_vsnprintf() interface. (check-in: fc67adea41 user: drh tags: trunk)
2011-01-04
20:06
Fix a null-pointer dereference that can occur on an OOM error while running ANALYZE with SQLITE_ENABLE_STAT2. (check-in: 73128d4ef5 user: drh tags: trunk)
19:01
Fix the ANALYZE command so that it takes collating sequences into account when gathering index statistics. (check-in: a5867cfc4c user: drh tags: trunk)
17:57
The ANALYZE command now counts at all rows of an index, even those containing NULL values. A valid sqlite_stat1 entry is created even if the index contains nothing but NULLs. (check-in: 824c8dd301 user: drh tags: trunk)
2010-12-29
18:24
Have testfixture invoke C routine Zipvfs_Init() when creating a new interpreter if SQLITE_ENABLE_ZIPVFS is defined. (check-in: 430635dacf user: dan tags: trunk)
10:49
Fix some off-by-one errors in the comments for API functions create_function() and value_blob(). No changes to code or tests. (check-in: 7ded90baeb user: dan tags: trunk)
2010-12-24
15:49
Reduce the number of calls to sqlite3_realloc() made by fts3 when querying for position information of a term prefix. (check-in: 7088d9450f user: dan tags: trunk)
2010-12-22
21:48
Do not include &lt;sys/mmap.h&gt; if SQLITE_OMIT_WAL is defined. (check-in: b82e85ece9 user: drh tags: trunk)
2010-12-21
21:28
Add test cases for the new lookaside hit and miss status outputs. Add the output of lookaside hit and miss to the command-line shell statistics. (check-in: b0888047bb user: drh tags: trunk)
20:36
Merge into the trunk the experimental enhancements to sqlite3_db_status() for measuring lookaside memory allocator performance. (check-in: 8c3b06c299 user: drh tags: trunk)
00:20
Remove the obsolete compile-time option SQLITE_THREAD_OVERRIDE_LOCK from the autoconf makefile. Needed only for LinuxThreads, which we no longer support. (check-in: 09f6c053ff user: drh tags: trunk)
00:16
Rearrange a variable declaration in the proxy locking code to avoid a harmless compiler warning on recent MacOS versions. (check-in: 39bbd35599 user: drh tags: trunk)
2010-12-20
17:00
Clarify the documentation of the SQLITE_STATUS_MALLOC_COUNT parameter to sqlite3_status(). (check-in: 3b41bcc3e3 user: drh tags: trunk)
15:51
Add additional DBSTATUS options for measuring the hit and miss rates against the lookaside memory pool - information useful in tuning the lookaside size. Currently experimental pending analysis of performance impact. (Closed-Leaf check-in: 34613f1dc5 user: drh tags: experimental)
2010-12-17
14:03
Add the "-heap" option to the command-line shell - to allocate a fixed heap for use with SQLITE_ENABLE_MEMSYS5. (check-in: 74fff69234 user: drh tags: trunk)
01:00
Fix minor typos in the sqlite3_backup documentation. (check-in: df430be59d user: drh tags: trunk)
2010-12-16
20:35
Improvements to the documentation for sqlite3_backup. No code changes. (check-in: f83609f470 user: drh tags: trunk)
19:52
Fix an assertion fault that can only occur if SQLITE_ENABLE_STAT2 is defined and the constant folding optimization is disabled using sqlite3_test_control(). Problem introduced by [ad8bc68197f2b4] but we missed it prior to the 3.7.4 release due to taking shortcuts and skipping tests in the release checklist. (check-in: 70a3d81742 user: drh tags: trunk)
02:06
Make wal_checkpoint a no-op if a prior checkpoint has already copied all WAL content into the database. This prevents a concurrent write to the database from resetting the wal-index out from under the WalIterator of the checkpoint as it is initializing. (check-in: cf86affcb7 user: drh tags: trunk)
2010-12-15
21:02
Enhanced comments in wal.c and declare some procedure parameters "const". No changes to the generated code. (check-in: d0e4375b8a user: drh tags: trunk)
18:54
When registering the built-in LIKE and GLOB functions, make sure that they are tagged with SQLITE_UTF8 so that if other application-defined LIKE and GLOB implementations are provided for UTF16, then the appropriate function will be selected. (check-in: e1660764f2 user: drh tags: trunk)
2010-12-10
17:06
Fix a performance regression in matchinfo(). (check-in: fa37d8eb7c user: dan tags: trunk)
2010-12-09
19:15
Add support for the SQLITE_DEFAULT_FOREIGN_KEYS compile-time option. (check-in: c959945ab7 user: drh tags: trunk)
18:55
Mention the SQLITE_DEFAULT_WAL_AUTOCHECKPOINT compile-time option in the documentation for the sqlite3_wal_autocheckpoint() interface. (check-in: 5a52dd59ff user: drh tags: trunk)
2010-12-08
18:30
Update the sqlite3_stmt_readonly() interface so that its output is well-defined for all prepared statements, and so that it gives the correct result for VACUUM. (check-in: 9c19b7ae35 user: drh tags: trunk)
03:28
The command-line shell ignore errors in sqlite3_close() when shutting down. (check-in: 925332c3d7 user: drh tags: trunk)
00:02
Changes to the shell which should, in theory, allow it to work with libeditline as an alternative to libreadline. (check-in: e474fd9e7f user: drh tags: trunk)
2010-12-07
23:24
Improved documentation for SQLITE_FCNTL_FILE_POINTER. (check-in: 43935548ae user: drh tags: trunk)
20:14
Version 3.7.4 (check-in: a586a4deeb user: drh tags: trunk, release, version-3.7.4)
17:12
Work around restriction in Windows file locking. (check-in: fe441df9ba user: shaneh tags: trunk)
16:39
Fix a bug in the demo "superlock" code preventing locks from being released in some circumstances. (check-in: 65c393793f user: dan tags: trunk)
15:49
Merge in all changes to the trunk through version 3.7.4rc3. (check-in: d2ccf7fc06 user: drh tags: apple-osx)
14:59
Version 3.7.4 release candidate 3 (check-in: 11c74c0dae user: drh tags: trunk)
14:32
Run some of the existing test scripts with optimizations disabled as part of all.test. (check-in: b0634d2f90 user: dan tags: trunk)
07:57
Add tests to tkt-80ba201079.test. (check-in: c370338c77 user: dan tags: trunk)
2010-12-06
21:09
Fix the build so that it once again works with SQLITE_OMIT_SHARED_CACHE and SQLITE_OMIT_AUTOVACUUM. (check-in: fabcb6b95e user: drh tags: trunk)
21:06
Add the ability to disable constant factoring using sqlite3_test_control(). Add a TCL interface to this new capability and add tests cases to the TCL test scripts to actually use the new capability. (check-in: ad8bc68197 user: drh tags: trunk)
18:59
Back out part of the previous change that was not really necessary in order to fix [80ba201079ea60], and which in fact serves no useful purpose. (check-in: fa9eef865f user: drh tags: trunk)
18:50
Initialize all constants at the very beginning of a prepared statement. Do not allow constant initialization to occur once control flow has a chance to diverge, to avoid the possibility of having uninitialized registers. Ticket [80ba201079ea60807]. (check-in: c5c53152d6 user: drh tags: trunk)
17:11
Have sqlite3_blob_bytes() return 0 following a failed call to sqlite3_reopen_blob(). (check-in: 476a8b4921 user: dan tags: trunk)
2010-12-04
19:35
Version 3.7.4 release candidate 2. (check-in: 40756fe1f1 user: drh tags: trunk)
18:20
Fix a memory leak in fts3 that can occur in an OOM condition. (check-in: 507027b70f user: dan tags: trunk)
2010-12-03
18:57
Remove an over-zealous call to memAboutToChange() from OP_MustBeInt. OP_MustBeInt will never invalidate the Mem.z pointer so the memAboutToChange() call is not necessary. (check-in: 841cf7a7db user: drh tags: trunk)
15:41
Version 3.7.4 release candidate 1 (check-in: 2e800cb87d user: drh tags: trunk)
15:04
Add tests for fts3 to backcompat.test. (check-in: b4eafde823 user: dan tags: trunk)
10:32
Add the "valgrind" permutation. This is the same as veryquick.test except that it omits the multi-process tests that do not work under valgrind. No changes to production or existing test code. (check-in: 4953130067 user: dan tags: trunk)
2010-12-02
17:39
Fix a bug causing fts3 to incorrectly return SQLITE_CORRUPT. (check-in: 099195b148 user: dan tags: trunk)
14:47
Exclude a test case from the inmemory_journal permutation of multiplex.test. (check-in: 474196d645 user: dan tags: trunk)
11:24
Fix a (harmless) valgrind warning in the rtree extension. (check-in: a94b9a395e user: dan tags: trunk)
06:08
Update misc7.test to account for EQP changes. (check-in: 917af565ac user: dan tags: trunk)
2010-12-01
23:42
Changed multiplex shim's xFilesize to return an error on mismatched chunk size. Added test of same. (check-in: 6818c6e42f user: shaneh tags: trunk)
22:08
Make sure a test of multiplex shim doesn't fail if a file already exists. (check-in: 80de240a32 user: shaneh tags: trunk)
20:49
Added TCL test case for converting to WAL mode with multiple connections. Added exception to the test case for Windows for not being able to delete the open journal file. (check-in: 7061601f49 user: shaneh tags: trunk)
19:00
Change the type of a variable in struct SrcList so that it fits in a 100 byte lookaside buffer on a 64-bit architecture. (check-in: 7df43f4892 user: dan tags: trunk)
15:36
Fix some warnings under MSVC in fts3 module. (check-in: c7771c0b22 user: shaneh tags: trunk)
11:46
Add test file e_resolve.test. (check-in: 6858df9c72 user: dan tags: trunk)
08:04
Avoid recursive calls to sqlite3VdbeMemRelease() when deleting VM frames used by trigger programs. (check-in: 119ffe955e user: dan tags: trunk)
2010-11-30
12:12
Add test file e_dropview.test. (check-in: 6197822cc8 user: dan tags: trunk)
2010-11-29
18:36
Fix a warning in os_unix.c. (check-in: ee8dc8c87e user: dan tags: trunk)
18:22
On *BSD systems, reduce the number of open connections used by wal3.test to avoid running out of file-descriptors. (check-in: 0a3cba95a1 user: dan tags: trunk)
17:55
Fix compiler warnings discovered while building SQLite on [http://www.devio.us/]. (check-in: 5602ec95aa user: dan tags: trunk)
16:10
Add tests for very small cache-sizes (less than 10 pages). (check-in: 46b3fbdafe user: dan tags: trunk)
12:06
Add new test file e_droptrigger.test. (check-in: d23ef9b88c user: dan tags: trunk)
2010-11-26
16:49
Fix various compiler warnings. (check-in: c412f61229 user: drh tags: trunk)
16:31
Fix an uninitialized variable in fts3.c. (check-in: 3c3d076b42 user: dan tags: trunk)
15:17
Merge fts3 matchinfo() changes with trunk. (check-in: 7d660b91b7 user: dan tags: trunk)
15:13
Add a couple of comments to fts3_snippet.c. (Closed-Leaf check-in: ad8df6c5ee user: dan tags: fts3-experimental)
10:58
Merge with latest trunk changes. (check-in: 515cb3f4e5 user: dan tags: fts3-experimental)
2010-11-25
17:49
Add coverage tests (and associated fixes) for new matchinfo() code. (check-in: 70495ceccc user: dan tags: fts3-experimental)
10:33
Fix bugs in fts3 function matchinfo() when used with deferred tokens. (check-in: ddc2b7ec26 user: dan tags: fts3-experimental)
2010-11-24
19:26
Add code for the matchinfo 'longest common substring' feature. (check-in: 71011a4f9b user: dan tags: fts3-experimental)
15:02
Fix crashes that can occur when queries are run on an FTS4 table containing zero rows. (check-in: ed61fd20ad user: dan tags: fts3-experimental)
13:04
Fix a couple of compiler warnings in test_superlock.c. Add superlock.c to the Makefile.in used by the configure script. (check-in: 461f1a010f user: drh tags: trunk)
11:51
Remove some unused code from fts3. Add tests to fts3matchinfo.test. (check-in: ae40b34cf7 user: dan tags: fts3-experimental)
2010-11-23
20:55
Cherry-pick the lemon.c updates out of the lemon-update-2010 branch into the trunk. (check-in: 1541ae3fbd user: drh tags: trunk)
20:25
The previous check-in with changes to the max_page_count pragma was not quite correct. This check-in fixes the problem. (check-in: 30c26c3b13 user: drh tags: trunk)
19:16
Experimental changes to fts3 function matchinfo(). (check-in: 9cf0f2b76b user: dan tags: fts3-experimental)
18:59
Fix the max_page_count pragma so that it will not set to a value smaller than the current database size, as the documentation requires. Also, remove all occurances of atoi() from the core. (check-in: 2031974b60 user: drh tags: trunk)
2010-11-22
17:26
Fix a typo in unixCurrentTimeInt64() preventing compilation with NO_GETTOD defined. (check-in: 3df3e79b56 user: dan tags: trunk)
2010-11-20
12:01
Extra tests for "PRAGMA checkpoint_fullfsync". (check-in: e38c81cc18 user: dan tags: trunk)
10:57
Add extra tests for test_superlock.c. (check-in: 1c4e58e721 user: dan tags: trunk)
2010-11-19
23:50
Merge all the latest changes from the trunk into the apple-osx branch. (check-in: c8bc057c7d user: drh tags: apple-osx)
18:51
Merge the checkpoint_fullfsync pragma and the superlock demonstration into the checkpoint-v2 experimental branch. (Closed-Leaf check-in: ebf74015f0 user: drh tags: blocking-checkpoint)
18:48
Add tests for "PRAGMA checkpoint_fullfsync". (check-in: 765aa1b862 user: dan tags: trunk)
18:36
Merge in the superlock demonstration changes. (check-in: 570e79a8eb user: drh tags: trunk)
18:23
Add the checkpoint_fullfsync pragma which enables F_FULLFSYNC on checkpoint operations only, not during ordinary commit fsyncs. (check-in: a069867301 user: drh tags: trunk)
18:20
Add file test_superlock.c with example code for obtaining an exclusive lock on either rollback or wal mode databases. (Closed-Leaf check-in: 1a3e7417a2 user: dan tags: superlock)
14:37
Add the SQLITE_FCNTL_FILE_POINTER verb to sqlite3_file_control(). (check-in: 4425b0645d user: drh tags: superlock)
09:58
Add file test/tt3_checkpoint.c that adds a multi-threaded test for blocking checkpoints to threadtest3. (check-in: 648dd157ef user: dan tags: blocking-checkpoint)
07:17
Add extra test cases for blocking checkpoints. (check-in: ac348ae25c user: dan tags: blocking-checkpoint)
2010-11-18
19:28
Fixes for SQLITE_BUSY handling in blocking checkpoint code. (check-in: 4c663a4dcc user: dan tags: blocking-checkpoint)
16:59
Merge with latest trunk fix. (check-in: a8910e89de user: dan tags: blocking-checkpoint)
16:58
Ensure tcl is using utf-8 as the system encoding when running capi3e.test. (check-in: 0a95589f21 user: dan tags: trunk)
16:32
Merge with latest trunk changes. (check-in: e376480f08 user: dan tags: blocking-checkpoint)
16:14
Update test cases to account for the change in the previous commit. (check-in: ae089ec881 user: dan tags: blocking-checkpoint)
15:44
Added some tests to check that umlaut characters are supported in filenames. (check-in: c36f275d70 user: shaneh tags: trunk)
13:52
Restrict the scope of the fts3ExprCost() subroutine inside of FTS3. (check-in: 76681870a4 user: drh tags: trunk)
13:47
Fix compiler warnings. (check-in: 6c4f1d5c24 user: drh tags: trunk)
12:31
Prevent a possible segfault when the sqlite3_value_numeric_type() interface is misused to try to determine the numeric type of the NULL value returned from sqlite3_column_value() with an invalid column number. (check-in: 501b743bcb user: drh tags: trunk)
12:11
Modify the interface to the blocking wal-checkpoint functionality. (check-in: 72787c010c user: dan tags: blocking-checkpoint)
2010-11-17
02:02
Restrict the scope of the sqlite3_stmt_readonly() interface to a specific subset of prepared statement types. (check-in: 919b06c3a8 user: drh tags: trunk)
2010-11-16
23:10
Adding the sqlite3_stmt_readonly() interface. (check-in: fd5b2f23dd user: drh tags: trunk)
18:56
Add experimental command "PRAGMA wal_blocking_checkpoint", which uses the busy-handler to block until all readers have finished in order to ensure the next writer will be able to wrap around to the start of the log file. (check-in: 7e3fc2c833 user: dan tags: blocking-checkpoint)
02:49
Use the estimated number of rows computed for subqueries in the cost computations for outer queries. (check-in: 56bbc53924 user: drh tags: trunk)
2010-11-15
21:50
Change the EQP output for the min/max optimization from "SCAN" to "SEARCH". Other changes in where.c in support of full branch coverage testing. (check-in: d52b593978 user: drh tags: trunk)
16:29
Fix the EQP logic so that it correctly reports OOM errors while formatting "detail" text. (check-in: 136c2ac24e user: drh tags: trunk)
16:12
Change some test cases to account for the new EXPLAIN QUERY PLAN output. (check-in: 88a854e18f user: dan tags: trunk)
14:51
Test some example code from documentation page eqp.html. (check-in: 547bc2c232 user: dan tags: trunk)
14:44
Merge the EXPLAIN QUERY PLAN changes from experimental into trunk. (check-in: ce27bf3840 user: drh tags: trunk)
11:35
Minor additions to vacuum.test. (check-in: a397ed1622 user: dan tags: trunk)
2010-11-13
16:42
Change the EXPLAIN QUERY PLAN output to use "USING INDEX" instead of "BY INDEX", and to use "SEARCH" instead of "SCAN" for loops that are not full-table scans. (Closed-Leaf check-in: 6611b76b02 user: dan tags: experimental)
2010-11-12
17:41
Add EXPLAIN QUERY PLAN test cases to check that the examples in the documentation work. (check-in: 85fdad850a user: dan tags: experimental)
15:49
Change the test_multiplex.c code to use wrapper functions for all sqlite3_vfs methods (instead of copying function pointers from the underlying vfs into the multiplex vfs). This is required to work with test_osinst.c. (check-in: 1244ef9f7e user: dan tags: trunk)
15:36
Reduce the number of branches that need to be tested in the explainIndexRange() function of where.c. (check-in: 6fdae9a635 user: drh tags: experimental)
2010-11-11
17:48
Use "COMPOUND" instead of "COMPOSITE" in the EXPLAIN QUERY PLAN output to describe UNION, UNION ALL, EXCEPT and INTERSECT operations. (check-in: 28643b85d9 user: dan tags: experimental)
16:46
Add a row of EXPLAIN QUERY PLAN output for each composite select operation (UNION, EXCEPT etc.) in the query. (check-in: 00fb8468b5 user: dan tags: experimental)
11:43
Fix a bug in the EXPLAIN QUERY PLAN code. (check-in: 7ae068952f user: dan tags: experimental)
10:36
Modifications to test cases to account for new EXPLAIN QUERY PLAN output. (check-in: 30904ef841 user: dan tags: experimental)
2010-11-09
20:33
Fix an assert that fired incorrectly when PRAGMA omit_readlock was set. (check-in: e068758222 user: shaneh tags: trunk)
20:08
Add "PRAGMA checkpoint_fullfsync". Similar to "PRAGMA fullfsync", but enables full fsyncs only during checkpoint operations. Update: This change was added to the trunk by check-in [a069867301de3ca2e17] (Closed-Leaf check-in: 756589ad6e user: dan tags: apple-osx-exp)
17:49
Merge with latest trunk changes. (check-in: 4b5c93bc7c user: dan tags: experimental)
17:35
Add missing comments and fix other issues with routines used by new EQP features. (check-in: 925f35c535 user: dan tags: experimental)
14:49
Further enhancements and fixes for explain query plan. (check-in: 73c93f5a2a user: dan tags: experimental)
01:53
Back out the prior attempt to enable full-fsync for WAL and attempt the same thing using a completely different approach. (check-in: f59949fac1 user: drh tags: apple-osx-exp)
00:47
Experimental changes to test defaulting to fullfsync for WAL mode (check-in: 77b343cfc3 user: adam tags: apple-osx-exp)
00:43
Integrated proxy locking file support for WAL journal mode and double free fix (check-in: fd4d38fa66 user: adam tags: apple-osx)
2010-11-08
19:16
Changes to the multiplex VFS to optionally (compiler define) allow the "chunk extension" to overwrite the right-most chars of the filename instead of simply being appended. (check-in: 07da0a0bef user: shaneh tags: trunk)
19:01
Experimental changes to EXPLAIN QUERY PLAN. (check-in: f4747eb83d user: dan tags: experimental)
2010-11-05
20:50
Fix to xTruncate and more journal mode tests for the multiplex VFS. (check-in: 65fa1164f0 user: shaneh tags: trunk)
18:07
Fix os_unix.c so that it works with the test_multiplex module. (check-in: 72ba3e368b user: dan tags: trunk)
17:51
More tests and added support for xDelete in multiplex VFS. (check-in: f2004b44bf user: shaneh tags: trunk)
03:58
Additional error checking and tests for multiplex VFS. (check-in: 1ab9a59237 user: shaneh tags: trunk)
03:43
Additional tests and commenting for the multiplex VFS. (check-in: 8ed944ba74 user: shaneh tags: trunk)
00:04
Update the configure script for version 3.7.4. (check-in: 18a73795b4 user: drh tags: trunk)
00:01
Merge the multiplexer VFS demo into the trunk. (check-in: 1635d927cd user: drh tags: trunk)
00:00
Fix the Makefile.in so that it works with the multiplexer VFS. (Closed-Leaf check-in: 54e2efb667 user: drh tags: experimental)
2010-11-04
21:14
Back out an unintended change to permutations.test. (check-in: 57fe35357d user: drh tags: experimental)
21:13
Another change for testing on Windows. (check-in: 2625886b19 user: shaneh tags: experimental)
21:03
Fix the main.mk makefile to include test_multiplex.c for testfixture. (check-in: c27c51180e user: drh tags: experimental)
20:50
First attempt at a sharding VFS to split large DBs. (check-in: dd4dc8a426 user: shaneh tags: experimental)
20:47
Fix icon size so it's really 32x32. (check-in: 62c494f694 user: shaneh tags: experimental)
20:46
Updates for Windows. (check-in: cc9d9a12c3 user: shaneh tags: experimental)
04:47
Include the print_pager_state() function only if SQLITE_DEBUG is defined. (check-in: 3104f17e5d user: dan tags: trunk)
2010-11-02
17:41
Changes to allow FTS4 tables to be created without the underlying %_docsize table (in order to save space). (check-in: 31989b18f5 user: dan tags: trunk)
15:26
Add evidence marks for the sqlite3_blob_reopen() interface. Fix compiler warnings in test1.c. Fix incorrect evidence marks on e_select.tcl. (check-in: 3771faa88e user: drh tags: trunk)
2010-11-01
18:45
Add test cases to restore coverage of pager.c and wal.c. (check-in: 6cae552927 user: dan tags: trunk)
17:38
If a database file with the WAL flag set is opened in exclusive-locking mode, use heap memory to store the wal-index instead of shared-memory. (check-in: 8dd5c69198 user: dan tags: trunk)
14:34
Change the version number to 3.7.4. (check-in: db64843b54 user: drh tags: trunk)
05:54
Fix a broken test case in exclusive.test. (check-in: 582db83294 user: dan tags: trunk)
05:42
Changes to test scripts so that they work with SQLITE_ENABLE_ICU. (check-in: 465c819fdb user: dan tags: trunk)
2010-10-31
22:47
Fix a test module comment typo reported on the mailing list. (check-in: 87eb1f04d2 user: drh tags: trunk)
22:42
Fix a typo in a comment inserted by the amalgamation builder. Typo reported on the mailing list. (check-in: 6a6bb6ce73 user: drh tags: trunk)
2010-10-30
15:21
Test cases and minor changes to make fts3 more robust in the face of a corrupt database. (check-in: b770290561 user: dan tags: trunk)
2010-10-29
18:45
Add extra test cases and changes to fts3 to avoid crashing on a corrupt database. (check-in: 252f0e457d user: dan tags: trunk)
2010-10-28
15:52
Add new "dynamic_triggers" test case to threadtest3.c. (check-in: a4691563dd user: dan tags: trunk)
15:49
This was suppose to go on "trunk" but got committed to the wrong branch. Add new "dynamic_triggers" test case to threadtest3.c. (Closed-Leaf check-in: d9e588ef17 user: dan tags: mistake)
11:31
Enforce the MAX_EXPR_DEPTH limit while building expression trees during SQL parsing. (check-in: 2625eee0cb user: dan tags: trunk)
2010-10-27
19:23
Add tail recursion to the sqlite3ExprDelete() routine in order to keep down stack space usage for really, really large expressions. <b>Later:</b> The tail recursion is dangerous since the recursion might happen after the expression has been freed. (check-in: 7324c7f2f8 user: drh tags: mistake)
19:08
Avoid trying to allocate a negative number of bytes of memory in the test wrapper for sqlite3_blob_read(). (check-in: 739b5d9aa4 user: dan tags: trunk)
18:10
Merge experimental fts3/fts4 changes with trunk. (check-in: 988164cf48 user: dan tags: trunk)
16:52
Fix a buffer overread in fts3 that can occur if the database is corrupt. (Closed-Leaf check-in: 84194c4195 user: dan tags: experimental)
15:36
Fix a memory leak in the update_hook method of the TCL interface. (check-in: 1d17e3dc83 user: drh tags: trunk)
10:55
In fts4, store the total number of bytes of for all records in the table in the %_stat table. (check-in: 941647d121 user: dan tags: experimental)
2010-10-26
18:42
Structural coverage tests for vdbeblob.c. Including experimental new API sqlite3_blob_reopen(). (check-in: 97c6b2616d user: dan tags: experimental)
11:56
Add missing header comments for changes related to the experimental sqlite3_blob_reopen() API. (check-in: d1cc5c93f0 user: dan tags: experimental)
07:14
More coverage tests for fts3.c. (check-in: 7a2f286400 user: dan tags: experimental)
2010-10-25
19:01
Further improvements to coverage of fts3.c. Fixes for bugs revealed by the same. (check-in: 918b609290 user: dan tags: experimental)
12:47
Test coverage improvements for fts3.c. (check-in: a8b1d99899 user: dan tags: experimental)
09:01
Add test for matchinfo when a phrase includes some common tokens. (check-in: 80a54ebc41 user: dan tags: experimental)
2010-10-23
19:07
Fixes for the matchinfo() function related to FTS4 common token handling. (check-in: deb80eac91 user: dan tags: experimental)
2010-10-22
19:03
Add new test file fts3defer2.test. (check-in: 5a4d5bfcae user: dan tags: experimental)
16:44
Add missing comments and fix compiler warnings in new FTS3/4 code. Other minor fixes too. (check-in: 1c9c70fec3 user: dan tags: experimental)
13:55
Prevent an assert from failing when opening a zero-length database file with an apparently hot journal with locking_mode=exclusive set. (check-in: f000ac1e52 user: dan tags: trunk)
2010-10-21
22:58
Make sure the estimated row count for ephemeral tables is initialized so that automatic indices can be used on those tables. (check-in: d30f7b2def user: drh tags: trunk)
15:49
Merge trunk changes into experimental branch. (check-in: fd1e5cade0 user: dan tags: experimental)
15:12
Fix some segfaults that could occur in obscure circumstances where error messages contained characters that could be mistaken for printf format specifiers. (check-in: f91471e723 user: dan tags: trunk)
12:34
Fix a typo-bug that prevented --disable-amalgamation from working in Makefile.in. Also fix an overly long line in Makfile.in. (check-in: 2c3c4ba035 user: drh tags: trunk)
03:13
Add new WHERETRACE macros for better diagnostics of the query planner. Added a new test case for the performance regression fixed by the previous check-in. (check-in: 1e0db99797 user: drh tags: trunk)
02:05
Fix the query planner so that it uses the multi-index OR-clause solution if that is the lowest cost estimate. A prior bug cause the multi-index solution to be ignored in some circumstances. (check-in: 28ba625528 user: drh tags: trunk)
2010-10-20
18:56
Updates to FTS4 to improve performance and make more accurate cost estimates for prefix terms. (check-in: d0a450ce78 user: dan tags: experimental)
2010-10-19
14:08
Experimental changes to fts4 to try to selectively avoid loading very large doclists. (check-in: 5ae0ba447a user: dan tags: experimental)
2010-10-14
01:17
Avoid taking locks on unused database connections when committing a read transaction. (check-in: c0ee614fd9 user: drh tags: trunk)
01:16
Check-in [d3c95e3a4e08d0] was incorrect. This is the correct fix for sqlit3_bind_blob(). Ticket [860399cc408f2dd5f4] (check-in: ea8c2f5f8a user: drh tags: trunk)
2010-10-12
02:13
Fix the sqlite3_bind_blob() interface (and its kin) so that the destructor is invoked if the binding fails. Ticket [860399cc408f2dd5f41aed44b] Update the documentation to explain which interfaces invoke their destructors on failure and which do not. (check-in: d3c95e3a4e user: drh tags: trunk)
2010-10-11
17:58
Make sure the sqlite3_create_collation() interfaces always return an error code if they fail. Ticket [a04e42a3fcacaffa3133436]. (check-in: 6464276ec1 user: drh tags: trunk)
17:57
Further changes to extension loading to support compile-time options. (check-in: f818fb6f73 user: drh tags: trunk)
13:12
Make APIs added since version 3.6.0 accessible to loadable extensions. (check-in: 76c64a3556 user: drh tags: trunk)
2010-10-08
16:09
Add tests to e_createtable.test. (check-in: 38bec827f1 user: dan tags: trunk)
02:34
Version 3.7.3 (check-in: 2677848087 user: drh tags: trunk, release)
2010-10-07
13:29
Update the CLI test script to expect a version number of 3.7.3. (check-in: e55ada8924 user: drh tags: trunk)
2010-10-06
20:25
Update the configure script and Makefile so that they work with 3.7.3. (check-in: 97b63a1168 user: drh tags: trunk)
18:55
Fix long-standing bugs with the handling of LIMIT clausing in compound SELECT statements with FROM clause subqueries. Ticket [38cb5df375078d3f9]. (check-in: b0450120ea user: drh tags: trunk)
16:42
Fix minor test suite problems causing errors on OSX. (check-in: 759c954fee user: dan tags: trunk)
09:57
Fix a bug in test code that was causing a valgrind error. No changes to production code. (check-in: f29da7bec6 user: dan tags: trunk)
2010-10-05
18:22
Do not embedded #if inside an assert() statement. Fix for check-in [dca8763872a] (check-in: d7d4a94fc1 user: drh tags: trunk)
17:02
Have the pager change to at least WRITER_CACHEMOD state before marking any pages as dirty (instead of immediately after). Otherwise, if an error occurs, the pager may be left in WRITER_LOCKED state with dirty pages in the cache. (check-in: 471a4efbb7 user: dan tags: trunk)
15:41
If walLockExclusive() fails for reasons other than SQLITE_BUSY inside of walRestartLog() then propagate that error back up to the application. (check-in: 04dcba6b33 user: drh tags: trunk)
12:05
Avoid all memory allocation (and hence the possiblitity of OOM failure) in sqlite3_value_double() and sqlite3_column_double(). (check-in: 4afdf9705a user: drh tags: trunk)
11:33
Fix an assert() failing on OSX. (check-in: dca8763872 user: dan tags: trunk)
08:13
Prevent backcompat.test from mistaking directories for binary executables. (check-in: 717a1e50f0 user: dan tags: trunk)
2010-10-04
23:55
Fix a performance regression (relative to version 3.6.23.1) caused by the query planner taking into account non-indexable WHERE clause terms to select the outermost join loops when it should be selecting tables for the outermost loop that do not benefit from being in an inner loop. (check-in: ece641eb89 user: drh tags: trunk)
16:06
Fix a couple of test script problems. (check-in: dd10690140 user: dan tags: trunk)
15:47
Fix memsubsys1.test so that it works with TEMP_STORE>=2. (check-in: 8ad88ee0c1 user: dan tags: trunk)
14:11
Warning cleanup from MSVC. (check-in: cde62657d6 user: shaneh tags: trunk)
11:01
Fix broken evidence marks in e_expr.test. (check-in: 37ff94cec8 user: dan tags: trunk)
10:45
Add tests for table-constraints to e_createtable.test. (check-in: 70f511872e user: dan tags: trunk)
2010-10-01
19:04
Add tests for CHECK and UNIQUE constraints to e_createtable.test. (check-in: fb8db5581d user: dan tags: trunk)
17:23
Add #ifndef USE_SYSTEM_SQLITE...#endif around the bundled SQLite library for the TCL bindings. (check-in: 8d85584a4e user: drh tags: trunk)
15:11
<i>Not true: For a zeroblob, the Mem.z pointer can be null:</i> The Mem.z pointer can never been NULL for a string or blob, even a zero-length string or blob. Assert this fact. (Closed-Leaf check-in: efda310480 user: drh tags: mistake)
13:28
Updates to the showjournal.c utility in order to bring it up to version 3. (check-in: fa97d89546 user: drh tags: trunk)
2010-09-30
20:33
Merge experimental into trunk: Refactor the text-to-numeric conversion routines to work without zero-terminators and in UTF16 as well as UTF8. Avoid invalidating strings with doing affinity conversions. (check-in: 07ee080ec4 user: drh tags: trunk)
20:11
Fix some matching issues in enc4.test affected by TCL versions. (Closed-Leaf check-in: dd6d61a967 user: shaneh tags: experimental)
18:43
Add further tests to e_createtable.test. (check-in: 0a4528d629 user: dan tags: trunk)
18:30
Fix memory leak in enc4.test script. (check-in: bfc294ae43 user: shaneh tags: experimental)
18:19
Additional encoding tests. (check-in: c7f9363617 user: shaneh tags: experimental)
18:12
Remove unnecessary calls to memAboutToChange() in vdbe.c. An affinity change no longer invalidates shallow copies. (check-in: afb0fd0b04 user: drh tags: experimental)
17:33
Do correct affinity transformations on floating point values which have a decimal point at the beginning or end of the mantissa. Ticket [3998683a16a7076e08f5]. (check-in: ca154f97a5 user: drh tags: experimental)
16:51
Changes to remove sqlite3FitsIn64Bits(). (check-in: 43fef1cab6 user: shaneh tags: experimental)
14:48
Fix the handling of default values for ALTER TABLE ADD COLUMN columns so that is able to deal with negative numbers, including large negative numbers. Ticket [8454a207b9fd2243c4] (check-in: ce6cc16e3a user: drh tags: experimental)
00:50
Rework the text to numeric conversion routines so that they work with either UTF8 or UTF16 and do not require a NULL terminator. This allowed text to numeric conversion without reallocating the string. (check-in: 14eed3a0e0 user: drh tags: experimental)
2010-09-29
18:26
Add test cases to e_createtable.test. (check-in: f34dc54d46 user: dan tags: trunk)
13:31
Add tests for "CREATE TABLE ... AS SELECT ..." statements to e_createtable.test. (check-in: 1ef0dc9328 user: dan tags: trunk)
01:54
Updates to sqlite3_finalize() documentation. (check-in: 8c5994cf8e user: drh tags: trunk)
2010-09-28
20:26
Simplify the test that determines if the name of a new table collides with a prior index name. (check-in: 3f30f00a38 user: drh tags: trunk)
19:16
Fix some problems that can occur if a trigger has the same name as another database object. (check-in: 655991ec8a user: dan tags: trunk)
17:37
Merge accidental fork. (check-in: 33c8b9c710 user: drh tags: trunk)
17:34
Add tests to e_createtable.test. Allow a table to be created if there is an index of the same name in a different attached database. (check-in: 6251e58740 user: dan tags: trunk)
17:34
Get ANALYZE working again with -DSQLITE_ENABLE_STAT2 and virtual tables. (check-in: b7a26427af user: drh tags: trunk)
15:55
Disallow statements of the form "CREATE TEMP TABLE main.t1 ...". (check-in: dd1b34bab7 user: dan tags: trunk)
15:25
Updates to e_vacuum.test so that it works when SQLITE_DEFAULT_AUTOVACUUM=1 is set. (check-in: 890816c52d user: drh tags: trunk)
14:26
Fix several harmless compiler warnings. (check-in: 7be03ecc04 user: drh tags: trunk)
14:11
Fix an incompatibility with OMIT_VIRTUALTABLE in e_vacuum.test. (check-in: 7d0b881a62 user: dan tags: trunk)
13:12
Updates to the sqlite3_get_table() documentation. (check-in: c7aa238c37 user: drh tags: trunk)
07:24
Update the version number to 3.7.3 in preparation for the next release. (check-in: 88108fff67 user: drh tags: trunk)
07:14
Merge fixes for ticket [b351d95f9cd5ef17e9d9dbae18f5ca8611190001] into the trunk. (check-in: 1f7ef0af8d user: drh tags: trunk)
07:11
Replace some unreachable branch instructions with assert() statements. (Closed-Leaf check-in: 88b84bf18a user: drh tags: bug-b351d95f9c)
06:00
Tweaks to help facilitate structural test coverage. (check-in: ff49a5f00b user: drh tags: bug-b351d95f9c)
04:14
Test case and fix for the specific failure of ticket [b351d95f9cd5ef17e9d9dbae]. (check-in: 57789cfe67 user: drh tags: bug-b351d95f9c)
03:55
Use OP_Copy rather than OP_SCopy at one point in aggregate processing where it is needed to avoid shallow-copy misuse. (check-in: a5eefd5239 user: drh tags: bug-b351d95f9c)
00:25
Continuing work toward detecting and fixing shallow-copy misuse. (check-in: d0342f4bb9 user: drh tags: bug-b351d95f9c)
2010-09-27
21:09
Add assert() statements that fail when a shallow copy is accessed after the original has been modified. These assert() statements should detect the kinds of subtle SCopy bugs such as caused the fault in ticket [b351d95f9cd5ef17e9d9dbae18f]. (check-in: 8b8e1732e8 user: drh tags: bug-b351d95f9c)
18:14
Simplifications to the expression code generator. Remove about 80 lines of older and obsolete code. (check-in: 53f5cfe115 user: drh tags: trunk)
2010-09-25
22:32
Enhance the ANALYZE command so that it gathers statistics in the sqlite_stat1 table even for tables that are empty or have no indices. (check-in: a7645d2938 user: drh tags: trunk)
17:29
Add new file e_createtable.test. (check-in: 20e16fef55 user: dan tags: trunk)
14:13
Do not call gethostuuid() on MacOS 10.4 and earlier, since it is not supported there. (check-in: 44deaaefee user: drh tags: trunk)
07:51
Add tests to file e_reindex.test. (check-in: eec7dc9192 user: dan tags: trunk)
2010-09-24
19:14
Modify some evidence tags to match updated gifs. (check-in: f44de500be user: dan tags: trunk)
18:08
Merge experimental branch back into trunk. (check-in: 83ecec5d15 user: dan tags: trunk)
18:04
Add new file e_vacuum.test. Move part of e_select.test into e_select2.test. (Closed-Leaf check-in: 30801892c6 user: dan)
09:32
Add experimental branch disallowing VACUUM when there are one or more active SQL statements. (check-in: c1ebcacd9b user: dan tags: experimental)
08:00
Modify testable statement ids in a few test files to account for recent docsrc changes. (check-in: 7893e52595 user: dan tags: trunk)
2010-09-23
18:47
Add tests to e_delete.test. (check-in: fab3b383bb user: dan tags: trunk)
2010-09-22
19:06
Further tests and changes to make the r-tree module more robust. (check-in: 7ff3574b9c user: dan tags: trunk)
14:19
Add new file rtreeA.test, to test that the r-tree extension doesn't crash if it encounters a corrupt or inconsistent database. (check-in: 68a305fd5a user: dan tags: trunk)
2010-09-21
19:00
Add new file e_delete.test. (check-in: 14e8659e57 user: dan tags: trunk)
16:59
Add tests to e_update.test. (check-in: 528f71e29c user: dan tags: trunk)
2010-09-20
19:17
Add test file e_update.test. (check-in: 03985ed4a0 user: dan tags: trunk)
14:55
Changes to test scripts to work with SQLITE_TEMP_STORE=2. (check-in: ba8ca9c9e2 user: dan tags: trunk)
14:05
Add further tests to e_insert.test. (check-in: eb3d0d8bb7 user: dan tags: trunk)
08:47
Add a test case to verify that bug [313723c356] has been fixed. (check-in: 4ea134a84c user: dan tags: trunk)
2010-09-18
19:36
Make sure the pager cache is cleared if there is any difficulty starting a new read transaction in WAL mode. Ticket [313723c356483eff2a4c4bdd2c]. (check-in: e14ef0e8b4 user: drh tags: trunk)
19:00
Add new test file e_insert.test. (check-in: 8023a3091b user: dan tags: trunk)
15:15
Fix a couple of stale evidence marks in e_select.test. (check-in: 14227724a8 user: dan tags: trunk)
15:03
Add tests to e_select.test. (check-in: 0ee9e75571 user: dan tags: trunk)
2010-09-17
22:39
Clarifications to the sqlite3_auto_extension() documentation. (check-in: ca96e0df29 user: drh tags: trunk)
19:45
Updates to the documentation for sqlite3_create_collation(). (check-in: 3df7715a77 user: drh tags: trunk)
19:04
Add tests for some syntax diagrams in lang_select.html. (check-in: 2254e93bd5 user: dan tags: trunk)
17:10
Remove additional occurrences of &lt;ctype.h&gt; from FTS2. (check-in: ee52589c80 user: drh tags: trunk)
16:01
Add new test file fts3shared.test to test the previous change. (check-in: a207f74408 user: dan tags: trunk)
15:28
Have all FTS3 queries obtain a read or write table-lock at the shared-cache level before doing anything else. (check-in: 018e82c775 user: dan tags: trunk)
01:07
Completely remove all trace of ctype.h from FTS2. (check-in: 876845661a user: drh tags: trunk)
2010-09-16
23:18
Fix a comment typo in memjournal.c (check-in: 9b272ed46f user: drh tags: trunk)
19:49
Updates to the requirements on the sqlite3_create_function() family of interfaces. (check-in: f03c608993 user: drh tags: trunk)
18:51
Add tests for ORDER BY, LIMIT and OFFSET clauses to e_select.test. (check-in: 7c989db55c user: dan tags: trunk)
16:16
Further tweaks related to deleting files from malloc_common.tcl. (check-in: 3e649f80e2 user: dan tags: trunk)
15:58
Fix a problem with the previous change to malloc_common.tcl. (check-in: e07a33ea0f user: dan tags: trunk)
15:23
Change code in malloc_common.tcl (test code) to retry a "file delete -force" if it fails. (check-in: ebfb04f00c user: dan tags: trunk)
2010-09-15
23:41
Updates to the sqlite3_progress_handler() documentation. (check-in: 78f659ee9b user: drh tags: trunk)
19:02
Add tests for ORDER BY clauses to e_select.test. (check-in: 14f1566327 user: dan tags: trunk)
17:54
Added the sqlite3_soft_heap_limit64() interface. Deprecate the older sqlite3_soft_heap_limit() interface. (check-in: 82268a2c3d user: drh tags: trunk)
11:42
Add trivial test case to make sure shared-cache mode does not automatically turn on exclusive-locking mode. (check-in: a0ab3902f1 user: dan tags: trunk)
2010-09-14
18:56
Further tests for compound SELECT statements. (check-in: a0f01ebab9 user: dan tags: trunk)
18:23
Clarify the documentation to better explain when an automatic re-prepare can be induced by rebinding parameters. Add evidence marks to the automatic re-prepare logic. (check-in: 3e11f5155c user: drh tags: trunk)
10:53
Fix some test failures found running releasetest.tcl. (check-in: 56a9ce7774 user: dan tags: trunk)
2010-09-13
19:03
Fix walmode.test so that all tests pass with SQLITE_TEMP_STORE=3. (check-in: 6ba6e59a9d user: dan tags: trunk)
18:58
Add tests for compound SELECT statements to e_select.test. (check-in: 8b0b009f29 user: dan tags: trunk)
14:38
Fix a couple of test files so that they work with DEFAULT_AUTOVACUUM. (check-in: 8cb39306f4 user: dan tags: trunk)
12:15
Run the multi-threaded tests in test/threadtest3.c as part of releasetest.tcl. Remove the OMIT_BUILTIN_TEST symbol from the "Device-Two" configuration. (check-in: 3f5406e323 user: dan tags: trunk)
11:29
Alter some configurations in releasetest.tcl. Print out the wall-clock time taken for each test after it is executed. (check-in: a91c5af3b0 user: dan tags: trunk)
2010-09-11
17:37
Add tests for "DISTINCT" and "ALL" to e_select.test. (check-in: 43a99d9a88 user: dan tags: trunk)
16:25
Fix a couple of incorrect evidence marks on malloc(). (check-in: f9b5c5cb13 user: drh tags: trunk)
16:15
Additional evidence marks on the malloc() implementation. Update the documentation to explain that mallocs are not necessarily 8-byte aligned if the SQLITE_4_BYTE_ALIGNED_MALLOC compile-time option is used. (check-in: 42b4bf9e72 user: drh tags: trunk)
15:54
Add assert() statements to demonstrate that memory allocations are always aligned to an 8-byte boundary (unless SQLITE_4_BYTE_ALIGNED_MALLOC is defined). (check-in: 305cc4e6c1 user: drh tags: trunk)
05:15
When building from the amalgamation with ENABLE_RTREE defined, do not try to include sqlite3rtree.h. (check-in: 5b63e981f1 user: dan tags: trunk)
2010-09-10
23:16
fixed memory leak in proxy lock file error handling (check-in: e01c5f3eda user: adam tags: apple-osx)
20:23
A further correction to the sqlite3_create_function() interface documentation. (check-in: c65583dbc7 user: drh tags: trunk)
20:19
replaced relative lock proxy paths with absolute (check-in: 782c33512a user: adam tags: apple-osx)
19:18
Add tests to e_select.test. (check-in: 3a051a76f7 user: dan tags: trunk)
16:38
Updates to the documentation on the sqlite3_create_function() family of interfaces. (check-in: 9d277e0b82 user: drh tags: trunk)
13:23
Make sure SQLite is running with MEMSTATUS enabled at the beginning of every test script. (check-in: 6999531405 user: drh tags: trunk)
00:59
replaced relative lock proxy paths with absolute (check-in: 6a88cd46ae user: adam tags: apple-osx)
00:18
Make sure SQLite is running with MEMSTATUS enabled at the beginning of every test script. (check-in: b6e9a4d8f7 user: drh tags: apple-osx)
2010-09-09
23:42
Make sure MEMSTATUS is enabled at the beginning of the memsubsys2.test script. (check-in: c23b97219d user: drh tags: trunk)
23:40
Make sure MEMSTATUS is enabled at the beginning of the memsubsys2.test script. (check-in: cf23a35497 user: drh tags: apple-osx)
23:31
The merge for check-in [415c448dc4] did not do exactly write, resulting in a subtle bug in the SQLITE_FCNTL_SIZE_HINT logic. This check-in is the fix. (check-in: badaaa18fd user: drh tags: apple-osx)
19:02
Add test cases to e_select.test. (check-in: 5e73f7b2b7 user: dan tags: trunk)
18:25
Further updates to the sqlite3_pcache_methods documentation, plus the addition of a few evidence marks related to pcache. (check-in: 34edb54bb0 user: drh tags: trunk)
17:43
Make sure memory statistics are enabled for the dbstatus.test script. (check-in: 35b943a0fc user: drh tags: trunk)
15:48
Updates to the sqlite3_pcache_methods documentation. (check-in: b21425c404 user: drh tags: trunk)
11:33
Add WHERE clause tests to e_select.test. (check-in: 721b73fa5c user: dan tags: trunk)
10:00
Add tests for sub-select statements in the FROM clause of a SELECT to e_select.test. (check-in: 2c6b1ca952 user: dan tags: trunk)
2010-09-08
19:16
Fix problem with test names in e_select.test. (check-in: 8fe34faf6b user: dan tags: trunk)
19:02
Add tests to e_select.test. (check-in: 727ced6bab user: dan tags: trunk)
16:30
Updates to the documentation of the sqlite3_column_xxxx() family of interfaces. Enhance sqlite3_column_blob() so that it always returns a NULL pointer for a zero-length blob. (check-in: a932fab299 user: drh tags: trunk)
02:30
Improved documentation of SQLITE_THREADSAFE and sqlite3_column_text() and evidence marks for each. (check-in: 0d7a538948 user: drh tags: trunk)
2010-09-07
23:28
Updates to the documentation on the VFS xOpen method. (check-in: 1719cb8f49 user: drh tags: trunk)
19:10
Update the sqlite3_limit() documentation to explain that SQLITE_LIMIT_VDBE_OP is not enforced. (check-in: 17be9beeab user: drh tags: trunk)
19:05
Add tests to e_select.test. (check-in: 282dae7edf user: dan tags: trunk)
14:59
Revised documentation for sqlite3_limit(). Added some evidence marks and assert() statements to verify sqlite3_limit() behavior. (check-in: 883b9b7441 user: drh tags: trunk)
14:12
Example icon file (32x32x4) for new logo. (check-in: bd70079467 user: shaneh tags: trunk)
12:17
Remove a redundant test for multiple output columns in a scalar subquery. (check-in: 657472bce2 user: drh tags: trunk)
2010-09-06
20:28
In the test scripts, changes instances of the TCL interface option "-has_codec" into the correct "-has-codec". (check-in: f53856a555 user: drh tags: trunk)
18:50
Add test cases to e_select.test. (check-in: 9db26d5ef5 user: dan tags: trunk)
18:44
Remove proprietary information from the releasetest.tcl script and add it to the public repository. (check-in: e1d4a87e4e user: drh tags: trunk)
2010-09-04
18:52
Add test file e_select.test. (check-in: 8b9d8c226e user: dan tags: trunk)
2010-09-03
18:50
Documentation enhancements for sqlite3_db_status(). Evidence marks on the SQL function call intrface. (check-in: f06c7b1973 user: drh tags: trunk)
12:05
Improved documentation of the sqlite3_column_count() and sqlite3_data_count() interfaces. (check-in: 0593373d4b user: drh tags: trunk)
10:58
Add a few more subquery tests to e_expr.test. (check-in: 189cba0072 user: dan tags: trunk)
04:29
Reduce the amount of memory taken up by WAL mmaped regions under Windows. (check-in: f213e133f6 user: shaneh tags: trunk)
03:32
Fix a discrepancy between the documented behavior of SQLITE_DBCONFIG_LOOKASIDE and what it actually does. Also add evidence marks on the DBCONFIG_LOOKASIDE implementation. (check-in: f483be4413 user: drh tags: trunk)
2010-09-02
19:01
Move the test for an (illegal) scalar sub-query that returns more than one column to earlier in SELECT processing in order to avoid an assert() that can happen later on. (check-in: a55842cfb5 user: dan tags: trunk)
18:13
Fix an off-by-one error in the scratch memory allocator. (check-in: 5a9591607a user: drh tags: trunk)
17:15
Use sqlite3_mutex_notheld() instead of !sqlite3_mutex_held() inside of assert() statements since the former works when mutexing is disabled while the latter does not. (check-in: 2211486b69 user: drh tags: trunk)
14:35
Add test case to verify the previous change is correct. (check-in: 2a5eed35b4 user: dan tags: trunk)
14:00
Fix the computation of the offset on the mmap() for the Nth shared memory region. Because of the way shared memory is accessed, the old computation, though wrong, still happened to always get the right answer. Nevertheless, it is good to do the computation correctly. (check-in: 36397f62f2 user: drh tags: trunk)
11:53
Add tests for the EXISTS operator to e_expr.test. (check-in: 9f9a95cc80 user: dan tags: trunk)
10:08
If MEM_STATUS is disabled, avoid holding the STATIC_MEM mutex when calling the user-defined xMalloc method. Holding the mutex causes problems for memsys3 and memsys5. (check-in: 4f20f8ba73 user: dan tags: trunk)
04:30
Fix a few typos. Update evidence marks. (check-in: c90a68b77e user: shaneh tags: trunk)
2010-09-01
19:29
Identify additional requirements in the sqlite3_vfs object documentation. (check-in: 47064453c3 user: drh tags: trunk)
18:00
Add tests to quota.test. (check-in: ec9af6ebd4 user: dan tags: trunk)
16:19
Call quota callback destructors from within sqlite3_quota_shutdown(). (check-in: fb80c6f3de user: dan tags: trunk)
15:26
Boundary value fix to the descriptive comment at the top of test_quota.c. (check-in: 7f6072f082 user: drh tags: trunk)
15:22
Merge the test_quota.c module into the trunk. (check-in: 2e1a02026a user: drh tags: trunk)
15:11
Fix the TCL interface to test_quota.c so that it works with empty callback scripts. (Closed-Leaf check-in: 19e95f6335 user: drh tags: experimental)
14:58
Variable name and comment changes to test_quota.c for clearer presentation. (check-in: 38ed1992c8 user: drh tags: experimental)
14:45
Make all private routines in test_quota.c begin with "quota". Fix a test_quota.c segfault when setting a zero-quota. (check-in: c0d0fc3a1c user: drh tags: experimental)
14:35
Add the sqlite3_quota_dump test command. Add a destructor argument on the sqlite3_quota_set() interface. (check-in: 7a624b5ae2 user: drh tags: experimental)
13:09
Clean up comments in the test_quota.c source file. (check-in: c1eec7dba6 user: drh tags: experimental)
12:50
Update the quota shim so that when the same file is opened multiple times, its size only counts against the quota once. (check-in: f5d2638030 user: drh tags: experimental)
11:50
Add an assert() with an evidence mark to show that automatically generated rowids are positive. (check-in: 740adca34e user: drh tags: trunk)
11:40
Add file test_quota.c, demonstrating how file-system quotas may be implemented as a VFS wrapper. (check-in: 383eb87bbf user: dan tags: experimental)
02:38
Fix some compiler warnings under MSVC. (check-in: afdc82a99e user: shaneh tags: trunk)
02:37
Ensure randomly generated rowids never go negative. (check-in: 631423677b user: shaneh tags: trunk)
2010-08-31
16:25
Do not clear the internal "schema has changed" flag when performing a savepoint rollback. The schema changes may not have taken place within the savepoint being rolled back. (check-in: c2a84430d3 user: dan tags: trunk)
15:54
Changes to comments and type names in rtree.c. (check-in: 7c4f80ad27 user: dan tags: trunk)
15:38
Fix a documentation typo reported on the mailing list. (check-in: c9fe0a2392 user: drh tags: trunk)
15:27
Add evidence mark comments to source code. Add additional information to the documentation of sqlite3_release_memory(). Fix a minor inefficiency in mem1.c that was discovered while writing requirements tests. (check-in: 53b0c03fd3 user: drh tags: trunk)
15:02
Add the "circle" test geometry callback to test_rtree.c. And tests for the same. (check-in: 169b8ba4be user: dan tags: trunk)
01:09
Remove unreachable branches to facilitate test coverage. (check-in: 86bcb9aab9 user: drh tags: trunk)
2010-08-30
22:15
Provide hints to the btree layer during the creation of transient tables for when it is possible for those tables to use a hash rather than a binary tree. No use is currently made of those hints, though assert() statement verify their accuracy. (check-in: 4fead8e714 user: drh tags: trunk)
18:39
When generating sqlite3.h, append the contents of sqlite3rtree.h. (check-in: fc4d75370b user: dan tags: trunk)
16:15
Fix a problem in pagerfault.test uncovered by the previous change. (check-in: b6719ce328 user: dan tags: trunk)
15:43
Add tests (and associated fixes) to restore coverage of rtree.c. (check-in: b06f4695bd user: dan tags: trunk)
15:02
Remove the sqlite3BtreeFactory() wrapper routine. All modules now call sqlite3BtreeOpen() directly. (check-in: 0900e35348 user: drh tags: trunk)
11:34
Add file sqlite3rtree.h. (check-in: e1d9ffce0f user: dan tags: trunk)
01:17
Updates to comments on the VDBE opcodes. (check-in: 49c05b4e08 user: drh tags: trunk)
2010-08-28
19:09
Fix problem with func3.test. (check-in: aec52959d0 user: dan tags: trunk)
18:58
Add code to allow user-defined searches of r-tree tables. Still largely untested. (check-in: 782ca3b716 user: dan tags: trunk)
2010-08-27
18:44
Make sqlite3_create_function() a special case of sqlite3_create_function_v2() in order reduce the number of code paths and simplify testing. (check-in: 4758d86d57 user: drh tags: trunk)
17:48
Add the sqlite3_create_function_v2() API, a version of create_function that allows a destructor to be specified. (check-in: 9a724dfbe8 user: dan tags: trunk)
17:16
Refactor the implementation of the scratch memory allocator. Add the SQLITE_TESTCTRL_SCRATCHMALLOC interface to facilitate testing. (check-in: a3475ddfbe user: drh tags: trunk)
12:21
Remove unnecessary code from malloc.c. Enhance pcache1.c so that is tries to reuse existing pages, rather than create new pages, when SQLite is under memory pressure. "Memory pressure" means that SQLITE_CONFIG_PAGECACHE memory is nearly exhausted or sqlite3_soft_heap_limit() has been reached. (check-in: 51049479a8 user: drh tags: trunk)
11:19
Further tests for CAST in e_expr.test. (check-in: 9616df8c47 user: dan tags: trunk)
2010-08-26
19:05
Add tests for CAST expressions to e_expr.test. More to come. (check-in: ba6119d1e9 user: dan tags: trunk)
16:46
Add EXTERN macros before entry points in tclsqlite.c. These EXTERN macros were inexplicably removed by [1f680cb37584baa106cee05] a few days ago. (check-in: 8b2cf9d492 user: drh tags: trunk)
14:15
Fix a couple of memory leaks in r-tree that can occur following an OOM condition. (check-in: 1975a27cde user: dan tags: trunk)
11:27
Remove unreachable condition from rtree.c. (check-in: 90f40cd368 user: dan tags: trunk)
07:59
Improve coverage of rtree.c some more. (check-in: bee1959dde user: dan tags: trunk)
05:23
Simplification of changes for SQLITE_OMIT_WAL support in pager.c. (check-in: afb2484c64 user: shaneh tags: trunk)
2010-08-25
20:35
Reinstate the "sqlite" alias for backwards compatibility (but leave it undocumented) but remove the PackageProvide for "sqlite". (check-in: 699cc6b487 user: drh tags: trunk)
19:39
Disable the legacy "sqlite" command in the TCL interface. Provide only the "sqlite3" command. (check-in: 909b3d8862 user: drh tags: trunk)
19:04
Further test coverage improvements for rtree.c. (check-in: 05f6c1aebb user: dan tags: trunk)
17:53
Test cases to improve coverage of rtree module. Fixes associated with the same. (check-in: 865cec04e4 user: dan tags: trunk)
2010-08-24
20:46
Replicate asserts on unixOpen() to winOpen() in os_win.c. (check-in: 40526d8390 user: shaneh tags: trunk)
18:35
Changes to support building with SQLITE_OMIT_WAL. (check-in: d1ed743b6e user: shaneh tags: trunk)
18:07
Change sqlite3_open_v2() to return SQLITE_MISUSE if the combination of bits in the flags parameter is invalid. The documentation says the behavior in this situation is undefined - the documentation is unaltered by this code change. (check-in: 5e8101c512 user: drh tags: trunk)
18:06
Comment enhancements and typo fixes in pcache1.c. (check-in: c2dc39c0c4 user: drh tags: trunk)
16:59
Fixes to allow fts3 tables to be renamed mid-transaction. (check-in: d1c875320a user: dan tags: trunk)
13:11
Add tests to e_expr.test. (check-in: 5c1c694ee1 user: dan tags: trunk)
01:51
Merge in the R-tree fix from the trunk. (check-in: 02ee0bd5a3 user: drh tags: apple-osx)
01:49
The R-tree module should not assume that its shadow tables are consistent. If a problem is found in a shadow table, return SQLITE_CORRUPT. (check-in: 7f2f71cc9e user: drh tags: trunk)
01:08
Merge changes through release 3.7.2 into the apple-osx branch. (check-in: 415c448dc4 user: drh tags: apple-osx)
00:40
Version 3.7.2 (check-in: 42537b6056 user: drh tags: trunk, release, version-3.7.2)
2010-08-23
18:19
Fixes for the SQLITE_CHECK_PAGES debugging feature. (check-in: 21a1e5961b user: dan tags: trunk)
17:09
Update the version number in preparation for the 3.7.2 release. (check-in: 77889510fa user: drh tags: trunk)
15:41
Fix for ticket [5e10420e8d]. (check-in: 255f1eefa3 user: dan tags: trunk)
15:26
Update the "showdb" debug utility to handle 64K pages and with extra options to decode the freelist structure. (check-in: 1070918e3b user: drh tags: trunk)
01:25
Version 3.7.1 (check-in: 3613b0695a user: drh tags: trunk, release)
2010-08-21
15:51
Add some tests to e_expr.test and pagerfault.test. No code changes. (check-in: 44de3cab9c user: dan tags: trunk)
15:09
Fix the ptrmapPageno() routine so that it works correctly for an input of 1. (check-in: 699a9bf283 user: drh tags: trunk)
2010-08-20
15:32
Do not allow a backup to change the page size if a codec is in use. (check-in: 5523ecd322 user: drh tags: trunk)
12:43
Fix typo in backcompat.test. (check-in: 6a0cbb272c user: dan tags: trunk)
12:34
Merge leaf created by accident. (check-in: 1f680cb375 user: dan tags: trunk)
12:31
Avoid assuming that the user has "." in their path when running multi-process tests. (check-in: daa5d461b9 user: dan tags: trunk)
10:28
Do not attempt run backwards compatibility tests if no historical "testfixture" binaries are available. (check-in: 40e11aabc7 user: drh tags: trunk)
09:53
Disable the MEMSYS2 auxiliary routines if MEMSYS2 is changed to an alternative memory allocator using SQLITE_CONFIG_MALLOC. (check-in: 541dd3b870 user: drh tags: trunk)
09:14
Fix the sqlite3_release_memory() interface so that it does not attempt to free SQLITE_CONFIG_PAGECACHE memory. (check-in: 0426cd62d5 user: drh tags: trunk)
2010-08-19
18:05
Adjust filename globbing in backcompat.test for Windows. (check-in: b0f4796306 user: shaneh tags: trunk)
17:16
Fix backcompat.test so that it works with windows mandatory locking. (check-in: 8d05f66db7 user: dan tags: trunk)
15:48
Add tests for WAL mode to test/backcompat.test. (check-in: 7999910e85 user: dan tags: trunk)
15:12
Merge two leaves. (check-in: b03091fc35 user: dan tags: trunk)
15:11
Modify the code for reading hot-journal files so that it can handle journals generated by versions 3.5.7 and earlier. (check-in: b9170f2903 user: dan tags: trunk)
14:41
Fix typo in TCL stubs support for configure in Makefile.in (check-in: 4c7ad73d22 user: shaneh tags: trunk)
14:22
Remove a NEVER from balance_quick() that can occur in WAL mode on a corrupt database file. (check-in: b273891ab0 user: drh tags: trunk)
11:05
Add new test script backcompat.test, for testing database/journal/wal file compatibility against previous versions. (check-in: 8804f4989d user: dan tags: trunk)
2010-08-18
21:19
Fix two asserts in the btree logic so that they work correctly even for maximum-size index entries for 32K and 64K pages. (check-in: e127192d10 user: drh tags: trunk)
17:16
Updated tests for CLI. Added some basic tests for the .import command. (check-in: d46567e5d7 user: shaneh tags: trunk)
15:25
Disable the SQLITE_MAX_PAGE_SIZE compile time option (it is now always set to 65536). Fix some other problems in test files. (check-in: 56cc883d3a user: dan tags: trunk)
14:54
Fix issue with wal.test on Windows. (check-in: 3497f54ac2 user: shaneh tags: trunk)
02:28
Fix some compiler warnings in the MSVC build. (check-in: 1f5662b7db user: shaneh tags: trunk)
00:24
Merge the 3.7.1 pre-release snapshot changes as of [2010-08-18] into the apple-osx branch. (check-in: 866e9286ae user: drh tags: apple-osx)
00:09
Updating apple-osx with minor source fixes, database truncate and replace private calls and a bunch of conditionalization for tests running in different environments (check-in: 5e2ee7db0f user: adam tags: apple-osx)
2010-08-17
19:49
Remove a NEVER() that is actually reachable. (check-in: acb171d4cf user: drh tags: trunk)
19:40
Suppress harmless compiler warning. (check-in: 3f8c068a41 user: drh tags: trunk)
19:34
Return an error when parsing "?NNN" if NNN is so large it cannot be stored as a 32-bit int. (check-in: fc9014be0f user: dan tags: trunk)
18:37
It is no longer possible to reach pagerStress() while in the error state, so put a NEVER() around the error state test of that routine. (check-in: d7ed463496 user: drh tags: trunk)
18:15
If an SQLITE_FULL error occurs during rollback or journal finalization, treat it in the same way as SQLITE_IOERR (i.e. require that the pager internals be completely reset before it is next read from or written to). (check-in: 8ac185236e user: dan tags: trunk)
17:25
Changes to pager for improved testability. (check-in: 61c64b3aeb user: drh tags: trunk)
16:06
Add tests for the BETWEEN operator to e_expr.test. (check-in: ced6a3480f user: dan tags: trunk)
14:52
Invoke sqlite3_log() whenever one or more frames are recovered from a WAL file. (check-in: e05089aaef user: dan tags: trunk)
05:55
Fix some non-ANSI C code in test_demovfs.c. Also change the same file so that attempting to delete a file that does not exist does not return an error. (check-in: 07570ce380 user: dan tags: trunk)
2010-08-16
20:02
Remove an superfluous branch from pager.c. (check-in: 4271a95c82 user: drh tags: trunk)
19:23
Add tests for different page sizes to wal.test. Including 64K pages. (check-in: d95bcc0529 user: dan tags: trunk)
18:26
Add test cases designed to exercise all syntax diagram paths in lang_expr.html (check-in: d4a26bb629 user: dan tags: trunk)
16:31
Fix a typo in a comment in wal.c. No code changes. (check-in: d854a3d41c user: drh tags: trunk)
14:18
Add ALWAYS() macros in wal.c to cover branches that are no longer reachable following the pager refactoring. (check-in: 24f24c927c user: drh tags: trunk)
2010-08-14
21:21
Adjustments for better 64K page size handling. (check-in: faf1974e2d user: drh tags: trunk)
18:32
Add test case to e_expr.test. (check-in: db9539f2ce user: dan tags: trunk)
17:12
Change sqlite3PagerPagecount() to return void, since the return value was always SQLITE_OK and was never used. (check-in: 7dd78eb797 user: drh tags: trunk)
16:02
Minor simplifications to btree.c in support of full-coverage testing. (check-in: 364df6c773 user: drh tags: trunk)
12:42
Tweaks to comments in pager.c. Fix two compiler warnings. (check-in: 68a49f7fe3 user: drh tags: trunk)
12:25
Add test cases to e_expr.test. (check-in: d8bbab78fa user: dan tags: trunk)
05:04
Test that it is possible to drop a trigger while there are active statements belonging to the same connection. (check-in: d4ec61e254 user: dan tags: trunk)
2010-08-13
18:41
Add tests to test file e_expr.test. (check-in: 3fd1059e25 user: dan tags: trunk)
16:38
Do not apply the flattening optimization if the sub-query is DISTINCT. Fix for [e4b8a2ba6e]. (check-in: 497aafd8ed user: dan tags: trunk)
2010-08-12
16:36
If an error occurs in PagerSetPagesize(), set the output variable to the unmodified page-size before returning. (check-in: 02def8f925 user: dan tags: trunk)
11:25
Add coverage tests for pager.c. (check-in: 228c5b16af user: dan tags: trunk)
02:41
Increase the maximum page size from 32k to 64k. (check-in: 45362437d4 user: drh tags: trunk)
2010-08-11
18:56
Improve coverage of pager.c. (check-in: 2fa05d01b6 user: dan tags: trunk)
12:26
Update an r-tree extension test case to account for recent changes to the query planner. Also fix a comment in rtree.c. (check-in: eaaca669a4 user: dan tags: trunk)
11:59
Use sqlite3DbFree() instead of sqlite3_free() to free any error message reported by the parser layer while attempting to parse a CREATE TABLE statement passed to sqlite3_declare_vtab(). (check-in: 7c674aaba5 user: dan tags: trunk)
11:35
Fixes to tcl test files so that they work in auto-vacuum mode. (check-in: ea9eaf7480 user: dan tags: trunk)
06:14
Fix memory allocation in proxy locking so that it works with SQLITE_MEMDEBUG. (check-in: f854cbe063 user: drh tags: trunk)
06:04
Merge experimental changes into trunk. (check-in: aa092ac928 user: dan tags: trunk)
2010-08-10
15:46
Fix a bug in pager.c causing it to omit the xSync() call required following a hot-journal rollback. (Closed-Leaf check-in: 42ba43ac69 user: dan tags: experimental)
09:58
Add variable pager.dbHintSize, used to limit the number of calls made to the xFileControl(FCNTL_SIZE_HINT) method. (check-in: eb3ac895bd user: dan tags: experimental)
07:12
Changes to debugging code in mutex_unix.c and mutex_w32.c to make an assert() statement threadsafe. (check-in: e82e32bd43 user: dan tags: trunk)
2010-08-09
19:17
Modify some comments in pager.c. (check-in: 5662da6d4f user: dan tags: experimental)
16:52
Merge latest trunk changes with experimental branch. (check-in: aecbd89032 user: dan tags: experimental)
16:12
Fix a memory leak in test_journal.c causing tests to fail. (check-in: f229487ccc user: dan tags: experimental)
15:44
Fix typos in comments. No functional changes to the code. (check-in: 9cebaf2dca user: drh tags: trunk)
14:47
Change to tcl test infrastructure so that --malloctrace=1 works when sizeof(int)!=sizeof(void*). (check-in: c3e771b3cf user: dan tags: experimental)
14:26
Fix two comment typos that were reported on the mailing list. (check-in: 88bf901627 user: drh tags: trunk)
07:51
Fix a problem causing the return code of an xSync call to be ignored in wal.c. (check-in: f1b2b5f9c3 user: dan tags: experimental)
07:07
In WAL mode, ignore any error returned by an xFileControl(FCNTL_SIZE_HINT) call. This matches the behaviour in rollback mode. (check-in: 158a309737 user: dan tags: experimental)
2010-08-07
16:17
Fix minor problems and update comments in pager.c. (check-in: 92e456374b user: dan tags: experimental)
11:46
Merge in all changes up to the 3.7.0.1 release. (check-in: f88c6367d2 user: drh tags: apple-osx)
09:31
Fix a problem wherein changing the journal-mode immediately after leaving exclusive-locking mode could lead to the database being unlocked without clearing the changeCountDone flag. (check-in: 531abc8085 user: dan tags: experimental)
05:15
Add test case 'cgt_pager_1', intended for use with callgrind to detect performance regression in the pager module, to threadtest3.c. (check-in: b5d46f1ea0 user: dan tags: experimental)
2010-08-06
19:00
Remove all vestiges of ctype.h from FTS3. This addresses ticket [991789d9f3136a] among other bug reports. (check-in: b8b465ed2c user: drh tags: trunk)
17:18
Further enhancements to comments in pager.c. (check-in: 876162c7e0 user: dan tags: experimental)
14:37
Fix some problems with running test scripts with the inmemory_journal permutation. (check-in: 7bd8ba084e user: dan tags: experimental)
13:53
Merge trunk changes into experimental branch. (check-in: aef6698c73 user: dan tags: experimental)
13:50
Do not run some tests in notify3.test with the inmemory_journal permutation. They do not pass as the tests assume that the database schema is not loaded until the first invocation of [db eval]. This is not true with the inmemory_journal permutation. (check-in: 698fba826e user: dan tags: trunk)
12:00
Further updates to comments in pager.c. (check-in: 5f4c17a33f user: dan tags: experimental)
09:43
Modify test_journal.c to work with pre-allocated databases. (check-in: 4894a5d210 user: dan tags: experimental)
06:54
Fix a bug to do with deleting the journal file when exiting exclusive-locking mode. (check-in: 6217b607f0 user: dan tags: experimental)
02:10
Change two automatic array variables into static constant arrays. Update and reformat some comments for cleaner presentation. (check-in: a7a15547cc user: drh tags: trunk)
2010-08-05
18:53
Add comments describing UNKNOWN_LOCK to pager.c. Improve some other comments in the same file. (check-in: 54eff6de9d user: dan tags: experimental)
16:22
Merge trunk changes with experimental branch. (check-in: acd26b8b74 user: dan tags: experimental)
16:08
Catch an error code that was not being propagated back to the caller. (check-in: 800f496929 user: dan tags: experimental)
15:30
Fixes for error handling with temp databases. And for errors that occur within OS locking primitives. (check-in: f99a902f9b user: dan tags: experimental)
11:56
Make the size of a Bitvec object 512 bytes on all platforms, instead of having the size depend on the size of a pointer. This makes testing easier. (check-in: ca479f3de2 user: drh tags: trunk)
03:21
Do not read the database file size on a SAVEPOINT rollback any more since after checkin [65b8636ac6e5] the in-header-size field is always valid. (check-in: fbe70e1106 user: drh tags: trunk)
02:52
Fix the query planner so that when it has a choice of full-scan tables to move to the outer loop, it chooses the one that is likely to give the fewest output rows. Ticket [13f033c865f878]. (check-in: 309bbedf96 user: drh tags: trunk)
2010-08-04
21:17
If the outer loop of a join must be a full table scan, make sure that an incomplete ANALYZE does not trick the planner into use a table that might be indexable in an inner loop. Ticket [13f033c865f878] (check-in: e7a714b52c user: drh tags: trunk)
19:14
Fix some problems with error recovery introduced while reworking pager state. (check-in: 77eaab6f77 user: dan tags: experimental)
12:31
Version 3.7.0.1 (Leaf check-in: 042a1abb03 user: drh tags: release, branch-3.7.0)
12:19
Update the version number to 3.7.0.1. (check-in: 5074b85967 user: drh tags: branch-3.7.0)
12:13
Backport fix [267492d3a7eff7b] for the performance regression caused by automatic indexing and reported by ticket [8011086c85c6c4040]. (check-in: 3f367fe00e user: drh tags: branch-3.7.0)
11:59
Backport the [65b8636ac6e5] fix for ticket [51ae9cad317a1] to version 3.7.0. (check-in: dec70c63d0 user: drh tags: branch-3.7.0)
11:34
When opening a write-transaction on a database file that has been appended to or truncated by a pre-3.7.0 client, update the database-size field in the database header. Fix for [51ae9cad31]. (check-in: 65b8636ac6 user: dan tags: trunk)
2010-08-03
18:29
Merge trunk changes into experimental branch. (check-in: 15368a9f85 user: dan tags: experimental)
18:18
Set the Pager.eState variable to PAGER_ERROR whenever the pager enters the error state. (check-in: 4d384761d2 user: dan tags: experimental)
18:06
Fix disabled implementation-mark comments in func.c. (check-in: 57c0960038 user: drh tags: trunk)
15:57
Add comments to clarify the purpose of the pager "error state". (check-in: fde4c59782 user: dan tags: experimental)
13:08
Fix the REPLACE conflict resolution so that it falls back to ABORT when a CHECK constraint fails. Ticket [c38baa3d969eab794]. (check-in: 4e157b7747 user: drh tags: trunk)
12:48
Add state diagram to comments in experimental version of pager.c. (check-in: 16dcf5a6d3 user: dan tags: experimental)
06:42
Incremental checkin on pager state refactoring. (check-in: 0a636798bd user: dan tags: experimental)
2010-08-02
14:32
Experimental refactoring of the Pager object state. This version is surely buggy. (check-in: 03a240514a user: dan tags: experimental)
10:59
Modify wal2.test to disable tests requiring TCL 8.5 if the test harness is compiled using TCL 8.4. (check-in: 016486c7d5 user: drh tags: trunk)
10:47
In shared-cache mode, do not allow one connection to checkpoint a database while a second connection is reading or writing the same shared-cache. (check-in: e75b52d156 user: dan tags: trunk)
2010-08-01
22:41
Fix a typo in an error message of the TCL interface. (check-in: 8eadd7b87b user: drh tags: trunk)
2010-07-30
18:40
If a database becomes corrupted such that an index is out of sync with its table, make sure the corruption is detected and reported back. Do not assume that indices always contain rowids for valid table rows. (check-in: 83395a3d24 user: drh tags: trunk)
16:54
Fix typos in comments. No code or logic changes. (check-in: 15c294ca05 user: drh tags: trunk)
16:44
Remove a test from sqlite3PagerCommitPhaseOne which is now always true after the multi-file transaction fix. (check-in: 6758f6a8ec user: drh tags: trunk)
15:43
Remove variable Pager.needSync, which was almost completely unused. (check-in: 347f22a5b7 user: dan tags: experimental)
14:39
Merge trunk changes into experimental again. (check-in: 87e0f4e184 user: dan tags: experimental)
11:31
Changes to the comments describing the Pager.setMaster variable in pager.c. Add an assert() statement to verify that two master journal pointers are not written to a single journal file. (check-in: ad78ccacb0 user: dan tags: trunk)
11:20
Cherry-pick the multi-file transaction fix for ticket [f3e5abed55] out of the experimental branch. (check-in: 40f7f0a583 user: drh tags: trunk)
10:09
Add the test cases for bug [f3e5abed55]. (check-in: cbbaf8e67a user: dan tags: experimental)
10:02
Make sure a connection has an exclusive lock on all database files involved in a multi-file transaction before writing the master-journal pointer into any journal files. Fix for [f3e5abed55]. (check-in: 50c0f2202d user: dan tags: experimental)
07:26
Merge further trunk changes into experimental branch. (check-in: fb847d7040 user: dan tags: experimental)
05:06
Add tests to check that the ICU regexp() function can only be called with exactly two arguments. (check-in: 451d965742 user: dan tags: trunk)
00:31
Updates to the README.txt file for ICU. (check-in: d37443d333 user: drh tags: trunk)
2010-07-29
10:13
Unconditionally include the pTmpSpace size in the estimate of the pager memory used. (check-in: 4b97f8640e user: drh tags: trunk)
10:07
Change the profile timer units back to nanoseconds and update the sqlite3_profile() documentation. Ticket [c43940c49b74c70a69] (check-in: 7783b98a93 user: drh tags: trunk)
01:50
Correct handling of compound foreign key constraints that include the integer primary key as one of the columns. Ticket [ce7c133ea6cc9ccdc1] (check-in: 53902f7d4a user: drh tags: trunk)
2010-07-28
19:17
Get SQLITE_OMIT_VIRTUALTABLE working again after being broken by recent changes. (check-in: 33b1e862ff user: drh tags: trunk)
18:51
Fix the dbstatus.test script so that it works correctly on 64-bit machines. (check-in: a3401d9ee5 user: drh tags: trunk)
18:35
Merge trunk changes into experimental branch. (check-in: aa81900153 user: dan tags: experimental)
17:36
Improve the accuracy of the Pager heap usage estimate. (check-in: ae89777e7f user: drh tags: trunk)
17:16
Adjust the shell test script "shell4.test" to account for changes in the ".stat on" display format from the previous checkin. (check-in: 2f2fa7dd80 user: drh tags: trunk)
17:01
Record the pcache allocation size statistics even for pcache overflow allocations. Adjust the wording on one of the stat output lines in the shell. (check-in: f9adf66ad5 user: drh tags: trunk)
16:05
Modify CLI to optionally display "stats". (check-in: 419ce0ed89 user: shaneh tags: trunk)
15:52
Lookaside memory is not used to store schemas. Change the SQLITE_DBSATUS_SCHEMA_USED documentation to reflect this fact. (check-in: 07abfd5268 user: drh tags: trunk)
15:49
Add documentation for the SQLITE_STATUS_MALLOC_COUNT parameter to sqlite3_status(). (check-in: dbfbdb60c0 user: drh tags: trunk)
15:10
Fix errors in wal3.test caused by recent modifications. (check-in: 0714aeccd8 user: dan tags: experimental)
14:26
Support FCNTL_CHUNK_SIZE on windows too. (check-in: a038688c99 user: dan tags: experimental)
02:53
Do not allow automatic indices for the RHS of IN expressions which are not correlated subqueries. Ticket [8011086c85c6c404014c9] (check-in: 267492d3a7 user: drh tags: trunk)
2010-07-27
18:36
Merge trunk changes into experimental branch. (check-in: 621824092d user: dan tags: experimental)
18:34
Add experimental unix-only file-control to grow and truncate the database file by a configurable chunk size. (check-in: 7cf0e851d4 user: dan tags: experimental)
16:42
Update the makefiles to prefer TCL version 8.5 instead of 8.4. (check-in: 8118de2af3 user: drh tags: trunk)
2010-07-26
19:09
Fix a bug in the SQLITE_STATUS_MALLOC_COUNT counter. Add an ALWAYS() around a condition in the SQLITE_DBSTATUS_SCHEMA_USED logic that is always true. (check-in: 6df081adbf user: drh tags: trunk)
18:43
Add the SQLITE_STATUS_MALLOC_COUNT option for sqlite3_status(). (check-in: 8f8e442b3a user: drh tags: trunk)
16:40
Increase the version number to 3.7.1 due to the API enhancement of the previous check-in. (check-in: 1d7571e4be user: drh tags: trunk)
16:24
Add support for SQLITE_DBSTATUS_SCHEMA_USED and SQLITE_DBSTATUS_STMT_USED to the trunk. (check-in: 008368b2bd user: drh tags: trunk)
15:57
When calculating schema memory, use the actual allocated size of hash elements, not sizeof(HashElem). Also fix a bug in dbstatus.test. (Closed-Leaf check-in: e327ef37fa user: dan tags: experimental)
14:47
Add virtual table test cases to dbstatus.test. (check-in: 72b84d066a user: dan tags: experimental)
14:20
Further fixes to the P4_MEM size measurement logic. (check-in: 934cda2987 user: drh tags: experimental)
13:58
Fix an issue with P4_MEM and the schema size measurement logic. Also fix a compiler warning. (check-in: 8166f33885 user: drh tags: experimental)
12:38
Make sure sqlite3_free() is not called for P4_MPRINTF during a size measurement. (check-in: 56f11f8823 user: drh tags: experimental)
12:36
Remove an assert() that uses a variable removed earlier. (check-in: c04907e698 user: dan tags: experimental)
12:05
Change the way SubProgram objects are deleted so that the code is the same for deletion and measurement. (check-in: 00e55102a8 user: dan tags: experimental)
11:59
Update comments to better documentation the new memory measurement functions. (check-in: 620bad0357 user: drh tags: experimental)
11:07
Make sure all memory from sqlite3DbMalloc() is freed by sqlite3DbFree() and all memory from sqlite3_malloc() is freed by sqlite3_free(). (check-in: 629e38a8c9 user: drh tags: experimental)
2010-07-25
02:39
Fixes to prior checkins so that they compile and run even if SQLITE_MEMDEBUG is not defined. (Closed-Leaf check-in: 548bf3f7d7 user: drh tags: malloc-enhancement)
02:12
Further examples of using automatic deallocation to replace "delete" methods. (check-in: da2f62c502 user: drh tags: malloc-enhancement)
2010-07-24
19:08
Additional malloc sanity changes. Use sqlite3MemLink() on Index.zColAff and Table.zColAff as a proof of concept. (check-in: e5ecb15984 user: drh tags: malloc-enhancement)
18:25
Add infrastructure to support a hierarchy of memory allocations with automatic deallocation of substructure. (check-in: 48ef221c28 user: drh tags: malloc-enhancement)
16:34
Make sure all memory from sqlite3DbMalloc() is freed by sqlite3DbFree() and all memory from sqlite3_malloc() is freed by sqlite3_free(). (check-in: ac1f37a647 user: drh tags: malloc-enhancement)
11:28
Experimental code to measure memory consumed by database schemas and prepared statements. (check-in: 9aa30342f4 user: dan tags: experimental)
2010-07-23
22:26
Fix a typo in the OS/2 vfs code. (check-in: a6bb2108bf user: drh tags: trunk)
17:37
Merge two leaves. (check-in: 54e5886d84 user: dan tags: trunk)
17:32
Strenghten an assert() in malloc.c that helps to ensure that allocated memory is freed by the appropriate routine. (check-in: 80db61acca user: drh tags: trunk)
17:06
Remove additional traces (mostly in comments) of the Table.dbMem field. (check-in: 5c58f44aeb user: drh tags: trunk)
15:55
Add a test case to shared.test. No changes to production code. (check-in: bfb0dd3c2f user: dan tags: trunk)
15:41
Remove the Table.dbMem variable, as it is no longer being used for its original purpose. (check-in: 6eddc6e601 user: dan tags: trunk)
08:31
Remove the unused Schema.db variable. (check-in: 430be657be user: dan tags: trunk)
2010-07-22
22:40
Add evidence marks to the where.c source file. Comment only - no code changes. (check-in: f3f9e8e5bb user: drh tags: trunk)
17:55
Make the sqlite3_db_status() routine threadsafe. (check-in: 241f7bd190 user: dan tags: trunk)
17:49
Enhance the LIKE/GLOB query optimization so that it works as long as there is an index with the appropriate collating sequence and even if the default collating sequence of the column is different. Ticket [4711020446da7d93d99]. (check-in: 9f932655f9 user: drh tags: trunk)
15:44
Add test/threadtest3.c, containing multi-thread tests implemented in C. (check-in: aad88cf54e user: dan tags: trunk)
12:33
Try to optimize LIKE and GLOB operators when RHS contains no wildcard. Ticket [e090183531fc274747] (check-in: 613a87d62f user: drh tags: trunk)
11:40
Tweaks to the virtual table documentation contained in comments of sqlite3.h. No changes to actual code. (check-in: f5866d4723 user: drh tags: trunk)
2010-07-21
16:16
Version 3.7.0 (check-in: b36b105eab user: drh tags: trunk, release)
2010-07-20
20:23
Added fix to os_win.c for race conditions from os_unix.c; added saving of errno in two places. (check-in: 13ed106c8c user: shaneh tags: trunk)
18:59
Fix a race condition in os_unix.c that may occur when one thread is opening a connection to a shared-memory block and another is either closing or locking the same shared-memory. (check-in: 3b7330c19a user: dan tags: trunk)
2010-07-19
15:01
Update the CLI test scripts for version 3.7.0. (check-in: 92fe70dadd user: drh tags: trunk)
12:44
Use exit(255) instead of abort() in the tcl [sqlite_abort] test command. This stops testfixture from creating dozens of core files each time tests are run. (check-in: aec9e13148 user: dan tags: trunk)
12:05
Changes to stat.test so that it works with file-format 4. (check-in: f87bb28361 user: dan tags: trunk)
11:16
Re-introduce the prefix-search optimization of [feef1b15d6], which was lost in a reorganization of FTS3 code. (check-in: d692434b49 user: dan tags: trunk)
05:27
Enable previously failing tests in e_expr.test that pass following [3e5975aa3b]. (check-in: 3d59c54a39 user: dan tags: trunk)
02:30
Fix a parser bug that was causing the relative precedence of LIKE and < operators to be incorrect. (check-in: 3e5975aa3b user: drh tags: trunk)
01:52
Improvements to the formatting of parse.out file from Lemon. Add the -r option to Lemon to disable the state sorting, making debugging easier. (check-in: a2eaf8294f user: drh tags: trunk)
2010-07-18
11:35
Add the -p option to lemon to cause conflicts resolved by precedence rules to appear in the parse.out file. (check-in: fb6a59b0a9 user: drh tags: trunk)
2010-07-17
18:44
Add new test file e_expr.test. (check-in: cbcf8abbb2 user: dan tags: trunk)
09:27
Do not run journal3.test with the inmemory_journal permutation. (check-in: e1d228e992 user: dan tags: trunk)
2010-07-16
11:10
Fix a problem with wal4.test caused by changes in the previous checkin. (check-in: 1218d3703a user: dan tags: trunk)
10:39
Fix a test script bug uncovered by [a121cd80c5] that was causing shared_err.test to fail. (check-in: d7b63a4c9f user: dan tags: trunk)
2010-07-15
18:38
Previous check-in [534aab837e] accidently reverted some changes from [a121cd80c5]. This check-in restores those changes. (check-in: abff795f38 user: drh tags: trunk)
18:32
Optionally support shared-memory in /dev/shm or other tmpfs directory using an unsupported compile-time option. (check-in: 534aab837e user: drh tags: trunk)
18:20
Changes to wal.c so that SQLite can read even if the WAL file is opened read-only, provided the wal-index (shm file) is opened read/write. (check-in: 932d19da73 user: dan tags: trunk)
17:54
Handle the case where xShmMap returns SQLITE_BUSY. (check-in: 75f5354876 user: dan tags: trunk)
14:59
When creating a journal file on unix, attempt to create it with the same permissions as the associated database file. (check-in: a121cd80c5 user: dan tags: trunk)
11:14
Change a comment inside a block of code in parse.y from C++ to C style. (check-in: dea7d33b2d user: dan tags: trunk)
2010-07-14
20:51
Fix a typo in a comment in os_unix.c. (check-in: e1e7312580 user: drh tags: trunk)
20:23
The expression list on the RHS of an IN operator can no longer be empty because an empty expression list is now optimized out by changes in check-in [c288ac644d0bf]. Therefore add ALWAYS() macros around tests for the expression list being non-empty. (check-in: fd130ae56c user: drh tags: trunk)
19:31
Additional test cases and evidence marks for the empty RHS bug on the IN operator - ticket [80e031a00f45dca877] (check-in: 6851c517ac user: drh tags: trunk)
18:24
Make the result of an IN or NOT IN expression with an empty set on the right-hand side always either false or true, respectively, even if the left-hand side is NULL. Ticket [80e031a00f45dc] (check-in: c288ac644d user: drh tags: trunk)
18:10
Fix an assert() failure in wal2.test caused by messing with the contents of shared memory. (check-in: 9f452514d9 user: dan tags: trunk)
16:37
Test the libraries response to read-only or unreadable database, WAL and wal-index files. If a WAL file cannot be opened in read/write mode, return SQLITE_CANTOPEN to the caller. (check-in: 45bb84c628 user: dan tags: trunk)
14:48
On unix, try to create the *-wal and *-shm files with the same permissions as the associated database file. (check-in: e5d180eed2 user: dan tags: trunk)
08:20
Add tests to pagerfault.test. (check-in: b092f2a74b user: dan tags: trunk)
07:06
Test that a corrupted WAL hash-table does not put the library into an infinite loop. (check-in: c73886ed74 user: dan tags: trunk)
06:20
Fix a typo in the IS_BIG_INT macro used by coverage test instrumentation. (check-in: 5314ca3928 user: dan tags: trunk)
01:45
Fix the unix driver to return an I/O error if unlink fails for any reason other than the file not existing in the first place. (check-in: 90d73c66bf user: drh tags: trunk)
00:22
Remove the xShmOpen method from the VFS. Shared-memory is opened automatically by a call to xShmMap. Rename the xShmClose method to xShmUnmap. (check-in: 2b68e50268 user: drh tags: trunk)
00:14
Change the name of the xShmClose VFS method to xShmUnmap, everywhere. (Closed-Leaf check-in: c2d27cf51d user: drh tags: experimental)
2010-07-13
23:41
Tweaks to the new shared-memory interface design - mostly comment changes. (check-in: 6336de7aa9 user: drh tags: experimental)
18:45
Fix a typo in a comment in sqlite.h.in. (check-in: 4a6c4b6605 user: dan tags: experimental)
18:44
Changes so that the xShmOpen VFS method is no longer required. Its job can be done by the first call to xShmMap. Rename xShmClose to xShmUnmap. (check-in: f4780bde62 user: dan tags: experimental)
14:48
Improved documentation for the SQLITE_ACCESS_* constants that are used with the xAccess() method of the VFS. (check-in: 3d4bb65f10 user: drh tags: experimental)
14:33
Add proposed interface change to sqlite.h.in. This commit breaks the build. (check-in: 52577bb5e7 user: dan tags: experimental)
14:22
Fixes to the pcache10 and pcache90 permutations. (check-in: 597d40fa52 user: dan tags: trunk)
07:38
Fix problems with running the async.test script. (check-in: 05ac254865 user: dan tags: trunk)
2010-07-12
20:46
Updates to comments and code organization to reflect changes in os_unix.c; Updated winShmLock() with logic changes from unixShmLock(); Modified IO error returns in winShmMap() to match those in unixShmMap(); (check-in: b73fe2754b user: shaneh tags: trunk)
18:12
Fix test_stat.c so that it does not cause compilation errors if SQLITE_OMIT_VIRTUALTABLE is defined. (check-in: bf4fc08887 user: dan tags: trunk)
16:47
Fix makefiles so that they build sqlite3_analyzer again. Tweaks to comments in test_stat.c. Fix tclsqlite.c to build the sqlite3_analyzer again. (check-in: e6cd15451d user: drh tags: trunk)
12:22
In the async-IO module, do not increment the open file-counter until after an "open file" event has been added to the event queue. Otherwise, an OOM may cause the system to increment the counter even though no file was successfully opened. (check-in: 15a190dc57 user: dan tags: trunk)
08:39
Changes so that the space-analyzer script works with 3.7.0. (check-in: 86159cb3f0 user: dan tags: trunk)
2010-07-09
19:32
Exclude a few more FTS modules from the "in memory" permutation test suite. (check-in: 4e9d69cd5a user: shaneh tags: trunk)
18:43
Exclude fts3cov.test from the "in memory" permutation test suite to avoid a false positive. (check-in: 6af6794cac user: shaneh tags: trunk)
12:57
Fix warning under MSVC. (check-in: 0c32c4bbdd user: shaneh tags: trunk)
03:19
Reformat WAL code for clearer presentation. Update comments for correctness. Add checks to ensure that corruption in shared-memory does not result in an infinite loop. (check-in: 40eaada7ec user: drh tags: trunk)
2010-07-08
19:19
Replace code that became unreachable due to the journal_mode simplification with an assert(). (check-in: bcdddba4f0 user: drh tags: trunk)
18:32
Fix test case numbering in backup_malloc.test and issue when running under Windows. (check-in: aef2643852 user: shaneh tags: trunk)
17:40
Change the journal_mode pragma to remove the "default journal mode" concept. The journal_mode pragma only effects currently attached databases and does not change the behavior of future attachments. (check-in: e396184cd3 user: drh tags: trunk)
16:50
Merged experimental crashsql() into trunk. (check-in: 01b575ff1a user: shaneh tags: trunk)
16:30
Changes to get crashsql() working on Windows. (Closed-Leaf check-in: 8a5811ea80 user: shaneh tags: experimental)
16:22
Fix warning in test fixture code. (check-in: 0bfcf3bcd7 user: shaneh tags: trunk)
16:22
Fix test case number issue in walcrash.test. (check-in: 6a46e64168 user: shaneh tags: trunk)
14:59
Fix to lock5.test so that it runs with the inmemory_journal permutation on osx. (check-in: 948bb54568 user: dan tags: trunk)
13:33
Fixed a few tests in pagerfault.test so they work correctly on Windows. (check-in: ffbdd954a0 user: shaneh tags: trunk)
09:44
Changes to test scripts so that the "inmemory_journal" permutation works with [ef126e775a]. (check-in: f553c8ed04 user: dan tags: trunk)
06:22
Add tests to walmode.test. (check-in: 5aa2bdb502 user: dan tags: trunk)
03:13
Changes to os_win.c to have it simulate IO errors like os_unix.c. (check-in: 0d53da9451 user: shaneh tags: trunk)
2010-07-07
21:06
Make the initial salt values in the WAL header random values, not zero. (check-in: baa5eddd05 user: drh tags: trunk)
20:38
Add the write-ahead log viewer/debugger tool to the tools/ folder. (check-in: 0e4bd44682 user: drh tags: trunk)
20:00
Fix issue in mallocI test script where db handle not released. (check-in: dd59cea6c8 user: shaneh tags: trunk)
18:38
Add further test cases to savepoint.test. (check-in: f825205dbf user: dan tags: trunk)
17:53
When rolling back a savepoint, reset the changeCountDone flag. (check-in: fb62f4e3a7 user: dan tags: trunk)
16:51
When using MSVC to build test code, suppress the popup dialog when abort is called from the sqlite_abort() test function. (check-in: 55d3d39f1c user: shaneh tags: trunk)
16:49
Fix some MSVC compiler warnings in the ASYNC extension. (check-in: b951c8675d user: shaneh tags: trunk)
16:23
Merge together another accidental fork. (check-in: c41f04edb2 user: dan tags: trunk)
16:20
Fix test numbering issue in nan.test. (check-in: 5bb1330fef user: shaneh tags: trunk)
16:18
Do not make the SQLITE_FCNTL_SIZE_HINT call if an error has already occurred during transaction commit. (check-in: e92de834a3 user: dan tags: trunk)
15:41
Close the file handle before returning. TCL test script issue only. (check-in: f4076d8567 user: shaneh tags: trunk)
14:45
Fixed a new error introduced by last check-in of os_win.c. Updated xAccess() to support SimulateIOError(). (check-in: 8eefc28726 user: shaneh tags: trunk)
14:40
Remove two more testcase() macros that require 4GiB WAL files to hit. (check-in: 16e18f2706 user: drh tags: trunk)
14:35
Remove a testcase() macro that would require a 4GiB WAL to reach. (check-in: 15f9c2713b user: drh tags: trunk)
14:33
Fix a compiler warning in PRAGMA journal_mode. (check-in: d94269e60d user: drh tags: trunk)
14:19
Avoid the need for a NEVER() from pager_write_pagelist() by passing in pPager as an extra parameter. (check-in: b317937943 user: drh tags: trunk)
14:00
Merge together the accident fork. (check-in: cdcf08cb18 user: drh tags: trunk)
13:58
Fix minor issue in xAccess() method for Windows. (check-in: 4bfd46f1db user: shaneh tags: trunk)
13:54
Make sure the schema is loaded before preparing a "PRAGMA journal_mode" command. This helps it return meaningful results when it is the first command executed by a new database connection. (check-in: ef126e775a user: dan tags: trunk)
13:43
Add testcase macros to ensure that large-file cases are tested in WAL. (check-in: 8156b57ac3 user: drh tags: trunk)
11:43
Run some fts3 tests as part of the "wal" permutation. (check-in: 8657455a11 user: dan tags: trunk)
11:05
Change the async-IO extension to return SQLITE_IOERR_SHORT_READ when appropriate. This prevents a valgrind warning in the test suite. (check-in: d9e3287900 user: dan tags: trunk)
09:48
Fix a problem with writing to databases larger than 2^32 bytes with WAL mode. (check-in: b956ddca75 user: dan tags: trunk)
01:52
Remote the SQLITE_OMIT_GLOBALRECOVER macro - it is subsumed by SQLITE_OMIT_DEPRECATED. Add support to sqlite3_compileoption_used() for SQLITE_OMIT_WAL. (check-in: 21a2db908b user: drh tags: trunk)
2010-07-06
20:37
Minor changes to Makefile.in to bring it more inline with main.mk. (check-in: 5621862b0e user: shaneh tags: trunk)
20:34
Changes to pager1.test to support Windows. (check-in: fce689ebe6 user: shaneh tags: trunk)
20:33
Modified the xWrite() method on Windows to differentiate between IO and disk full error returns. (check-in: ca4b7ffbd4 user: shaneh tags: trunk)
11:26
Do not do the *-closeallfiles test for notify2.test. It uses multiple threads. (check-in: fb09152db8 user: dan tags: trunk)
10:55
Before calling Tcl_ExitThread() in a multi-threaded test, call Tcl_DoOneEvent() as many times as necessary to handle any queued events. (check-in: b3399b4078 user: dan tags: trunk)
09:29
Reorder variable declarations in the previous check-in to avoid putting code before declarations when not testing. (check-in: d1fe8ab4a1 user: drh tags: trunk)
07:36
Ensure the correct error code is returned if an attempt to parse a database schema made by an ATTACH statement fails. (check-in: c272196115 user: dan tags: trunk)
2010-07-05
21:00
Modify the VFS xAccess() method on winNT so that it returns false for an exists test of a zero-length file. This makes the windows VFS work the same as the unix VFS. (check-in: ec35f25403 user: drh tags: trunk)
19:13
Simplify the previous commit by removing the pagerCheckForOrDeleteWAL() wrapper. (check-in: a1324d125e user: dan tags: trunk)
19:03
Allocate a buffer containing the full path-name to the associated WAL file when a pager is created. This saves having to construct a new buffer each time a new read-transaction is opened and SQLite checks for the existance of a WAL file. (check-in: 3053a4ad15 user: dan tags: trunk)
17:43
When rolling back page 1 from a journal, restore the "nReserve" setting in case it has been corrupted by a prior crash. (check-in: c0d124da88 user: drh tags: trunk)
14:54
Do not report an error if the open-file-count is not as it should be after running a multi-threaded test. The counter instrumentation is not thread-safe. (check-in: ea80b21c88 user: dan tags: trunk)
12:54
Call Tcl_ExitThread() from within threads created using Tcl_CreateThread(). Not doing so causes notifier related errors on OSX. (check-in: 684eae6623 user: dan tags: trunk)
05:54
Add any files specified as part of the QUICKTEST_INCLUDE environment variable to the set of test files run as part of "make test". Release testing uses this trick. (check-in: a40a6e7df1 user: dan tags: trunk)
05:31
Fix typos in permutations.test. (check-in: b6600ecb4e user: dan tags: trunk)
2010-07-03
19:08
Do not run the memsubsys1.test script under the memsubsys1 permutation. (check-in: 3a1a8c77a5 user: dan tags: trunk)
17:13
Remove the unused xRename() method from the sqlite3_vfs object. Add better documentation on the xCurrentTimeInt64() method. (check-in: 51ec0e5432 user: drh tags: trunk)
16:37
Further changes to test scripts so that the "inmemory_journal" permutation works. (check-in: 50f2f7dfd6 user: dan tags: trunk)
13:59
Fix a bug in the permutations.test script. (check-in: 3b20ad03be user: dan tags: trunk)
13:50
Fix an assert in pager.c. And various test cases that fail with the in-memory journal permutation. (check-in: 622378dbe3 user: dan tags: trunk)
13:45
Fix an assert in pager.c. And various test cases that fail with the in-memory journal permutation. (Closed-Leaf check-in: 78fc35ff4b user: dan tags: mistake)
12:31
Cherry-pick the correct changes out of the recent "mistake" branch while omitting the bugs. (check-in: 48bf309391 user: drh tags: trunk)
12:26
Remove dead code from the pager. (check-in: 7cbe175a69 user: drh tags: mistake)
12:00
Print the SQLite source_id() string when running speed tests. (check-in: 6d7640edcd user: drh tags: mistake)
10:00
Fix an assert() in pager.c added by the previous commit. And various problems with test scripts in autovacuum and in-memory journal mode. (check-in: 62a1010177 user: dan tags: mistake)
08:01
Do not attempt to open a WAL file for an in-memory or temporary database. Even if the database header suggests that it is a WAL database. (check-in: 0fd8092436 user: dan tags: mistake)
05:56
Change code in OP_Rewind to avoid a valgrind warning following an error in the btree layer. This change does not fix any bug, just a warning. (check-in: 4f62dbcfc9 user: dan tags: mistake)
01:44
Fix a buffer overrun in the where.c. Problem detected by valgrind. (check-in: 15bb623306 user: drh tags: mistake)
2010-07-02
19:49
Changes to os_win.c to have it return same error code as os_unix.c. (check-in: 33b6f069d8 user: shaneh tags: mistake)
19:36
Omit the OP_JournalMode opcode from the VDBE when SQLITE_OMIT_PRAGMA is defined. (check-in: 565ff65c61 user: drh tags: mistake)
19:04
Fix a bug in test_vfs.c causing an assert to fail. Changes to test code only. (check-in: 336ce7d297 user: dan tags: mistake)
18:58
Do not run the tests in notify3.test unless the unlock-notify API is available. (check-in: 0d7fd6fe9d user: dan tags: mistake)
18:44
Take out the incomplete initializer on the constant "dummy" in sqlite3VdbeGetOp(). Add a comment that the MSVC warning there should be ignored. (check-in: 452ccaa908 user: drh tags: mistake)
18:15
Fix a couple more compiler warnings under MSVC. (check-in: 26bc27e3f4 user: shaneh tags: mistake)
17:10
Fix compiler warnings in the proxy locking code. (check-in: 26c7689cfe user: drh tags: mistake)
17:07
Remove a couple of C++ style comments from pager.c. (check-in: 4f12e8ebde user: drh tags: mistake)
17:05
Fix some warnings when compiling under MSVC. (check-in: 7083387739 user: shaneh tags: mistake)
16:36
Add initializers for the xShmXXX() members to an sqlite3_io_methods structure in journal.c. This doesn't fix any real problem, just prevents a compiler warning. (check-in: dafb3577a2 user: dan tags: trunk)
15:35
Remove an unused call to sqlite3PageBegin() from pager_write(). Replace it with an assert(). (check-in: 01c1278263 user: drh tags: trunk)
13:49
Run tkt-9d68c883.test along with the other pager.c coverage tests. Add a test case to pager1.test. (check-in: c6714b0dbd user: dan tags: trunk)
11:27
Additional test cases to cover branches in pager.c. (check-in: eddfb2b406 user: dan tags: trunk)
01:18
Add a NEVER to sqlite3PagerCommitPhaseTwo() because it is now no longer possible to invoke that function without holding a RESERVED lock. (check-in: 6ae7617298 user: drh tags: trunk)
2010-07-01
19:45
If you delete a database file but not its *-wal file, then open the database (thus creating a new empty database file) the *-wal file is automatically deleted. (check-in: 95c69dfbdd user: drh tags: trunk)
19:01
Add tests to pager1.test and pagerfault.test. (check-in: c6e7595092 user: dan tags: trunk)
15:09
Add pager test cases. Change a condition in pager.c to NEVER(). (check-in: a8f6341d3b user: dan tags: trunk)
2010-06-30
10:36
Add further test cases. Fix an assert() in pager.c. (check-in: 8e65c0e3da user: dan tags: trunk)
04:36
Do not call pager_open_journal() from within PagerBegin() if the connection is in exclusive-access mode. It will be called from within PagerWrite() just as it is for non-exclusive mode anyway. (check-in: cdf2c5c2dd user: dan tags: trunk)
04:29
Add coverage test cases. Have sqlite3_backup_step() transform SQLITE_IOERR_NOMEM to SQLITE_NOMEM before returning. (check-in: 5e19bc360e user: dan tags: trunk)
2010-06-29
10:30
Add tests to pager1.test and pagerfault.test. (check-in: 008513ee61 user: dan tags: trunk)
2010-06-28
19:04
Add extra pager tests. (check-in: 6b7e419ddc user: dan tags: trunk)
11:23
Fix some errors when compiling with SQLITE_OMIT_WAL. (check-in: 3b68cb9c65 user: dan tags: trunk)
11:06
Remove debugging code from test script. (check-in: a85ae33246 user: dan tags: trunk)
10:15
Currently, if SQLite cannot find a table or index referred to by a query, it reloads the database schema from disk to see if the table or index has been added since the schema was cached in memory. Extend this behaviour to columns (which may have been added using ALTER TABLE) and fix some obscure cases related to tables and indexes (INDEXED BY, DROP TABLE etc.). (check-in: 4932f22848 user: dan tags: trunk)
2010-06-26
22:16
Make walIndexTryHdr() a private function. Fix an issue with SQLITE_MUTEX_NOOP. (check-in: ec65bbd06b user: drh tags: trunk)
21:34
Suppress various compiler warnings. (check-in: e82d008eaf user: drh tags: trunk)
20:25
Fix two asserts on the scratch allocator to allow for up to two outstanding scratch allocations per thread. (check-in: f149b498b6 user: drh tags: trunk)
20:00
Suppress a couple uninitialized variable warnings. (check-in: 29571e228c user: drh tags: trunk)
19:03
Add test file tkt-d11f09d36e.test. (check-in: 6e469b63fa user: dan tags: trunk)
19:02
Remove a NEVER() in pager that can in fact be reached in obscure failure cases. (check-in: 42b8bd1c70 user: drh tags: trunk)
17:15
Fix a case where the doNotSyncSpill flag may remain permanently set following an IO error. (check-in: 56c7d111bf user: dan tags: trunk)
15:42
When synchronous=NORMAL, use the same journal file format as with synchronous=FULL (i.e. multiple journal headers within the one journal). Fix for [d11f09d36e]. (check-in: 2eaf5ee0d9 user: dan tags: trunk)
2010-06-25
19:09
Further test cases for pager1.test and pagerfault.test. (check-in: bfd563c471 user: dan tags: trunk)
16:34
Reduce the average (but not maximum) size of the allocations made as part of a checkpoint. (check-in: 4a7fd91b7a user: dan tags: trunk)
15:16
Reduce the size of the large allocation (approx 8KB for every 4000 frames in the log) that occurs during checkpoint. Use the 'scratch' memory for this allocation instead of the general purpose allocation. (check-in: 29887487ed user: dan tags: trunk)
14:17
Fix up a branch in sqlite3ValueFromExpr() so that we can achieve full branch test coverage regardless of whether or not SQLITE_ENABLE_STAT2 is used. (check-in: af471ed79f user: drh tags: trunk)
12:52
Change the name of the shared-memory file on windows from *-wal-index to *-shm, for consistency with unix. (check-in: 5995cb1508 user: drh tags: trunk)
11:35
Modify the merge-sort in wal.c so that it does not use recursion. (check-in: daea6c054c user: dan tags: trunk)
2010-06-24
19:16
Add test cases to pager1.test and pagerfault.test. (check-in: 4941e437d2 user: dan tags: trunk)
18:36
Revert to allowing a cache spill during writes of multiple pages within a single sector as long as the spill does not require a journal sync and a new journal header. (check-in: 7d83fbae98 user: drh tags: trunk)
17:37
Modify ctime.test to work with SQLITE_THREADSAFE=2. (check-in: c6db3b3031 user: dan tags: trunk)
14:52
Disable memory-pressure induced cache spill during savepoint rollback. (check-in: a55eb4c3e9 user: drh tags: trunk)
13:24
Add a coverage test to pagerfault.test. (check-in: b58db67e97 user: dan tags: trunk)
10:50
Add coverage tests. Remove a NEVER macro from pager.c, as the condition can now be true in wal mode. (check-in: 7aac9ad6dd user: dan tags: trunk)
02:46
Make sure the wal-index reader detects an incorrect version number even if it had to hold a lock in order to read the wal-index. Also, expand and enhance various comments in wal.c. (check-in: 2e6a462ceb user: drh tags: trunk)
2010-06-23
22:00
Fix and/or improve comments in wal.c. No code changes. (check-in: ee9991be08 user: drh tags: trunk)
19:27
Add test case for SQLITE_FULL errors to pagerfault.test. Remove a NEVER macro in pager.c that this hits. (check-in: 3e9680c4c1 user: dan tags: trunk)
17:59
Include the SOURCE_ID value in the log messages output for corruption, misuse, and CANTOPEN errors. (check-in: 1727a81fed user: drh tags: trunk)
17:58
Adjust the shared-memory locking range to account for the new version number values in the wal-index header. (check-in: a6dc0df304 user: drh tags: trunk)
15:55
Add a version number to the wal-index header. If SQLite encounters a version number in either the wal or wal-index files that it does not understand, the operation is abandoned and SQLITE_CANTOPEN returned. (check-in: 8d0f8a7f70 user: dan tags: trunk)
15:18
Fix the xCurrentTimeInt64 interface on windows. It was off by a factor of 10. (check-in: 51ef43b9f7 user: drh tags: trunk)
15:04
Simplifications to the pager_delmaster() implementation. (check-in: 8bfbdec647 user: drh tags: trunk)
2010-06-22
21:15
Disable code used only by the codec when the codec is not deployed. (check-in: 2c90276e34 user: drh tags: trunk)
15:18
Add codec support to wal mode. (check-in: 393741eba3 user: dan tags: trunk)
14:49
When trying to transition from journal_mode MEMORY to WAL, use OFF as an intermediate journal mode. (check-in: 4775b8f9a9 user: drh tags: trunk)
13:46
Some changes to test scripts related to codec enabled versions of sqlite. (check-in: 85dd51a75c user: dan tags: trunk)