/ Timeline
Login

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

100 most recent check-ins that include changes to files matching 'src/*'

2019-08-20
11:43
Retain the affinity of an expression in a WHERE clause when it is transformed to a reference to an index column on the same expression. Fix for [f043b113]. Leaf check-in: 511da081 user: dan tags: trunk
02:19
Fix a typo and a harmless compiler warning. check-in: ec4c63e0 user: mistachkin tags: trunk
2019-08-19
20:44
Add the sqlite3_drop_modules() interface. check-in: e2c6fed8 user: drh tags: trunk
20:35
Omit the "_except" term from the name of the new interface. Closed-Leaf check-in: e5ba47c2 user: drh tags: sqlite3_drop_modules_except
19:59
Fix problems with window frames that use ORDER BY ... NULLS LAST etc. Leaf check-in: 75d665a4 user: dan tags: nulls-last
17:26
Prevent NULLS FIRST/LAST from being used in CREATE INDEX and other statements. check-in: bb9767a2 user: dan tags: nulls-last
2019-08-17
19:45
The experimental sqlite3_drop_modules_except() interface. check-in: 0851db4d user: drh tags: sqlite3_drop_modules_except
19:31
Fix the new ability to unregister virtual table modules so that it works for the automatic PRAGMA virtual tables. check-in: 5d6f4dfe user: drh tags: trunk
19:13
When populating an ephemeral b-tree for the RHS of an IN(...) clause, avoid applying an affinity to a value that may be used later on for some other purpose. Fix for [c7a117190]. check-in: 43e8b143 user: dan tags: trunk
17:55
Fix problem with DESC indexes on this branch. check-in: b49df1fe user: dan tags: nulls-last
17:07
Ensure the functions that appear to be constant are not factored out of expression that originate on the right-hand side of a LEFT JOIN. Ticket [6710d2f7a13a2997] check-in: 500c9152 user: drh tags: trunk
15:47
Merge trunk changes into this branch. check-in: db1e6080 user: dan tags: nulls-last
15:27
Activate introspection pragmas by default. The new option SQLITE_OMIT_INTROSPECTION_PRAGMAS must be provided to keep them out. check-in: 9c4bca64 user: drh tags: trunk
00:53
The SQLITE_DIRECTONLY flag, when added to sqlite3_create_function() prevents the function from being used inside a trigger or view. check-in: de767376 user: drh tags: trunk
2019-08-16
22:58
Add the ability to unregister a virtual table module by invoking sqlite3_create_module() with a NULL sqlite3_module pointer. check-in: 31e34fa3 user: drh tags: trunk
21:07
Add support for using indexes for some ORDER BY clauses that use non-default NULL handling. Still some problems on this branch. check-in: 81069d71 user: dan tags: nulls-last
2019-08-15
23:11
Fix harmless compiler warnings in the TCL interface. check-in: f17e7229 user: drh tags: trunk
21:27
Add the SQLITE_DBCONFIG_ENABLE_VIEW option, together with a "db config" command in the TCL interface that can access that option as well as all the other sqlite3_db_config() boolean options. check-in: 61b4bccd user: drh tags: trunk
20:04
Provide the SQLITE_DIRECTONLY flag for app-defined functions that prohibits the use of those functions within triggers or views. Closed-Leaf check-in: fc745845 user: drh tags: directonly
14:35
Ensure that the optional "sz=N" parameter that can be manually added to the end of an sqlite_stat1 entry does not have an N value that is too small. Ticket [e4598ecbdd18bd82] check-in: 98357d8c user: drh tags: trunk
13:53
Ensure that SQLite does not attempt to process incompatible window functions in a single scan. Fix for [256741a1]. check-in: 4f5b2d93 user: dan tags: trunk
13:46
Avoid downgrading SQLITE_CORRUPT errors detected by the schema parser into SQLITE_NOMEM or SQLITE_ERROR errors. check-in: b2e79f8f user: drh tags: trunk
13:17
Ensure that the cell overwrite optimization does not overwrite the header of the b-tree page. check-in: 4cc5694c user: drh tags: trunk
00:04
Early detection out-of-bounds page numbers on the direct-overflow-read optimization gives consistent error messages regardless of whether or not the optimization is enabled. check-in: b517a52f user: drh tags: trunk
2019-08-14
15:17
Always check for reads past the end of the file on the in-memory journal driver. This used to be an assert(). check-in: 4d41ca7d user: drh tags: trunk
2019-08-13
15:22
Merge latest trunk changes with this branch. Leaf check-in: 5b4689d8 user: dan tags: reuse-schema
2019-08-12
18:26
Make sure the btree cursor overflow cache is cleared when overwriting a cell in sqlite3BtreeInsert(). Ticket [3cf9bb227e9a5d32] check-in: 7dae7b96 user: drh tags: trunk
16:36
Experimental implementation of NULLS FIRST/LAST. This branch still has problems - the most significant of which is that ORDER BY clauses with a non-default NULLS FIRST/LAST qualifier can never use an index. check-in: 07babb0f user: dan tags: nulls-last
16:25
For the ".testctrl prng_seed" command in the CLI, if the argument is "random" then select a random integer seed and print the seed value on stdout. check-in: 636ca447 user: drh tags: trunk
15:19
Make the sha3 extension part of the amalgamation, enabled using SQLITE_ENABLE_SHA3. check-in: a48a7b78 user: drh tags: sha3
14:17
Add a TESTCTRL that disables the verification of type, name, and tbl_name in the sqlite_master table. check-in: 48d9b48a user: drh tags: trunk
00:08
Validate the type, name, and tbl_name fields of the sqlite_master table when loading the schema, unless writable_schema is engaged. check-in: 724f4df9 user: drh tags: trunk
2019-08-10
15:06
Fix the sqliteExprImpliesExpr() routine so that it recognizes that "(NULL IS FALSE) IS FALSE" doe not imply "NULL NOT NULL". Ticket [9080b6227fabb466] check-in: da01ba4f user: drh tags: trunk
14:16
Remove two incorrect assert() statements from the logic used to derive column names and types from subqueries. check-in: 712e4771 user: drh tags: trunk
2019-08-09
20:26
Allow the RHS of a row-value IN operator to use a compound query with an ORDER BY clause. check-in: eaf15d9b user: drh tags: trunk
14:54
In shared-schema mode, handle the case where a connection has created a virtual-table object, but is later assigned a different shared-schema object for which the virtual-table schema has not yet been initialized. check-in: e30c7414 user: dan tags: reuse-schema
01:59
Modify signature of sqlite3VdbeChangeOpcode() to accept int instead of u32. check-in: 68b7f2ac user: mistachkin tags: trunk
01:11
Fix more compiler warnings. check-in: 1b85442b user: drh tags: trunk
2019-08-08
19:40
Fix harmless compiler warnings. check-in: 1eef4dde user: drh tags: trunk
19:19
Remove support for SQLITE_ENABLE_STAT3. The sqlite_stat3 table is now ignored, if it exists. Run ANALYZE using STAT4 to get the equivalent functionality, which presumably everybody has been doing for a long time now. check-in: f1cd234c user: drh tags: trunk
18:49
Fix a case of the Expr.affinity to Expr.affExpr refactor that was missed in the [a29f2a7d07beff64] check-in. check-in: 83450d10 user: drh tags: trunk
16:23
More legacy STAT3 code removed. Closed-Leaf check-in: 845d2f17 user: drh tags: omit-stat3
15:47
Fix spurious "no such table: x1" errors in shared-schema mode that could occur when a query that is a join across two or more databases needs to call the xConnect() methods of a virtual table. check-in: edf45cd7 user: dan tags: reuse-schema
15:24
Remove support for STAT3. The sqlite_stat3 tables are ignored, if they exist. STAT4 continues to work as it always has, and as it is a superset of STAT3 is the recommended replacement. check-in: 1e17ea2f user: drh tags: omit-stat3
11:44
Fix a bug causing "no such table" and other similar sqlite3_prepare*() errors to return SQLITE_SCHEMA instead of SQLITE_ERROR in shared-schema mode when there is an attached database for which the schema has never been loaded. check-in: 111e2c73 user: dan tags: reuse-schema
01:39
Remove a NEVER() that is reachable from a corrupt database. check-in: 30e6ee27 user: drh tags: trunk
2019-08-07
17:45
Eliminate some more cases of redundant sorting in window-function queries. check-in: 8158d2ac user: dan tags: trunk
13:25
Do not make SQLITE_READ authorizer calls for tables without names, as all such tables will be internal-use-only tables for subqueries and whatnot. check-in: 193c87fc user: drh tags: trunk
2019-08-06
21:16
Ensure that when the col in an operator like "val IN(col)" is a column of a view, its affinity is not used to coerce val. Fix for [0a5e2c1d]. check-in: 17b3d221 user: dan tags: trunk
20:55
Improved reuse of file descriptors for which close() is delayed to prevent clearly of posix advisory locks. check-in: 509c1ba2 user: drh tags: trunk
20:26
Enhance the ".recover" output in the shell to use double-quotes around table and column identifiers. check-in: 846d2d2d user: drh tags: trunk
18:40
Add "PRAGMA foreign_keys=OFF;" to the start of the script output by ".recover", just as is done for ".dump". check-in: bfc29e62 user: dan tags: trunk
15:32
Ensure that columns of views and sub-queries that are expressions with no affinity are comparied without any type conversions, as required in the documentation. Tickets [61c853857f40da49] and [d52a29a9e6bc55c5]. check-in: 9c8c1092 user: drh tags: trunk
15:18
Performance optimization to the new affinity handling logic. Closed-Leaf check-in: c9724e76 user: drh tags: pending
14:37
Use 0x40 (ASCII '@') instead of 0x00 to mean "no affinity" so that columns with no affinity can appear in a zero-terminated string. Use the new SQLITE_AFF_NONE macro for this new magic number. check-in: e8234f69 user: drh tags: pending
11:45
Add an assert() to the code on this branch. check-in: fdd44bbb user: dan tags: reuse-schema
2019-08-05
20:53
Ensure that columns of views and sub-queries that are expressions with no affinity are not assigned BLOB affinity. This matches the documentation. Fix for [61c853857f40da49]. (On a branch because there are still subtle issues.) check-in: e15a0977 user: dan tags: pending
19:44
Fix the patch on this branch so that it works with sub-queries, as well as views. check-in: 7480db30 user: dan tags: tkt-61c853-A
19:34
The second option for [61c853857f40da49]: In this mode, columns of VIEWs and subqueries that are formed by expressions have affinity BLOB rather than affinity none, as has usually been the case for a while. But this mode fixes a couple of corner cases involving query flattening and the push-down optimization where that rule was violated. Closed-Leaf check-in: 470ac8d5 user: drh tags: tkt-61c853-B
19:32
One of two options on how to address ticket [61c853857f40da49]. In this mode, we back out the documentation change of [07b7749da88d54e5] and change the core to work as it has been documented to work since 2017, rather than how it has actually worked since 2009. check-in: 09cd0c0c user: drh tags: tkt-61c853-A
18:01
Refactor field Expr.affinity into Expr.affExpr to avoid confusion with other fields and variables named "affinity" and display affExpr it in sqlite3TreeViewExpr() output. check-in: a29f2a7d user: drh tags: trunk
16:22
Improved detection of corruption on the freeblock list of a btree page. check-in: 4b00799b user: drh tags: trunk
13:19
Fix a problem with renaming a table when a view or trigger within the schema uses a FILTER with an aggregate function that is not currently registered with the database. check-in: 2ac0e42f user: dan tags: trunk
2019-08-03
19:06
Strengthen an assert() in the WHERE clause code generator for the min/max optimization. check-in: 1bd4b97d user: drh tags: trunk
16:37
Fix a problem with queries of the form "SELECT min(<expr>) ... WHERE <expr>=?" where there is an index on <expr>. Fix for [71e183ca]. check-in: d465c3ee user: dan tags: trunk
16:17
In the ".wheretrace 0x100" debugging mode, show the structure of the main parameters to sqlite3WhereBegin() calls. check-in: fd598e47 user: drh tags: trunk
01:40
Add the SQLITE_TESTCTRL_PRNG_SEED which can control the PRNG seed either directly or through the schema cookie of a supplied database connection. check-in: 2660e929 user: drh tags: trunk
01:39
Give the SQLITE_TESTCTRL_PRNG_SEED two arguments. The second argument if not NULL is a pointer to a database connection which seeds the connection from its schema cookie. In this way, fuzzers can control the PRNG seed. Closed-Leaf check-in: 49aa3448 user: drh tags: prng-seed-test-control
2019-08-02
21:03
Fixes to the PRNG_SEED pragma idea. check-in: c7109840 user: drh tags: prng-seed-test-control
20:45
Add the SQLITE_TESTCTRL_PRNG_SEED test control. check-in: 3ac57231 user: drh tags: prng-seed-test-control
19:40
If a query like "SELECT min(a), b FROM t1" visits no rows where "a" is not null, extract a value for "b" from one of the rows where "a" is null. Fix for ticket [41866dc37]. check-in: faaaae49 user: dan tags: trunk
18:43
If a query like "SELECT min(a), b FROM t1" visits no rows where "a" is not null, extract a value for "b" from one of the rows where "a" is null. Possible fix for ticket [41866dc37]. Closed-Leaf check-in: a7277ed0 user: dan tags: tkt-41866dc37
2019-08-01
22:48
The sqlite3_set_authorizer() interface should only expire prepared statements when it is setting a new authorizer, not when clearing the authorizer. And statements that are running when sqlite3_set_authorizer() is invoked should be allowed to continue running to completion. check-in: 961e2f08 user: drh tags: trunk
10:58
Fix a problem in ALTER TABLE triggered by views or triggers that include the construction "ORDER BY true" or "ORDER BY false". check-in: 8168021f user: dan tags: trunk
2019-07-30
21:00
Fix the build for when -DSQLITE_SMALL_STACK is used. check-in: b9eda224 user: drh tags: trunk
14:22
Improved fix for ticket [ced41c7c7d6b4d36] that keeps skip-scan enabled, but avoids identifying a skip-scan as order-distinct (because it is not) and thus forces a separate b-tree to implement the DISTINCT clause of a query. This undoes check-in [a871d69c6de65038] and substitutes a new fix. check-in: 89bf0399 user: drh tags: trunk
01:17
Disable the skip-scan optimization for DISTINCT queries. Fix for ticket [ced41c7c7d6b4d36] check-in: a871d69c user: drh tags: trunk
2019-07-29
15:32
When using an index for both DISTINCT and ORDER BY, do not confuse the number of columns required for distinctness with the number required to get the correct sort order. Fix for [6749cb3c]. check-in: 6ac0f822 user: dan tags: trunk
14:42
When using an index for both DISTINCT and ORDER BY, do not confuse the number of columns required for distinctness with the number required to get the correct sort order. Fix for [6749cb3c]. Closed-Leaf check-in: b4716931 user: dan tags: tkt-6749cb3c
06:06
Fix the OP_Affinity operator so that when applying REAL affinity, it only sets MEM_IntReal if the integer value will fit in 6 bytes or less. Fix for ticket [ba2f4585cf495231] check-in: 2b221bb1 user: drh tags: trunk
05:23
Fix a minor typo in a comment. check-in: cea8a892 user: drh tags: trunk
2019-07-26
20:54
Merge latest changes from trunk into this branch. check-in: 7f1e4e4b user: dan tags: reuse-schema
2019-07-24
23:15
Fix faulty asserts in the code generator. Ticket [c52b09c7f38903b1] check-in: 01cdc590 user: drh tags: trunk
20:10
Improve the ".recover" command so that it handles intkey pages linked into non-intkey b-trees, and vice-versa, better. check-in: 9c458acb user: dan tags: trunk
19:20
Improve the ".recover" command's handling of corrupt database schemas. check-in: becaaa4d user: dan tags: trunk
08:15
Improve the ".recover" command in the shell tool so that it is not confused by auto-vacuum databases. And so that it can recover tables for which one or more of the column names are SQL keywords. check-in: 87d76047 user: dan tags: trunk
2019-07-22
23:30
Do not use the insert-overwrite optimization if the cell might overwrite the page header. Leaf check-in: 9991626b user: drh tags: branch-3.29
23:24
Do not use the insert-overwrite optimization if the cell might overwrite the page header. check-in: f60a8306 user: drh tags: trunk
19:01
Consolidate the removal of Window objects from the Select.pWin list into a single subroutine. check-in: e46b2afc user: drh tags: trunk
17:28
Fix a bug in the linked-list handling code added by commit [fd7316cd]. check-in: 05080344 user: dan tags: trunk
16:33
Remove Window objects from the corresponding Select.pWin list when they are deleted, as they are, for example, when the ORDER BY clause is optimized out. check-in: fd7316cd user: dan tags: trunk
16:20
Remove Window objects from the corresponding Select.pWin list when they are deleted. Closed-Leaf check-in: d23f3316 user: dan tags: winfunc-in-orderby
11:38
Fix a problem with renaming tables when the schema contains an invocation of a currently unregistered aggregate with a FILTER clause. check-in: bd37ce3f user: dan tags: trunk
2019-07-20
21:12
Make sure any window definitions in an ORDER BY clause are removed from the SELECT statement if the ORDER BY clause gets optimized out. check-in: 23b11967 user: drh tags: winfunc-in-orderby
2019-07-19
15:00
Refinement to check-in [348e7f193a963390] that avoids unreachable branches. check-in: bbfb2908 user: drh tags: trunk
14:32
Fix a problem with renaming a table when the schema contains an invocation of a window function that is not currently registered. check-in: ff290feb user: dan tags: trunk
11:20
Fix a problem with renaming tables when the schema contains WINDOW definitions with (illegal) non-numeric expressions as part of a PRECEDING or FOLLOWING clause. check-in: 348e7f19 user: dan tags: trunk
10:31
Fix a faulty assert() in walker.c that could fail when processing an ALTER TABLE statement on a schema containing invalid table references that are part of a WINDOW definition. check-in: ee076c28 user: dan tags: trunk
01:25
Fix a new problem in the BETWEEN operator when applied to a window function. The problem was introduced yesterday by check-in [7ef7b23cbb1b9ace]. This cherry-pick also needed to remove an assert from sqliteExprDelete(). check-in: ce6bf395 user: drh tags: branch-3.29
01:11
Fix a new problem in the BETWEEN operator when applied to a window function. The problem was introduced yesterday by check-in [7ef7b23cbb1b9ace]. check-in: 47e23064 user: drh tags: trunk