/ File History
Login

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

History of src/prepare.c

2019-08-15
13:46
Avoid downgrading SQLITE_CORRUPT errors detected by the schema parser into SQLITE_NOMEM or SQLITE_ERROR errors. file: [13248463] check-in: [b2e79f8f] user: drh branch: trunk, size: 31948
2019-08-13
15:22
Merge latest trunk changes with this branch. file: [ca7d06ce] check-in: [5b4689d8] user: dan branch: reuse-schema, size: 35285
2019-08-12
00:08
Validate the type, name, and tbl_name fields of the sqlite_master table when loading the schema, unless writable_schema is engaged. file: [1dcd92a5] check-in: [724f4df9] user: drh branch: trunk, size: 31927
2019-08-08
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. file: [786c5ea9] check-in: [111e2c73] user: dan branch: reuse-schema, size: 35103
2019-07-26
20:54
Merge latest changes from trunk into this branch. file: [3a891e51] check-in: [7f1e4e4b] user: dan branch: reuse-schema, size: 34985
2019-07-14
00:15
Mark an unreachable branch using ALWAYS(). file: [1fdf68a8] check-in: [0fff105a] user: drh branch: trunk, size: 31745
2019-07-05
19:10
Another very small performance improvement. file: [d633c361] check-in: [7a1e30a1] user: dan branch: filter-clause, size: 31535
2019-03-21
17:13
Disable the feature on this branch in non-SQLITE_ENABLE_SHARED_SCHEMA builds. file: [ed511015] check-in: [b8e53608] user: dan branch: reuse-schema, size: 34774
2019-03-20
20:02
Use the IsReuseSchema() macro more consistently. Also, rename it to IsSharedSchema(). file: [d5e6339a] check-in: [c1be211c] user: dan branch: reuse-schema, size: 34046
2019-02-20
18:44
Further test cases and fixes for SQLITE_OPEN_SHARED_SCHEMA. file: [48cea94d] check-in: [ba0ab042] user: dan branch: reuse-schema, size: 34091
2019-02-19
18:00
Improve error messages caused by corrupt database schemas in OPEN_SHARED_SCHEMA mode. file: [3e1c9aef] check-in: [8ac75b8a] user: dan branch: reuse-schema, size: 34024
2019-02-15
19:00
Fix a problem with eponymous virtual tables and SHARED_SCHEMA databases. Also, after preparing statements that require all database schemas (REINDEX, ANALYZE, CREATE, DROP and some PRAGMA statements), do not allow the database connection to return more than one schema to each schema-pool. file: [8335bb97] check-in: [ecf6251e] user: dan branch: reuse-schema, size: 33827
2019-02-14
18:38
Change the name of the SQLITE_OPEN_REUSE_SCHEMA flag to SQLITE_OPEN_SHARED_SCHEMA. file: [b7ef5c87] check-in: [7257fcc8] user: dan branch: reuse-schema, size: 33752
2019-02-12
19:20
Share schemas between databases attached to the same database handle. file: [c8bd9570] check-in: [ea611d7c] user: dan branch: reuse-schema, size: 33750
2019-02-11
19:34
Add eponymous virtual table "schemapool". For inspecting the current contents of the schema-pool. file: [c73b6ab0] check-in: [2ebeb747] user: dan branch: reuse-schema, size: 33699
2019-02-08
19:30
Add test cases and fix problems on this branch. file: [e9fcf4a4] check-in: [2b2e9f81] user: dan branch: reuse-schema, size: 33677
2019-02-07
18:49
Merge the offical 3.27.0 release. file: [58a6ad1d] check-in: [62829164] user: drh branch: apple-osx, size: 31824
2019-02-05
19:51
Merge latest trunk into this branch. file: [ca6afe2f] check-in: [c089cc4f] user: dan branch: reuse-schema, size: 33369
19:15
Fix memory leaks on this branch. file: [24812a79] check-in: [e9c5e189] user: dan branch: reuse-schema, size: 42117
2019-02-02
21:02
Try new approach ensuring that each Schema object is only used by one connection/database at any one time. file: [a1f7b15e] check-in: [9e8e5f52] user: dan branch: reuse-schema, size: 42201
2019-01-30
18:33
Detect if two indexes of the same table share a common rootpage while parsing the schema, and throw an error immediately. file: [78027c62] check-in: [f21c6f13] user: drh branch: trunk, size: 31534
2019-01-17
15:47
Sync up with the latest enhancements on trunk. file: [3948e356] check-in: [475a179a] user: drh branch: apple-osx, size: 31397
2019-01-10
14:33
More aggressive early detection of orphaned and malformed autoindexes when parsing the schema. file: [63b8395d] check-in: [10f9e39d] user: drh branch: trunk, size: 31107
2019-01-05
21:09
If the OP_ParseSchema opcode with a non-NULL P4 operand does not parse any rows out of the sqlite_master table, that indicates that the sqlite_master table is corrupt, so raise an SQLITE_CORRUPT error. file: [18f1d280] check-in: [598d7358] user: drh branch: trunk, size: 31372
2018-12-26
15:04
Here is the beginnings of an effort to factor out the implementation of scalar subqueries to be implemented as subroutines at the end of the main body of bytecode, after the jump back to the OP_Init opcode. This is an incremental check-in that contains only preliminary changes. file: [4fd8502d] check-in: [50e5f390] user: drh branch: factor-out-scalar-subselect, size: 31324
2018-12-21
19:29
Add new sqlite3_prepare_v3() flag SQLITE_PREPARE_NO_VTAB, for preparing statements that are not allowed to use any virtual tables. Use this to prevent circular references in triggers on virtual table shadow tables from causing resource leaks. file: [d0918fb8] check-in: [25666e3d] user: dan branch: prepare-no-vtab, size: 31326
2018-12-10
16:00
Refactor the sqlite3_normalized_sql() implementation. This is a work-in-progress. There are still issues. file: [0e8fc0de] check-in: [a4c890b0] user: drh branch: normalize-refactor, size: 31262
02:00
Merge enhancements from trunk. file: [0e9d4ae9] check-in: [b1bbc718] user: drh branch: apple-osx, size: 37413
2018-12-07
16:32
Fix the sqlite3_normalized_sql() interface so that it renders double-quoted string literals as "?". file: [be449edb] check-in: [0d8e1504] user: drh branch: trunk, size: 37123
2018-12-06
20:18
Experimental changes to (optionally) allow double-quoted strings to be checked against known identifiers. file: [91cc20f2] check-in: [73a6b8c1] user: mistachkin branch: normalize_v4, size: 40198
17:06
When masking bits off of sqlite3.flags, make sure the mask is 64 bits in size so as not to accidentally mask of high-order bits. file: [5fe8eb58] check-in: [53d3b169] user: drh branch: trunk, size: 37047
2018-12-05
23:56
Get rid of the hash table used to track IN operators in the sqlite3_normalized_sql() implementation. Use simple integer variables instead. file: [66b5f979] check-in: [272dc74f] user: drh branch: trunk, size: 37042
23:45
The sqlite3_normalized_sql() interface should not be transforming quoted identifier names into wildcards. Fix this, and at the same time simplify the code substantially. file: [90099721] check-in: [e8540377] user: drh branch: trunk, size: 37298
23:25
Bungled checkin. Ignore. file: [d6d8fb09] check-in: [9b6e9a6e] user: drh branch: mistake, size: 40267
21:55
Fix an imbalanced lock problem in sqlite3Normalize() introduced by the simplification in [94ea6379178e3ff6a]. file: [733d34a5] check-in: [f6962437] user: drh branch: trunk, size: 40236
18:28
Merge enhancements and the ALTER TABLE bug fix from trunk. file: [2a17c1ff] check-in: [edfc2acf] user: drh branch: apple-osx, size: 40514
17:48
Simplifications to the sqlite3_normalized_sql() implementation. file: [f77ebf81] check-in: [94ea6379] user: drh branch: trunk, size: 40224
13:39
Enhance the sqlite3_normalize_sql() interface so that it works even if the prepared statement was not initially compiled using SQLITE_PREPARE_NORMALIZED. Enhance the ".trace" command in the CLI so that it is able to access the full scope of functionality provided by sqlite3_trace_v2() and in particular so that it is able to show normalized SQL output using the newly enhanced sqlite3_normalize_sql() interface. file: [277c8af1] check-in: [7da617e9] user: drh branch: trunk, size: 39857
2018-11-20
16:02
Consolidate the two sqlite3SchemaToIndex() routines. file: [fc8c448c] check-in: [dfab7170] user: dan branch: reuse-schema1, size: 41861
2018-11-15
21:20
Fix some problems with the feature on this branch. Many problems remain. file: [b64a19ee] check-in: [31b6aee7] user: dan branch: reuse-schema1, size: 41902
2018-11-09
18:44
Merge latest trunk changes with this branch. file: [d728e403] check-in: [ae88f8e1] user: dan branch: reuse-schema, size: 41624
2018-11-06
13:37
Add enforcement of read-only on shadow tables. This does not currently work since some virtual tables are attempting to update shadow tables using sqlite3_exec(). file: [108bbf70] check-in: [f79b47c9] user: drh branch: read-only-shadow, size: 40357
2018-11-05
13:53
Merge recent trunk enhancements. file: [f0cc0876] check-in: [62acf7a0] user: drh branch: apple-osx, size: 40572
2018-10-31
19:01
Add support for the SQLITE_PREPARE_NORMALIZED flag and the sqlite3_normalized_sql() when compiling with SQLITE_ENABLE_NORMALIZE. Also remove unnecessary whitespace from Makefiles. file: [f81f8d70] check-in: [790ea39a] user: drh branch: trunk, size: 40282
01:26
Merge fixes from trunk, especially rebustness against corrupt database files. file: [f1eb2d8f] check-in: [4b370c74] user: drh branch: apple-osx, size: 31546
2018-10-30
16:25
Split the SQLITE_WriteSchema flag in two flags, WriteSchema and SQLITE_NoSchemaError. Set only WriteSchema on a VACUUM to avoid problems when trying to vacuum a corrupt database. With this change, the size of the flags field on sqlite3 must grow from 32 to 64 bytes. file: [498b3bf7] check-in: [4f987810] user: drh branch: trunk, size: 31256
2018-10-29
17:53
Add the sqlite3_normalized_sql() API. file: [bf148a88] check-in: [592b66e8] user: mistachkin branch: normalized_sql, size: 40278
2018-10-09
22:50
Merge changes for the 3.25.0 release. file: [03944762] check-in: [ddf6a54e] user: drh branch: apple-osx, size: 31542
2018-10-08
18:58
Merge latest trunk changes into this branch. file: [051a2342] check-in: [2ac72114] user: dan branch: reuse-schema, size: 32594
2018-08-29
21:00
Extend RENAME TABLE to edit triggers and views. Still buggy. file: [f8e260d9] check-in: [01308bae] user: dan branch: alter-table-rename-table, size: 31252
2018-08-14
19:27
Improved error messages when an ALTER TABLE RENAME COLUMN fails due to a duplicate column name. file: [117e27c6] check-in: [37d11b8e] user: drh branch: alter-table-rename-column, size: 31246
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. file: [540a24af] check-in: [f4497b01] user: dan branch: alter-table-rename-column, size: 30938
2018-06-06
16:28
Change sqlite3BtreeBeginTrans() to return the BTREE_SCHEMA_COOKIE, for a small speed improvement when starting new transactions. file: [e966ecc9] check-in: [a10662aa] user: drh branch: trunk, size: 30945
2018-05-04
19:33
Merge recent enhancements from trunk. file: [04a30fc5] check-in: [e17bca2c] user: drh branch: apple-osx, size: 31229
2018-05-02
14:24
Fix a dangling-else problem that was causing recursive CTEs to malfunction. Begin fixing test cases to work with the new EQP output. file: [95a9dba7] check-in: [82ca44b8] user: drh branch: rework-EQP, size: 30939
2018-04-28
01:27
Add the "PRAGMA reset_database=ON|OFF" command. When on, it causes the database to appear to be empty, causing the next transaction to reset it to an empty database. file: [1492a2be] check-in: [02e1a13c] user: drh branch: reset-database, size: 30941
2018-04-25
12:01
Avoid many unnecessary calls to sqlite3ReadSchema() and sqlite3Init() when the schema is known to be valid already. file: [d16cb8a5] check-in: [58cf812f] user: drh branch: trunk, size: 30855
10:30
Add an assert() to ensure that schema mutexes are held prior to accessing the DB_SchemaLoaded flag inside of sqlite3Init(). file: [22438909] check-in: [d8b46290] user: drh branch: trunk, size: 30714
2018-04-10
18:05
Merge all version 3.23.1 changes and enhancements from trunk. file: [e0a310f9] check-in: [e20fcb51] user: drh branch: apple-osx, size: 30942
2018-03-16
20:15
Better error message text when the schema is corrupted by a CREATE TABLE AS entry. file: [b086fea6] check-in: [e13993cf] user: drh branch: corrupt-schema, size: 30652
2018-01-23
01:56
Enhance the PRAGMA noop_update statement so that the behavior persists across reprepare operations. file: [7ffd800d] check-in: [c25da6de] user: drh branch: noop-update-reprepare, size: 30641
2018-01-15
21:59
Merge the enhancements associated with the first 3.22.0 beta. file: [67a2c477] check-in: [c9d2ec51] user: drh branch: apple-osx, size: 30929
2017-12-08
19:37
The query planner tries to avoids using indexes that use unknown collating functions. file: [259f4e79] check-in: [02013fc1] user: drh branch: trunk, size: 30639
2017-11-14
20:00
Merge all changes from trunk prior to the read-only WAL enhancement. file: [a67a7d5f] check-in: [1754faef] user: drh branch: apple-osx, size: 30768
2017-10-31
03:40
Remove unnecessary NEVER() and ALWAYS() conditionals. file: [7cf451f9] check-in: [1c80c75d] user: drh branch: trunk, size: 30478
2017-09-09
06:10
Merge trunk enhancements file: [9e68d852] check-in: [6a0b9d9d] user: drh branch: apple-osx, size: 30757
2017-08-25
15:43
Size and performance optimization for sqlite3Init(). file: [9a141a1b] check-in: [776d9128] user: drh branch: trunk, size: 30467
2017-08-17
14:47
Remove an unnecessary branch from the [be436a7f4587ce517ddc] fix. file: [9e880c0e] check-in: [fb6ca99b] user: drh branch: trunk, size: 30691
02:26
Defer schema resets when the query planner is running. Proposed fix for ticket [be436a7f4587ce517]. file: [5da8a056] check-in: [a7bc7752] user: drh branch: trunk, size: 30713
2017-08-09
20:35
Add experimental sqlite3_open_v2() flag SQLITE_OPEN_REUSE_SCHEMA. For sharing identical in-memory schema objects between connections. file: [955b6185] check-in: [a6256980] user: dan branch: reuse-schema, size: 31998
2017-08-01
20:59
Slightly smaller and faster by allocating Parser objects on the stack. file: [3cbb9975] check-in: [436a89b9] user: drh branch: trunk, size: 30656
2017-07-26
19:59
Add the new sqlite3.mDbFlags field. Factor out bits of sqlite3.flags that do not interact with PRAGMA statements into sqlite3.mDbFlags. file: [1eaeccc1] check-in: [3808a00f] user: drh branch: trunk, size: 30692
2017-07-17
20:21
Merge all the latest fixes and enhancements from trunk. file: [89407525] check-in: [e181225d] user: drh branch: apple-osx, size: 30977
2017-07-14
19:22
Add requirements marks for some of the new features in the 3.20 release. file: [dd250f90] check-in: [26423867] user: drh branch: trunk, size: 30687
2017-07-07
22:58
Merge in all the latest trunk enhancements. file: [59b758ce] check-in: [7f48f6ab] user: drh branch: apple-osx, size: 30462
2017-06-28
17:29
Instead of the new sqlite3_prepare_v3() interface, provide the SQLITE_DBCONFIG_PREPARE_FLAGS interface which sets the flags on the single next call to sqlite3_prepare_v2() or its cousins. file: [0f9e3c6a] check-in: [942c3ef8] user: drh branch: dbconfig-prepare-flags, size: 28924
15:56
Incorporate recent trunk changes. file: [4b84ae74] check-in: [62b8269b] user: drh branch: prepare_v3, size: 30172
2017-06-26
13:57
Add the SQLITE_DBCONFIG_ENABLE_QPSG option to activate the query planner stability guarantee. This involves refactoring the sqlite3.flags bitvector to carve out a free bit to use. file: [a80a740b] check-in: [7076e828] user: drh branch: enable-QPSG, size: 28590
2017-06-01
00:54
Add interfaces sqlite3_prepare_v3() and sqlite3_prepare16_v3() with the extra prepFlags argument. Add the SQLITE_PREPARE_PERSISTENT option as one bit in that argument. file: [ee84efe6] check-in: [4a25c588] user: drh branch: prepare_v3, size: 30178
2017-04-17
17:03
Add support for analyzing trigger programs to the sqlite3_expert code. file: [7c46b5c7] check-in: [159e8022] user: dan branch: schemalint, size: 28584
2016-11-04
19:09
Merge recent trunk changes, including all the fixes that appeared in version 3.15.1. file: [601681ec] check-in: [0e5ffd91] user: drh branch: apple-osx, size: 28886
2016-10-03
01:21
Allocate Parse objects off of the stack where appropriate for a substantial performance increase and a size reduction. file: [b1140c3d] check-in: [ea8affa9] user: drh branch: trunk, size: 28596
2016-09-30
22:24
Avoid initializing the column-cache section of the Parse object, since entries in the cache will be initialized as they are used, and avoiding the initial memset() saves many CPU cycles. file: [3c8b1bc8] check-in: [63cf7eaf] user: drh branch: trunk, size: 28878
2016-09-07
18:20
Merge recent enhancements from trunk. file: [9d96dd74] check-in: [00759af0] user: drh branch: apple-osx, size: 29086
2016-08-19
14:20
Add the capability to VACUUM an attached database by specifying the schema name as an argument to the VACUUM command. Since version 2.0, VACUUM has accepted an argument which was silently ignored. Now it has meaning. file: [0fcf16ea] check-in: [29d63059] user: drh branch: vacuum-attached-db, size: 28796
2016-08-18
14:33
Rename the Db.zName field to Db.zDbSName to make it more descriptive and to distinguish it from all of the other "zName" variables scattered throughout the code. file: [a668988f] check-in: [92a22f01] user: drh branch: zDbSName, size: 28693
2016-02-18
01:36
Merge recent performance enhancements and the enhanced API_ARMOR from trunk. file: [9c56ea25] check-in: [b7fa0fb3] user: drh branch: apple-osx, size: 28974
2016-02-13
23:43
Enhance ability to debug out-of-memory errors. file: [22df6171] check-in: [6a9c4a3e] user: mistachkin branch: noMemBkpt, size: 28684
2016-02-05
14:29
Merge OOM handling optimizations and PRAGMA synchronous=EXTRA as well as other enhancements from trunk. file: [3fef6600] check-in: [201fcbee] user: drh branch: apple-osx, size: 28954
02:50
Minor simplification of schema error reporting. file: [c12b7867] check-in: [a8846aee] user: drh branch: oom-handling, size: 28664
01:55
Improvements to the way that OOM errors are processed. file: [db4ce553] check-in: [c3ef0347] user: drh branch: oom-handling, size: 28699
2016-02-02
02:30
Merge recent enhancements from trunk. file: [cdde9788] check-in: [e6a4a163] user: drh branch: apple-osx, size: 28875
2016-01-29
08:38
Avoid two more instances of pointer arithmetic on freed pointers. file: [db85f045] check-in: [2910ef64] user: dan branch: trunk, size: 28585
2016-01-23
14:05
Remove an assert() that can be false if compiled with SQLITE_USE_ALLOCA. file: [8ca72374] check-in: [f0a551ed] user: drh branch: trunk, size: 28585
2016-01-20
11:40
Merge all recent enhancements from trunk. file: [83985e45] check-in: [3ed49691] user: drh branch: apple-osx, size: 28834
2016-01-15
15:06
Work toward making the schema parsing logic simplier and more compact. file: [74855ddb] check-in: [c52ca2c0] user: drh branch: trunk, size: 28544
2015-08-28
02:12
Merge trunk enhancements into the apple-osx branch. Most tests works, but there are yet a few issues to be resolved. file: [176b060b] check-in: [da864658] user: drh branch: apple-osx, size: 29515
2015-05-21
02:07
When parsing the schema, ignore any SQL that does not begin with "CREATE". Cherrypick of [d3c00d61581c] with additional changes. file: [5db3bd35] check-in: [09784f37] user: drh branch: branch-3.7.11, size: 28574
2015-05-20
20:21
Fix a bug caused by cherrypicking from a branch that assumes sqlite3_stricmp() can handle NULL arguments. file: [a811a0fb] check-in: [2c649cdf] user: dan branch: branch-3.8.6, size: 29043
19:57
When parsing the schema, ignore any SQL that does not begin with "CREATE". Cherrypick of [d3c00d61581c]. file: [6c427840] check-in: [0da229b8] user: dan branch: branch-3.8.6, size: 29032
2015-05-15
04:13
Simplifications to error message processing. Fix a possible problem in error message formatting when vacuuming a database with a corrupt schema. file: [82e5db10] check-in: [56ef98a0] user: drh branch: trunk, size: 29225
2015-04-20
01:25
Merge all recent trunk enhancements and fixes into the apple-osx branch. file: [5be49833] check-in: [74b7bf17] user: drh branch: apple-osx, size: 29522
2015-04-16
00:26
When parsing the schema, ignore any SQL that does not begin with "CREATE". file: [1fffbdcd] check-in: [d3c00d61] user: drh branch: trunk, size: 29232
2014-12-16
00:29
Merge latest fixes and enhancements from trunk into apple-osx. file: [01740b0d] check-in: [2c1d8dda] user: drh branch: apple-osx, size: 29464
2014-12-12
23:17
Add extra tests to threadtest4.c. Fix a benign data race accessing the text encoding using ENC(db). file: [173a5a49] check-in: [d7bb7ea4] user: drh branch: trunk, size: 29174
2014-10-27
18:42
Merge latest enhancements, including the SQLITE_ENABLE_API_ARMOR patch, from trunk. file: [307a3ddc] check-in: [10aaf3b1] user: drh branch: apple-osx, size: 29384
2014-10-24
00:35
Add the SQLITE_ENABLE_API_ARMOR compile-time option. This is a work in progress and is not yet completely functional. file: [b7b7bf02] check-in: [c297a84b] user: drh branch: api-armor, size: 29094
2014-09-21
23:08
Merge in all recent changes from trunk. file: [d0ab75c1] check-in: [3967ebe8] user: drh branch: apple-osx, size: 29242
2014-09-15
15:34
Merge latest trunk changes with this branch. file: [905c3c60] check-in: [55b8011d] user: dan branch: ota-update, size: 28951
2014-09-11
14:01
Move user authentication blocking from sqlite3_prepare() over to the table lock generator, thus allowing SQL statements (like "PRAGMA locking_mode") that do not touch database content to run prior to authentication. file: [6ef0cf2f] check-in: [70121e7c] user: drh branch: user-auth, size: 28952
13:44
Add support for the extra parameter on the sqlite3_set_authorizer() callback and support for failing an ATTACH with an authentication-required database using bad credentials. The extension is now feature complete, but much testing and bug-fixing remains. file: [f82c009a] check-in: [596e728b] user: drh branch: user-auth, size: 29399
2014-09-10
22:46
Complete the implementation of the various APIs. Fix several problems. This is another incremental check-in that does not completely work. file: [10dd9833] check-in: [4eaaa7fa] user: drh branch: user-auth, size: 29451
19:01
Add the ".user" shell command and implement the sqlite3_user_add() routine. Incremental check-in. The code compiles but does not work. file: [8c2f992a] check-in: [a0455f9d] user: drh branch: user-auth, size: 29421
17:34
Further ideas on user authentication. Not yet working code. file: [51ca716a] check-in: [c8171ecd] user: drh branch: user-auth, size: 29417
2014-09-09
14:47
Non-working preliminary implementation attempts on user authentication. file: [9548c8ef] check-in: [8440f093] user: drh branch: user-auth, size: 29663
2014-09-02
19:59
Add an experimental extension for applying bulk updates to databases. file: [314961aa] check-in: [2954ab50] user: dan branch: ota-update, size: 28991
2014-08-26
02:02
Merge recent performance enhancements and the CAST operator enhancements into the apple-osx branch. file: [8b6e247b] check-in: [5c273111] user: drh branch: apple-osx, size: 29282
2014-08-22
18:00
Split the sqlite3Error() routine into sqlite3Error() and sqlite3ErrorWithMsg(), for a slight size reduction and performance increase. file: [3842c1df] check-in: [cf561d1f] user: drh branch: trunk, size: 28992
2014-05-08
23:01
Initial attempt to merge in all trunk changes over the previous 1.5 years. This check-in compiles but there are compiler warnings and "make test" segfaults after only running a few test modules. file: [954f8016] check-in: [9411d7dc] user: drh branch: apple-osx, size: 29264
2013-12-23
19:09
Move elements of the Vdbe object that are only used during statement preparation out into the Parse object. file: [677521ab] check-in: [c289a253] user: drh branch: trunk, size: 28974
2013-11-15
01:10
Rework the logic that factors constant expressions out of inner loops, making it both simpler and faster. file: [359d1a1e] check-in: [8dc5c76c] user: drh branch: expr-codegen-enhancement, size: 28904
2013-11-01
01:45
A couple of bug fixes. file: [ea231a84] check-in: [cdf00248] user: drh branch: omit-rowid, size: 28795
2013-10-23
01:57
Some simple inserts and queries working on WITHOUT ROWID tables. file: [f47ba2bb] check-in: [3f8016de] user: drh branch: omit-rowid, size: 28795
00:32
Build internal data structures appropriately for WITHOUT ROWID tables. file: [b1a3393b] check-in: [35a36060] user: drh branch: omit-rowid, size: 28716
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. file: [fa698858] check-in: [20dba3a7] user: drh branch: trunk, size: 28703
2013-06-19
03:27
Fix compiler warnings. Fix a harmless off-by-one error in the solver. file: [2306be16] check-in: [10021941] user: drh branch: nextgen-query-plan-exp, size: 28548
2013-06-11
13:30
Fix the Parse.nQueryLoop state variable to work with NGQP. file: [213de4aa] check-in: [f1cac24f] user: drh branch: nextgen-query-plan-exp, size: 28508
2013-04-06
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(). file: [743e4842] check-in: [c1d7304c] user: drh branch: trunk, size: 28521
2013-03-21
21:20
Many spelling fixes in comments. No changes to code. file: [310eaff1] check-in: [6f6e2d50] user: mistachkin branch: trunk, size: 28569
2013-03-08
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. file: [78cd7ae8] check-in: [69746ef7] user: dan branch: experimental, size: 28569
2012-09-28
10:57
Merge the latest trunk changes (PRAGMA busy_timeout and the ORDER BY query planner enhancements) into the apple-osx branch. file: [417a6a75] check-in: [6a5c59dd] user: drh branch: apple-osx, size: 28791
2012-09-18
23:21
Silence harmless compiler warning seen with SQLITE_OMIT_DEPRECATED. file: [931ad0d8] check-in: [c5cee969] user: mistachkin branch: trunk, size: 28501
2012-06-08
01:13
Merge trunk changes into the apple-osx branch. file: [5e2babd8] check-in: [9d1b8515] user: drh branch: apple-osx, size: 28753
2012-06-06
10:56
Make sure the Index.azColl pointers do not point to connection-specific memory. Also, remove an unnecessary reinitialization to sqlite3.pDfltColl. file: [33291b83] check-in: [c469850b] user: drh branch: shared-schema, size: 28463
2012-05-22
13:11
Version 3.7.12.1 file: [2e49f73f] check-in: [972e75bb] user: drh branch: apple-osx, size: 28836
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. file: [ef197444] check-in: [aa0c3493] user: drh branch: shared-schema, size: 28535
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. file: [9a00a961] check-in: [0bb1cfc6] user: drh branch: trunk, size: 28546
2012-02-13
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. file: [8d772a6e] check-in: [922bcbb4] user: drh branch: generalize-interrupt, size: 28544
2011-12-08
21:08
Merge the latest trunk changes into the apple-osx branch. file: [4450a714] check-in: [59e0d4f3] user: drh branch: apple-osx, size: 28795
2011-11-09
16:12
Minor changes needed to restore full branch test coverage. file: [ec4989f7] check-in: [bc10a753] user: drh branch: experimental-pcache, size: 28505
2011-04-09
18:13
Pull all the latest trunk changes into the apple-osx branch. file: [9d7403fe] check-in: [4eaef4ad] user: drh branch: apple-osx, size: 28693
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. file: [e6426155] check-in: [0ca8a233] user: drh branch: trunk, size: 28403
2011-04-05
13:38
Pull the latest changes from trunk (and hence from schema-parse-refactor) into the apple-osx branch. file: [f68146dd] check-in: [8e885dde] user: drh branch: apple-osx, size: 28688
2011-04-04
21:25
Additional schema mutex checks for sqlite3RootPageMoved(). Reduce the scope of sqlite3ResetInternalSchema() in a few places. file: [206e1f06] check-in: [39c00907] user: drh branch: schema-parse-refactor, size: 28398
18:22
Add a description of access rules for the Schema object and lots of asserts to verify that the access rules are followed. file: [a4d8ac34] check-in: [ae8374af] user: drh branch: schema-parse-refactor, size: 28434
13:11
Merge in the latest changes from trunk. file: [cdd21450] check-in: [6d78a25d] user: drh branch: apple-osx, size: 28672
2011-04-02
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. file: [cec63cb1] check-in: [6a8ad6e3] user: drh branch: schema-parse-refactor, size: 28384
2011-03-08
02:38
Fix additional cases of possible signed integer overflow, especially with regard to negation. file: [eb4944d9] check-in: [2d5800bd] user: drh branch: trunk, size: 28382
2011-03-06
21:28
Remove dead code identified by the clang static analyzer. file: [319b4728] check-in: [01a79d5a] user: drh branch: trunk, size: 28396
2011-01-27
18:48
Pull in all the changes from trunk up through the version 3.7.5 release candidate 1. file: [ce4af845] check-in: [09d6c91d] user: drh branch: apple-osx, size: 28706
2011-01-25
13:43
Fix a couple of typos in comments. No changes to actual code. file: [395b3fab] check-in: [9167fdb3] user: dan branch: trunk, size: 28416
2010-12-07
15:49
Merge in all changes to the trunk through version 3.7.4rc3. file: [7f225d1b] check-in: [d2ccf7fc] user: drh branch: apple-osx, size: 28703
2010-11-23
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. file: [c8b877b8] check-in: [2031974b] user: drh branch: trunk, size: 28413
2010-11-19
23:50
Merge all the latest changes from the trunk into the apple-osx branch. file: [75d214bf] check-in: [c8bc057c] user: drh branch: apple-osx, size: 28696
2010-11-09
00:47
Experimental changes to test defaulting to fullfsync for WAL mode file: [70d261ec] check-in: [77b343cf] user: adam branch: apple-osx-exp, size: 28831
2010-11-08
19:01
Experimental changes to EXPLAIN QUERY PLAN. file: [c2b31803] check-in: [f4747eb8] user: dan branch: experimental, size: 28406
2010-08-18
00:24
Merge the 3.7.1 pre-release snapshot changes as of 2010-08-18 into the apple-osx branch. file: [23b5da06] check-in: [866e9286] user: drh branch: apple-osx, size: 28684
2010-08-07
11:46
Merge in all changes up to the 3.7.0.1 release. file: [e81fd00d] check-in: [f88c6367] user: drh branch: apple-osx, size: 28735
2010-07-26
12:05
Change the way SubProgram objects are deleted so that the code is the same for deletion and measurement. file: [ce4c35a2] check-in: [00e55102] user: dan branch: experimental, size: 28394
2010-07-06
09:29
Reorder variable declarations in the previous check-in to avoid putting code before declarations when not testing. file: [f045aeff] check-in: [d1fe8ab4] user: drh branch: trunk, size: 28445
07:36
Ensure the correct error code is returned if an attempt to parse a database schema made by an ATTACH statement fails. file: [48105b1a] check-in: [c2721961] user: dan branch: trunk, size: 28445
2010-06-16
19:48
Merge in changes up to and including the 3.6.23.1 release. file: [1b3d55ed] check-in: [21ca87f6] user: drh branch: apple-osx, size: 28521
2010-04-09
09:14
Avoid unnecessary calls to sqlite3_step() with null prepared statements while parsing the schema. file: [fd1398cb] check-in: [ae04d2d1] user: drh branch: trunk, size: 28292
2010-04-06
15:57
Automatically generate transient indices for tables in joins that would otherwise have to use a full table scan. file: [e8164a92] check-in: [1b2a0412] user: drh branch: experimental, size: 28305
2010-03-05
16:32
Modify the vdbe so that the comparison operator opcodes do not modify the data type of operands. Fix for [aa92c76cd4]. file: [18292e5f] check-in: [8858042f] user: dan branch: trunk, size: 28231
2010-02-25
02:32
Merge in all of the logging enhancements. This is a cherrypick merge of the following check-ins: [103321e37a], [a8076aede3], [6d910245ad], [7c4cca6d1a], [edea3bb740], [1a6d4bb130], [a8c984c1d6], [69a493182f], and [1168763d2c]. file: [dede8f2d] check-in: [46f406b2] user: drh branch: branch-3.6.22, size: 28196
2010-02-24
17:15
Enhancements to the way errors are reported up when an automatic statement reprepare fails. file: [c8063016] check-in: [1a6d4bb1] user: drh branch: trunk, size: 28211
2010-02-23
20:11
Continuing improvements to error reporting and the sqlite3_log() routine. file: [341413e4] check-in: [edea3bb7] user: drh branch: trunk, size: 28260
17:36
Remove the obsolete sqlite3SafetyOn() mechanism. Add additional logging output for CORRUPT, and CANTOPEN errors. file: [bd9e778f] check-in: [7c4cca6d] user: drh branch: trunk, size: 28250
2010-01-20
01:26
Update the Apple OS-X branch to include all of the latest changes in trunk. file: [ca47539f] check-in: [96499b1d] user: drh branch: apple-osx, size: 28871
2010-01-12
23:54
Make sure internal queries are well ordered, even when the reverse_unordered_selects pragma is in effect. Ticket [eb942c64a157]. file: [d4cd38cc] check-in: [0209f171] user: drh branch: trunk, size: 28581
2010-01-06
13:12
Update the OS-X branch to include all trunk changes through version 3.6.22. file: [46428850] check-in: [541e2b48] user: drh branch: apple-osx, size: 28856
2009-12-17
21:05
Fix typo in comment of prepare.c. file: [170bd953] check-in: [333c3ffe] user: shaneh branch: trunk, size: 28566
2009-12-07
23:53
Merge all changes associated with the version 3.6.21 release into the OS-X branch. file: [23edf67b] check-in: [ad08794d] user: drh branch: apple-osx, size: 28863
2009-11-10
01:30
Remove the obsolete "$Id:$" RCS identifier strings from the source code. file: [ad90970b] check-in: [f6c045f6] user: drh branch: trunk, size: 28573
2009-11-03
22:34
Customizations for OSX contributed by Apple. file: [6ea9df83] check-in: [941a01eb] user: adam branch: apple-osx, size: 28922
2009-10-15
18:35
Add the experimental sqlite3_reoptimize() API. file: [665d5230] check-in: [9bd6f3d8] user: dan branch: experimental, size: 28632
2009-09-01
12:16
More fixes and comment updates. file: [9803fc01] check-in: [38a9327b] user: dan branch: trunk, size: 28467
2009-08-31
15:27
More fixes for test cases. file: [1be1832c] check-in: [85d9f23b] user: dan branch: trunk, size: 28386
2009-08-28
18:53
Changes to support recursive triggers. file: [49739b38] check-in: [9b9c1921] user: dan branch: trunk, size: 28394
2009-08-06
17:43
Alternative fix for ticket #3810. This is a replacement for check-in (6956). (CVS 6960) file: [0b966d20] check-in: [ba1afc04] user: drh branch: trunk, size: 28192
2009-08-01
16:27
Return a better error message when problems are encountered parsing a TEMP trigger or TEMP view that references objects in other databases that have been modified or dropped. Ticket #3810. (CVS 6956) file: [153f3eb1] check-in: [102785b9] user: drh branch: trunk, size: 28222
2009-07-24
17:58
Allow virtual tables to be used in shared-cache mode. (CVS 6928) file: [312ba968] check-in: [5d9e767a] user: danielk1977 branch: trunk, size: 28088
2009-07-03
19:19
Remove unused code (that was commented out) from prepare.c. Remove an incorrect NEVER() macro. Fix the comment on schemaIsValid() to correctly describe its return behavior. (CVS 6845) file: [12e556fc] check-in: [90deb658] user: drh branch: trunk, size: 28051
2009-07-02
17:21
When a b-tree transaction is committed when there are open cursors, downgrade shared-cache write-locks to read-locks instead of relinquishing all locks. Fix for #3942. (CVS 6837) file: [1f658bc7] check-in: [611e704f] user: danielk1977 branch: trunk, size: 28901
07:47
Cause opening a transaction on a sharable b-tree module automatically obtain a read-lock on page 1. This means there is no way for sqlite3BtreeGetMeta() to fail. (CVS 6836) file: [e8d89969] check-in: [e3c055f1] user: danielk1977 branch: trunk, size: 28933
2009-06-25
11:50
Get the notify2.test running again by removing an ALWAYS() that was mistakenly inserted and by taking care not to report corruption following an SQLITE_LOCKED failure during schema parsing. (CVS 6815) file: [3db796d7] check-in: [6e9140a7] user: drh branch: trunk, size: 27553
2009-06-22
12:05
Make sure sqlite3BtreeCreateTable() returns an error code if the largest rootpage field is invalid in auto_vacuum mode. Update file-format comments to describe all of the "meta" values. (CVS 6797) file: [0cdca4d0] check-in: [bda38f5e] user: drh branch: trunk, size: 27532
2009-06-17
00:35
Changes to prepare.c and callback.c to promote better test coverage. (CVS 6770) file: [aba69546] check-in: [08cca219] user: drh branch: trunk, size: 27396
2009-06-16
17:49
Changes sqlite3_prepare_v2() (and related routines) so that if it fails due to a missing table and the schema is out of date, it retries once before returning SQLITE_SCHEMA. Other changes to prepare.c to facilitate coverage testing. (CVS 6769) file: [cc0cc08b] check-in: [256ec3c6] user: drh branch: trunk, size: 27301
2009-06-04
00:11
Fix two instances where a malformed header in a database file (in other words a corrupt database file) can lead to an assertion fault. (CVS 6712) file: [889208e3] check-in: [4e92c7f2] user: drh branch: trunk, size: 27239
2009-06-03
11:25
Define a set of constants to use as the "index" argument to sqlite3BtreeGetMeta and UpdateMeta. This makes some parts of the code easier to follow. (CVS 6709) file: [c98c1d30] check-in: [6dbf4eca] user: danielk1977 branch: trunk, size: 27149
2009-06-01
18:18
Malloc for space to hold the Parse object in sqlite3_prepare() and friends. Or, if compiled with SQLITE_USE_ALLOCA, obtain space for the object from alloca(). (CVS 6702) file: [706efe9f] check-in: [c7c0c58e] user: drh branch: trunk, size: 27239
2009-05-11
20:53
Rework the logic that generates a schema for tables created using "CREATE TABLE ... AS SELECT ...". Instead of trying to copy the raw datatype string from the right-hand side, just make the type one of TEXT, INT, REAL, NUM, or nothing. This is much simpler than trying to parse and quote datatype strings. Other minor implifications to build.c are bundled with this change. (CVS 6626) file: [f46d1a02] check-in: [33cf8359] user: drh branch: trunk, size: 27402
2009-04-20
17:43
Change the journal_mode pragma so that it always returns the current journal mode, even on a failed attempt to change the journal mode. Allow the journal mode to be changed as long as there is not a pending transaction. Ticket #3811. (CVS 6526) file: [72d74e6d] check-in: [419e320a] user: drh branch: trunk, size: 27405
2009-04-02
18:32
Fix the sqlite3_prepare() family of interfaces so that they zero the *ppStmt value even on an SQLITE_MISUSE return. Make it clear in the documentation that the ppStmt parameter cannot be zero. (CVS 6441) file: [0ad1ba32] check-in: [23bf9f26] user: drh branch: trunk, size: 27471
2009-04-01
16:33
Remove dead code from the UTF conversion routines. Fix a bug in sqlite3_prepare16_v2() in which an out-of-memory error fails to set the statement return pointer to NULL. (CVS 6423) file: [aa3e7dc0] check-in: [94e2f815] user: drh branch: trunk, size: 27423
2009-03-24
15:08
Changes to insure that lookaside memory allocations are never used to hold schema content. Ticket #3743. (CVS 6377) file: [157a7528] check-in: [ea74d8dc] user: drh branch: trunk, size: 27408
04:46
Add a comment to prepare.c explaining why the lookaside buffer is disabled before sqlite3_exec() is called to parse a schema statement. No code changes. (CVS 6376) file: [662b7d30] check-in: [8ca6a665] user: danielk1977 branch: trunk, size: 28504
2009-03-23
17:11
Fix an obscure race condition that can occur when multiple threads, shared cache and DDL statements are combined. Enhance notify2.test to test this scenario. (CVS 6373) file: [db64c975] check-in: [92ec5975] user: danielk1977 branch: trunk, size: 27567
2009-03-19
18:51
Fix a couple of fairly obscure cases where an assert() could fail following a malloc failure. (CVS 6360) file: [14e61702] check-in: [cc0d9256] user: danielk1977 branch: trunk, size: 27539
07:58
Change sqlite3_step() to return SQLITE_LOCKED if a statement cannot be re-compiled due to locks on the shared-cache schema. Also add a blocking wrapper of sqlite3_prepare_v2() to the test code. (CVS 6359) file: [8c6ef35c] check-in: [e8be1af9] user: danielk1977 branch: trunk, size: 27533
2009-03-16
13:19
Add the sqlite3_unlock_notify() API. (CVS 6348) file: [ebd40f8c] check-in: [b649a6cc] user: danielk1977 branch: trunk, size: 27325
2009-03-05
04:20
Corrected typos and misspellings. Ticket #3702. (CVS 6336) file: [1a2d40c0] check-in: [6404afa0] user: shane branch: trunk, size: 27341
2009-02-24
16:18
Enhanced comments on table locking logic as it relates to preparing new statements. Added assert() and testcase() but no other changes to code. (CVS 6319) file: [1ede93a0] check-in: [4a12f5b8] user: drh branch: trunk, size: 27337
2009-02-19
14:39
Changes to reduce the heap space consumed by triggers, views and tables in the in-memory representation of the schema. Also to reduce the space used by prepared statements slightly. (CVS 6305) file: [d0bbb4b1] check-in: [d9f6ffbc] user: danielk1977 branch: trunk, size: 26168
2009-01-20
16:53
When not compiling for an EBCDIC system, use built-in alternatives to the tolowe r(), toupper() and other ctype.h library functions. Ticket #3597. (CVS 6196) file: [9ec504dd] check-in: [1041abd6] user: danielk1977 branch: trunk, size: 26079
2009-01-09
02:49
More coverage improvements. (CVS 6148) file: [2a117363] check-in: [6e171c0a] user: drh branch: trunk, size: 26090
2008-12-10
19:26
Never use strlen(). Use our own internal sqlite3Strlen30() which is guaranteed to never overflow an integer. Additional explicit casts to avoid nuisance warning messages. (CVS 6007) file: [51d11eb1] check-in: [c872d554] user: drh branch: trunk, size: 26103
17:20
Remove or rename local variables that shadow other variables or parameters. (CVS 6005) file: [26808c3d] check-in: [e7e9fa4f] user: drh branch: trunk, size: 26085
2008-11-19
16:52
Fix some compiler warnings that show up when building the amalgamation only. (CVS 5927) file: [fcadb25d] check-in: [d1abe8a1] user: danielk1977 branch: trunk, size: 26107
09:05
Changes to avoid "unused parameter" compiler warnings. (CVS 5921) file: [72c8dc89] check-in: [88134322] user: danielk1977 branch: trunk, size: 26100
2008-11-17
19:18
Modifications to avoid unsigned/signed comparisons in various files. (CVS 5914) file: [445452ce] check-in: [8009220c] user: danielk1977 branch: trunk, size: 26072
2008-10-31
10:53
Change the way sqlite3VdbeSetColName() is called so as to remove a few lines of code. This also fixes #3470. (CVS 5853) file: [ae49b829] check-in: [bfce9142] user: danielk1977 branch: trunk, size: 26085
2008-09-08
09:06
If the 'rootpage' column of the sqlite_master table contains a NULL value, return SQLITE_CORRUPT to the caller. (CVS 5681) file: [c7e00ed1] check-in: [a7b7b126] user: danielk1977 branch: trunk, size: 26040
2008-09-04
12:03
Missing implementation for sqlite3TransferBindings(). (CVS 5675) file: [b708c5a8] check-in: [56d61895] user: shane branch: trunk, size: 26046
05:53
Temporarily revert to using sqlite3_transfer_bindings() internally. (CVS 5673) file: [ca08138f] check-in: [690ff385] user: danielk1977 branch: trunk, size: 26054
04:32
Modified core to not call deprecated functions sqlite3_memory_alarm() and sqlite3_transfer_bindings() by adding sqlite3MemoryAlarm() and sqlite3TransferBindings(). sqlite3_memory_alarm() and sqlite3_transfer_bindings() are now simple wrappers for the new functions. In prep for adding SQLITE_OMIT_DEPRECATED. (CVS 5672) file: [bb0c76b7] check-in: [821c387d] user: shane branch: trunk, size: 26046
2008-08-20
16:35
Refactor the name resolution procedures in the code generator. (CVS 5569) file: [c197041e] check-in: [daf730d1] user: drh branch: trunk, size: 26046
2008-08-11
18:44
Do not allow indexing of any table whose name begins with "sqlite_". Ticket #3284. Improve handling of databases with malformed schemas - just in case somebody has actually indexed a system table. (CVS 5553) file: [fceb567b] check-in: [0e1d8d14] user: drh branch: trunk, size: 26035
2008-08-02
03:50
Additional coverage testing. Fix a segfault following OOM in sqltie3_load_extension(). (CVS 5523) file: [d9f42080] check-in: [f1e44eb3] user: drh branch: trunk, size: 25988
2008-07-28
19:34
Implement the "lookaside" memory allocation cache. Use of this cache makes the speed1.test script run about 15% faster. Added new interfaces to control the cache. (CVS 5488) file: [d2d53aec] check-in: [e48f9697] user: drh branch: trunk, size: 25987
2008-07-08
19:34
Completely rework the sqlite3SetString() primitive so that it honors the SQLITE_LIMIT_LENGTH and avoids the use of strlen(). (CVS 5374) file: [c9bb0aac] check-in: [8ed04b1e] user: drh branch: trunk, size: 25792
2008-06-23
16:53
Fix a bug causing the pager-cache size to be reset to its default value whenever the database schema was reloaded. (CVS 5283) file: [aba51dad] check-in: [6dbe67da] user: danielk1977 branch: trunk, size: 25773
2008-06-15
02:51
Continuing work on the new memory allocation subsystem. Added routines for temporary memory allocation. Right the btree balance mechanism to only do one temporary allocation at a time. (CVS 5220) file: [3c19149e] check-in: [65fe7b62] user: drh branch: trunk, size: 25714
2008-05-23
14:49
Add a test case of preparing a statement with an nBytes parameter of 0 and where the previous byte of the string is zero. Ticket #3134. (CVS 5156) file: [cbc9301a] check-in: [846a69ac] user: drh branch: trunk, size: 25715
14:32
Do not references zSql(-1) if nBytes==0 in sqlite3_prepare(). Ticket #3134. (CVS 5155) file: [4082e0d0] check-in: [2d2c53e5] user: drh branch: trunk, size: 25715
2008-05-22
13:56
Ensure that the db.mallocFailed flag is cleared before sqlite3_errmsg16() returns. (CVS 5154) file: [dbc9b592] check-in: [0d47653a] user: danielk1977 branch: trunk, size: 25708
2008-04-03
14:36
Avoid an out-of-bounds read in sqlite3_prepare() and fix a case where the output variable *pzTail was being set incorrectly. Fix for #3027. (CVS 4957) file: [adc7e1fc] check-in: [c287a7b2] user: danielk1977 branch: trunk, size: 25668
2008-03-25
09:47
Use a vdbe memory cell to allocate the space required for vdbe cursors. (CVS 4912) file: [185fb47f] check-in: [04715364] user: danielk1977 branch: trunk, size: 25602
00:22
Removed the direct btree tests - part of the ongoing effort to test by calling only public interfaces. Modify the sqlite3VdbeRecordCompare interface to used a pre-parsed second key - resulting in a 13% performance improvement on speed1p.test. (CVS 4911) file: [f7fc2eb7] check-in: [0e1d84f2] user: drh branch: trunk, size: 25187
2008-03-20
14:03
Initial implementation of per-connection limits and the sqlite3_limit() API. The sqllimits1.test script crashes. SQLITE_LIMIT_PAGE_COUNT and SQLITE_LIMIT_VDBE_OP are currently ignored. (CVS 4897) file: [1b71b5d4] check-in: [60c77882] user: drh branch: trunk, size: 25193
2008-03-19
13:03
When a parse of the sqlite_master table fails, include the name of the object being parsed as part of the error message. (CVS 4881) file: [88e32e98] check-in: [57805b58] user: drh branch: trunk, size: 25183
2008-03-08
12:23
Fix asserts in prepare.c to handle the misuse case of ppStmt==0. (CVS 4843) file: [62e46b19] check-in: [788b2c6b] user: drh branch: trunk, size: 24973
2008-03-04
17:45
Various renames & cleanups to limit exported symbols on amalgamation build (CVS 4819) file: [ead778d7] check-in: [9c6694bb] user: mlcreech branch: trunk, size: 24926
2008-03-03
18:47
Additional documentation and tests making it clear that whenever sqlite3_prepare() fails it sets *ppStmt to NULL. (CVS 4818) file: [98c763fb] check-in: [39769f00] user: drh branch: trunk, size: 24914
2008-01-23
03:03
Make sqlite3SafetyOn() and sqlite3SafetyOff() macros which disappear when compiling without -DSQLITE_DEBUG=1. (CVS 4744) file: [1b0601ca] check-in: [5375ad6b] user: drh branch: trunk, size: 24578
2008-01-22
19:34
Fix a bug introduced by checkin (4739). (CVS 4741) file: [05433874] check-in: [c8394ac2] user: drh branch: trunk, size: 24561
16:35
Detect and report a particular type of database corruption that would formerly cause a segfault. (CVS 4739) file: [f0e9e0f2] check-in: [6ed2d9f8] user: drh branch: trunk, size: 24561
01:48
Changes to lemon to generate additional comments in the output file and to remove unreachable code. Additional test cases for improved test coverage. (CVS 4736) file: [505afbfe] check-in: [2a0bc1e1] user: drh branch: trunk, size: 24506
2008-01-09
02:15
Continued work toward converting to a register-based VM. (CVS 4698) file: [c31a879d] check-in: [92deff07] user: drh branch: trunk, size: 24463
2008-01-03
07:09
Fix EXPLAIN and EXPLAIN query plan to work with new opcode format. (CVS 4662) file: [f1bb8eb6] check-in: [b166c33a] user: danielk1977 branch: trunk, size: 24442
00:01
Refactoring the VM. The P3 parameter is changed to P4. A P5 parameter is added (though not currently used.) Add routines sqlite3VdbeAddOpX() where X is one of 0, 1, 2, 3, or 4. (CVS 4660) file: [31ce0903] check-in: [027875e4] user: drh branch: trunk, size: 24199
2007-12-27
15:12
Fix a race condition that can occur when reloading the database schema in shared-cache mode. (CVS 4643) file: [7aeba785] check-in: [b37babef] user: danielk1977 branch: trunk, size: 24207
2007-12-18
17:50
Fix a problem with SQLITE_MAX_SQL_LENGTH introduced by check-in (4636). Ticket #2851 (CVS 4639) file: [ff6c3e4c] check-in: [cdd866f5] user: drh branch: trunk, size: 24135
2007-12-13
21:54
Change all instances of "it's" in comments to either "its" or "it is", as appropriate, in case the comments are ever again read by a pedantic grammarian. Ticket #2840. (CVS 4629) file: [75418527] check-in: [4e91a267] user: drh branch: trunk, size: 24055
2007-11-28
13:43
Preset the legacy_file_format pragma to the value of the primary database so that a VACUUM will not unknowingly alter the setting. Ticket #2804. (CVS 4574) file: [f811fdb6] check-in: [f731fa6b] user: drh branch: trunk, size: 24056
2007-11-14
06:48
Add an experimental API for retrieving the SQL source from a compiled statement: sqlite3_sql(). Ticket #2769. (CVS 4543) file: [5dd06102] check-in: [d31f1e0d] user: danielk1977 branch: trunk, size: 23733
2007-11-13
10:30
Modify the Tcl interface to use sqlite3_prepare_v2(). (CVS 4542) file: [ab237410] check-in: [7bb00c7d] user: danielk1977 branch: trunk, size: 23723
2007-10-12
20:42
Do not invoke the authorizer when reparsing the schema after a schema change or when trying to figure out the result set of a view. (CVS 4488) file: [663284f6] check-in: [e756bc9b] user: drh branch: trunk, size: 23653
2007-10-03
08:46
Add automatic recovery from the pager "error-state". Also add a new error code - SQLITE_IOERR_NOMEM. (CVS 4454) file: [920d09a5] check-in: [12eca32a] user: danielk1977 branch: trunk, size: 23415
2007-08-29
12:31
Modifications to the malloc failure tests to test transient and persistent failures. (CVS 4321) file: [1506fd27] check-in: [e38ef81b] user: danielk1977 branch: trunk, size: 23363
00:33
More locking fixes. Now makes it all the way through quick.test. There are errors but no assertion faults. Progress. (CVS 4319) file: [67df4207] check-in: [844d40b8] user: drh branch: trunk, size: 23197
2007-08-22
02:56
A complete run of quick.test with mutex debugging enabled. (CVS 4266) file: [29ea14cf] check-in: [783e07d5] user: drh branch: trunk, size: 22557
00:39
Reenable the memory management logic. The quick.test script now runs with SQLITE_MEMDEBUG and SQLITE_ENABLE_MEMORY_MANAGEMENT. 7 minor errors. (CVS 4265) file: [7c11bab7] check-in: [1914044b] user: drh branch: trunk, size: 22495
2007-08-21
19:33
The sqlite3_value object now carries an sqlite3* pointer to use for recording malloc failures. This eliminates the need to pass sqlite3* pointers into many internal interfaces. Also added more mutexing. (CVS 4263) file: [d30764fa] check-in: [92872761] user: drh branch: trunk, size: 22540
10:44
Remove unnecessary #includes of "os.h". New mutex implementations. (CVS 4255) file: [5bc8c7a9] check-in: [fbbd5bda] user: drh branch: trunk, size: 21777
2007-08-16
10:09
More work on refactoring of malloc() interfaces. There are still many errors. (CVS 4233) file: [03292bee] check-in: [77b16713] user: danielk1977 branch: trunk, size: 21801
04:30
Half-way through a major refactoring of the memory allocation. I have not even attempted to compile so I am certain there are countless errors. (CVS 4231) file: [237ed8ce] check-in: [deb7ecd6] user: drh branch: trunk, size: 21779
2007-08-13
14:41
When loading a database schema, do not clear the SQLITE_InternChanges flag. This fixes the problem illustrated by (4211). (CVS 4213) file: [3257b63d] check-in: [540a7b28] user: danielk1977 branch: trunk, size: 21802
2007-06-24
10:14
Make setting "PRAGMA auto_vacuum = incremental" persistent if it is executed before the database file is created. (CVS 4113) file: [609bb278] check-in: [c666fad1] user: danielk1977 branch: trunk, size: 21816
2007-05-08
20:37
Fix the amalgamation generator so that all non-API functions have file scope. (CVS 3958) file: [87c23644] check-in: [e9f56ead] user: drh branch: trunk, size: 21784
13:58
Add more code to enforce the limits specified in limits.h. (CVS 3946) file: [c932f439] check-in: [c59d4360] user: drh branch: trunk, size: 21784
01:08
Begin implementing a new system of upper bounds on the capabilities of SQLite. By clearly defining the upper bounds, we make those upper bounds explicitly testable. This check-in is just infrastructure. The upper bounds are not yet enforced. (CVS 3941) file: [b35a6f23] check-in: [93b623b2] user: drh branch: trunk, size: 21696
2007-04-30
21:39
Fix a potential segfault following a malloc() failure during a call to sqlite3_prepare() where the nBytes parameter is positive but less than the length of the input SQL string. (CVS 3888) file: [03277063] check-in: [27bf3fc3] user: drh branch: trunk, size: 21680
2007-04-19
11:09
Fix a bug whereby sqlite3_prepare_v2() could return both an out-of-memory error and a valid statement handle. (CVS 3858) file: [4cb9c9eb] check-in: [8795d11c] user: danielk1977 branch: trunk, size: 21661
2007-03-26
22:05
Modify sources to that they can be combined into a single sqlite3.c source file. Eliminate all type-pruned pointer warnings. (CVS 3722) file: [37207b2b] check-in: [0b832e21] user: drh branch: trunk, size: 21628
2007-03-14
15:37
Modify the behaviour of writable_schema to ignore schema parsing errors. (CVS 3686) file: [4e075fe2] check-in: [a8d6d935] user: danielk1977 branch: trunk, size: 21638
2007-01-09
14:01
When an automatic re-prepare occurs, take care not to reset the internal schema symbol table. Ticket #2156. This change also includes some debugging enhancements. (CVS 3578) file: [484389c6] check-in: [43fe7fc1] user: drh branch: trunk, size: 21127
2007-01-08
21:07
Fix a critical bug in sqlite3_prepare_v2 that can lead to segfaults when the schema changes and the statement is recompiled automatically. Ticket #2154. (CVS 3576) file: [25edfaeb] check-in: [3401388d] user: drh branch: trunk, size: 21103
2006-11-09
00:24
First cut at adding the sqlite3_prepare_v2() API. Test cases added, but more testing would be useful. Still need to update the documentation. (CVS 3506) file: [f4f45b45] check-in: [f1efae92] user: drh branch: trunk, size: 21038
2006-09-23
20:36
Be sure to ignore PRAGMA encoding pragmas if the encoding has already been set for a database. Ticket #1987. This patch also includes some cleanup of the schema parser and initialization logic. (CVS 3436) file: [3d9a1bb0] check-in: [dc797bf4] user: drh branch: trunk, size: 17830
2006-09-15
07:28
Add support for extended result codes - additional result information carried in the higher bits of the integer return codes. This must be enabled using the sqlite3_extended_result_code() API. Only a few extra result codes are currently defined. (CVS 3422) file: [bc003436] check-in: [ba579ddc] user: drh branch: trunk, size: 18002
2006-08-12
13:28
Fix a bug in out-of-memory processing introduced by check-in (3336). (CVS 3346) file: [84e2c855] check-in: [8d98a205] user: drh branch: trunk, size: 17968
2006-07-26
13:43
More work toward getting sqlite3_interrupt() to work from separate threads. Ticket #1897. (CVS 3336) file: [06fdfea0] check-in: [e431131d] user: drh branch: trunk, size: 17939
2006-06-26
12:50
Fix a file descriptor leak following malloc failure on DROP TABLE IF EXISTS. (CVS 3296) file: [e477df44] check-in: [6a63f76c] user: drh branch: trunk, size: 17793
2006-06-12
06:09
Incremental work on parsing/storing and invoking the xCreate callback for virtual tables. (CVS 3212) file: [6dc945da] check-in: [8ffbab79] user: danielk1977 branch: trunk, size: 17736
2006-05-23
23:22
Fix type coercion rules for the IN operator. Ticket #1821. (CVS 3188) file: [bbf12d31] check-in: [6e5a4976] user: drh branch: trunk, size: 17732
2006-03-13
15:06
Get parserless builds working again. (CVS 3133) file: [6afd730c] check-in: [5ddc09a5] user: drh branch: trunk, size: 17734
2006-03-06
20:55
Code changes resulting from Coverity analysis. http://scan.coverity.com/ Found 1 potential segfault in sqlite3_mprintf(). Also 2 failures to fclose() following a malloc() failure. And lots of cases where unnecessary conditionals could be removed from the code. (CVS 3126) file: [fe3f5b75] check-in: [e510e6dd] user: drh branch: trunk, size: 19354
2006-02-10
02:27
Add the column_origin_name() etc. APIs. (CVS 3069) file: [cf0fc8eb] check-in: [82f502cd] user: danielk1977 branch: trunk, size: 19322
2006-01-30
22:35
Make sure the 3rd parameter to sqlite3_prepare() is honored. Ticket #1650. (CVS 3040) file: [40ae23c8] check-in: [9d53cc88] user: drh branch: trunk, size: 19202
2006-01-25
22:50
Minor comment changes and code optimizations. (CVS 3029) file: [9753e8e5] check-in: [9e55dcd1] user: drh branch: trunk, size: 18984
2006-01-23
00:04
Remove vestiges of the older TSD code for handling OOM exceptions. Prepare for the release of 3.3.2. (CVS 2991) file: [63492085] check-in: [a65e85f0] user: drh branch: trunk, size: 18667
2006-01-18
18:22
Include the ThreadData structure in internal malloc() testing. Also fixes for revealed bugs. (CVS 2974) file: [5d6f5b71] check-in: [c7b9d50d] user: danielk1977 branch: trunk, size: 18846
16:51
Use a global variable protected by a mutex instead of thread-specific-data to record malloc() failures. (CVS 2972) file: [5aa661a3] check-in: [ac090f2a] user: danielk1977 branch: trunk, size: 18758
15:25
Change sqlite3MallocClearFailed() calls to sqlite3ApiExit(), a better API. (CVS 2970) file: [12940092] check-in: [e0b022e5] user: danielk1977 branch: trunk, size: 18856
2006-01-17
13:21
Various fixes that allow the malloc() failure tests to pass again. (CVS 2963) file: [84c3cbca] check-in: [0505405f] user: danielk1977 branch: trunk, size: 19153
2006-01-16
11:29
Clarify error handling in pager code. No functional changes. (CVS 2956) file: [368f5c04] check-in: [7b488362] user: danielk1977 branch: trunk, size: 19121
2006-01-13
06:33
Minor modification to restoreOrClearCursorPosition() to improve efficiency. Do not allocate the extra 8-bytes if memory-management is not enabled. (CVS 2936) file: [1058dcb1] check-in: [dd705955] user: danielk1977 branch: trunk, size: 19077
2006-01-12
12:43
About a 2.5% speed improvement by reducing the number of sqlite3ThreadData calls in the parser. (CVS 2924) file: [0f672b97] check-in: [0caa1994] user: drh branch: trunk, size: 18988
2006-01-11
21:41
Automatically deallocate thread-specific data when it is no longer being used. Ticket #1601. Also implemented the suggestion of ticket #1603. Memory management is now off by default at compile-time. The sqlite3_enable_memory_management() API has been removed. (CVS 2919) file: [60c1f5e3] check-in: [5d9c6aa9] user: drh branch: trunk, size: 18907
14:09
Fix bugs caused by assuming that shared-schemas are initialized. (CVS 2917) file: [65b166b8] check-in: [3970eb87] user: danielk1977 branch: trunk, size: 18867
2006-01-10
17:58
Store collation sequence names instead of pointers in sharable schema data structures. (CVS 2904) file: [3283bb65] check-in: [0f0213be] user: danielk1977 branch: trunk, size: 19564
2006-01-09
16:12
Fix some errors to do with attached databases and text encodings in shared-cache mode. (CVS 2895) file: [41d9a856] check-in: [3e75d3d5] user: danielk1977 branch: trunk, size: 19560
06:29
Rename DbSchema to "Schema" and SqliteTsd to "ThreadData". (CVS 2893) file: [e0812d49] check-in: [82b81f69] user: danielk1977 branch: trunk, size: 19439
2006-01-06
21:52
Changes so that SQLITE_OMIT_PARSER and SQLITE_OMIT_DISKIO work. (CVS 2878) file: [fef89dc9] check-in: [9d71b7de] user: drh branch: trunk, size: 19406
13:00
Add some simple tests and fixes for shared-schema locking. (CVS 2869) file: [48baea21] check-in: [d054bed1] user: danielk1977 branch: trunk, size: 17068
2006-01-05
11:34
Add the shared schema/pager modifications. Very few tests so far. (CVS 2859) file: [67ff283f] check-in: [deeda0dc] user: danielk1977 branch: trunk, size: 16618
2006-01-04
15:54
Add support for CREATE INDEX IF NOT EXISTS and DROP INDEX IF EXISTS. (CVS 2855) file: [7639314c] check-in: [551cdd6c] user: drh branch: trunk, size: 15960
2005-12-29
19:23
Add serial-types 8 and 9 for integer constants of 0 and 1 that use zero bytes of storage. Make the default file format 4. Add the SQLITE_DEFAULT_FILE_FORMAT compile-time option to lower the default file format number so that newly created databases can be read and written by older versions of SQLite. (CVS 2845) file: [1f2bf830] check-in: [ae301db8] user: drh branch: trunk, size: 15984
2005-12-16
01:06
Initial infrastructure for recognizing DESC indices and being able to read and write older databases that specify DESC indices but do not really use them. Nothing is close to working yet. (CVS 2822) file: [1417a396] check-in: [cd110aa2] user: drh branch: trunk, size: 15943
2005-12-15
03:04
Fix memory allocation problems on the utf-16 versions of collating function control routines. (CVS 2817) file: [ca4d58a4] check-in: [ad292e27] user: drh branch: trunk, size: 16343
2005-12-12
06:53
Fix minor malloc() related problems and add sqlite3_soft_heap_limit() stubs. (CVS 2814) file: [9717bd42] check-in: [1637f379] user: danielk1977 branch: trunk, size: 16484
2005-12-09
20:02
Clean up annoying (and pointless) compiler warnings about differing signedness. (CVS 2810) file: [8d75f7db] check-in: [83a59151] user: drh branch: trunk, size: 16615
14:25
Many small changes to ensure memory is not leaked after malloc() fails. (CVS 2808) file: [7e21ab5e] check-in: [601c3354] user: danielk1977 branch: trunk, size: 16636
2005-12-06
12:52
Some elements of the new malloc() failure handling. Not all cases work properly yet. Also, library is not threadsafe if malloc() fails right now. (CVS 2800) file: [e9396701] check-in: [e1606658] user: danielk1977 branch: trunk, size: 16636
2005-09-10
16:46
Add the experimental EXPLAIN QUERY PLAN diagnostic capability. (CVS 2685) file: [fc098db2] check-in: [986efb7b] user: drh branch: trunk, size: 16251
2005-08-19
00:14
Bring testing coverage of the analyze.c file up to 100%. Bugs found and fixed in the process. (CVS 2599) file: [86f0d8e7] check-in: [2fe0ac4f] user: drh branch: trunk, size: 15949
2005-07-23
03:18
The results of ANALYZE are now loaded into internal data structures where they can be used. But they are not actually used yet. (CVS 2562) file: [fa0f6068] check-in: [1996bacf] user: drh branch: trunk, size: 15947
2005-05-25
04:11
Split main.c into two files to make building without the parser easier. (CVS 2481) file: [d53602d2] check-in: [d50915fa] user: danielk1977 branch: trunk, size: 15854 Added