SQLite

Timeline
Login

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

100 check-ins occurring around fb9074ff450a67fe.

2019-01-30
19:50
Change the error message slightly for when two or more indexes have the same rootpage. (check-in: 916c52dad4 user: drh tags: trunk)
19:12
When parsing the schema, check for duplicate index root page numbers before adding the index to the schema hash table. (check-in: 6b360bc0b9 user: dan tags: trunk)
18:47
Add test case for the previous commit. (check-in: 197edb235b user: dan tags: trunk)
18:33
Detect if two indexes of the same table share a common rootpage while parsing the schema, and throw an error immediately. (check-in: f21c6f1343 user: drh tags: trunk)
16:58
Fix an off-by-one error when parsing the names of indexes that do not have arguments in the index_usage utility. (check-in: dc794d8f51 user: drh tags: trunk)
15:47
Add the --progress, --using, and -q options to the index_usage utility program. (check-in: a5e6be7cbc user: drh tags: trunk)
14:01
Enhancements to the index_usage utility program. (check-in: 19c739b4a8 user: drh tags: trunk)
12:15
Fix another buffer overread in fts5 that may occur when accessing a corrupt database. (check-in: 760d14374d user: dan tags: trunk)
2019-01-29
19:17
Merge enhancements from trunk. (check-in: 31efcc3775 user: drh tags: apple-osx)
16:54
Fix harmless compiler warnings. (check-in: 9a93c68a76 user: drh tags: trunk)
16:47
Load all the latest dbsqlfuzz finds into test/fuzzdata8.db. (check-in: e744d2dd93 user: drh tags: trunk)
16:41
More robust handling of corrupt database file in the rebalance operation of the btree logic. (check-in: 97704cb7d2 user: drh tags: trunk)
16:34
Avoid an integer overflow in the fts5 snippet() function triggered by a corrupt database record. (check-in: 7c862c4655 user: dan tags: trunk)
15:30
Avoid a crash when the fts5 snippet() function (or similar) is used with a special query pattern, like '*id' or '*reads'. (check-in: 9d58a15737 user: dan tags: trunk)
11:42
Fix a buffer overrun triggered by a merge operation on a corrupt fts5 database. (check-in: 7ee3cd5b2c user: dan tags: trunk)
02:37
Set a low limit on the length of strings and blobs in the OSSFuzz module, in an effort to avoid timeouts when the fuzzer does things like "randomblob(1e12)". (check-in: 119d1609fa user: drh tags: trunk)
2019-01-28
19:06
Fix the query planner so that it is able to use an index on a CAST expression. (check-in: 2c886f3d49 user: drh tags: trunk)
18:58
Fix a performance regression caused by the previous commit. (Closed-Leaf check-in: c4db0ad12d user: drh tags: index-on-cast)
18:08
Make indexes on CAST(...) expressions work. (check-in: 3ef711d98f user: dan tags: index-on-cast)
16:50
Fix a buffer overread in fts3 that could occur when accessing a corrupt database. (check-in: a9faf90339 user: dan tags: trunk)
13:27
Do not assume that text parameters passed to fts4aux queries do not contain embedded nul characters. (check-in: df04859a99 user: dan tags: trunk)
11:54
Add a new test case to fuzzdata8.db. (check-in: ce8e279a7d user: drh tags: trunk)
00:42
Change the definition of the BtCursor.skipNext field so that it is undefined for states CURSOR_VALID and CURSOR_INVALID. (check-in: 6089d5dba7 user: drh tags: trunk)
2019-01-27
19:50
Improvements to the ".eqp trace" command in the CLI so that it ensures that the schema has been read prior to activing the tracing feature, to avoid cluttering the output with a trace of the schema parse. (check-in: 42687d45aa user: drh tags: trunk)
02:45
New test cases form dbsqlfuzz (check-in: 9cf8ebd141 user: drh tags: trunk)
02:41
Window functions that can abort should indicate this, so that if they are used in DML statement, a statement journal will be used. (check-in: 0ea05a0eb9 user: drh tags: trunk)
01:11
Update fuzzcheck so that with the --load-dbsql options it screens its inputs to ensure that they are valid dbsqlfuzz cases. Add new dbsqlfuzz finds to the test/fuzzdata8.db database. (check-in: 004f7d9bbe user: drh tags: trunk)
2019-01-26
23:34
Ensure that the btree cursor is correctly set up prior to backing it up as part of a delete operation on a divider cell in an index. (check-in: a3ea1a822d user: drh tags: trunk)
21:05
Fix a broken assert() in fts3. Also some test script issues causing failures with builds that do not support fts3. (check-in: d59567dda2 user: dan tags: trunk)
20:41
Fix another typo in fts3_common.tcl causing test failures in builds that do not support fts3. (Closed-Leaf check-in: 773b598608 user: dan tags: rollback-abort)
20:35
Fix a typo in fts3corrupt4.test causing it to fail if the build does not support fts3. (check-in: 5016303421 user: dan tags: rollback-abort)
19:09
Fix a broken assert() in fts3. (check-in: b8dd2d67b5 user: dan tags: rollback-abort)
18:10
If a write statement fails with OE_Abort, but there is no statement journal, roll the entire transaction back instead. (check-in: 75a8ed7a42 user: dan tags: rollback-abort)
17:47
Fix "PRAGMA journal_mode" so that if it fails because there is a transaction open, it does not roll that transaction back. (check-in: 9f39cb5b81 user: dan tags: rollback-abort)
16:34
Roll back the transaction if a write statement fails with OE_Abort but there is no open statement transaction. (check-in: d536be698d user: dan tags: rollback-abort)
15:40
Add the ".eqp trace" command to the CLI when using SQLITE_DEBUG, as a convenient shorthand for "PRAGMA vdbe_debug=ON" but with automatic indentation feature for program listings provided by the CLI. (check-in: 626502faa1 user: drh tags: trunk)
2019-01-25
20:09
Do not accidently truncate zeroblob values when doing an arithmetic operation. Fix for ticket [bb4bdb9f7f654b0bb9f34cfba]. (check-in: 13f6942eb0 user: drh tags: trunk)
19:29
Reinitialize debugging information on registers of a trigger prior to each invocation of the trigger. This prevents false-positives from the sqlite3VdbeMemAboutToChange() test logic. (check-in: 98b3b97573 user: drh tags: trunk)
18:17
Fix harmless compiler warnings. (check-in: 3ff220ad37 user: drh tags: trunk)
18:17
Fix the assert_fts3_nc() macro so that it works for test builds that omit SQLITE_DEBUG. (check-in: b10df2b569 user: drh tags: trunk)
17:51
Fix harmless compiler warnings in fuzzcheck (check-in: a825396657 user: drh tags: trunk)
17:26
Fix a segfault that could follow an OOM when querying a table that has one or more columns with default values "true" or "false". (check-in: 202f9919c2 user: dan tags: trunk)
16:54
Fix asan warnings in fts5 triggered by corrupt databases - passing NULL to memcmp, out-of-range left-shift values and signed integer overflow. (check-in: 93f8ec146d user: dan tags: trunk)
14:48
Add an assert_fts3_nc() macro to fts3 - for assert() conditions that are only true when it is guaranteed that the fts3 database is not corrupt. (check-in: 3498908cd7 user: dan tags: trunk)
14:23
Extend fuzzcheck so that it can process dbsqlfuzz cases. Add a collection of interesting dbsqlfuzz cases to the standard test suite. (check-in: e2991a7ecf user: drh tags: trunk)
14:16
Fix the xFetch method of the "memdb" VFS (used by deserialize) so that it is robust against corrupt database file. (Closed-Leaf check-in: 2c1ef40e78 user: drh tags: dbsqlfuzz-in-fuzzcheck)
13:42
Fix a couple of assert() statments in btree.c that could fail with corrupt databases. (check-in: 5eb5e8289f user: dan tags: trunk)
13:03
In fuzzcheck, activate vdbe_debug for dbsqlfuzz cases when using the -vvvvv verbosity level or above. (check-in: 2e6f7c2ace user: drh tags: dbsqlfuzz-in-fuzzcheck)
04:43
Improved automatic detection of dbsqlfuzz cases in fuzzcheck. (check-in: 1ef24e89c9 user: drh tags: dbsqlfuzz-in-fuzzcheck)
04:00
Add the ability to process dbsqlfuzz cases in fuzzcheck and add an initial set of interesting dbsqlfuzz cases. (check-in: fb9074ff45 user: drh tags: dbsqlfuzz-in-fuzzcheck)
2019-01-24
17:41
Fix a buffer overread in fts3 that could occur in a prefix query on a corrupted database. (check-in: d0d5689371 user: dan tags: trunk)
16:51
While PRAGMA full_column_names is off (the default) do not make changes to the short_column_names pragma when computing the column names for subqueries. (Leaf check-in: 718ead555b user: drh tags: literal-column-names)
16:27
Fix a problem with running ALTER TABLE on a schema that contains expressions of the type "col IN ()" (empty set on RHS of IN operator). (check-in: 2d9cd06715 user: dan tags: trunk)
16:07
Omit deprecated PRAGMAs when compiling with the -DSQLITE_OMIT_DEPRECATED option. (check-in: 008112bcef user: drh tags: trunk)
15:51
Make sure the column name flags are restored correctly after an error inside of sqlite3ResultSetOfSelect(). (check-in: b1601db7ad user: drh tags: trunk)
15:16
Fix a potential problem with "INSERT INTO ... SELECT * FROM" (or VACUUM) statements on a corrupted database. (check-in: db4b4c2c1e user: dan tags: trunk)
14:16
Change a integer variable in sqlite3VdbeRecordUnpack() to unsigned in order to avoid any possibility of an integer overflow. (check-in: 1b536f6fd8 user: drh tags: trunk)
13:36
Use memmove() instead of memcpy() in a place where buffers might overlap if the database file is badly corrupted, to prevent warnings from ASAN and valgrind. (check-in: 65ad6c55f1 user: drh tags: trunk)
04:44
Remove an unreachable branch. (check-in: 4c976f1713 user: drh tags: trunk)
2019-01-23
20:31
Fix an assert() in vdbemem.c that could fire if the database was corrupt. (check-in: a70958cd7d user: dan tags: trunk)
19:50
Fix a problem with renaming a table within a schema that contains a composite query that uses a column alias as an ORDER BY term. (check-in: 2ca6b8f84e user: dan tags: trunk)
19:25
Stricter enforcement of cell sizes when doing balancing operations on the btree, in order to catch file corruption sooner. (check-in: 12713f320b user: drh tags: trunk)
19:17
Fix another fts5 crash that can occur if the database is corrupted. (check-in: 44ce8baa47 user: dan tags: trunk)
16:59
Fix problems with sub-selects in WINDOW definitions. Also rename-column operations when the column being renamed appears in a WINDOW definition that is part of a VIEW or TRIGGER. (check-in: 0387cb3add user: dan tags: trunk)
12:19
Fix a buffer overwrite triggered by a prefix query on a corrupt fts5 table. (check-in: 1d8172a94b user: dan tags: trunk)
2019-01-22
21:17
Fix a buffer overrun that could occur in fts5 if a prefix query is made on a corrupt database. (check-in: 1abc441564 user: dan tags: trunk)
20:18
Do not run shmlock.test as part of the journaltest permutation. (check-in: 5b7d0c784e user: dan tags: trunk)
18:20
Add the SQLITE_ENABLE_EARLY_CURSOR_CLOSE compile-time option which causes read cursors to be closed after their usefulness ends during a two-pass UPDATE. (check-in: 8790368b4a user: mistachkin tags: branch-3.26)
16:44
Use _strdup() instead of strdup() on Windows builds of the CLI, to avoid a compiler warning reported on the mailing list. (check-in: a7126a4f4f user: drh tags: trunk)
16:43
Fix the SQLITE_DESERIALIZE_READONLY feature so that it does not cause an assertion fault in the pager. (check-in: b9eccef782 user: drh tags: trunk)
16:11
Update dbfuzz2 to set a maximum database size of 100MiB by default, but with the new --max-db-size N option to change that limit. (check-in: 21d6bb78ef user: drh tags: trunk)
16:06
Enhancements to deserialize: (1) Add the SQLITE_FCNTL_SIZE_LIMIT file control to set a maximum size for an in-memory database, defaulting to SQLITE_MEMDB_DEFAULT_MAXSIZE or 1GiB. (2) Honor the SQLITE_DESERIALIZE_READONLY flag. (3) Enhance the TCL interface to support -maxsize N and -readonly BOOLEAN. (4) Add the --maxsize option to the ".open" command and on the command-line for the CLI. (check-in: 30f08d5888 user: drh tags: trunk)
13:45
Make sure cursors are opened on all indexes for an UPDATE OR REPLACE regardless of whether or not the indexes are partial or contain columns that might need to be updated. (check-in: e148cdad35 user: drh tags: trunk)
12:21
Fix another segfault caused by a corrupt fts3 database. (check-in: ba3b841272 user: dan tags: trunk)
02:34
Ensure that a key comparison does not read a collating sequence past the end of the KeyInfo, even if the key field of an index is corrupted by having a string in the last column instead of the ROWID. (check-in: 058a8006dc user: drh tags: trunk)
2019-01-21
23:18
Enhance the btree search routine so that it does early detection of impossibly large keys and thereby avoids a large malloc() call. (check-in: 3ecaaee69f user: drh tags: trunk)
17:57
Avoid deferencing a freed pointer following an OOM or SQLITE_CORRUPT error in the fts3 xDestroy method. (check-in: 505ed9a478 user: dan tags: trunk)
16:12
Remove a faulty assert() from fts3. (check-in: 6c33a303eb user: dan tags: trunk)
16:01
Make sure the extra bytes allocated for the saved cursor position by check-in [160b1e31c0f27257] are initialized to zero. (check-in: 2737564929 user: drh tags: trunk)
14:55
Add the --memtrace option to the CLI. (check-in: a1e12fa2a8 user: drh tags: trunk)
14:49
Minor fix the fallocate.test module change from [7cd56cad5efead5] (check-in: 94fb7a4700 user: drh tags: trunk)
13:47
Add the --max-data and --max-as options to dbfuzz2. Also cause dbfuzz2 to show its maximum RSS size upon exit in standalone mode with the -v option. (check-in: 7ce93e824a user: drh tags: trunk)
2019-01-20
00:03
Add the --max-stack option to dbfuzz2. (check-in: c11ae4fed8 user: drh tags: trunk)
2019-01-19
15:55
Avoid a division-by-zero error in fts5 caused by a corrupt database. (check-in: 928e622178 user: dan tags: trunk)
15:27
Remove a broken assert() triggered by a "PRAGMA max_page_count = N" invocation, where N is larger than the number of pages in the database image, but smaller than the number of pages in the database file. (check-in: 7cd56cad5e user: dan tags: trunk)
14:07
Fix a problem with using ALTER TABLE to rename a table or column when the database schema contains a trigger or view that itself contains an expression "<column> AND 0". (check-in: 908ff7fffa user: dan tags: trunk)
2019-01-18
21:17
Fix a memory leak introduced by [55c5d72a]. (check-in: fbd681dce2 user: dan tags: trunk)
21:12
Fix a crash in the fts5vocab module caused by including a "term < NULL" term in a WHERE clause. (check-in: 9e717c4377 user: dan tags: trunk)
21:03
Fix an infinite loop caused by a corrupt database in fts3. Also an undefined left-shift in fts5. (check-in: 55c5d72af9 user: dan tags: trunk)
20:15
Avoid passing a NULL pointer to memcpy in fts5, even if the database is corrupt. (check-in: acccc9808f user: dan tags: trunk)
19:33
Typecasts added to the GeoPoly extension to avoid harmless UBSAN warnings. (check-in: a1f6a093ac user: drh tags: trunk)
19:26
Fix problems causing undefined left-shift operations in the fts3 snippet() function. (check-in: b90dbaed30 user: dan tags: trunk)
18:52
Avoid integer overflow when computing the array of a bounding box with the rtree_i32 virtual table. (check-in: b352f1590d user: drh tags: trunk)
17:53
Handle oversize floating point values carefully when converting to integers for the '%' binary operator. (check-in: 048add13fc user: drh tags: trunk)
16:06
Fix a fairly obscure problem allowing an "ALTER TABLE RENAME col TO ..." statement to modify the schema in such a way as to break a reference within a trigger program. (check-in: 64bec9e621 user: dan tags: trunk)
14:53
Use the full 64-bit integer value in the argument to randomblob(). (check-in: 05df5f7aea user: drh tags: trunk)
2019-01-17
20:19
Disable the xfer-optimization if the two tables have the same root page due to schema corruption. (check-in: f31b3bd2a6 user: drh tags: trunk)
20:06
Fix another corruption related crash in fts5. (check-in: 4538d9afe4 user: dan tags: trunk)
19:33
Add the SQLITE_ENABLE_EARLY_CURSOR_CLOSE compile-time option which causes read cursors to be closed after their usefulness ends during a two-pass UPDATE. (check-in: 7def6c8edd user: drh tags: trunk)
19:11
Fix a buffer overwrite that could occur when running an fts5 prefix query against a corrupt database. (check-in: 3910b5639d user: dan tags: trunk)