/ Timeline
Login

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

100 ancestors of [f4497b01]

2018-08-11
13:40
Reload the entire schema after renaming a column in order to ensure that the schema for any tables for which parent key definitions were changed are reloaded. check-in: f4497b01 user: dan tags: alter-table-rename-column
2018-08-10
20:19
Ensure the schema cookie is changed when a column is renamed. check-in: 2dec9ea4 user: dan tags: alter-table-rename-column
19:33
Fix harmless compiler warnings. check-in: 9564d700 user: drh tags: alter-table-rename-column
19:19
When a column is renamed, update any references to it in REFERENCES clauses that belong to other tables. check-in: 191079bd user: dan tags: alter-table-rename-column
15:27
Merge latest trunk changes with this branch. check-in: c355a837 user: dan tags: alter-table-rename-column
14:23
Fix a problem with renaming columns on tables with REFERENCES clauses that specify a large number of columns. check-in: d48f7bbd user: dan tags: alter-table-rename-column
2018-08-09
21:45
Fix the isLikeOrGlob() routine in the WHERE clause processing logic so that it avoids signed/unsigned character comparisons, as that can lead to an incorrect answer if the ESCAPE clause is an invalid UTF8 string. Problem found by OSSFuzz. check-in: 4195a3f8 user: drh tags: trunk
20:47
Experimental implementation of ALTER TABLE ... RENAME COLUMN. Still buggy. check-in: fa0fc01e user: dan tags: alter-table-rename-column
18:36
When a column must be a constant due to WHERE clause and the value of that column is being coded as a constant, make sure the affinity is correct. check-in: 7404ea83 user: drh tags: trunk
2018-08-08
20:46
Minor style improvements. check-in: 60bbca2b user: mistachkin tags: trunk
2018-08-06
02:08
Enhance the edit() function so that it converts text from \r\n back into \n only if the original unedited copy contained no \r\n values. check-in: 20c995d3 user: drh tags: trunk
01:39
Add the --info option to the fuzzcheck test utility. check-in: 1caaaaa7 user: drh tags: trunk
01:21
Fix an overzealous assert() statement discovered by OSSFuzz. check-in: d9c9fe9f user: drh tags: trunk
2018-08-04
20:30
Remove the column-cache from the code generator. The column-cache has been a persistent source of bugs for years and with recent improvements in the performance of OP_Column, it no longer provides a benefit. After the column cache is removed, the binary is almost 2KB smaller and the speed-check.sh performance test is over 3 million cycles faster. check-in: cdff3af7 user: drh tags: trunk
20:12
Remove a testcase() that is no longer reachable without the column cache. Provide an assert() to help prove that the testcase is no longer reachable. Closed-Leaf check-in: a500893b user: drh tags: omit-column-cache
17:15
Fix comments that were made obsolete by the removal of the column cache. check-in: 2041231d user: drh tags: omit-column-cache
16:54
Remove more column-cache residue: The OP_SetColTab and OP_VerifyColTab opcodes and the associated SQLITE_DEBUG_COLUMNCACHE logic. check-in: 80236e81 user: drh tags: omit-column-cache
15:53
Further logic simplifications that flow out of the omission of the column cache. check-in: 7d9072b0 user: drh tags: omit-column-cache
15:28
Add test cases for the constant expression fix of the previous check-in. check-in: 95db5bd9 user: drh tags: trunk
15:16
Ensure that all expressions that are to be evaluated once at the start of a prepared statement (the Parse.pConstExpr expressions) pass the sqlite3ExprIsConstantNotJoin() test. It is not sufficient to pass just the sqlite3ExprIsConstant() test as that would allow through column references that are bound to constants by the WHERE clause in the constant propagation optimization. This fixes a problem discovered by OSSFuzz. check-in: 8bc7f84c user: drh tags: trunk
14:30
Remove additional traces of the column cache. check-in: db6052e9 user: drh tags: omit-column-cache
2018-08-03
23:04
Completely remove the column cache logic, which has been a persistent source of bugs for many years. Due to recent enhancements to the performance of the OP_Column opcode, removing the column cache actually makes speed-check.sh run faster. Removing the column cache also saves about 1,800 bytes of code space. check-in: 3f5f60cd user: drh tags: omit-column-cache
20:19
Fix the handling of sub-queries with LIMIT clauses by the optimization activated by compile-time symbol SQLITE_COUNTOFVIEW_OPTIMIZATION. check-in: 21235d9a user: dan tags: trunk
15:58
Fix the OP_SeekRowid opcode so that it has no type-change side-effects on the key register in P3. This fixes an obcure problem that arises when doing equi-joins between a table with a TEXT column against another table with an INTEGER PRIMARY KEY. The original problem was discovered when OSSFuzz created such a query and hit an assert() in OP_VerifyTabCol that was specifically designed to catch these kinds of errors at run-time. Test cases for this fix are in TH3. check-in: fa94b49e user: drh tags: trunk
13:56
Improve "PRAGMA vdbe_trace=ON" to always show the key values for the OP_IdxGT and related opcodes. check-in: 0f881955 user: drh tags: trunk
2018-07-29
18:56
In the command-line shell, always exit if realloc() fails. check-in: e390023c user: drh tags: trunk
2018-07-28
21:01
Add a small cost penalty to sorting to bias the query planner in favor of plans that do not require a final sorting pass. check-in: 85b9beb4 user: drh tags: trunk
16:24
Do not allow a column reference that is converted into a constant by the WHERE-clause constant propagation optimization to be moved to the init-time constant expression list, as the table reference will not work there. This fixes a problem found by OSSFuzz. check-in: d30b2a94 user: drh tags: trunk
14:56
Fix an assert() statement that was made obsolete by the constant propagation enhancement. Problem discovered by OSSFuzz. check-in: e4b4737e user: drh tags: trunk
14:34
Improved debugging output when the ".selecttrace" option is used in the shell. check-in: fcb88dd6 user: drh tags: trunk
2018-07-27
23:33
Improvements to the parser to increase coverage. Fix the parser so that at least one expresssion is required after PARTITION BY and within the list of expressions on VALUES(). check-in: 02204f8b user: drh tags: trunk
22:55
When doing a DROP VIEW do not try to delete entries from the sqlite_stat1 table as there are none. check-in: 7efdba2b user: drh tags: trunk
22:14
Minor grammar changes that help the parser run faster by reducing the number of NUL rule reductions. check-in: cfd1b005 user: drh tags: trunk
20:45
Enhance Makefile for MSVC to support building the shell tool without using the amalgamation. check-in: 3d815d83 user: mistachkin tags: trunk
20:37
The WHERE-clause constant propagation optimization attempts to use transitive laws to replace column values with constants in the WHERE clause in order to help to query planner make more aggressive optimizations. check-in: f4229707 user: drh tags: trunk
20:01
Reduce the performance cost of the constant propagation optimization to less than 200,000 cycles. Closed-Leaf check-in: 865249de user: drh tags: propagate-const-opt
18:19
Performance improvement to sqlite3ExprCollSeq(). With this change, the performance of speed-check.sh is within 400,000 cycles of trunk. check-in: a5f86f49 user: drh tags: propagate-const-opt
18:12
Faster implementation of sqlite3IsBinary(). check-in: be05d0db user: drh tags: propagate-const-opt
17:51
Only run the constant propagation optimization on joins since that is the only scenario where it is useful. This saves prepare time for the common case of a simple query. check-in: 598d6083 user: drh tags: propagate-const-opt
16:57
Constant propagation is now restricted to just the WHERE clause. The mechanism is changed to take affinity and collation into account. This seems to give correct answers. But the search for constant propagation costs 4 million cycles in the speed test. check-in: 82c67efb user: drh tags: propagate-const-opt
2018-07-26
23:54
Add a test case demonstrating the collation problem with constant propagation. check-in: 50add839 user: drh tags: propagate-const-opt
23:47
Generalize the constant propagation optimization so that it applies on every WHERE close, not just those that contain a subquery. This then demonstrates that the current implementation is inadequate since it does not take into account collating sequences. check-in: 57eb2abd user: drh tags: propagate-const-opt
21:48
In the unix VFS, give every unixInodeInfo object its own mutex, rather than using the global VFS mutex, to improve concurrency in cases where there are many threads operating on separate database files. check-in: 22f47cf4 user: drh tags: trunk
21:16
Initial implementation of the WHERE-clause constant propagation optimization. check-in: 2fb82ad8 user: drh tags: propagate-const-opt
2018-07-25
15:25
Fix a buffer overread in fts5. check-in: 0e3de8ab user: dan tags: trunk
15:12
Keep generated opcode values grouped together when required, even when they do not correspond to a token. check-in: 6ee2950b user: mistachkin tags: trunk
07:29
Fix a typo in the documentation for sqlite3_snapshot_get(). check-in: cd9713c9 user: dan tags: trunk
2018-07-24
22:02
Do not abort running queries due to a CREATE INDEX statement. Allow them to run to completion before being reprepared. Fix for ticket [c694113e50321afdf9]. check-in: 2bd59333 user: drh tags: trunk
13:57
Add missing SQLITE_OMIT_WINDOWFUNC check to the json1 extension. check-in: fe19f823 user: mistachkin tags: trunk
2018-07-23
22:55
Return an SQLITE_NOMEM error if the locking mutex fails to allocate. Closed-Leaf check-in: 1c948348 user: drh tags: separate-lock-mutex
21:10
First attempt at reducing mutex contention in the unix VFS by providing a separate mutex for each unixInodeInfo object. check-in: f69afaf0 user: drh tags: separate-lock-mutex
18:53
Fix typo of 'SQLITE_OMIT_WINDOWFUNC'. check-in: 8607b84a user: mistachkin tags: trunk
18:32
Attempt to improve the documentation for snapshots. No changes to code. check-in: 46dd076a user: drh tags: trunk
10:57
Fix the macros used to generate the output of "PRAGMA compile_options" so that they handle valid values for the SQLITE_DEFAULT_LOOKASIDE macro (which contain a "," character). check-in: 1cc72845 user: dan tags: trunk
2018-07-22
21:23
Fix more harmless compiler warnings seen with MSVC. check-in: edab5666 user: mistachkin tags: trunk
21:08
Another minor revision to the 'fulltestonly' set of tests. check-in: 61f8e2a4 user: mistachkin tags: trunk
20:24
Fix harmless compiler warning. check-in: ead4762d user: mistachkin tags: trunk
06:25
In the Win32 VFS, when truncating a file, unmap it first. check-in: 21510a66 user: mistachkin tags: trunk
00:45
Remove an unused branch in the FK logic. Closed-Leaf check-in: 523ff779 user: drh tags: dropViewNoStat
2018-07-21
23:15
In 'resetdb.test', close a database prior to trying to delete it. check-in: 45137053 user: mistachkin tags: trunk
2018-07-20
20:56
When dropping a view, skip trying to delete from 'sqlite_stat*'. check-in: 2f5be3a2 user: mistachkin tags: dropViewNoStat
19:24
Change the SQLITE_Stat34 bit of the optimization test-control so that it prevents STAT4 data from being used but allows it to be loaded into the Index objects. This permits STAT4 to be turned on and off on a per-statement basis. check-in: 489f3caf user: drh tags: trunk
15:44
New checks in PRAGMA integrity_check to validate the autovacuum settings in the header. check-in: a4663f09 user: drh tags: trunk
13:39
Enhanced detection of problems on the freelist and on overflow list in PRAGMA integrity_check. check-in: 11e58f5b user: drh tags: trunk
2018-07-19
15:27
Avoid a branch in the commit logic that is unreachable when compiled without SQLITE_ENABLE_BATCH_ATOMIC_WRITE. check-in: 271b8980 user: drh tags: trunk
14:40
Allow the VACUUM following SQLITE_DBCONFIG_RESET_DATABASE to proceed even if the write-version in the header indicates that the database file is not writable. check-in: 3dca8b9d user: drh tags: trunk
11:44
Experimental fix for resetting databases that have been deemed read-only due to a corrupt "read-version" header field. Closed-Leaf check-in: e2394002 user: dan tags: exp-dbreset-fix
2018-07-18
19:09
Add the SQLITE_FCNTL_DATA_VERSION file control check-in: a5087c5c user: drh tags: trunk
17:37
Fix a harmless compiler warning in the pager. Enhance the docs for sqlite3_changes() and sqlite3_total_changes() to refer to the data_version pragma. check-in: 4c70ea5b user: drh tags: trunk
2018-07-17
14:01
If an SQLITE_IOERR error is encountered as part of an atomic commit on an F2FS file-system, retry the commit in legacy journal mode. check-in: 2e0357c2 user: dan tags: trunk
13:55
Fix for builds without SQLITE_ENABLE_BATCH_ATOMIC_WRITE. Closed-Leaf check-in: b10ec14e user: dan tags: exp-retry-atomic-commit
2018-07-16
20:44
Add new file doc/F2FS.txt, containing notes on the way SQLite uses the F2FS atomic commit feature. check-in: 59efb1bf user: dan tags: exp-retry-atomic-commit
11:32
Minor simplification to sqlite3RollbackAll(). check-in: 432fdc22 user: drh tags: trunk
2018-07-14
20:25
If an SQLITE_IOERR error is encountered as part of an atomic commit on an F2FS file-system, retry the commit in legacy journal mode. check-in: 1c41250f user: dan tags: exp-retry-atomic-commit
2018-07-13
20:28
Remove an unused function declaration from fts5. check-in: 148d9b61 user: dan tags: trunk
19:52
Add the "categories" option to the unicode61 tokenizer in fts5. check-in: 80d2b9e6 user: dan tags: trunk
2018-07-12
19:14
Add a test-control to disable the skip-scan optimization. check-in: 650a3fe0 user: dan tags: trunk
11:28
Add a test case to check that SQLITE_DBCONFIG_RESET_DATABASE can be used with wal mode databases even if there are active readers. check-in: 6145f5b3 user: dan tags: trunk
2018-07-11
13:34
On an UPSERT when the order of constraint checks is rearranged, make sure that the affinity transformations on the inserted content occur before any of the constraint checks. Fix for ticket [79cad5e4b2e219dd197242e9e5f4e]. check-in: d120c45f user: drh tags: trunk
03:27
Adjustments to VdbeCoverage macros to deal with byte-code branches that can never be taken in some directions. check-in: b170c009 user: drh tags: trunk
2018-07-10
23:31
Remove incorrect ALWAYS() macros from the window function logic. check-in: 94ac51cc user: drh tags: trunk
22:24
Add VdbeModuleComment()s on the three main code generators for window functions. check-in: f7c239e9 user: drh tags: trunk
20:50
Minor comment changes. Add ALWAYS() macros on some unreachable branches in the xStep() methods of built-in window functions. check-in: f2057542 user: drh tags: trunk
19:48
Identify Select objects within a single statement using small sequential integers rather than "0x%p". This is more readable and yields the same result on successive runs. check-in: a7cdc5bc user: drh tags: trunk
18:50
Modify tests in window3.test to be tolerant of rounding errors when comparing floating point values. check-in: 7c26c443 user: dan tags: trunk
17:26
Fix a problem with using scalar sub-selects in window function queries. check-in: 687fe532 user: dan tags: trunk
17:10
Further improvements to bytecode branch testing. Fix cases where the macros said a branch could not be taken when in fact it could be. Alter some window function branch coverage macros to indicate that comparison operands cannot be NULL. check-in: 76e42b70 user: drh tags: trunk
16:04
Enhancements and improved documentation to the byte-code branch coverage testing logic. Provide new macros that allow the code to specify that some branch instructions can never take the NULL path and that the OP_Jump opcode is only interested in equal/not-equal. The SQLITE_TESTCTRL_VDBE_COVERAGE file control callback now works slightly differently (it provides the callback with a bitmask of the branch action, rather than an integer). check-in: cd2da7e1 user: drh tags: trunk
07:39
Fix a harmless warning about comment formatting in the previous check-in. Simplify the ORDER BY dereferencing logic so that it avoids unreachable branches. check-in: 0f6ec605 user: drh tags: trunk
07:25
Assert that if two functions compare equal in every other way, then they must both have OVER clauses, or neither has an OVER clause. Use this fact to simplify expression comparison. check-in: 52559ad5 user: drh tags: trunk
06:47
Enhance the sqlite3ExprCompare() routine so that it knows to compare the OVER clause of window functions. check-in: 0a7649af user: drh tags: trunk
06:32
Enhance the TreeView mechanism so that it shows the window function data structures as part of the abstract syntax tree. check-in: a2c0e1be user: drh tags: trunk
05:11
New VDBE comments and coverage macros. check-in: a9a30726 user: drh tags: trunk
2018-07-09
22:49
Fixes for various harmless compiler warnings. check-in: 5023b1b8 user: drh tags: trunk
20:58
Add a comment to restriction (6) of the push-down optimization. No changes to code. check-in: 0c8a2f25 user: drh tags: trunk
20:41
Add an ALWAYS() around a branch in sqlite3BtreeSkipNext() that we believe must always be true. check-in: 12be361a user: drh tags: trunk
18:55
Avoid leaving view-definitions with an incomplete set of column names/types in the in-memory schema if an OOM strikes while allocating the same. check-in: 1ddbb537 user: dan tags: trunk
18:11
Add a couple of OOM tests. check-in: 50de2a0d user: dan tags: trunk
17:33
Remove redundant branches in window function processing. check-in: 8fdaf3f3 user: drh tags: trunk
16:24
Simplification to the grammar rules for window functions. Fix a memory leak that can follow an OOM while parsing a comma-separated list of window definitions. check-in: a568f9c9 user: drh tags: trunk
13:31
Throw an error if the second argument passed to nth_value() is not a positive integer. check-in: 1a06e57a user: dan tags: trunk