SQLite

All files named ”src/build.c”
Login

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

History for src/build.c

2025-05-06
23:01
[01cab1fda9] part of check-in [f98aa940b4] Merge the latest trunk enhancements into the reuse-schema branch. (check-in: [f98aa940b4] user: drh branch: reuse-schema, size: 196097)
21:45
[d59cbcac45] part of check-in [9d6517e7cc] Merge the latest trunk enhancements into the bedrock branch. (check-in: [9d6517e7cc] user: drh branch: bedrock, size: 194818)
21:26
[ec94615c47] part of check-in [55a51ba58f] Merge all the latest trunk enhancements into the begin-concurrent branch. (check-in: [55a51ba58f] user: drh branch: begin-concurrent, size: 194855)
2025-04-25
12:39
[67c1db4c5e] part of check-in [3e627d66eb] Fix an off-by-one error in an assert(), discovered by oss-fuzz. This is a harmless error in as much as assert()s are disabled in production builds, and because the off-by-one only occurs on nonsensical CREATE INDEX statements. (check-in: [3e627d66eb] user: drh branch: trunk, size: 194766)
2025-04-21
13:08
[c8e082c78e] part of check-in [b3a526a887] Merge all the latest trunk enhancements into the reuse-schema branch. (check-in: [b3a526a887] user: drh branch: reuse-schema, size: 196095)
13:02
[66cb4c171a] part of check-in [3215186aa9] Merge all the latest trunk enhancements into the bedrock branch. (check-in: [3215186aa9] user: drh branch: bedrock, size: 194816)
12:41
[225e7c10ff] part of check-in [2866119c75] Merge all recent trunk enhancements into the begin-concurrent branch. (check-in: [2866119c75] user: drh branch: begin-concurrent, size: 194853)
2025-04-16
10:53
[86a7efd263] part of check-in [ba7d5bad32] Correctly handle the case of a multi-column UNIQUE constraint that contains the ROWID as one of it columns, and then the columns of that UNIQUE are used in a row-value IN operator as a WHERE clause constraint. (check-in: [ba7d5bad32] user: drh branch: branch-3.49, size: 194076)
2025-04-15
21:59
[ad72c60b6e] part of check-in [d22475b81c] Correctly handle the case of a multi-column UNIQUE constraint that contains the ROWID as one of it columns, and then the columns of that UNIQUE are used in a row-value IN operator as a WHERE clause constraint. Reported by forum post b9647a113b. Problem introduced by [723f1be3d4a905a6], part of ticket [da78413751863]. (check-in: [d22475b81c] user: drh branch: trunk, size: 194764)
2025-04-10
10:18
[a411f73243] part of check-in [20acd630b9] Remove unnecessary "www." prefixes on domain names in URLs. (check-in: [20acd630b9] user: drh branch: trunk, size: 194733)
2025-03-15
20:35
[058ce32d3f] part of check-in [271e0373a8] Merge the latest trunk enhancements into the reuse-schema branch. (check-in: [271e0373a8] user: drh branch: reuse-schema, size: 196072)
20:32
[5a55286ff3] part of check-in [b1860b6372] Merge the latest trunk enhancements into the bedrock branch via the wal2 intermediary. (check-in: [b1860b6372] user: drh branch: bedrock, size: 194793)
20:25
[39eb8fe563] part of check-in [624225499c] Merge the latest trunk enhancements into the begin-concurrent branch. (check-in: [624225499c] user: drh branch: begin-concurrent, size: 194830)
2025-03-14
18:10
[3fe9b9d0f4] part of check-in [6fd6b32d06] Make use of the flexible-array feature of C99, when available, to try to pacify -fsanitize=strict-bounds. This check-in fixes the core. There is more yet to do in FTS3, RTREE, and in FTS5. (check-in: [6fd6b32d06] user: drh branch: flex-array, size: 194741)
2025-03-03
16:53
[259abd6d09] part of check-in [b51690e180] Merge the latest trunk enhancements into the reuse-schema branch. (check-in: [b51690e180] user: drh branch: reuse-schema, size: 196261)
16:01
[56e9426add] part of check-in [2033763007] Merge the latest trunk enhancements into the bedrock branch through the wal2 intermediary. (check-in: [2033763007] user: drh branch: bedrock, size: 194982)
15:53
[b03c25c9c3] part of check-in [051a6b159e] Merge all the latest trunk enhancements into the begin-concurrent branch. (check-in: [051a6b159e] user: drh branch: begin-concurrent, size: 195019)
2025-02-21
20:35
[20793695ef] part of check-in [5822feec43] The number of declared columns in an index is limited to SQLITE_LIMIT_COLUMN. But the actual number of columns in the implementation might need to be twice as much to account for the primary key at the end. Ensure that the code is able to deal with this. This is a correction to check-in [d7729dbbf231d57c]. (check-in: [5822feec43] user: drh branch: trunk, size: 194930)
17:03
[c2bcfc7e50] part of check-in [d7729dbbf2] Detect when a UNIQUE or PRIMARY KEY on a WITHOUT ROWID table would need to use more than SQLITE_LIMIT_COLUMN columns and raise an error. Also include some unrelated compiler warning fixes. (check-in: [d7729dbbf2] user: drh branch: trunk, size: 194783)
2025-02-18
14:56
[989b04186f] part of check-in [b2bf063011] Merge the latest trunk enhancements into the reuse-schema branch. (check-in: [b2bf063011] user: drh branch: reuse-schema, size: 195787)
14:48
[94e1a3347e] part of check-in [c09656c621] Merge the latest trunk enhancements into the bedrock branch. (check-in: [c09656c621] user: drh branch: bedrock, size: 194508)
14:37
[f3e49f890e] part of check-in [3c87a6d195] Merge all the latest trunk enhancements into the begin-concurrent branch. (check-in: [3c87a6d195] user: drh branch: begin-concurrent, size: 194545)
2025-02-17
17:33
[2fa35745a2] part of check-in [215650a5a1] Code changes that make it easier to prove that no 32-bit integer overflows happen during memory allocation. No problems fixed; this change is just to make future maintenance easier. (check-in: [215650a5a1] user: drh branch: trunk, size: 194456)
2025-02-09
19:49
[602fc45ea6] part of check-in [a93e3fe0ee] Performance and size optimization for the sqlite3ColumnIndex() routine. (check-in: [a93e3fe0ee] user: drh branch: trunk, size: 194301)
2025-02-08
16:16
[83c43ddb51] part of check-in [11eb8f99e5] Put a 16-byte hash table for column names on each Table object, to speed up column name lookups. (check-in: [11eb8f99e5] user: drh branch: trunk, size: 194299)
14:15
[48796a4529] part of check-in [351dbbc2bf] Use the sqlite3ColumnIndex() routine to look up a column in a table, rather than using a custom loop. Performance improvement, size reduction, and complexity decrease. (check-in: [351dbbc2bf] user: drh branch: trunk, size: 194206)
2025-02-07
15:49
[cac3aa87f3] part of check-in [45e462c006] Further reduction in the amount of memset() needed to initialize the Parse object. (check-in: [45e462c006] user: drh branch: trunk, size: 194439)
2025-02-03
15:17
[a927845494] part of check-in [858163f938] Merge the latest trunk changes into the reuse-schema branch. (check-in: [858163f938] user: drh branch: reuse-schema, size: 195376)
15:11
[085d2ae28e] part of check-in [1cef92de50] Merge all the latest trunk enhancements into the bedrock branch. (check-in: [1cef92de50] user: drh branch: bedrock, size: 194097)
14:59
[d0fff1b9d2] part of check-in [f456a72e0c] Merge all the latest trunk enhancements and fixes into the begin-concurrent branch. (check-in: [f456a72e0c] user: drh branch: begin-concurrent, size: 194134)
2025-01-28
12:50
[357f98cdd9] part of check-in [a4625bb995] Simplify the IdList object to remove unnecessary fields. Performance increases by about 0.8%. (check-in: [a4625bb995] user: drh branch: trunk, size: 194045)
2025-01-10
18:03
[e5dfbf5362] part of check-in [b0cd8dfcf9] Update log messages on this branch to say "v=22". Also add log message to slow calls to sqlite3_schema_copy(). (check-in: [b0cd8dfcf9] user: dan branch: cf8f1552-commit-instr, size: 210108)
2025-01-09
20:41
[5255fc726c] part of check-in [c25dd2dec5] Run tests with SQLITE_TESTCTRL_SCHEMACOPY for mdevtest and sdevtest on this branch. (check-in: [c25dd2dec5] user: dan branch: schema-copy, size: 209957)
19:18
[0bbe47ec72] part of check-in [e1603c9cda] Rationalize and add comments to new code on this branch. (check-in: [e1603c9cda] user: dan branch: schema-copy, size: 209958)
2025-01-08
10:55
[013ba4f080] part of check-in [961af94442] Ensure that integrity-check processes tables in the same order when using a copied schema as it does when using one loaded directly from the db. (check-in: [961af94442] user: dan branch: schema-copy, size: 206831)
2025-01-07
21:04
[c8b1ce2275] part of check-in [ac9ca88590] Fix many problems in the sqlite3_schema_copy() function. (check-in: [ac9ca88590] user: dan branch: schema-copy, size: 206535)
2025-01-06
20:39
[19d6ba76fb] part of check-in [65ede04d21] Implemenation of experimental API sqlite3_schema_copy(), for copying a database schema between connections. More testing to come. (check-in: [65ede04d21] user: dan branch: schema-copy, size: 205222)
2024-11-27
14:41
[a933062f4b] part of check-in [e6f6352618] Use the P5 rather than the P3 parameter of OP_AutoCommit to avoid an unnecessary conflict in the begin-concurrent branch. Fix some comments. (check-in: [e6f6352618] user: drh branch: commit-and-continue, size: 194650)
2024-11-18
15:34
[5a14f6593b] part of check-in [59a7eb297c] Merge the latest trunk changes into the bedrock branch. (check-in: [59a7eb297c] user: drh branch: bedrock, size: 194173)
2024-11-16
18:37
[2966f47b7b] part of check-in [17360660bb] Clean up the implementation now that it only has to deal with the much simplier concept of COMMIT AND CONTINUE TRANSACTION. (check-in: [17360660bb] user: drh branch: commit-and-continue, size: 194617)
2024-11-14
12:03
[c219c01d34] part of check-in [ddac597321] Early prototype code for COMMIT AND BEGIN. Does not currently work. (check-in: [ddac597321] user: drh branch: commit-and-continue, size: 194461)
2024-11-11
21:07
[b6e5691ab8] part of check-in [b741608cd3] Adjust the behavior of sqlite3_changes64() so that it counts INSERTs into a new table created using "CREATE TABLE name AS SELECT ...". It has never done this before. The documentation is a little ambiguous about whether or not it actually should. This check-in is on a branch because it will probably never make it to trunk for fear of breaking some legacy program. (check-in: [b741608cd3] user: drh branch: chngcnt-create-as, size: 194201)
17:03
[196415a804] part of check-in [52bd7953f1] Update this branch with latest changes and build system updates from trunk. (check-in: [52bd7953f1] user: dan branch: begin-concurrent, size: 194210)
2024-10-30
14:24
[f6c56d42ff] part of check-in [67087fe433] Merge the readonly-ignore-wal-jrnl feature into a sub-branch of reuse-schema. (check-in: [67087fe433] user: drh branch: reuse-schema-ro-waljrnl, size: 195452)
2024-10-28
17:27
[c6b09342d8] part of check-in [3a3f7bf430] Remove the never-used and never-documented and long-ago deprecated user-authentication feature option. [65884d4f81a4705b]. (check-in: [3a3f7bf430] user: drh branch: trunk, size: 194121)
2024-10-05
15:51
[a6852fb4f5] part of check-in [a92bb48a48] Merge latest trunk changes into this branch. (check-in: [a92bb48a48] user: dan branch: lateral-join, size: 195281)
2024-08-29
23:43
[08697d6a4d] part of check-in [ff94464cec] Merge the latest trunk enhancement into the bedrock branch through the wal2 intermediary. (check-in: [ff94464cec] user: drh branch: bedrock, size: 195070)
23:24
[b7864e0101] part of check-in [b05d30bec1] Merge all the latest trunk enhancements into the begin-concurrent branch. (check-in: [b05d30bec1] user: drh branch: begin-concurrent, size: 195107)
17:42
[648138031b] part of check-in [87aa6fc212] Merge all the latest trunk enhancements into the reuse-schema branch. (check-in: [87aa6fc212] user: drh branch: reuse-schema, size: 196349)
2024-08-21
07:38
[3a1840d9d1] part of check-in [81a1ede388] Remove incorrect assert() statements in the SrcItem invariant validator. dbsqlfuzz 7f908865436ce531b0ace55c97a1c71d05c4e76c. (check-in: [81a1ede388] user: drh branch: trunk, size: 195018)
2024-08-20
20:01
[c5522b5faf] part of check-in [17699329aa] Remove unreachable code. (check-in: [17699329aa] user: drh branch: srcitem-opt, size: 195140)
19:09
[69d79a255a] part of check-in [fd72d3400a] Tighter checking of access constraints on union members in SrcItem. Improved invariant checking. (check-in: [fd72d3400a] user: drh branch: srcitem-opt, size: 195153)
16:50
[29ebc26d90] part of check-in [b249516f6a] Memory issues fixes so that mdevtest now passes. (check-in: [b249516f6a] user: drh branch: srcitem-opt, size: 194690)
2024-08-19
22:48
[d243a17292] part of check-in [8ff5dda844] Refactor the SrcItem object so that information about subqueries is stored in a separately allocated Subquery object. This reduces the memory requirements for SrcItem and makes the code run faster. It also provides an expansion path for subquery processing that does not burden simple queries. The current checking mostly works, but there are still issues that need to be tracked down and fixed. (check-in: [8ff5dda844] user: drh branch: srcitem-opt, size: 194652)
2024-08-17
23:23
[664804cbef] part of check-in [9f5aeef3cb] Give unique names to fields in the SrcItem object, to facilitate analysis of how those fields are used using "grep". (check-in: [9f5aeef3cb] user: drh branch: srcitem-opt, size: 192280)
19:46
[8d853f7900] part of check-in [a4c59ac3c6] Reduce the size of the SrcItem object by combining fields into a union. (check-in: [a4c59ac3c6] user: drh branch: srcitem-opt, size: 191955)
2024-08-01
01:06
[a96f463a5d] part of check-in [ff9fdd07d2] Merge the latest trunk enhancements into the reuse-schema branch. (check-in: [ff9fdd07d2] user: drh branch: reuse-schema, size: 193130)
00:47
[6138c43fcb] part of check-in [c1f616ce80] Merge the latest trunk enhancements into the bedrock branch. (check-in: [c1f616ce80] user: drh branch: bedrock, size: 191851)
00:02
[16c64e2188] part of check-in [3b131bd9aa] Merge all the latest trunk enhancements into the begin-concurrent branch. (check-in: [3b131bd9aa] user: drh branch: begin-concurrent, size: 191888)
2024-07-20
08:31
[7db395d00b] part of check-in [84b80233e7] Optimizations and improved comments. (check-in: [84b80233e7] user: drh branch: lateral-join, size: 192062)
2024-06-07
21:00
[9e6a971156] part of check-in [972a33db0b] Experimental optimization to rewrite a SELECT with an EXISTS(...) expression in the WHERE clause as a join. (check-in: [972a33db0b] user: dan branch: exists-to-join, size: 191924)
2024-05-25
23:13
[237ccc0290] part of check-in [57aeb3a287] Ensure that sqlite3ViewGetColumnNames() returns non-zero on any error. dbsqlfuzz d9de2a508f693e5a228d7a01d5341e3c64326fbb. (check-in: [57aeb3a287] user: drh branch: trunk, size: 191799)
2024-05-21
15:24
[a62853b61a] part of check-in [c65a82f1fa] Merge the latest trunk enhancements into the bedrock branch. (check-in: [c65a82f1fa] user: drh branch: bedrock, size: 191823)
15:20
[cd97a3d90b] part of check-in [97e0af8882] Merge the lates trunk enhancements into the reuse-schema branch. (check-in: [97e0af8882] user: drh branch: reuse-schema, size: 193102)
15:17
[85ef9135eb] part of check-in [5c1c8651d1] Merge the latest trunk enhancements into the begin-concurrent branch. (check-in: [5c1c8651d1] user: drh branch: begin-concurrent, size: 191860)
2024-05-02
11:51
[11ec7014a3] part of check-in [532795acd1] Omit the OP_SqlExec to "PRAGMA integrity_check" added by [348fa7aaf7958b3f] because it is a no-op. Even if the integrity_check failes, the CREATE TABLE is stull successful. The OP_SqlExec just burns CPU cycles for no reason. (check-in: [532795acd1] user: drh branch: faster-create, size: 191771)
2024-04-15
14:59
[c7e7a80b73] part of check-in [a1ff415341] Merge version 3.45.3 patches into the reuse-schema-3.45 sub-branch. (check-in: [a1ff415341] user: drh branch: reuse-schema-3.45, size: 193188)
14:18
[cce3c81f82] part of check-in [3dda82e001] Merge all 3.45.3 changes into the begin-concurrent-3.45 subbranch. (check-in: [3dda82e001] user: drh branch: begin-concurrent-3.45, size: 191946)
2024-03-26
10:48
[369d1bfb46] part of check-in [e469b02205] Merge all recent trunk enhancements into the reuse-schema branch. (check-in: [e469b02205] user: drh branch: reuse-schema, size: 193284)
10:45
[8574feab7d] part of check-in [33d3453f46] Merge all recent trunk enhancements into the bedrock branch. (check-in: [33d3453f46] user: drh branch: bedrock, size: 192005)
10:42
[c02fca1b60] part of check-in [9b854e54b0] Merge all recent trunk enhancements into the begin-concurrent branch. (check-in: [9b854e54b0] user: drh branch: begin-concurrent, size: 192042)
2024-03-24
19:08
[ec93d135f9] part of check-in [7a3d0027f8] Fix the SQLITE_ALLOW_ROWID_IN_VIEW bug-compatibility option so that it works again. Add the SQLITE_CONFIG_ROWID_IN_VIEW sqlite3_config() value to optionally disable the bug-compatibility mode at start-time. Enable testing of SQLITE_ALLOW_ROWID_IN_VIEW. (check-in: [7a3d0027f8] user: drh branch: branch-3.45, size: 191857)
2024-03-23
15:17
[02f5b25ca8] part of check-in [84b6fdea0b] Fix an adverse interaction between CREATE TABLE AS and the new VALUES-as-coroutine optimization. dbsqlfuzz c2c5e7e08b7e489d270a26d895077a03f678c33b (check-in: [84b6fdea0b] user: drh branch: trunk, size: 191953)
2024-03-20
11:04
[c28f319906] part of check-in [acc08353e2] Fix the SQLITE_ALLOW_ROWID_IN_VIEW bug-compatibility option so that it works again. Add the SQLITE_CONFIG_ROWID_IN_VIEW sqlite3_config() value to optionally disable the bug-compatibility mode at start-time. Enable testing of SQLITE_ALLOW_ROWID_IN_VIEW. (check-in: [acc08353e2] user: drh branch: branch-3.44, size: 191571)
10:40
[fff536730a] part of check-in [54680d0fbe] Fix a typo in a comment. (check-in: [54680d0fbe] user: drh branch: rowid-in-view, size: 191905)
2024-03-19
13:55
[71445e2d1e] part of check-in [b8e045c9e1] On second thought, change SQLITE_TESTCTRL_ROWID_IN_VIEW into a start-time option SQLITE_CONFIG_NO_ROWID_IN_VIEW. (check-in: [b8e045c9e1] user: drh branch: rowid-in-view, size: 191888)
13:31
[18b4caf7f4] part of check-in [8a6196ab29] When compiled with SQLITE_ALLOW_ROWID_IN_VIEW, rowid-in-view is on by default but can now be turned off using SQLITE_TESTCTRL_ROWID_IN_VIEW. Without the compile-time option, rowid-in-view is always off. (check-in: [8a6196ab29] user: drh branch: rowid-in-view, size: 191887)
2024-03-13
18:00
[39f9708e7a] part of check-in [5c8e80f435] Merge the latest trunk enhancements into the bedrock branch. (check-in: [5c8e80f435] user: drh branch: bedrock, size: 191735)
17:51
[1006ba1ad5] part of check-in [238fa84a9a] Merge the latest trunk enhancements into the begin-concurrent branch. (check-in: [238fa84a9a] user: drh branch: begin-concurrent, size: 191772)
15:59
[289d51f984] part of check-in [70ef3784f6] Merge the latest trunk enhancements into the reuse-schema branch. Fix the reuse-schema build of the CLI so that it works again. (check-in: [70ef3784f6] user: drh branch: reuse-schema, size: 193014)
2024-03-02
12:17
[7ee3616b8a] part of check-in [2627259069] Remove an unused line of code. (check-in: [2627259069] user: drh branch: multi-drop, size: 195079)
11:02
[b354f8d344] part of check-in [e70d6be751] Simplifications to multi-DROP logic. (check-in: [e70d6be751] user: drh branch: multi-drop, size: 195148)
00:29
[2ad0f3d31b] part of check-in [3992f45033] Improved rebustness against OOM and corruption. (check-in: [3992f45033] user: drh branch: multi-drop, size: 195206)
2024-03-01
22:42
[bbd0408e72] part of check-in [e5bf9556ff] When doing DROP TABLE or DROP INDEX, use a heap to ensure that the various btrees are dropped in the right order for autovacuum. (check-in: [e5bf9556ff] user: drh branch: multi-drop, size: 195154)
15:56
[ded762e673] part of check-in [33d3bb848b] Fix harmless compiler warning. (check-in: [33d3bb848b] user: drh branch: multi-drop, size: 194209)
14:47
[0beb76c245] part of check-in [144e332f44] Improved handling of foreign-key constraints on a multi-drop of tables. (check-in: [144e332f44] user: drh branch: multi-drop, size: 194233)
12:21
[3934479192] part of check-in [37d4c5e207] When doing a multi-drop, delete btrees beginning with the largest root page first and working toward smaller root pages, to avoid problems with root page renumbering due to autovacuum. (check-in: [37d4c5e207] user: drh branch: multi-drop, size: 194241)
2024-02-29
19:40
[25384963d1] part of check-in [02f9fc73ee] Attempt to fix multi-object DROP. Working better, but still not perfect. (check-in: [02f9fc73ee] user: drh branch: multi-drop, size: 193436)
13:44
[786e47a8cc] part of check-in [2266086cf0] Add the ability to DROP one or more objects of the same class in a single statement by listing the objects as multiple arguments to the DROP command. (check-in: [2266086cf0] user: drh branch: multi-drop, size: 192261)
2024-02-17
16:39
[04f1bcee18] part of check-in [dd44970625] Add new MASK bits to PRAGMA optimize: 0x70000. (check-in: [dd44970625] user: drh branch: better-pragma-optimize, size: 191683)
2024-01-22
12:56
[05c9eb3876] part of check-in [249048b0cb] Fix userauth so that it works together with SQLITE_OMIT_SHARED_CACHE. (Forum post 0bfc5888a384d430). However, also change to code to issue a deprecation warning whenever SQLITE_USER_AUTHENTICATION is used. (check-in: [249048b0cb] user: drh branch: trunk, size: 191673)
2024-01-13
20:38
[9a8a4b14de] part of check-in [bb9a715748] Merge latest trunk changes into this branch. (check-in: [bb9a715748] user: dan branch: reuse-schema, size: 192966)
20:36
[9bbb6fcdde] part of check-in [c39f658522] Merge latest wal2 changes into this branch. (check-in: [c39f658522] user: dan branch: bedrock, size: 191687)
19:57
[9c04ebb789] part of check-in [95bf4bc2e2] Merge latest trunk changes into this branch. (check-in: [95bf4bc2e2] user: dan branch: begin-concurrent, size: 191724)
2024-01-09
12:28
[e7d9044592] part of check-in [97709ce2a1] Improved resolution of unqualified names in the REINDEX command. Forum thread 74cd0ceabd. (check-in: [97709ce2a1] user: drh branch: trunk, size: 191635)
2024-01-04
17:33
[d527d7e46d] part of check-in [e07f2451e8] Merge the latest trunk enhancements into the reuse-schema branch. (check-in: [e07f2451e8] user: drh branch: reuse-schema, size: 192889)
16:28
[a5a67f51bd] part of check-in [707f79c70c] Merge the latest trunk enhancements into the bedrock branch. (check-in: [707f79c70c] user: drh branch: bedrock, size: 191610)
15:49
[84d8550552] part of check-in [c407d3bb99] Merge the latest trunk enhancements into the begin-concurrent branch. (check-in: [c407d3bb99] user: drh branch: begin-concurrent, size: 191647)
13:01
[f640dbe723] part of check-in [fe952c1290] Restructure some code to fix what appears to be a false-positive UBSAN warning. (check-in: [fe952c1290] user: drh branch: trunk, size: 191558)
2023-12-06
22:22
[29e5e0a86f] part of check-in [5c36819c42] Merge the latest trunk enhancements into the reuse-schema branch. (check-in: [5c36819c42] user: drh branch: reuse-schema, size: 192877)
21:18
[145ed99c28] part of check-in [c2e53000f4] Merge the latest trunk changes into the bedrock branch. (check-in: [c2e53000f4] user: drh branch: bedrock, size: 191598)
21:05
[520c4a7a19] part of check-in [b1c58f485f] Merge the latest trunk enhancements into the begin-concurrent branch. (check-in: [b1c58f485f] user: drh branch: begin-concurrent, size: 191635)
18:25
[386eadecab] part of check-in [ec0ae40309] Work around LLVM's newfound hatred of function pointer casts. Forum post 1a7d257346636292. (check-in: [ec0ae40309] user: drh branch: trunk, size: 191546)
2023-12-02
12:23
[d0bb02989e] part of check-in [8abc2ccaf8] Remove a NEVER that can be true if a virtual table column is declared to have a DEFAULT. See forum post 3d4de8917627d058. (check-in: [8abc2ccaf8] user: drh branch: trunk, size: 191342)
2023-10-30
23:05
[154393fc1b] part of check-in [28f9a55928] Merge the latest 3.44.0 release candidate changes into the reuse-schema branch. (check-in: [28f9a55928] user: drh branch: reuse-schema, size: 192680)
22:57
[4c7cf22516] part of check-in [956b03a462] Merge the latest 3.44.0 release candidate patches into the bedrock branch. (check-in: [956b03a462] user: drh branch: bedrock, size: 191401)
21:39
[57d36044b2] part of check-in [9fa405eb5a] Merge the latest trunk changes into the begin-concurrent branch. (check-in: [9fa405eb5a] user: drh branch: begin-concurrent, size: 191438)
2023-10-26
16:05
[189e4517d6] part of check-in [ec6bffa3b0] Handle the case where a virtual table xBestIndex method called while coding a trigger fired by a top-level statement with a RETURNING clause prepares a statement that also contains a RETURNING clause. (check-in: [ec6bffa3b0] user: dan branch: trunk, size: 191349)
2023-10-23
19:27
[d1920b5c96] part of check-in [52262ac920] Merge the latest trunk enhancments into the reuse-schema branch. (check-in: [52262ac920] user: drh branch: reuse-schema, size: 192862)
16:08
[673c0b7e18] part of check-in [c9c9bc097a] Merge latest changes from wal2 into this branch. (check-in: [c9c9bc097a] user: dan branch: bedrock, size: 191583)
15:48
[8840f08016] part of check-in [c5ef898a79] Merge latest trunk changes into this branch. (check-in: [c5ef898a79] user: dan branch: begin-concurrent, size: 191620)
2023-10-13
22:19
[1a9061ab67] part of check-in [348fa7aaf7] Earlier detection of a host of errors in CREATE TABLE, such the CREATE TABLE statement itself fails, rather than generating an error on the first attempted use of the created table. (check-in: [348fa7aaf7] user: drh branch: trunk, size: 191531)
13:49
[4b1d6f8d2b] part of check-in [3237bf9641] Immediately fail a CREATE TABLE statement that attempts to create a table that has a generated column loop. Legacy allows the table to be created but the table would not be usable for anything. (check-in: [3237bf9641] user: drh branch: trunk, size: 191278)
2023-09-23
19:25
[a08d098ad1] part of check-in [d5dd39e37a] Avoid an error when parsing a schema that contains indexes with WHERE clauses containing unknown collation sequences. (check-in: [d5dd39e37a] user: dan branch: partial-index-terms, size: 191040)
18:52
[a52c1e9a17] part of check-in [d0e21f20bd] Fix a failing assert() caused by changes on this branch. (check-in: [d0e21f20bd] user: dan branch: partial-index-terms, size: 191188)
2023-09-22
20:21
[41a29ee957] part of check-in [66ed7abdfa] In partial index scans, if the WHERE clause implies a constant value for a table column, replace occurences of that table column with the constant. This increases the likelihood of the partial index being a covering index. (check-in: [66ed7abdfa] user: dan branch: partial-index-terms, size: 191143)
2023-09-09
17:53
[79a4edcee6] part of check-in [71548f72ad] Remove out-of-date comment regarding use of Parse.pConstExpr. (check-in: [71548f72ad] user: dan branch: trunk, size: 191009)
2023-06-22
14:50
[9b97abdac5] part of check-in [905c6c9ddb] Merge the latest trunk enhancements into the reuse-schema branch. (check-in: [905c6c9ddb] user: drh branch: reuse-schema, size: 192571)
14:40
[d1f3d64787] part of check-in [0551b79b17] Merge the latest trunk enhancements into the bedrock branch. (check-in: [0551b79b17] user: drh branch: bedrock, size: 191292)
13:28
[84238806b9] part of check-in [5bd26fea6a] Merge recent trunk enhancements into the begin-concurrent branch. (check-in: [5bd26fea6a] user: drh branch: begin-concurrent, size: 191329)
2023-06-20
17:45
[a8ae3b32d9] part of check-in [f94f3021cd] Omit unnecessary calls to table locking routines in the common case when there is no shared cache. (check-in: [f94f3021cd] user: drh branch: trunk, size: 191240)
2023-06-07
17:03
[cb54df6fd0] part of check-in [8c291d9994] Fix straggler misspellings and tidy the custom dictionary. Also include pickups from forum post c61fb09afd. (check-in: [8c291d9994] user: larrybr branch: spell-check, size: 191155)
08:40
[bf900f75fb] part of check-in [26c1bb4bd9] Add a C-source spell-checking facility. make misspell (on Nix) (check-in: [26c1bb4bd9] user: larrybr branch: spell-check, size: 191156)
2023-05-17
15:46
[5512d5a335] part of check-in [6084c5fb6d] New assert() statements to verify that Expr.iColumn is never used as an array index when its value is negative. (check-in: [6084c5fb6d] user: drh branch: trunk, size: 191254)
2023-05-13
15:21
[a2d65805cb] part of check-in [515bb26ee6] Merge the latest 3.42.0 changes into the reuse-schema branch. (check-in: [515bb26ee6] user: drh branch: reuse-schema, size: 192599)
15:17
[e68566439c] part of check-in [18c5e16b55] Merge the latest 3.42.0 changes from trunk into the begin-concurrent branch. (check-in: [18c5e16b55] user: drh branch: begin-concurrent, size: 191359)
15:10
[52784bddd5] part of check-in [d55ba8bb85] Merge the latest 3.42.0 beta changes into the bedrock branch. (check-in: [d55ba8bb85] user: drh branch: bedrock, size: 191322)
2023-05-05
14:16
[7a7217f75f] part of check-in [fece588b18] Updates to compile-time option usage and especially to the compile-time option test script in tool/omittest.tcl. (check-in: [fece588b18] user: drh branch: trunk, size: 191270)
2023-05-02
21:10
[9648ecfd54] part of check-in [6f22c7679f] Update this branch with latest changes from trunk. (check-in: [6f22c7679f] user: dan branch: begin-concurrent, size: 191360)
2023-03-22
13:47
[92772244fb] part of check-in [995fa4d09d] Merge the 3.41.2 patch into the reuse-schema-3.41 subbranch of reuse-schema (check-in: [995fa4d09d] user: drh branch: reuse-schema-3.41, size: 192600)
13:35
[58d1e9f227] part of check-in [b7a144c499] Merge the 3.41.2 patches into the bedrock-3.41 subbranch of bedrock. (check-in: [b7a144c499] user: drh branch: bedrock-3.41, size: 191323)
2023-03-17
00:01
[8357d6ca9a] part of check-in [648899e4de] Fix assert() statements that would (incorrectly) fire if an IF NOT EXISTS trigger that already exists contained two or more RETURNING clauses. Tickets [89d259d45b855a0d] and [d15b3a4ea901ef0d]. (check-in: [648899e4de] user: drh branch: trunk, size: 191271)
2023-03-10
12:47
[1ac9b60c68] part of check-in [2780cc9f8b] Merge the 3.41.1 patches into the bedrock branch. (check-in: [2780cc9f8b] user: drh branch: bedrock-3.41, size: 191266)
00:59
[e3f001dca4] part of check-in [af08bd3e6e] Merge the branch-3.41 patches into the reuse-schema branch. (check-in: [af08bd3e6e] user: drh branch: reuse-schema-3.41, size: 192543)
2023-03-07
23:47
[4fed662d38] part of check-in [1096b5a7cc] Fix a bug introduced 4 days ago by [e95439119ac200cb]: do not set the Expr.affExpr field of a generated column expression if the expression is a RAISE() function, as affExpr has a different meaning for RAISE. Forum post b312e075b5. (check-in: [1096b5a7cc] user: drh branch: trunk, size: 191214)
2023-03-03
19:43
[542a04532a] part of check-in [2535bc8c25] Follow-up to [e95439119ac200cb] to fix a case where a pointer is NULL due to OOM. (check-in: [2535bc8c25] user: drh branch: trunk, size: 191191)
15:12
[f305be161a] part of check-in [e95439119a] Do not use an expression index on a generated column if generated column has the wrong affinity. dbsqlfuzz 65f5eb57f8859344d5f1f33e08c77ee12960ed83 (check-in: [e95439119a] user: drh branch: trunk, size: 191179)
2023-02-06
17:35
[c4873f0356] part of check-in [46e79167b9] Merge the latest trunk enhancements into the begin-concurrent branch. (check-in: [46e79167b9] user: drh branch: begin-concurrent, size: 191233)
2023-02-02
14:27
[a5641434e3] part of check-in [5a22010c35] Merge latest enhancments into this branch from branch wal2. (check-in: [5a22010c35] user: dan branch: begin-concurrent-pnu-wal2, size: 191196)
2023-01-12
19:43
[94d3e9ff44] part of check-in [deb26d034b] Merge latest trunk changes, including fixes for RBU pass-through mode, with this branch. (check-in: [deb26d034b] user: dan branch: reuse-schema, size: 192473)
2022-12-29
18:54
[c55ab6d1b0] part of check-in [eed1e03072] A call to sqlite3_declare_vtab() should not cause DML/DDL authorization failures. (check-in: [eed1e03072] user: drh branch: trunk, size: 191144)
2022-12-23
14:49
[e7b131773a] part of check-in [c14bbe1606] Fix lots of harmless, nuisance compiler warnings, mostly unused parameter warnings in extensions. (check-in: [c14bbe1606] user: drh branch: trunk, size: 191109)
2022-12-21
21:01
[74432e7aeb] part of check-in [1bfae9b3c6] Merge the latest trunk enhancements into the reuse-schema branch. (check-in: [1bfae9b3c6] user: drh branch: reuse-schema, size: 192421)
20:43
[ae8007e443] part of check-in [bcab19d21b] Merge the latest trunk enhancements into the begin-concurrent-pnu-wal2 branch. (check-in: [bcab19d21b] user: drh branch: begin-concurrent-pnu-wal2, size: 191144)
20:07
[022afee249] part of check-in [0c198aee53] Update the begin-concurrent branch with the latest enhancements on trunk. (check-in: [0c198aee53] user: drh branch: begin-concurrent, size: 191181)
14:13
[9288348515] part of check-in [40549bacb3] Ensure that the expression of a virtual column really is an expression and not just a reference to another column, as a real expression is necessary for the indexed expression coverage optimization to work properly. Forum thread 07b36e3899a9ae21. (check-in: [40549bacb3] user: drh branch: trunk, size: 191092)
2022-12-15
20:03
[ea069a5655] part of check-in [44135d6ea8] Create a new affinity called FLEXNUM that works like NUMERIC except that it never tries to convert integer to real or real to integer. The affinity is only used internally - it is not possible to create a table column with this affinity. This affinity is used on subqueries and views that are built off of a compound SELECT and where the datatype is controlled by a CAST expression. dbsqlfuzz c9ee6f9a0a8b8fefb02cf69de2a8b67ca39525c8 (check-in: [44135d6ea8] user: drh branch: trunk, size: 190708)
2022-12-13
15:54
[51b46b657d] part of check-in [4dfb1b450b] Refactor the sqlite3SelectAddColumnTypeAndCollation() routine. Improved comments. Now called sqlite3SubqueryColumnTypes(). (check-in: [4dfb1b450b] user: drh branch: refactor-subquery-types, size: 190565)
2022-11-05
15:31
[e8804b9fdb] part of check-in [224eaf2622] Merge the latest trunk enhancements into the reuse-schema branch. (check-in: [224eaf2622] user: drh branch: reuse-schema, size: 191953)
2022-11-04
19:09
[73d472e3de] part of check-in [aa2e247b58] Merge the latest trunk enhancements into the begin-concurrent-pnu-wal2 branch. (check-in: [aa2e247b58] user: drh branch: begin-concurrent-pnu-wal2, size: 190676)
18:33
[dd4b69d26a] part of check-in [b361ee983c] Merge the latest trunk enhancements into the begin-concurrent branch. (check-in: [b361ee983c] user: drh branch: begin-concurrent, size: 190713)
2022-10-24
21:58
[532fa3bebc] part of check-in [80fbb30f28] This check-in attempts to make the SrcItem object smaller by combining the zDatabase and pSchema fields into a single union. It mostly works, but there are some issues, and the performance savings is minimal. So it is side-tracked onto this dead-end branch. (check-in: [80fbb30f28] user: drh branch: failed-opt-attempt, size: 190774)
2022-10-22
13:49
[d3e43e950e] part of check-in [d96f6cc847] Clarification on the meaning of SrcList and SrcItem and especially the SrcItem.colUsed and Index.colNotIdxed fields. Comment changes only - no changes to code. (check-in: [d96f6cc847] user: drh branch: trunk, size: 190624)
2022-10-21
20:12
[df4dbc89b0] part of check-in [5dd7858820] Begin transitioning the fixed-length (64-bit) bitmap used to keep track of the subset of columns of a table that are used by a query into a more general structure that can work with wide tables. Experimental. (check-in: [5dd7858820] user: drh branch: column-set, size: 190531)
2022-10-19
11:22
[9756d8b0bf] part of check-in [3da1032878] If a query uses an index where one or more of the columns of the index is an expression and if the corresponding expression is used elsewhere in the query, then strive to read the value of the expression out of the index, rather than recomputing it. This is the "Indexed Expression Optimizations". (check-in: [3da1032878] user: drh branch: branch-3.28, size: 158259)
2022-10-17
14:30
[13bcc04821] part of check-in [8a510cb088] Get the indexed expression optimization working for virtual generated columns. (check-in: [8a510cb088] user: drh branch: index-expr-opt, size: 190527)
2022-10-13
21:08
[e9b3adf21c] part of check-in [2e8d4fd4cf] This experimental branch attempts to use columns for an index-on-expression in place of the expression that is being indexed. This particular check-in mostly works, but there are still issues. (check-in: [2e8d4fd4cf] user: drh branch: index-expr-opt, size: 190495)
2022-10-01
13:28
[50cf41a771] part of check-in [c8d77f3980] Merge the Parse.prepFlags change from trunk. (check-in: [c8d77f3980] user: drh branch: stmt-cache, size: 190500)
13:17
[6e3ee380a4] part of check-in [b7da0bcdf7] Replace the Parse.disableVtab field with Parse.prepFlags for increased generality, a small size reduction, and a small performance increase. (check-in: [b7da0bcdf7] user: drh branch: trunk, size: 190467)
2022-09-05
12:39
[53a4c32c6c] part of check-in [31304de83e] Version 3.39.3 patches applied to the begin-concurrent branch. (check-in: [31304de83e] user: drh branch: begin-concurrent-3.39, size: 190372)
2022-08-25
17:12
[d98a676b23] part of check-in [8f6a1f77b8] Do not attempt to cache DDL statement. (check-in: [8f6a1f77b8] user: drh branch: stmt-cache, size: 190447)
2022-08-22
16:30
[2974aff12b] part of check-in [9c05a48ee0] Merge recent trunk enhancements into the reuse-schema branch. (check-in: [9c05a48ee0] user: drh branch: reuse-schema, size: 191743)
16:08
[c3cfa409c3] part of check-in [dde76e91d3] Merge all recent trunk changes into the begin-concurrent-pnu-wal2 branch. (check-in: [dde76e91d3] user: drh branch: begin-concurrent-pnu-wal2, size: 190466)
15:42
[bfafc2f7e0] part of check-in [7eac6136ab] Merge all recent trunk enhancements into the begin-concurrent branch. (check-in: [7eac6136ab] user: drh branch: begin-concurrent, size: 190503)
02:00
[898884afd6] part of check-in [e5eaa80e81] Add the new internal interface sqlite3DbNNFreeNN(db,ptr) where both the db and ptr parameters are guaranteed to be non-NULL. Use this where appropriate to save more than 2 million CPU cycles on the standard performance test. (check-in: [e5eaa80e81] user: drh branch: trunk, size: 190414)
2022-08-09
16:13
[1e96f35d59] part of check-in [f963c25238] Allow the name of an index to collide with a table in a different schema. (check-in: [f963c25238] user: drh branch: trunk, size: 190321)
2022-07-25
23:01
[33aec2b34d] part of check-in [98b0e830bc] Performance optimization by only invoking sqlite3FkCheck() when it is actually needed. (check-in: [98b0e830bc] user: drh branch: trunk, size: 190309)
22:31
[941d7ff0c3] part of check-in [390717e688] Performance optimization in sqlite3ViewGetColumnNames(). (check-in: [390717e688] user: drh branch: trunk, size: 190228)
22:02
[abba8a3f85] part of check-in [9aba7417c6] Fix a harmless compiler warning. (check-in: [9aba7417c6] user: drh branch: trunk, size: 190026)
2022-07-23
12:51
[249fb44843] part of check-in [a995614b9a] Simplifications to sqlite3FinishCoding() for a small size reduction and performance increase. (check-in: [a995614b9a] user: drh branch: trunk, size: 190039)
00:53
[149663ba16] part of check-in [8b4d1b9317] Remove a branch that is no longer reachable due to the previous check-in. (check-in: [8b4d1b9317] user: drh branch: trunk, size: 190245)
2022-07-22
20:24
[acc401cea5] part of check-in [57beb700c0] Add experimental 'xShadowName2' method for virtual table modules. (check-in: [57beb700c0] user: mistachkin branch: xShadowName2, size: 192003)
2022-07-21
16:07
[e54898c7e0] part of check-in [578538baf2] Merge the fixes from branch-3.39 into the reuse-schema branch. (check-in: [578538baf2] user: drh branch: reuse-schema-3.39, size: 191612)
2022-07-11
14:36
[29fcc97af5] part of check-in [44d77a7f80] Ensure that the Parse.nErr flag is set following an SQLITE_TOOBIG error on a nested parse. Fix for the problem identified by forum post d5a82ba9eedee30c. Also, remove unnecessary clearing of the Parse.zErrMsg field following a nested parse. (check-in: [44d77a7f80] user: drh branch: trunk, size: 190283)
2022-05-10
13:06
[255067b8c8] part of check-in [9f6d6e6135] Merge all recent trunk changes into the reuse-schema branch. (check-in: [9f6d6e6135] user: drh branch: reuse-schema, size: 191673)
12:45
[a961c81e44] part of check-in [d28af1f8a5] Merge the latest trunk enhancements into theh begin-concurrent-pnu-wal2 branch. (check-in: [d28af1f8a5] user: drh branch: begin-concurrent-pnu-wal2, size: 190396)
12:00
[3c0a57703b] part of check-in [f65bd76760] Merge recent trunk enhancements into the begin-concurrent branch. (check-in: [f65bd76760] user: drh branch: begin-concurrent, size: 190433)
2022-05-02
20:49
[23f8746428] part of check-in [5341d4bbe9] Organize the various flag bits of the ExprList_item object into a substructure so that the whole lot can be copied all at once. Faster and smaller code. (check-in: [5341d4bbe9] user: drh branch: right-join, size: 190344)
2022-04-25
14:49
[e8e776b52b] part of check-in [59789fe1e7] Avoid unintended side-effects on Parse.nSelect in the sqlite3ViewGetColumnNames() routine. (check-in: [59789fe1e7] user: drh branch: trunk, size: 190329)
10:43
[97d466af24] part of check-in [bd6811d811] Remove NEVER() on branches formerly thought to unreachable (see check-in [71272caff5874137]) in order to fix the first bug reported by forum post 28821db852. (check-in: [bd6811d811] user: drh branch: trunk, size: 190328)
2022-04-21
19:25
[470be339e4] part of check-in [2925566412] Fix harmless compiler warnings. (check-in: [2925566412] user: drh branch: right-join, size: 190438)
2022-04-20
15:07
[e1ecd83b3f] part of check-in [0da2232624] Improved tracking of nested SELECT objects used to implement parenthensized FROM terms. (check-in: [0da2232624] user: drh branch: right-join, size: 190422)
2022-04-18
19:48
[7f4286d2b4] part of check-in [5bcf4aa3bf] Disable the unused EU4_EXPR mode for the IdList object. (check-in: [5bcf4aa3bf] user: drh branch: right-join, size: 190310)
10:09
[f7098ca500] part of check-in [07ed0dca31] Fix the sqlite3SrcListAppendList() routine so that it correctly adds the JT_LTORJ attribute to the first SrcItem, if needed. (check-in: [07ed0dca31] user: drh branch: right-join, size: 190346)
2022-04-16
22:57
[d6518b209e] part of check-in [9ffc2b2319] Fix the USING to ON translation so that it works correctly for a sequence of two or more joins where one of the joins to the right-hand side of the list is a RIGHT or FULL JOIN. (check-in: [9ffc2b2319] user: drh branch: right-join, size: 190281)
19:13
[fad98f43a7] part of check-in [6d5d6e0403] Since the query planner is unable to cope with a LEFT JOIN on the left-hand side of a RIGHT JOIN, detect that situation early and raise a parsing error. This is a temporary measure that needs to be fixed. (check-in: [6d5d6e0403] user: drh branch: right-join, size: 190474)
2022-04-15
15:47
[ecbe7ecacf] part of check-in [40f3c95871] Enhance the IdList object to exist in a single memory allocation (rather than a separate allocate for the base object and the array of IDs). Also permit an IdList object to store an Expr pointer together with each name. (check-in: [40f3c95871] user: drh branch: right-join, size: 190264)
2022-04-10
20:28
[d30ef1cbd1] part of check-in [a48902c71e] Minor improvements to the sqlite3SrcListShiftJoinType() routine. This started out to be an effort to convert RIGHT JOIN to LEFT JOIN if the join was on the first pair of relations, but that messes up the "*" expansion and so won't work. (check-in: [a48902c71e] user: drh branch: right-join, size: 190124)
2022-04-08
19:20
[4a35acbeb5] part of check-in [415abd6731] Preliminary code to support RIGHT JOIN. Everything seems to work, except that the code to compute the unmatched rows for the RIGHT JOIN has not yet been added, so the result of a RIGHT JOIN is currently the same as an INNER JOIN. (check-in: [415abd6731] user: drh branch: right-join, size: 189813)
2022-04-07
01:11
[ff119be983] part of check-in [158156a3e3] Improved technique for parsing the ON and USING clauses of a join is faster and uses less memory. (check-in: [158156a3e3] user: drh branch: trunk, size: 189458)
2022-03-30
17:36
[4a265d4934] part of check-in [9248ce50f5] Small size reduction and performance increase in sqlite3FinishCoding(). (check-in: [9248ce50f5] user: drh branch: trunk, size: 189200)
2022-03-12
15:21
[6c5095126c] part of check-in [f3fa81963e] Merge the latest trunk changes into the reuse-schema branch. (check-in: [f3fa81963e] user: drh branch: reuse-schema, size: 190492)
15:11
[e704ddc12c] part of check-in [0071d9da18] Merge the latest trunk changes into the begin-concurrent-pnu-wal2 branch. (check-in: [0071d9da18] user: drh branch: begin-concurrent-pnu-wal2, size: 189215)
14:47
[d4dce2dd37] part of check-in [aa8b5e9558] Merge the latest trunk enhancements, including the 3.38.1 patches plus additional performance enhancements, into the begin-concurrent branch. (check-in: [aa8b5e9558] user: drh branch: begin-concurrent, size: 189252)
2022-03-10
21:04
[a0cc68fe81] part of check-in [13fbde2817] Stronger defenses against corrupt schemas in the ALTER TABLE logic. (check-in: [13fbde2817] user: drh branch: trunk, size: 189163)
2022-02-22
19:56
[54425e5635] part of check-in [8387e4f3af] Merge version 3.38.0 into the begin-concurrent-pnu-wal2 branch. (check-in: [8387e4f3af] user: drh branch: begin-concurrent-pnu-wal2, size: 189102)
19:30
[817d5269b7] part of check-in [c5998c43c1] Merge version 3.38.0 into the begin-concurrent branch. (check-in: [c5998c43c1] user: drh branch: begin-concurrent, size: 189139)
2022-02-21
16:49
[2a3ef80edd] part of check-in [b3c26f4a34] Merge the latest trunk changes into the reuse-schema branch. (check-in: [b3c26f4a34] user: drh branch: reuse-schema, size: 190379)
00:23
[9891c21608] part of check-in [9c4e21abdc] Do not allow error messages from sqlite3NestedParse() to leak up into the main parse. (check-in: [9c4e21abdc] user: drh branch: trunk, size: 189050)
2022-02-15
20:56
[51694f9aaa] part of check-in [b9ba43fcb3] Merge the latest trunk enhancements into the reuse-schema branch. (check-in: [b9ba43fcb3] user: drh branch: reuse-schema, size: 190318)
20:47
[40098e1bdd] part of check-in [1336d2f23f] Merge the latest trunk enhancements into the begin-concurrent-pnu-wal2 branch. (check-in: [1336d2f23f] user: drh branch: begin-concurrent-pnu-wal2, size: 189041)
20:18
[e654e5dacf] part of check-in [94838f16ba] Merge the latest trunk changes into the begin-concurrent branch. (check-in: [94838f16ba] user: drh branch: begin-concurrent, size: 189078)
2022-02-09
16:18
[b6ab5a4194] part of check-in [460abf93ac] Prototype implementation of IF EXISTS and IF NOT EXISTS clauses on the various forms of ALTER TALE. (check-in: [460abf93ac] user: drh branch: alter-table-if-exists, size: 189071)
2022-02-07
01:09
[b59ff41525] part of check-in [9a206e37fb] When create table/view fails due to name taken, say which took it. (check-in: [9a206e37fb] user: larrybr branch: trunk, size: 188989)
2022-01-25
16:28
[e47080c4cc] part of check-in [6e4154d414] Merge the latest trunk enhancements into the reuse-schema branch. (check-in: [6e4154d414] user: drh branch: reuse-schema, size: 190261)
16:05
[38cffd6b81] part of check-in [3d949775e3] Merge the latest trunk changes into begin-concurrent-pnu-wal2 (check-in: [3d949775e3] user: drh branch: begin-concurrent-pnu-wal2, size: 188984)
15:20
[d62a68c0bc] part of check-in [dae81f45d2] Merge the latest trunk enhancements into the begin-concurrent branch. (check-in: [dae81f45d2] user: drh branch: begin-concurrent, size: 189021)
00:03
[9329120c45] part of check-in [a8db69411b] Minor adjustment to error handling in sqlite3FinishCoding(). (check-in: [a8db69411b] user: drh branch: trunk, size: 188932)
2022-01-24
21:47
[6037f01800] part of check-in [e9361d72f3] Remove an unnecessary assert() that is sometimes not true following an OOM. (check-in: [e9361d72f3] user: drh branch: trunk, size: 188944)
19:38
[698bf1c90f] part of check-in [4aa27b4fcd] Add ALWAYS() macros. Change some existing ALWAYS() into assert(). Other code simplifications. (check-in: [4aa27b4fcd] user: drh branch: trunk, size: 188973)
16:47
[db3d3e6fa3] part of check-in [1f7fa46126] Remove many redundant checks for sqlite3.mallocFailed now that any OOM should cause Parse.nErr to be non-zero. (check-in: [1f7fa46126] user: drh branch: trunk, size: 188925)
12:48
[cd208d7f69] part of check-in [ad7aace761] Make sure the sqlite3OomFault() routine sets an error in the Parse object if there is a Parse object active and linked to the database connection. (check-in: [ad7aace761] user: drh branch: trunk, size: 188818)
2022-01-17
20:01
[0be2d1e306] part of check-in [769ff85765] Merge the latest trunk changes into the reuse-schema branch. (check-in: [769ff85765] user: drh branch: reuse-schema, size: 190115)
19:46
[99a4dee6e4] part of check-in [45fa7efecb] Merge the latest trunk enhancements into the begin-concurrent-pnu-wal2 branch. (check-in: [45fa7efecb] user: drh branch: begin-concurrent-pnu-wal2, size: 188862)
19:17
[dd307f6782] part of check-in [02daae7a67] Merge recent trunk enhancements into the begin-concurrent branch. (check-in: [02daae7a67] user: drh branch: begin-concurrent, size: 188899)
2022-01-08
21:50
[c72407a27a] part of check-in [71272caff5] Add NEVER() macros to two branches that became unreachable due to [e199a851e316bd47]. (check-in: [71272caff5] user: drh branch: trunk, size: 188810)
2021-12-31
19:20
[6e16f7b539] part of check-in [6fb2a1bb02] Simplify the sqlite3RunParser() routine by omitting the third parameter. Results in a binary that is about 100 bytes smaller and 1.4M cycles faster. (check-in: [6fb2a1bb02] user: drh branch: trunk, size: 188796)
2021-12-09
14:09
[107e1ecc98] part of check-in [94fdbeffaf] Do not attempt to reprepare a prepared statement that returns SQLITE_SCHEMA if there was an OOM. This enhancement supercedes check-in [fee469925231d074]. (check-in: [94fdbeffaf] user: drh branch: trunk, size: 188857)
2021-12-08
18:50
[86a15afda3] part of check-in [fee4699252] Enhance the sqlite3SrcListAppendFromTerm() routine so that it sets the Parser error on an OOM, causing an earlier unwind of the stack. (check-in: [fee4699252] user: drh branch: trunk, size: 188923)
2021-12-03
14:43
[70759481a3] part of check-in [b9db5c5fc6] Fix an over-length source code line in build.c. No logic changes. (check-in: [b9db5c5fc6] user: drh branch: trunk, size: 188858)
2021-12-01
19:17
[179b11b074] part of check-in [a818ba2ed6] Check for foreign key constraint errors prior to returning the results from a RETURNING clause. See forum post 793beaf322. (check-in: [a818ba2ed6] user: drh branch: trunk, size: 188868)
2021-11-27
15:12
[990ff9ab70] part of check-in [f83d50d507] Merge version 3.37.0 into the reuse-schema branch. (check-in: [f83d50d507] user: drh branch: reuse-schema, size: 190131)
15:11
[7b4705bfa9] part of check-in [2171996a02] Merge version 3.37.0 into the begin-concurrent-pnu-wal2 branch. (check-in: [2171996a02] user: drh branch: begin-concurrent-pnu-wal2, size: 188878)
14:45
[fba6792e5d] part of check-in [c5f2ad1942] Merge version 3.37.0 into the begin-concurrent branch. (check-in: [c5f2ad1942] user: drh branch: begin-concurrent, size: 188915)
2021-11-26
17:10
[c46bd4f5a6] part of check-in [eb878c01f3] Improved defenses against integer overflow when computing the size of a memory allocations. No bugs were fixed here. But perhaps future bugs will be prevented. (check-in: [eb878c01f3] user: drh branch: trunk, size: 188826)
2021-11-09
15:18
[f0cd84c618] part of check-in [07bc13395d] Merge all recent trunk enhancements into the begin-concurrent-pnu-wal2 branch. (check-in: [07bc13395d] user: drh branch: begin-concurrent-pnu-wal2, size: 188863)
15:06
[ee4b4aefda] part of check-in [2d0c8f3099] Merge all recent trunk enhancements into the begin-concurrent branch. (check-in: [2d0c8f3099] user: drh branch: begin-concurrent, size: 188900)
14:00
[71b0e15334] part of check-in [748bce4c01] Merge recent trunk enhancements into the reuse-schema branch. (check-in: [748bce4c01] user: drh branch: reuse-schema, size: 190116)
2021-11-06
18:22
[1b41a6417e] part of check-in [889dea52de] Return an error if an attempt is made to drop an eponymous virtual table. (check-in: [889dea52de] user: dan branch: trunk, size: 188811)
10:59
[77b2596bf6] part of check-in [a024764cef] Avoid accessing the sqlite3_module.xShadowName field if (sqlite3_module.iVersion<3). (check-in: [a024764cef] user: drh branch: trunk, size: 188754)
07:08
[40063d6406] part of check-in [b1fc3de81e] Avoid accessing the sqlite3_module.xShadowName field if (sqlite3_module.iVersion<3). (check-in: [b1fc3de81e] user: dan branch: reuse-schema, size: 190059)
2021-11-05
23:32
[a28f0b0ac0] part of check-in [ca09148e13] Merge the latest trunk enhancements into the reuse-schema branch. (check-in: [ca09148e13] user: drh branch: reuse-schema, size: 190017)
2021-11-04
14:04
[d82604122c] part of check-in [9147390d98] Show the preferred schema table names in the output of "PRAGMA table_list". (check-in: [9147390d98] user: drh branch: trunk, size: 188712)
00:51
[967d3ab894] part of check-in [005a864277] First the shadow table mechanism so that it works even if the shadow table comes before the virtual table in the sqlite_schema table, as can happen after a VACUUM. (check-in: [005a864277] user: drh branch: trunk, size: 188175)
2021-10-21
14:24
[d4aa888556] part of check-in [1958e6faca] Merge trunk enhancements into the begin-concurrent-pnu-wal2 branch. (check-in: [1958e6faca] user: drh branch: begin-concurrent-pnu-wal2, size: 186885)
14:13
[3638d6e7db] part of check-in [ae4eed0b7e] Merge recent trunk enhancements into begin-concurrent branch. (check-in: [ae4eed0b7e] user: drh branch: begin-concurrent, size: 186922)
14:10
[32f007fedb] part of check-in [cd15fc3c08] Merge recent trunk enhancements into the reuse-schema branch (check-in: [cd15fc3c08] user: drh branch: reuse-schema, size: 188158)
2021-10-20
17:58
[8bdda90f9b] part of check-in [0ae8dd132d] Enabled the testcase() macros under SQLITE_DEBUG. (check-in: [0ae8dd132d] user: drh branch: trunk, size: 186833)
12:52
[e2eae084ad] part of check-in [699117156e] Ensure that valid bytecode is generated for RETURNING clauses even if the schema is corrupt and PRAGMA writable_schema is set so that the schema parse returns no errors. dbsqlfuzz cb21825bdcd6fdb4b686ce4f6e2f45e781d2f220 (check-in: [699117156e] user: drh branch: trunk, size: 186860)
2021-10-11
15:54
[f70d6375ea] part of check-in [0265676040] Fail a schema parse if a virtual table or view has a positive integer rootpage. (check-in: [0265676040] user: drh branch: trunk, size: 186660)
2021-10-07
23:04
[46df621d24] part of check-in [9b91fbcfcc] New assert() statements to protect the u1 and u2 unions of SrcList. (check-in: [9b91fbcfcc] user: drh branch: trunk, size: 186615)
13:40
[da127abe7f] part of check-in [9af863f065] Protect all accesses to the FuncDef.u and Expr.u unions using nearby assert()s or branches. (check-in: [9af863f065] user: drh branch: trunk, size: 186547)
12:11
[56dd17ca54] part of check-in [50e08338ae] Protect every access to the Table.u union using a nearby assert() or branch. (check-in: [50e08338ae] user: drh branch: trunk, size: 186355)
2021-10-04
12:02
[6d705a9d15] part of check-in [bce02eaa0c] Merge recent trunk changes into the begin-concurrent-pnu-wal2 branch. (check-in: [bce02eaa0c] user: drh branch: begin-concurrent-pnu-wal2, size: 186341)
11:54
[0d7fb44fae] part of check-in [4f5ef7aa4c] Merge recent trunk enhancements into the begin-concurrent branch. (check-in: [4f5ef7aa4c] user: drh branch: begin-concurrent, size: 186378)
11:49
[034d67c888] part of check-in [64234c5c9a] Merge recent trunk enhancements into the reuse-schema branch. (check-in: [64234c5c9a] user: drh branch: reuse-schema, size: 187614)
2021-10-01
21:01
[ee6941680f] part of check-in [94b59691ee] Fix harmless compiler warnings. (check-in: [94b59691ee] user: drh branch: trunk, size: 186289)
2021-09-24
16:14
[53fe0ecd73] part of check-in [a3c71a673d] Add lots of new "const" on internal function parameters. There is opportunity for many more - this is a work in progress. (check-in: [a3c71a673d] user: drh branch: trunk, size: 186305)
2021-08-23
10:28
[8fa6deebf8] part of check-in [d8fd1a2bfd] Back out the change that allows typeless columns in strict tables. Replace that capability with an ANY type for strict tables that will accept any datatype with BLOB affinity. (check-in: [d8fd1a2bfd] user: drh branch: trunk, size: 186293)
2021-08-21
20:54
[f9246c6338] part of check-in [1e2dcc2d4e] Allow typeless columns in STRICT tables that are able to accept any data type. (check-in: [1e2dcc2d4e] user: drh branch: trunk, size: 186045)
2021-08-19
16:29
[4f58fcdf5b] part of check-in [4ee57fb588] Improved comments. Fewer opcodes for integrity_check on strict tables. (check-in: [4ee57fb588] user: drh branch: strict-tables, size: 186009)
00:24
[c55bec6a37] part of check-in [5efdf9acad] STRICT tables require all fields of the PRIMARY KEY to be NOT NULL. (check-in: [5efdf9acad] user: drh branch: strict-tables, size: 185765)
2021-08-18
23:00
[25adabcbe5] part of check-in [7ee01ee47d] Merge the WITHOUT ROWID, NOT NULL ON CONFLICT bug fix into the strict-tables branch. (check-in: [7ee01ee47d] user: drh branch: strict-tables, size: 185458)
22:26
[69cddb2043] part of check-in [13abba0941] Fix ON CONFLICT clause processing for NOT NULL constraints of PRIMARY KEY columns on WITHOUT ROWID tables. Ticket [f2be158c57aaa8c6] (check-in: [13abba0941] user: drh branch: trunk, size: 185050)
13:13
[bf8b4f6f4f] part of check-in [78732b9f98] What would it be like if you could add the keyword "STRICT" after a CREATE TABLE statement to cause the table to (1) allow only a few well-defined datatypes, (2) rigidly enforce those types, (3) require NOT NULL on PK columns, (4) always enforce foreign key constraint, and so forth? This branch seeks to explore that question. (check-in: [78732b9f98] user: drh branch: strict-tables, size: 185409)
12:05
[0374faa35f] part of check-in [b9b0dcd5af] Rename the Column.eType field to Column.eCType - with an extra "C". (check-in: [b9b0dcd5af] user: drh branch: trunk, size: 185001)
2021-08-09
18:35
[886f021eb1] part of check-in [47a9b75981] Merge recent trunk enhancements into the begin-concurrent-pnu-wal2 branch. (check-in: [47a9b75981] user: drh branch: begin-concurrent-pnu-wal2, size: 185051)
18:21
[a62affc850] part of check-in [b88b632830] Merge recent trunk enhancemenets into the begin-concurrent branch. (check-in: [b88b632830] user: drh branch: begin-concurrent, size: 185088)
18:17
[336ecd22dc] part of check-in [c8d1f17fde] Merge recent trunk enhancements into the reuse-schema branch. (check-in: [c8d1f17fde] user: drh branch: reuse-schema, size: 186324)
2021-08-05
15:27
[ac4c6990ff] part of check-in [832ac4c1ee] Store the collating sequence name for each column of a table as an extension to the column name, for an additional savings in the heap space needed to hold the schema. (check-in: [832ac4c1ee] user: drh branch: trunk, size: 184999)
2021-08-04
14:50
[9d607ffcae] part of check-in [806939eb59] Add NEVER() macros on recently introduced unreachable branches. (check-in: [806939eb59] user: drh branch: trunk, size: 184191)
13:42
[2fa4c60543] part of check-in [164662ef01] Always prefer built-in SQL functions over app-defined SQL functions within sqlite3NestedParse(). Formerly this was the case for a few calls to sqlite3NestedParse(), but not for all of them. (check-in: [164662ef01] user: drh branch: trunk, size: 184149)
2021-08-03
16:44
[fd8aebe6b6] part of check-in [5b6f6514bd] Merge recent trunk changes into the begin-concurrent-pnu-wal2 branch. (check-in: [5b6f6514bd] user: drh branch: begin-concurrent-pnu-wal2, size: 184150)
16:31
[71d07b1b5e] part of check-in [8d806cf93c] Merge recent trunk enhancements into the begin-concurrent branch. (check-in: [8d806cf93c] user: drh branch: begin-concurrent, size: 184187)
16:11
[a9e07d7af7] part of check-in [d71adc3fd8] Merge recent trunk enhancements into the reuse-schema branch. (check-in: [d71adc3fd8] user: drh branch: reuse-schema, size: 185423)
2021-08-02
18:03
[8b1f2a8015] part of check-in [8b781dcaf6] Refactor field names in the Column object, zCnName and zCnColl, to make them unique and thus easier to find amid all the other code. (check-in: [8b781dcaf6] user: drh branch: trunk, size: 184098)
16:41
[d13fc40575] part of check-in [bbb6759bcf] Refactor the Table object to reduce its memory footprint. (check-in: [bbb6759bcf] user: drh branch: trunk, size: 184054)
2021-07-31
20:30
[19d9283fea] part of check-in [8646547e54] Refactor the way that DEFAULT expressions are stored on columns, in order to save memory in the common case where the column has no DEFAULT clause. (check-in: [8646547e54] user: drh branch: trunk, size: 183634)
2021-07-30
23:30
[e9ff9104d6] part of check-in [d2da62a9df] Recognize certain standard datatypes ("INT", "INTEGER", "REAL", "TEXT", and "BLOB") and if a column has one of those datatypes, store the type part of the bit-field information in the Column structure to save space. (check-in: [d2da62a9df] user: drh branch: trunk, size: 182298)
20:09
[fedaf923ea] part of check-in [3c954863f4] If a generated column uses the optional keywords GENERATE ALWAYS, try to avoid putting those keywords in the typename of the column. Forum post ff3ffe09251c105b (check-in: [3c954863f4] user: drh branch: trunk, size: 181583)
18:39
[8b0a6aa7db] part of check-in [980f7292af] Avoid clownfeet in the names columns when the column names are quoted in the original CREATE TABLE statement. (check-in: [980f7292af] user: drh branch: trunk, size: 180980)
12:47
[218628f574] part of check-in [2941ded0ac] Reduce clownfooting in the allocation of the Table.aCol array. This reduces the amount of heap space required to hold large schemas by about 11%. (check-in: [2941ded0ac] user: drh branch: trunk, size: 180935)
2021-07-22
21:11
[9978caf1e5] part of check-in [91bcb96215] Set the checkSchema flag if a CREATE TABLE parse fails because the table already exists, to ensure that the table was not previously deleted by some other connection. (check-in: [91bcb96215] user: drh branch: trunk, size: 180981)
2021-07-20
07:35
[602ab2f5b4] part of check-in [039f540373] Demonstration code to show how NOT NULL and CHECK constraints can be verified after an ALTER TABLE ADD COLUMN. (check-in: [039f540373] user: drh branch: add-column-constraint-check, size: 180985)
2021-07-19
14:00
[a275118630] part of check-in [c8601d83fb] In defensive mode, allow statements that write to shadow tables to be prepared from with virtual-table xSync() calls. (check-in: [c8601d83fb] user: dan branch: trunk, size: 180954)
2021-07-09
13:29
[fc5cbb36fc] part of check-in [0e968f9de3] Merge latest trunk changes into this branch. (check-in: [0e968f9de3] user: dan branch: reuse-schema, size: 182250)
2021-07-08
18:29
[98e23c9197] part of check-in [bbbbeb59a6] Preserve and return to the user any error message returned by a failed xConnect() call on an eponymous virtual table that prevents a query from being compiled. (check-in: [bbbbeb59a6] user: dan branch: trunk, size: 180925)
2021-06-17
17:44
[7c78076480] part of check-in [2ff7e56249] Merge recent trunk changes into branch-concurrent-pnu-wal2 via that wal2 branch. (check-in: [2ff7e56249] user: drh branch: begin-concurrent-pnu-wal2, size: 180939)
17:29
[22e91195f1] part of check-in [59303e69c3] Merge recent trunk enhancements into the begin-concurrent branch. (check-in: [59303e69c3] user: drh branch: begin-concurrent, size: 180976)
17:26
[26f1e22077] part of check-in [92d8f967c9] Merge recent trunk enhancements into reuse-schema branch. (check-in: [92d8f967c9] user: drh branch: reuse-schema, size: 182211)
2021-06-14
20:41
[ea28944f65] part of check-in [e5a5acd600] In the authorizer, use SQLITE_DROP_INDEX, not SQLITE_DROP_TEMP_INDEX when dropping an index in an attached database. (check-in: [e5a5acd600] user: drh branch: trunk, size: 180887)
14:35
[817a3521be] part of check-in [f21a53fb41] Update this branch with latest changes from trunk. (check-in: [f21a53fb41] user: dan branch: reuse-schema, size: 182208)
14:25
[76a1d3c549] part of check-in [0ab899012c] Update this branch with latest changes from wal2. (check-in: [0ab899012c] user: dan branch: begin-concurrent-pnu-wal2, size: 180936)
12:23
[7f4bc67cdf] part of check-in [d81996340a] Update this branch with latest trunk changes. (check-in: [d81996340a] user: dan branch: begin-concurrent, size: 180973)
2021-05-29
21:50
[d766f04ddd] part of check-in [a5ec81eb49] Fix a subtle error in an assert(). dbsqlfuzz eefbd0215c0c1b4bcc32b8141b48b35f7b431300 (check-in: [a5ec81eb49] user: drh branch: trunk, size: 180884)
2021-05-22
15:05
[21108549af] part of check-in [dbc65a6958] Merge latest trunk changes into this branch. (check-in: [dbc65a6958] user: dan branch: reuse-schema, size: 182208)
2021-05-21
17:31
[b470cd22b9] part of check-in [4efefb5938] Merge latest changes from wal2 into this branch. (check-in: [4efefb5938] user: dan branch: begin-concurrent-pnu-wal2, size: 180936)
15:33
[3a6da77c49] part of check-in [0dba9010ad] Merge all recent trunk changes into the begin-concurrent branch. (check-in: [0dba9010ad] user: drh branch: begin-concurrent, size: 180973)
2021-05-20
11:42
[daeb1beb04] part of check-in [67bde01614] Ensure the required b-tree mutexes are held for "CREATE TABLE IF NOT EXISTS" and "DROP TABLE IF EXISTS" statements on attached databases. (check-in: [67bde01614] user: dan branch: trunk, size: 180884)
2021-05-19
21:55
[65b87a0533] part of check-in [0f0959c6f9] When constructing the synthensized SELECT statement that is used to choose the rows in an UPDATE FROM, make sure the first table is really the table being updated, and not some common-table expression that happens to have the same name. forum post a274248080. More changes associated with CTE name resolution are pending. (check-in: [0f0959c6f9] user: drh branch: trunk, size: 180866)
2021-05-17
11:19
[4e13b92f77] part of check-in [0d77e371c4] Performance improvement in sqlite3TableLock(). (check-in: [0d77e371c4] user: drh branch: trunk, size: 180852)
2021-05-13
18:24
[a7866beda6] part of check-in [cf8eb46597] Modify the sqlite3_stmt_readonly() interface so that it returns false for CREATE TABLE IF NOT EXISTS statements even if the table already exists and the statement is really a read-only no-op. Likewise for DROP TABLE, CREATE INDEX, and DROP INDEX. Update the documentation for sqlite3_stmt_readonly() to reflect this new behavior. (check-in: [cf8eb46597] user: drh branch: trunk, size: 180458)
2021-05-07
14:16
[a70d5e14a7] part of check-in [c5e2de1d24] This was suppose to be a merge from trunk. But something went wrong. (check-in: [c5e2de1d24] user: dan branch: bad-merge, size: 181062)
2021-04-29
13:37
[bf4f76eb77] part of check-in [1b8da7924c] Fix harmless compiler warnings. See forum post 256140e470. (check-in: [1b8da7924c] user: drh branch: trunk, size: 179680)
2021-04-27
13:04
[1310181a29] part of check-in [d0b15eccbf] RETURNING bug fix: Correctly deal with RETURNING statements on changes to TEMP tables that also have triggers. dbsqlfuzz 78b9400770ef8cc7d9427dfba26f4fcf46ea7dc2 (check-in: [d0b15eccbf] user: drh branch: trunk, size: 179677)
2021-04-26
14:09
[f4072218da] part of check-in [cb8c41aa20] Do not initialize eponymous virtual tables when parsing the schema. This can happen if the db is corrupt. (check-in: [cb8c41aa20] user: dan branch: trunk, size: 179628)
2021-04-20
12:14
[45889a1ac4] part of check-in [a61c0e6b78] In the sqlite3SelectDup() routine, do not do an incomplete duplication due to OOM. This in turn requires several new NEVER() and ALWAYS() macros for unreachable branches. (check-in: [a61c0e6b78] user: drh branch: trunk, size: 179608)
2021-04-19
18:03
[1cf8ab071e] part of check-in [41228350a6] Ensure that a WITHOUT ROWID table does not have the .iPKey field set, even if an OOM error occurs while parsing a schema in PRAGMA writable_schema=ON mode. Add extra assert() statements to triple-check that this never happens. dbsqlfuzz 803bb1f63d6f3bd6c14db568494d6e96be8f1ec9. (check-in: [41228350a6] user: drh branch: trunk, size: 179599)
2021-04-13
13:48
[9f15ff3e07] part of check-in [608b6644b9] Do not leave a WITHOUT ROWID table without a primary key index structure due to an OOM error. This prevents downstream troubles in the case of PRAGMA writable_schema=ON. dbsqlfuzz 69fb32cc82d59b4d790881566e3f6c727e616122 (check-in: [608b6644b9] user: drh branch: trunk, size: 179453)
2021-04-08
13:52
[3a63a0dd14] part of check-in [38a1085cbd] Remove an incorrect assert() from sqlite3EndTable(). dbsqlfuzz 4af45bcda779592449b1985433bca90b0e683b9b. (check-in: [38a1085cbd] user: drh branch: trunk, size: 179398)
2021-04-07
18:17
[a1d1231e64] part of check-in [a2ddb89b20] Do not allow the use of rowid for views and subqueries unless compiled with -DSQLITE_ALLOW_ROWID_IN_VIEW. (check-in: [a2ddb89b20] user: drh branch: trunk, size: 179429)
17:32
[f197c3433d] part of check-in [1f3f7e4bf3] Merge latest trunk changes into this branch. (check-in: [1f3f7e4bf3] user: dan branch: begin-concurrent-pnu, size: 179096)
15:45
[08b392566d] part of check-in [14b1d56ef8] Also prohibit the use of rowid from a subquery. Add the SQLITE_ALLOW_ROWID_IN_VIEW compile-time option to restore legacy behavior in case somebody actually needs it. (check-in: [14b1d56ef8] user: drh branch: no-rowid-on-view, size: 179408)
12:02
[1589a4dd48] part of check-in [c337849416] Fix a possible crash that could occur when executing a drop column operation on a corrupt database schema. (check-in: [c337849416] user: dan branch: trunk, size: 179007)
2021-04-06
19:13
[9d6002cf6b] part of check-in [7a73c6166b] Raise an error if a query tries to access the "rowid" of a view, as views do not have rowids. (check-in: [7a73c6166b] user: drh branch: no-rowid-on-view, size: 179022)
16:16
[927ec1d6a0] part of check-in [a1d823f687] Avoid a use-after-free that may occur when accessing a corrupt database schema with "PRAGMA writable_schema = 1" set. (check-in: [a1d823f687] user: dan branch: trunk, size: 178986)
2021-04-02
20:29
[104c98c0c4] part of check-in [9842084230] Merge latest trunk changes into this branch. (check-in: [9842084230] user: dan branch: begin-concurrent, size: 179057)
2021-03-26
13:31
[9f06854962] part of check-in [988da36c86] Merge from 3.35.3 into the begin-concurrent branch. (check-in: [988da36c86] user: drh branch: begin-concurrent, size: 179057)
13:16
[3a2960f823] part of check-in [76f19f4bcf] Merge in changes for 3.35.3 (check-in: [76f19f4bcf] user: drh branch: reuse-schema, size: 180342)
2021-03-22
18:53
[06089aaf76] part of check-in [4a343698b4] Merge recent fixes from trunk. (check-in: [4a343698b4] user: drh branch: eqp-improvements, size: 178968)
2021-03-21
17:52
[066c44421b] part of check-in [71e4da136b] Add a better comment and an assert() on the code inside sqlite3CreateIndex() that REPLACE indexes come at the end of the index list. forum post ceb51d83f7 (check-in: [71e4da136b] user: drh branch: trunk, size: 178968)
2021-03-19
13:00
[ef2a663232] part of check-in [6f8faec022] Improved labeling of EXPLAIN QUERY PLAN output. Many test failures due to the different output format. (check-in: [6f8faec022] user: drh branch: eqp-improvements, size: 178343)
2021-03-14
01:40
[29f208c5c4] part of check-in [7c8aa38125] Never allow a double-quoted identifier that appears by itself in the argument list of an index to be interpreted as a string literal. Proposed fix for ticket [1c24a659e6d7f3a1]. (check-in: [7c8aa38125] user: drh branch: tkt-1c24a659, size: 178798)
2021-03-11
18:52
[11e6dae680] part of check-in [79d44ebd53] Update this branch with latest changes from trunk. (check-in: [79d44ebd53] user: dan branch: begin-concurrent, size: 178432)
10:55
[c807832962] part of check-in [ef8c6e06cb] Merge latest trunk changes into this branch. (check-in: [ef8c6e06cb] user: dan branch: reuse-schema, size: 179717)
2021-03-10
16:35
[fec73c39d7] part of check-in [7b65fb9f7b] Do not confuse the constant SQLITE_MAX_ATTACHED with the maximum number of schemas. Add the new SQLITE_MAX_DB constant for the maximum number of schemas. Forum post a006d86f72. (check-in: [7b65fb9f7b] user: drh branch: trunk, size: 178343)
2021-03-09
19:32
[48b09fb137] part of check-in [c3c8691121] Extra comments and testcase() macros associated with the new sqlite3ParserAddCleanup() mechanism. No changes to release builds. (check-in: [c3c8691121] user: drh branch: trunk, size: 178351)
2021-03-03
19:54
[c990714d3a] part of check-in [73bf458e1d] Merge recent trunk enhancements into the reuse-schema branch. (check-in: [73bf458e1d] user: drh branch: reuse-schema, size: 179689)
19:17
[3c764575a8] part of check-in [acdafef836] Merge recent trunk changes into the begin-concurrent branch. (check-in: [acdafef836] user: drh branch: begin-concurrent, size: 178404)
2021-02-25
16:55
[e1790f21cd] part of check-in [15795a96a8] Fix handling of INSERT on views with implicitly named hidden columns in SQLITE_ENABLE_HIDDEN_COLUMNS builds. (check-in: [15795a96a8] user: dan branch: trunk, size: 178315)
2021-02-22
03:04
[30e069b646] part of check-in [a6bb272ec0] Add the AS MATERIALIZED and AS NOT MATERIALIZED syntax that works like it does in PostgreSQL. (check-in: [a6bb272ec0] user: drh branch: as-materialize-redux, size: 178249)
2021-02-21
21:04
[072e3e22d1] part of check-in [bfd5bf2c73] Rename the "struct SrcList_item" object to the more succinct "SrcItem". This is a symbolic change only. The logic is unmodified. (check-in: [bfd5bf2c73] user: drh branch: trunk, size: 178170)
2021-02-20
14:57
[2cf3d07bcf] part of check-in [f03efe905d] Break out the Cte object from the With object. This will make it simpler to add new kinds of Cte objects (ex: DML statements) and/or MATERIALIZED keywords in the future. It brings trunk into closer alignment with the experimental as-materialize branch. (check-in: [f03efe905d] user: drh branch: trunk, size: 178266)
12:47
[6bb7341559] part of check-in [7a90571e0a] Merge changes from trunk. (Later:) Abandon this line of development. See the as-materialize-redux branch. (check-in: [7a90571e0a] user: drh branch: as-materialize, size: 181313)
2021-02-19
18:39
[3e1e1df680] part of check-in [9edf2ddc47] Fix another problem handling corrupt database files in the ALTER TABLE DROP COLUMN code. (check-in: [9edf2ddc47] user: dan branch: trunk, size: 177376)
2021-02-18
22:47
[72b868d9c8] part of check-in [9ea640073f] Merge changes from trunk into the alter-table-drop-column branch. (check-in: [9ea640073f] user: drh branch: alter-table-drop-column, size: 177489)
15:45
[e50a6d7132] part of check-in [f985a78ecc] Improvement to the INSERT optimization of check-in [16ac213c57196361] so that it works with SQLITE_ENABLE_HIDDEN_COLUMN but is also easier to maintain and a little faster as well. (check-in: [f985a78ecc] user: drh branch: trunk, size: 177484)
01:02
[c5f94b2a87] part of check-in [53a5390909] Add missing VdbeCoverage() macros to some of the new RETURNING code. (check-in: [53a5390909] user: drh branch: trunk, size: 177437)
2021-02-17
20:08
[50c70715bd] part of check-in [10538ec6fc] Fix various issues with the changes on this branch. Add test cases for the same. (check-in: [10538ec6fc] user: dan branch: alter-table-drop-column, size: 177396)
2021-02-16
19:29
[224b8d5d6f] part of check-in [30bb18b450] Remove unnecessarily complexity from sqlite3WithReleaseByParse(). Improved TreeView output for the enhanced CTE structures. This code still does not work 100%. I'm saving my place in order to (maybe) come back to it later. (check-in: [30bb18b450] user: drh branch: as-materialize, size: 181328)
16:32
[9d51da4a93] part of check-in [bf0fd9b23a] Trying to get the new AS MATERIALIZE syntax of CTEs to work. There are still performance and memory management issues. This is a WIP check-in. (check-in: [bf0fd9b23a] user: drh branch: as-materialize, size: 181369)
00:48
[a777f43048] part of check-in [78dcddd969] Change the syntax from "GENERATED AS" to "AS MATERIALIZED" so as to match the syntax of PostgreSQL 12+. (check-in: [78dcddd969] user: drh branch: with-generated-as, size: 178261)
2021-02-13
23:46
[9080db2acc] part of check-in [186ec18b24] If the GENERATED keyword occurs before the AS keyword in a common table expression (CTE) definition, then that CTE becomes an "optimization barrier". For now, that means the CTE is always materialized. It also means that query flattener or pushdown optimizations that cross the CTE boundary are omitted. (check-in: [186ec18b24] user: drh branch: with-generated-as, size: 178158)
2021-02-12
21:07
[5687c1d148] part of check-in [964ff68d8f] Parsing of DML statements in a WITH clause. But at this point, it just generates an error about "not yet supported". (check-in: [964ff68d8f] user: drh branch: dml-in-cte, size: 178047)
2021-02-10
20:20
[e3b7c76a75] part of check-in [d29c41bd26] Merge latest trunk changes into this branch. (check-in: [d29c41bd26] user: dan branch: reuse-schema, size: 178765)
2021-02-07
23:28
[1bae5588bf] part of check-in [7a8fe6463a] Do not allow RETURNING in the DML statements of a trigger. (check-in: [7a8fe6463a] user: drh branch: trunk, size: 177391)
2021-02-04
22:59
[e6f5ed03c8] part of check-in [dbfa38699c] Remove dead code. Fix RETURNING for INSERT into a virtual table. (check-in: [dbfa38699c] user: drh branch: returning-manifested, size: 177263)
20:52
[1b8d3d59dc] part of check-in [8a65fbeecf] Snapshot. New design appears to work on a simple test case. (check-in: [8a65fbeecf] user: drh branch: returning-manifested, size: 177343)
17:29
[5285b8d1e4] part of check-in [04b77d6321] Preliminary changes for a new implementation of RETURNING that captures all results in a buffer and plays them all back after the DML statement completes. This avoids problems with interleaved DML statements. This particular check-in is a non-functional work in progress. (check-in: [04b77d6321] user: drh branch: returning-manifested, size: 177381)
13:44
[4a70f3ce39] part of check-in [0f34f241d3] Performance optimization in sqlite3FinishCoding(). (check-in: [0f34f241d3] user: drh branch: trunk, size: 176557)
2021-01-30
21:55
[118e107628] part of check-in [a38f0c1d7c] Improved comments on the new code. (check-in: [a38f0c1d7c] user: drh branch: returning, size: 176487)
12:07
[ff2cdab3c8] part of check-in [138b10d54a] Fix a obsolete assert() in the bytecode engine. Improved OOM detection in sqlite3AddReturning(). (check-in: [138b10d54a] user: drh branch: returning, size: 175599)
03:06
[d708731a10] part of check-in [52204cd768] Fix handling of an OOM condition in sqlite3AddReturning(). (check-in: [52204cd768] user: drh branch: returning, size: 175537)
2021-01-29
22:33
[451f832bfc] part of check-in [6aa2a058d1] Better handling of errors in RETURNING due to corrupt database files. (check-in: [6aa2a058d1] user: drh branch: returning, size: 175504)
21:31
[0453da1ba4] part of check-in [a9122d9757] RETURNING works even if "PRAGMA count_changes=ON" is set. (check-in: [a9122d9757] user: drh branch: returning, size: 175575)
21:18
[2da961ffeb] part of check-in [b0e3ae303d] Allow "*" wildcards in the RETURNING clause. (check-in: [b0e3ae303d] user: drh branch: returning, size: 175516)
19:32
[2aded84176] part of check-in [b7ef4dc21f] Working prototype. (check-in: [b7ef4dc21f] user: drh branch: returning, size: 175554)
2021-01-12
20:16
[ba8af18891] part of check-in [abf8da8156] Lexer and grammar rules for a RETURNING clause on DELETE/INSERT/UPDATE. Actually making this work, though, will involve a lot more code which will likely slow down processing for the common case where there is no RETURNING clause. Furthermore, RETURNING seems to be of limited usefulness and it is not standard SQL. So we abandon it here. These experimental changes are parked in a branch as an historical reference. If circumstances changes, we might take up the cause again some day. (check-in: [abf8da8156] user: drh branch: returning, size: 174167)
2021-01-01
22:06
[d4c06261b0] part of check-in [d01e9f2d00] Avoid allocating space to hold the prepared statements for CREATE statements when parsing the schema of an existing database, since those prepared statements are never used.. This helps to make startup faster, (check-in: [d01e9f2d00] user: drh branch: trunk, size: 173914)
20:04
[7a9983015d] part of check-in [6f25f2529f] Change the unions of the Table.addColOffset field from characters to bytes. This makes the query that implements ALTER TABLE ADD COLUMN more complex and slightly slower, but also makes CREATE TABLE statement parsing faster by avoiding a call to sqlite3UtfCharLen(). Since, CREATE TABLE parsing is far more common than ALTER TABLE, this is a net win for performance. (check-in: [6f25f2529f] user: drh branch: trunk, size: 173825)
19:17
[f5610708b0] part of check-in [d02820f035] Use the column name hash to improve performance of column name collision detection while parsing CREATE TABLE statements. (check-in: [d02820f035] user: drh branch: trunk, size: 173852)
2020-11-26
11:37
[4c44cee793] part of check-in [ddb97eeef7] Update this branch with latest changes from trunk. (check-in: [ddb97eeef7] user: dan branch: begin-concurrent, size: 173885)
2020-11-18
21:15
[33e7b9f5d7] part of check-in [6004de525d] Merge trunk changes into this branch. (check-in: [6004de525d] user: dan branch: reuse-schema, size: 175170)
2020-10-19
01:23
[f6449d4e85] part of check-in [5481fa8c79] Allow multiple recursive terms in the compound SELECT of a recursive CTE. This facilitates writing a query to find find the connected components of an undirected graph. (check-in: [5481fa8c79] user: drh branch: cte-enhancement, size: 173796)
2020-10-12
15:27
[c4bfeaea9f] part of check-in [bc4bb9433f] Fix ALTER TABLE so that it can run even if the schema contains unknown collation sequences. (check-in: [bc4bb9433f] user: dan branch: trunk, size: 173793)
13:24
[633db54365] part of check-in [2fa08c3963] Fix BEGIN IMMEDIATE and BEGIN EXCLUSIVE so that they work even if one or more of the database files in the connection are read-only. Test cases for this are in TH3. (check-in: [2fa08c3963] user: drh branch: trunk, size: 173773)
2020-09-16
16:55
[d8ece0dfee] part of check-in [2e269dcdef] Merge bugfixes made since version 3.33.0 into this branch. (check-in: [2e269dcdef] user: dan branch: reuse-schema-3.33, size: 174349)
16:49
[e3e99e0a4d] part of check-in [807643c596] Fix a buffer overread found by OSSFuzz that could occur if a WITHOUT ROWID table with many columns was NATURAL JOINed against itself. (check-in: [807643c596] user: dan branch: branch-3.33, size: 172975)
2020-09-15
20:48
[55faabe780] part of check-in [3d35fa0be8] Fix a buffer overread found by OSSFuzz that could occur if a WITHOUT ROWID table with many columns was NATURAL JOINed against itself. (check-in: [3d35fa0be8] user: dan branch: trunk, size: 173505)
2020-09-04
17:40
[79bcb3bc32] part of check-in [ca8deb44c7] Update this branch with latest changes from trunk. (check-in: [ca8deb44c7] user: dan branch: reuse-schema, size: 174722)
2020-08-27
18:36
[92b61c2be1] part of check-in [5ce34a955b] Include the original text of the CHECK constraint in the error message for anonymous CHECK constraints. (check-in: [5ce34a955b] user: drh branch: trunk, size: 173348)
2020-08-16
00:30
[a80bc79f0b] part of check-in [2173d4c6e3] Optimization to sqlite3BeginWriteOperation(). (check-in: [2173d4c6e3] user: drh branch: trunk, size: 173014)
2020-08-15
23:48
[a1aa0478c8] part of check-in [1b4acd1ac4] Optimization of the sqlite3SrcListDelete() routine. (check-in: [1b4acd1ac4] user: drh branch: trunk, size: 172882)
22:23
[bcede98b9c] part of check-in [b7dc932197] Remove more unnecessary sqlite3GetVdbe() calls, replacing them with assert()s. (check-in: [b7dc932197] user: drh branch: trunk, size: 172777)
21:55
[20637935b1] part of check-in [86d3790caf] Avoid unnecessary calls to the sqlite3GetVdbe() routine. Add assert() statements to prove each call is unnecessary. (check-in: [86d3790caf] user: drh branch: trunk, size: 172799)
2020-08-14
13:55
[4ed04b1ab1] part of check-in [e456d43708] Merge the 3.33.0 release into the reuse-schema branch. (check-in: [e456d43708] user: drh branch: reuse-schema, size: 174192)
2020-08-11
17:20
[dbdaee54ff] part of check-in [533aeb9008] Minor comment fixes. No changes to code. (check-in: [533aeb9008] user: drh branch: trunk, size: 172818)
14:55
[3b360c8171] part of check-in [b1a77b7ead] Merge all changes since the 3.32.0 release into the reuse-schema branch. (check-in: [b1a77b7ead] user: drh branch: reuse-schema, size: 174208)
2020-08-10
21:16
[11d915b843] part of check-in [ed4c742c4e] Merge recent trunk enhancements into begin-concurrent. (check-in: [ed4c742c4e] user: drh branch: begin-concurrent, size: 172923)
21:01
[dde514651c] part of check-in [5bbd4bddd3] Simplify #ifdefs associated with Parse.eParseMode. Fix an #ifdef error associated with SQLITE_OMIT_AUTOVACUUM. (check-in: [5bbd4bddd3] user: drh branch: trunk, size: 172834)
2020-07-30
19:19
[1b650a4901] part of check-in [e8a6651539] Merge latest trunk changes into this branch. (check-in: [e8a6651539] user: dan branch: begin-concurrent, size: 172971)
17:14
[c2e1390b8b] part of check-in [905752da98] Fix unreachable branches. (check-in: [905752da98] user: drh branch: larger-databases, size: 172882)
2020-07-29
16:18
[e1aae5b7dc] part of check-in [a80ae2c98b] Dozens and dozens of typo fixes in comments. This change adds no value to the end product and is disruptive, so it is questionable whether or not it will ever land on trunk. (check-in: [a80ae2c98b] user: drh branch: typos, size: 172890)
12:23
[e3e29c7791] part of check-in [1d69eee8b0] Fix signed/unsigned compiler warnings. (check-in: [1d69eee8b0] user: drh branch: larger-databases, size: 172910)
2020-07-22
21:05
[1b8436ed3a] part of check-in [d7dd4fc464] Disable rootpage bounds checking when the SQLITE_TESTCTRL_EXTRA_SCHEMA_CHECKS setting is off, to facilitate reaching obscure error states during testing. (check-in: [d7dd4fc464] user: drh branch: rootpage-bounds-check, size: 172908)
13:38
[f2b73fbb21] part of check-in [9ce1710aad] Continuing work toward supporting unsigned 32-bit page numbers. (check-in: [9ce1710aad] user: drh branch: larger-databases, size: 172921)
2020-07-15
21:53
[45d9126409] part of check-in [8ca8752652] Fix a problem in UPDATE FROM in which it tries to free using sqlite3_free() instead of sqlite3DbFree(). (check-in: [8ca8752652] user: drh branch: update-from, size: 172890)
2020-07-13
18:04
[0d340ea2a0] part of check-in [5ee3c27e20] Merge latest trunk changes with this branch. (check-in: [5ee3c27e20] user: dan branch: update-from, size: 172877)
2020-06-20
03:43
[ba1bbe563a] part of check-in [067291143a] Work around a bug (an incorrect warning) in Clang-8. (check-in: [067291143a] user: drh branch: trunk, size: 172290)
2020-06-19
15:24
[efea1c1313] part of check-in [7a876209a6] Extend the refactoring into extensions. Clean up stray newlines. (check-in: [7a876209a6] user: drh branch: trunk, size: 172278)
13:33
[c24ba2811c] part of check-in [9536fa0ae0] Further refactoring of the schema table name. (check-in: [9536fa0ae0] user: drh branch: trunk, size: 172378)
2020-06-18
14:30
[4164ce1c9f] part of check-in [c2d3676339] Merge the 3.32.3 release into the reuse-schema branch. (check-in: [c2d3676339] user: drh branch: reuse-schema-3.32, size: 173134)
2020-06-15
20:27
[8245e69aa1] part of check-in [61782a7ae3] Provide "sqlite_schema" as an alternative name to the table that holds the database schema. (check-in: [61782a7ae3] user: drh branch: trunk, size: 172378)
2020-06-08
12:49
[912d6ec338] part of check-in [44a58d6cb1] When an Expr object is changed and that Expr is referenced by an AggInfo, then also update the AggInfo. Also, persist all AggInfo objects until the Parse object is destroyed. This is a new fix for ticket [c8d3b9f0a750a529]. (check-in: [44a58d6cb1] user: drh branch: branch-3.32, size: 171207)
2020-06-07
17:33
[02cff9bb5b] part of check-in [7682d8a768] Alternative fix to ticket [c8d3b9f0a750a529]: Prior to deleting or modifying an Expr not that is referenced by an AggInfo, modify the AggInfo to get its own copy of the original Expr. (check-in: [7682d8a768] user: drh branch: persist-agginfo, size: 171592)
2020-06-06
20:48
[c9fffc858c] part of check-in [05418b2a4a] Merge multiple changes from trunk to address concerns with window-function parse-tree rewriting. (check-in: [05418b2a4a] user: drh branch: branch-3.32-early-winfunc-rewrite, size: 170937)
18:34
[87a45bf34e] part of check-in [03b32be44d] In the query flattener, defer deleting content until after associated Parse object is destroyed, in case some of the deleted expressions have been collected for use by sAggInfo. (check-in: [03b32be44d] user: drh branch: early-winfunc-rewrite-dev, size: 171322)
2020-05-28
00:45
[1c3dec6d36] part of check-in [98d4262018] When the sqlite_stat1 data is missing for some indexes of a table but is present for the table itself or for other indexes in the same table, then do not let the estimated number of rows in that table get too small, as doing so can deceive the query planner into ignoring a perfectly good index. (check-in: [98d4262018] user: drh branch: trunk, size: 171257)
2020-05-18
15:41
[87e14ac12a] part of check-in [9e4a7b3ed8] Merge latest trunk changes into this branch. (check-in: [9e4a7b3ed8] user: dan branch: begin-concurrent, size: 170961)
2020-05-16
21:01
[ca9e7a33b7] part of check-in [55910b9a72] Performance optimization for the sqlite3FindTable() subroutine. (check-in: [55910b9a72] user: drh branch: trunk, size: 170872)
19:00
[838e367617] part of check-in [5af4abe98c] Merge trunk enhancements in the reuse-schema branch. (Actual date of this check-in is 2020-05-18.) (check-in: [5af4abe98c] user: drh branch: reuse-schema, size: 172799)
2020-05-14
21:16
[520d6d1252] part of check-in [eca0ba2cf4] Do not allow a virtual table to be renamed into the name of one of its shadows. (check-in: [eca0ba2cf4] user: drh branch: trunk, size: 170374)
2020-05-08
19:02
[5d19ef52be] part of check-in [3a16c0ce4d] Release some restrictions on columns added by ALTER TABLE so that they only apply if the table contains one or more rows. (check-in: [3a16c0ce4d] user: drh branch: trunk, size: 169824)
2020-05-07
01:56
[5566b57043] part of check-in [99749d4fd4] Fix the handling of reserve-bytes so that the maximum value of 255 can be used. (check-in: [99749d4fd4] user: drh branch: trunk, size: 169806)
2020-04-30
18:28
[d43ee335c3] part of check-in [e4a18601e5] Add OOM tests for the new code on this branch. (check-in: [e4a18601e5] user: dan branch: update-from, size: 170394)
2020-04-27
20:55
[8debc951e3] part of check-in [f353a1a613] Allow a FROM clause in UPDATE statements. (check-in: [f353a1a613] user: dan branch: update-from, size: 170408)
2020-04-09
18:29
[e8ee72dc44] part of check-in [92f71a88c4] Merge recent trunk enhancements into the begin-concurrent branch. (check-in: [92f71a88c4] user: drh branch: begin-concurrent, size: 169896)
2020-04-06
18:16
[ec6c0bda1e] part of check-in [1e4b6a9398] Performance improvement for column name lookup. (check-in: [1e4b6a9398] user: drh branch: trunk, size: 169807)
2020-04-01
17:10
[d1b28e4922] part of check-in [7e666b6022] Add support for the "ANALYZE WITH LIMIT=N" syntax. (check-in: [7e666b6022] user: drh branch: analyze-with-limit, size: 169829)
2020-03-21
15:10
[3d22f21c47] part of check-in [a85c63daa6] Consolidate some code on this branch. (check-in: [a85c63daa6] user: dan branch: main-alias-fix, size: 169694)
2020-03-20
20:54
[4aab281397] part of check-in [75c85ca32f] Allow "main" to be used to refer to the main database even after SQLITE_DBCONFIG_MAINDBNAME has been used to assign another alias. (check-in: [75c85ca32f] user: dan branch: main-alias-fix, size: 169860)
2020-03-10
19:24
[406645db37] part of check-in [5f60b527b9] Enhanced detection logic for preventing the use of static schema expressions by code generating routines. (check-in: [5f60b527b9] user: drh branch: trunk, size: 169718)
2020-01-22
20:56
[5f3bd310e7] part of check-in [bbbc2881b9] Merge version 3.31.0 (check-in: [bbbc2881b9] user: drh branch: begin-concurrent, size: 168986)
2020-01-20
15:32
[9edbf33eba] part of check-in [9c920bbad3] Merge recent fixes from trunk. (check-in: [9c920bbad3] user: drh branch: reuse-schema, size: 171322)
2020-01-17
23:27
[2394d2c853] part of check-in [4363f69c3a] Fix a typo in a comment. No code changes. (check-in: [4363f69c3a] user: drh branch: trunk, size: 168897)
15:33
[04bc5a6b63] part of check-in [b302b260ca] More restrictions on changes to shadow tables when in defensive mode. (check-in: [b302b260ca] user: drh branch: branch-3.28, size: 158231)
15:24
[66af916c1c] part of check-in [3d13fbf248] Validate the type, name, and tbl_name fields of the sqlite_master table when loading the schema, unless writable_schema is engaged. (check-in: [3d13fbf248] user: drh branch: branch-3.28, size: 157948)
14:56
[6a2e4b5b4b] part of check-in [ad1f760f16] Do not allow shadow tables to be dropped in defensive mode. (check-in: [ad1f760f16] user: drh branch: branch-3.28, size: 157101)
2020-01-15
14:26
[b22d3580d0] part of check-in [f783917800] Merge all recent enhancements and fixes from trunk. (check-in: [f783917800] user: drh branch: reuse-schema, size: 171319)
13:34
[c2a2d8e6db] part of check-in [95ba2f50fd] Merge fixes and enhancements from trunk into begin-concurrent. (check-in: [95ba2f50fd] user: drh branch: begin-concurrent, size: 168983)
2020-01-08
22:22
[bd2f382562] part of check-in [da434dc149] Block edgy functions used in DEFAULT constraints. (check-in: [da434dc149] user: drh branch: new-security-options, size: 168894)
2020-01-03
14:34
[67b1a8d3ac] part of check-in [536e9a9d1b] Remove an over-zealous ALWAYS() macro and add a test case that shows that the conditional can sometimes be false. (check-in: [536e9a9d1b] user: drh branch: trunk, size: 168850)
2019-12-31
14:49
[9b7153d933] part of check-in [39d5557937] Merge recent enhancements from trunk. (check-in: [39d5557937] user: drh branch: two-size-lookaside, size: 168858)
2019-12-30
23:41
[e63db6c6ce] part of check-in [ea44c607b8] Add an ALWAYS() to a conditional which is apparently always true. (check-in: [ea44c607b8] user: drh branch: trunk, size: 168851)
2019-12-28
08:26
[5aa8776d92] part of check-in [c566a91d5c] Fix an assert() failure in altertable3-22.4. (check-in: [c566a91d5c] user: dan branch: better-error-handling-1, size: 168843)
2019-12-22
18:06
[1d999886fa] part of check-in [a982e6434c] When parsing a CREATE TABLE from the sqlite_master table, delete the CHECK constraints if there are any errors, since there might otherwise be attempts to use those CHECK constraints if PRAGMA writable_schema=ON is set. This undoes the fix in check-in [ea721b34477ab8b4] for a more general solution. (check-in: [a982e6434c] user: drh branch: trunk, size: 168840)
2019-12-19
17:42
[358e894867] part of check-in [4417c5bf0a] Detect the invalid use of NULLS LAST on an INTEGER PRIMARY KEY definition of a WITHOUT ROWID table. (check-in: [4417c5bf0a] user: drh branch: trunk, size: 168600)
03:14
[6ec6e0765a] part of check-in [4146c629c6] More restrictions on changes to shadow tables when in defensive mode. (check-in: [4146c629c6] user: drh branch: branch-3.30, size: 162373)
2019-12-15
02:49
[17f97c9917] part of check-in [1e3918ca2f] Ensure that all ON CONFLICT REPLACE indexes are sorted to the end of the list of indexes for a table, even for weird cases where the same UNIQUE constraint occurs twice with the ON CONFLICT REPLACE clause only on the second one. This avoids an out-of-order contraint processing problem that can arise due to the optimization of check-in [469a62ca33081854]. (check-in: [1e3918ca2f] user: drh branch: trunk, size: 168550)
2019-12-14
19:55
[9a08209f43] part of check-in [a89b386056] When a generated column expression is initially parsed, if it contains errors convert the expression to a simple NULL. This prevents additional pieces of the expression tree that are allocated from lookaside from leaking into the schema, where lookaside allocations are not allowed. (check-in: [a89b386056] user: drh branch: trunk, size: 168691)
2019-12-12
20:22
[ec3332b5ff] part of check-in [d3783357f8] Change the name of the Expr.a.zName field to zEName, so that it has a name that is distinct from other fields and variables and is hence easier to grep for. (check-in: [d3783357f8] user: drh branch: two-size-lookaside, size: 168161)
2019-12-09
08:13
[7c277ccc24] part of check-in [1d2e53a39b] Avoid infinite recursion in the ALTER TABLE code when a view contains an unused CTE that references, directly or indirectly, the view itself. (check-in: [1d2e53a39b] user: dan branch: trunk, size: 168154)
2019-12-07
00:22
[ed6cc3e7e2] part of check-in [27c0fdab1b] Fix a problem with foreign keys and generated columns discovered by Manuel Rigger. (check-in: [27c0fdab1b] user: drh branch: trunk, size: 168122)
2019-12-04
03:31
[66b1483780] part of check-in [96b6a76da0] Fix an incorrect NEVER() macro. (check-in: [96b6a76da0] user: drh branch: trunk, size: 167924)
2019-11-16
18:36
[3f91750780] part of check-in [0a988ce340] Do not allow shadow tables to be dropped in defensive mode. (check-in: [0a988ce340] user: drh branch: apple-osx, size: 162090)
14:15
[fe0b0b6dfa] part of check-in [6aef58b629] Do not allow CREATE TABLE or CREATE VIEW of an object with a name that looks like a shadow table name. (check-in: [6aef58b629] user: drh branch: defensive-improvements, size: 167842)
13:51
[0001fed71c] part of check-in [8ad34d36a1] Break out the test for writable shadow tables into a separate subroutine. (check-in: [8ad34d36a1] user: drh branch: defensive-improvements, size: 167797)
12:04
[8d83d05a04] part of check-in [70390bbca4] Do not allow shadow tables to be dropped in defensive mode. (check-in: [70390bbca4] user: drh branch: trunk, size: 167559)
2019-11-02
17:59
[572d85d338] part of check-in [9c795c4d2b] Fix a problem in VIEW creation that was introduced by the generated columns feature. (check-in: [9c795c4d2b] user: drh branch: trunk, size: 167186)
2019-10-29
03:39
[7afa8336eb] part of check-in [4fba090e67] Tighten the generated column requirement such that every table must have at least one non-generated column. Ticket [166347c6fc994155]. (check-in: [4fba090e67] user: drh branch: trunk, size: 167168)
01:26
[c0f279e9ef] part of check-in [591973217f] Disallow tables that have only virtual columns. (check-in: [591973217f] user: drh branch: trunk, size: 167189)
2019-10-27
22:22
[8563e54761] part of check-in [6d1bbba9a0] Improved detection of attempts to use a generated column as part of the primary key. Ticket [91e86951016a6802] (check-in: [6d1bbba9a0] user: drh branch: trunk, size: 167016)
2019-10-26
18:47
[3dea3b7510] part of check-in [b855acf183] Add support for generated columns. (check-in: [b855acf183] user: drh branch: trunk, size: 166896)
17:08
[2e17f27da8] part of check-in [e3c3f4d787] Performance optimization on sqlite3GenerateConstraintChecks() - bypass the loop that checks each column for NOT NULL constraints if it is known in advance that the table has no NOT NULL constraints. (check-in: [e3c3f4d787] user: drh branch: trunk, size: 160533)
2019-10-24
20:29
[0c9704f958] part of check-in [e0f7e321ec] Fix handling of covering indexes that use virtual columns. (check-in: [e0f7e321ec] user: drh branch: generated-columns, size: 166859)
2019-10-23
15:47
[f7070af666] part of check-in [3006571687] Minor adjustments for clarity and test coverage. (check-in: [3006571687] user: drh branch: generated-columns, size: 166208)
03:53
[7e4c835984] part of check-in [812467fbf0] Fix incorrect arguments to testcase() macros. (check-in: [812467fbf0] user: drh branch: generated-columns, size: 166201)
2019-10-22
15:45
[27c8224737] part of check-in [1a54743a3d] Do not allow generated columns in the PRIMARY KEY. (check-in: [1a54743a3d] user: drh branch: generated-columns, size: 166201)
13:59
[27471914e5] part of check-in [d38176e93a] In UPDATE processing, include generated columns in the set of columns being updated if and only if their generator expressions reference some other column that is being updated. (check-in: [d38176e93a] user: drh branch: generated-columns, size: 165723)
13:01
[acf54f3516] part of check-in [412799fc55] New testcase() macros. Fix a problem with INSERT when the IPK is to the right of generated columns. (check-in: [412799fc55] user: drh branch: generated-columns, size: 165464)
12:02
[c8d76afe57] part of check-in [ba123b8c20] Merge changes on trunk into the generated-columns branch. (check-in: [ba123b8c20] user: drh branch: generated-columns, size: 165308)
01:00
[0e558ef847] part of check-in [9ff80a9bf8] Move the sqlite3LocateCollSeq(), sqlite3FindCollSeq(), and sqlite3GetCollSeq() routines so that they are all beside one another in the callback.c source file. No logic changes. (check-in: [9ff80a9bf8] user: drh branch: trunk, size: 160496)
2019-10-21
01:04
[b5eefc5b29] part of check-in [bc368cb090] Changes to the INSERT logic to make it simpler and faster and so that it works with generated columns and BEFORE triggers. (check-in: [bc368cb090] user: drh branch: generated-columns, size: 166512)
2019-10-19
18:47
[c6421066f1] part of check-in [932a37275d] Work toward getting generated columns to work with triggers. Still more work to do in this area. (check-in: [932a37275d] user: drh branch: generated-columns, size: 166483)
13:29
[fb6464e8ae] part of check-in [27ab41c910] Refactor names of column index transformation functions, for clarity. Get generated columns working with ALTER TABLE RENAME COLUMN. (check-in: [27ab41c910] user: drh branch: generated-columns, size: 165375)
2019-10-18
18:33
[c38f1b8942] part of check-in [86074da0fd] Fixes for WITHOUT ROWID tables with VIRTUAL columns and an INTEGER PRIMARY KEY. (check-in: [86074da0fd] user: drh branch: generated-columns, size: 165147)
17:42
[1872ee2d0e] part of check-in [9f409649ec] Get generated columns working for WITHOUT ROWID tables. (check-in: [9f409649ec] user: drh branch: generated-columns, size: 165316)
12:14
[5e5fc50bda] part of check-in [447271123e] Fix sqlite3ColumnOfIndex() to account for virtual columns. (check-in: [447271123e] user: drh branch: generated-columns, size: 164405)
2019-10-17
18:35
[a6424bece3] part of check-in [4ad66af04a] In the Table object, change the nVCol field to nNVCol - the number of non-virtual columns, as that is the quantity that we need most. (check-in: [4ad66af04a] user: drh branch: generated-columns, size: 164191)
17:54
[efbcb2e78a] part of check-in [fe7517bf4d] Some (but not all) INSERT and UPDATE statements now work for STORED columns. (check-in: [fe7517bf4d] user: drh branch: generated-columns, size: 164053)
2019-10-16
20:05
[6cb40a36b3] part of check-in [120c6b78cb] ALTER TABLE is able to add a VIRTUAL column. (check-in: [120c6b78cb] user: drh branch: generated-columns, size: 163877)
12:18
[0ed5a7bb10] part of check-in [11d472c1df] Initial experimental code for generated column support. Non-functional. (check-in: [11d472c1df] user: drh branch: generated-columns, size: 163878)
2019-10-09
17:06
[804fd944dd] part of check-in [5ba8cee8f7] An alternative, experimental lookaside memory allocator that uses two different slot sizes. (check-in: [5ba8cee8f7] user: sperry branch: 2-size-lookaside, size: 161747)
15:00
[41d421602a] part of check-in [01ba4641ab] Change sqlite3SelectDup() to always return NULL if an OOM has occurred. (check-in: [01ba4641ab] user: drh branch: trunk, size: 161662)
2019-10-05
14:39
[13de2fdabb] part of check-in [17ce1c49cb] Performance optimization to the lookaside-memory disabling mechanism. (check-in: [17ce1c49cb] user: drh branch: trunk, size: 161700)
2019-09-30
16:57
[d7bb76a055] part of check-in [0679612412] Merge in the 3.30.0 beta 1 changes. (check-in: [0679612412] user: drh branch: reuse-schema, size: 164142)
16:14
[4ab4e86d11] part of check-in [a003818f70] Merge the 3.30.0 beta 1 changes from trunk. (check-in: [a003818f70] user: drh branch: begin-concurrent, size: 161806)
2019-09-26
20:05
[4814d55abb] part of check-in [e768179baa] Allow DROP TABLE to work on tables name "sqlite_parameters" just as it does with tables named "sqlite_stat%". Fix for the ".parameter clear" command in the shell. (check-in: [e768179baa] user: drh branch: trunk, size: 161717)
2019-09-16
12:35
[ab0e35602a] part of check-in [27eb223690] Merge all recent trunk enhancements into the reuse-schema branch. (check-in: [27eb223690] user: drh branch: reuse-schema, size: 164089)
12:08
[acaa1995e8] part of check-in [93b9ef3f47] Merge recent trunk enhancements into the begin-concurrent branch. (check-in: [93b9ef3f47] user: drh branch: begin-concurrent, size: 161753)
2019-08-23
21:11
[86827bdbc2] part of check-in [12d2cf8871] Attempt to parse the NULLS LAST clause more efficiently. A few cycles were saved, but at the expense of more code. And there is a bug was introduced somewhere. Not worth continuing down this line. (check-in: [12d2cf8871] user: drh branch: dead-end, size: 161714)
2019-08-19
17:26
[da5d5d82eb] part of check-in [bb9767a287] Prevent NULLS FIRST/LAST from being used in CREATE INDEX and other statements. (check-in: [bb9767a287] user: dan branch: nulls-last, size: 161664)
2019-08-17
15:47
[39f448776a] part of check-in [db1e60800b] Merge trunk changes into this branch. (check-in: [db1e60800b] user: dan branch: nulls-last, size: 161013)
2019-08-13
15:22
[7d97429277] part of check-in [5b4689d89c] Merge latest trunk changes with this branch. (check-in: [5b4689d89c] user: dan branch: reuse-schema, size: 163351)
2019-08-12
16:36
[3584e598dd] part of check-in [07babb0f89] 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: [07babb0f89] user: dan branch: nulls-last, size: 160995)
14:17
[7fb6ad35d1] part of check-in [48d9b48ab4] Add a TESTCTRL that disables the verification of type, name, and tbl_name in the sqlite_master table. (check-in: [48d9b48ab4] user: drh branch: trunk, size: 160926)
00:08
[d38b82d2cc] part of check-in [724f4df9cc] Validate the type, name, and tbl_name fields of the sqlite_master table when loading the schema, unless writable_schema is engaged. (check-in: [724f4df9cc] user: drh branch: trunk, size: 160868)
2019-08-08
15:24
[9217f26f14] part of check-in [1e17ea2fd1] 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: [1e17ea2fd1] user: drh branch: omit-stat3, size: 160021)
2019-08-06
14:37
[14906ec302] part of check-in [e8234f6939] 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: [e8234f6939] user: drh branch: pending, size: 160030)
2019-08-05
19:32
[b48552e607] part of check-in [09cd0c0c6e] 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: [09cd0c0c6e] user: drh branch: tkt-61c853-A, size: 159941)
2019-07-26
20:54
[02ec8b22f6] part of check-in [7f1e4e4b99] Merge latest changes from trunk into this branch. (check-in: [7f1e4e4b99] user: dan branch: reuse-schema, size: 162340)
2019-07-17
18:11
[89af0fb6df] part of check-in [bda258834b] Fix problems with duplicate fields in the PRIMARY KEYs of WITHOUT ROWID tables. (check-in: [bda258834b] user: drh branch: branch-3.29, size: 159876)
09:18
[48f22e7c3b] part of check-in [bd9a47a3a2] Fix problems with duplicate fields in the PRIMARY KEYs of WITHOUT ROWID tables. (check-in: [bd9a47a3a2] user: dan branch: wor-pk-dups, size: 159915)
2019-07-16
19:44
[cd19eb05c6] part of check-in [9e66458592] Add new assert() statements in an attempt to help static analyzers avoid false-positives. (check-in: [9e66458592] user: drh branch: trunk, size: 159752)
2019-07-08
21:32
[c3ea3b48aa] part of check-in [fae92fee54] Merge recent trunk enhancements into the reuse-schema branch. (check-in: [fae92fee54] user: drh branch: reuse-schema, size: 162138)
21:06
[e39e67cd80] part of check-in [7fff080335] Merge recent trunk enhancements into the begin-concurrent branch. (check-in: [7fff080335] user: drh branch: begin-concurrent, size: 159802)
13:45
[23a0253ab5] part of check-in [8fb0c6d5a3] Fix an assert() that [28196d89] caused to fail. (check-in: [8fb0c6d5a3] user: dan branch: trunk, size: 159713)
2019-05-24
13:04
[20965f9b06] part of check-in [ff9f3e0951] Merge recent enhancements from trunk. (check-in: [ff9f3e0951] user: drh branch: reuse-schema, size: 161901)
2019-05-21
16:32
[c5b97d3518] part of check-in [a3e77c7776] Fix a problem in [b5ca442a] causing an assert() to fail in REINDEX commands. (check-in: [a3e77c7776] user: dan branch: trunk, size: 159476)
14:42
[846b6106e3] part of check-in [b8071d10cb] Use a statement journal for all CREATE INDEX statements in case an indexed exprsesion throws an exception when it is evaluated. Fix for [b5ca442a]. (check-in: [b8071d10cb] user: dan branch: trunk, size: 159463)
2019-05-14
22:25
[ae462f7766] part of check-in [018f3199b9] Merge all the latest trunk enhancements into the reuse-schema branch. (check-in: [018f3199b9] user: drh branch: reuse-schema, size: 161360)
21:51
[2e9b0fc01b] part of check-in [5d3a6e18d4] Merge the latest trunk enhancements into begin-concurrent. (check-in: [5d3a6e18d4] user: drh branch: begin-concurrent, size: 159024)
00:43
[aead3d7479] part of check-in [f7aadfab3b] Disable index seek optimizations on REINDEX when the order of primary keys in the index differs from the main table. Fix for ticket [bba7b69f9849b5bf11b4]. (check-in: [f7aadfab3b] user: drh branch: trunk, size: 158935)
2019-05-06
16:15
[23e9332b26] part of check-in [91f701d398] Fix a problem with renaming an INTEGER PRIMARY KEY column of a WITHOUT ROWID table using ALTER TABLE. (check-in: [91f701d398] user: dan branch: trunk, size: 158344)
2019-04-29
13:30
[2d9ddfeaf8] part of check-in [740d5ff6cc] Improved header comment and precondition checking for the new isDupColumn() function. (check-in: [740d5ff6cc] user: drh branch: tkt-3182d38790, size: 158238)
2019-04-28
19:27
[3fedab95ff] part of check-in [b34fa5bff4] Take collating sequence into account when removing redundant columns from indexes on WITHOUT ROWID tables. This is the first proof-of-concept fix for ticket [3182d3879020ef3]. More testing needed. (check-in: [b34fa5bff4] user: drh branch: tkt-3182d38790, size: 157958)
2019-04-27
20:16
[e9d560fdc3] part of check-in [9520907217] Fix a minor typo in a comment. No changes to code. (check-in: [9520907217] user: drh branch: trunk, size: 156675)
2019-04-15
15:35
[ed008d999a] part of check-in [5c6c9e7f6f] Merge recent changes from trunk into reuse-schema (check-in: [5c6c9e7f6f] user: drh branch: reuse-schema, size: 159100)
14:59
[2455b010d7] part of check-in [7c328e8894] Merge the latest enhancements from trunk. (check-in: [7c328e8894] user: drh branch: begin-concurrent, size: 156764)
2019-04-13
14:07
[61655dad91] part of check-in [c28c973ad6] Fixes for harmless compiler warnings. (check-in: [c28c973ad6] user: drh branch: trunk, size: 156675)
04:01
[55a1fce8a2] part of check-in [0b6ae032c2] Enforce the SQLITE_LIMIT_COLUMN limit on virtual tables. (check-in: [0b6ae032c2] user: drh branch: trunk, size: 156680)
2019-04-10
00:58
[b3bda94400] part of check-in [037da798fa] Do not place arbitrary restrictions on the length of the failure message for a uniqueness constraint. (check-in: [037da798fa] user: drh branch: trunk, size: 156625)
2019-04-09
20:50
[82954fd186] part of check-in [9b5d408864] Fix a problem caused by a small SQLITE_LIMIT_LENGTH value and a CREATE TABLE with a very large name. (check-in: [9b5d408864] user: dan branch: toobig-fix, size: 156648)
2019-04-04
20:21
[1ca296f402] part of check-in [b40a4edceb] Provide a DBCONFIG to enable or disable virtual tables that match a LIKE pattern. (check-in: [b40a4edceb] user: drh branch: disable-vtab, size: 156606)
2019-03-31
21:09
[cb2cddfbb2] part of check-in [8af0caeb6d] Early detection of too many columns in an index avoid a possible 16-bit signed integer overflow. (check-in: [8af0caeb6d] user: drh branch: trunk, size: 156566)
2019-03-28
04:03
[241006a97d] part of check-in [85e53ff133] If the string formatter in sqlite3NestedParse() fails due to an over-length string, make sure this error is recorded by the parser so that it knows to fail. (check-in: [85e53ff133] user: drh branch: trunk, size: 156454)
2019-03-26
12:07
[1d5dc39cb3] part of check-in [774d0d5288] Merge recent enhancements from trunk. (check-in: [774d0d5288] user: drh branch: begin-concurrent, size: 156523)
11:57
[c973531d60] part of check-in [db4e2cc36a] Merge recent trunk enhancements. (check-in: [db4e2cc36a] user: drh branch: reuse-schema, size: 158859)
2019-03-25
21:55
[7c8851893f] part of check-in [9b20ee10ff] Remove a test from the index build logic which is no longer needed and is in fact unreachable. (check-in: [9b20ee10ff] user: drh branch: trunk, size: 156434)
21:35
[2c7cde0fe8] part of check-in [24ef384469] Change the name of the parameter table in the CLI to "sqlite_parameters". Doing so involves adding SQLITE_DBCONFIG_WRITABLE_SCHEMA and allowing the creation of tables whose names begin with "sqlite_" and that are indexed while writable_schema is on. (check-in: [24ef384469] user: drh branch: trunk, size: 156494)
2019-03-21
17:22
[34ff50429a] part of check-in [3196f5f480] Merge latest trunk changes with this branch. (check-in: [3196f5f480] user: dan branch: reuse-schema, size: 158897)
17:13
[83ab73704b] part of check-in [b8e536089b] Disable the feature on this branch in non-SQLITE_ENABLE_SHARED_SCHEMA builds. (check-in: [b8e536089b] user: dan branch: reuse-schema, size: 158844)
2019-03-20
20:02
[f570cb7894] part of check-in [c1be211c02] Use the IsReuseSchema() macro more consistently. Also, rename it to IsSharedSchema(). (check-in: [c1be211c02] user: dan branch: reuse-schema, size: 158802)
19:17
[ace0fcc6e9] part of check-in [a70fdaa390] Fix an error message. (check-in: [a70fdaa390] user: dan branch: reuse-schema, size: 158793)
16:58
[0f88a2f52c] part of check-in [b9e2393cf2] Fix a potential dangling pointer deference in an ALTER TABLE run on a schema that contains constructs of the form "PRIMARY KEY(column COLLATE collation)". (check-in: [b9e2393cf2] user: dan branch: trunk, size: 156472)
2019-03-08
15:30
[b85d9265de] part of check-in [667cce3dce] Merge all the latest enhancements from trunk. (check-in: [667cce3dce] user: drh branch: begin-concurrent-pnu, size: 156508)
2019-02-25
19:23
[f556ca5fe2] part of check-in [d6a9bff6f5] Fix a comment in build.c. (check-in: [d6a9bff6f5] user: dan branch: reuse-schema, size: 158769)
17:54
[5db330027e] part of check-in [64f97530ad] Where possible, avoid loading all schemas into memory for PRAGMA statements. (check-in: [64f97530ad] user: dan branch: reuse-schema, size: 158494)
2019-02-22
17:44
[7971c75fc7] part of check-in [001771afd0] Merge latest trunk changes into this branch. (check-in: [001771afd0] user: dan branch: reuse-schema, size: 158479)
16:18
[3acec29b23] part of check-in [73056b314b] In sqlite3NestedParse() be sure to detect all SQLITE_NOMEM and SQLITE_TOOBIG errors and to distinguish between them. (check-in: [73056b314b] user: drh branch: trunk, size: 156419)
2019-02-21
18:11
[a8789fbc05] part of check-in [e6e9dd5c17] Fix OOM handling in sqlite3NestedParse(). (check-in: [e6e9dd5c17] user: dan branch: nested-parse-oom, size: 156257)
2019-02-20
18:44
[f0bc756bdb] part of check-in [ba0ab042f4] Further test cases and fixes for SQLITE_OPEN_SHARED_SCHEMA. (check-in: [ba0ab042f4] user: dan branch: reuse-schema, size: 158084)
2019-02-19
18:00
[80f9e220e3] part of check-in [8ac75b8a88] Improve error messages caused by corrupt database schemas in OPEN_SHARED_SCHEMA mode. (check-in: [8ac75b8a88] user: dan branch: reuse-schema, size: 158065)
13:51
[ac41c86b48] part of check-in [0abace8a7a] New assert() to verify the TF_HasprimaryKey flag. (check-in: [0abace8a7a] user: drh branch: trunk, size: 156232)
2019-02-18
18:16
[87a0bc491b] part of check-in [88cbf54eee] Ensure that creating temp schema items does not cause an OPEN_SHARABLE_SCHEMA connection to load all schemas into memory. (check-in: [88cbf54eee] user: dan branch: reuse-schema, size: 158034)
2019-02-15
19:00
[9ee9a6d4dc] part of check-in [ecf6251ec0] 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. (check-in: [ecf6251ec0] user: dan branch: reuse-schema, size: 157569)
2019-02-14
21:04
[364c8fa52c] part of check-in [d43b3c056c] Fix SQLITE_DBSTATUS_SCHEMA_USED so that it works with SQLITE_OPEN_SHARED_SCHEMA connections. (check-in: [d43b3c056c] user: dan branch: reuse-schema, size: 157375)
18:38
[66830361a2] part of check-in [7257fcc8c9] Change the name of the SQLITE_OPEN_REUSE_SCHEMA flag to SQLITE_OPEN_SHARED_SCHEMA. (check-in: [7257fcc8c9] user: dan branch: reuse-schema, size: 157385)
2019-02-13
18:29
[c6b40555c6] part of check-in [b102148e71] Avoid crashing after parsing a corrupt schema with a REUSE_SCHEMA connection. (check-in: [b102148e71] user: dan branch: reuse-schema, size: 156822)
08:40
[98beafec3e] part of check-in [7c2ec2d4cf] Fix a problem with OPEN_REUSE_SCHEMA connections reloading the temp schema. (check-in: [7c2ec2d4cf] user: dan branch: reuse-schema, size: 156852)
2019-02-12
19:20
[70fa06d96f] part of check-in [ea611d7cba] Share schemas between databases attached to the same database handle. (check-in: [ea611d7cba] user: dan branch: reuse-schema, size: 156684)
2019-02-11
20:13
[4406cadbd4] part of check-in [dbedd81bf2] Merge latest trunk changes into this branch. (check-in: [dbedd81bf2] user: dan branch: reuse-schema, size: 156145)
01:58
[b0a9ee5b55] part of check-in [7b41222428] Add an assert() in an attempt to repro an ASAN warning from OSSFuzz. (check-in: [7b41222428] user: drh branch: trunk, size: 156024)
2019-02-06
01:18
[906ca6663b] part of check-in [3087a0c31e] When extending the size of SrcList objects, do not attempt to use extra space on the end of the allocation, as that provides scarcely any performance benefit but does greatly complicate cross-platform testing. (check-in: [3087a0c31e] user: drh branch: trunk, size: 156002)
2019-02-05
19:51
[5c99b58734] part of check-in [c089cc4fbe] Merge latest trunk into this branch. (check-in: [c089cc4fbe] user: dan branch: reuse-schema, size: 156216)
2019-02-04
21:02
[6466a704db] part of check-in [5dfbef8349] Fix a problem with reloading the schema on this branch. (check-in: [5dfbef8349] user: dan branch: reuse-schema, size: 153677)
2019-02-02
21:02
[8b9dfd5eb5] part of check-in [9e8e5f52cf] Try new approach ensuring that each Schema object is only used by one connection/database at any one time. (check-in: [9e8e5f52cf] user: dan branch: reuse-schema, size: 153691)
2019-01-30
19:50
[fe6e3753c4] part of check-in [916c52dad4] Change the error message slightly for when two or more indexes have the same rootpage. (check-in: [916c52dad4] user: drh branch: trunk, size: 156095)
19:12
[f2805f5da5] part of check-in [6b360bc0b9] 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 branch: trunk, size: 156096)
18:33
[ddcce07ea5] part of check-in [f21c6f1343] 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 branch: trunk, size: 156096)
2019-01-17
15:40
[f07c0b154c] part of check-in [df08d472b0] Revamp the SrcList allocator routines to be methods of Parse instead of being methods of the "sqlite3" object, so that they can leave better error messages when the SrcList object grows too large. (check-in: [df08d472b0] user: drh branch: trunk, size: 155896)
14:34
[eb0ab28d8e] part of check-in [7cac614d5d] Limit the size of SrcList objects to 200 entries (compile-time configurable using -DSQLITE_MAX_SRCLIST=n). The maximum number of tables in a join has always been 64, so this is not a real constraint on capability. Limiting the size of a SrcList prevents DOS attacks (discovered by OSSFuzz) using crazy nexted CTE joins. (check-in: [7cac614d5d] user: drh branch: trunk, size: 155914)
2019-01-11
17:41
[b1e24f1dee] part of check-in [556dd8922f] Fix a problem handling a negative value in the "number-of-pages" database header field. Also a problem with running "REINDEX tbl" against a virtual table for which the SQL passed to sqlite3_declare_vtab() contains PRIMARY KEY or UNIQUE constraints. (check-in: [556dd8922f] user: dan branch: trunk, size: 154978)
2019-01-09
02:02
[2a1b80dbe7] part of check-in [f09aa3248e] Enhance the ALTER TABLE RENAME COLUMN feature so that it works on tables that have redundant UNIQUE and/or PRIMARY KEY constraints. Fix for ticket [bc8d94f0fbd633fd9a051e3] (check-in: [f09aa3248e] user: drh branch: trunk, size: 154932)
2019-01-02
16:08
[1c36fd26eb] part of check-in [5bf212f1a7] Merge latest trunk changes into this branch. (check-in: [5bf212f1a7] user: dan branch: begin-concurrent, size: 154874)
2018-12-28
21:40
[f5968d8081] part of check-in [44e1b55aab] Merge performance enhancements and other patches. (check-in: [44e1b55aab] user: drh branch: factor-out-scalar-subselect, size: 155150)
17:45
[5ca38181e8] part of check-in [0140f6dbfb] Fix a problem causing the sqlite_master entry corresponding to a virtual table to be removed by a DROP TABLE even if the call to the vtabs xDestroy() method failed. (check-in: [0140f6dbfb] user: dan branch: trunk, size: 154785)
2018-12-27
17:11
[a1bfe29e97] part of check-in [ea96001e80] Merge latest wal2 changes with this branch. (check-in: [ea96001e80] user: dan branch: begin-concurrent-wal2, size: 154845)
2018-12-26
15:04
[b620091357] part of check-in [50e5f390fb] 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. (check-in: [50e5f390fb] user: drh branch: factor-out-scalar-subselect, size: 155121)
2018-12-21
19:29
[cb86906fcc] part of check-in [25666e3d03] 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. (check-in: [25666e3d03] user: dan branch: prepare-no-vtab, size: 154756)
2018-12-06
02:08
[a5402bf34c] part of check-in [1e13aaa29f] Merge bug fixes from trunk. (check-in: [1e13aaa29f] user: drh branch: begin-concurrent, size: 154724)
02:01
[ef9d7dc73e] part of check-in [3a2c047989] Remove the unused pColHash field from the Table object. (check-in: [3a2c047989] user: drh branch: trunk, size: 154635)
2018-12-05
13:44
[7d86c455d2] part of check-in [47b73f6bfe] Merge enhancements from trunk, especially the enhanced sqlite3_normalized_sql() interface. (check-in: [47b73f6bfe] user: drh branch: begin-concurrent, size: 154868)
2018-12-04
01:18
[0bd866f9ac] part of check-in [6770ed0873] Attempt to make the parser a little faster by storing the ON and USING clause in a single OnUsing object. (check-in: [6770ed0873] user: drh branch: on-using-opt, size: 154814)
2018-12-03
18:15
[5e04fb8528] part of check-in [f0ddb358cc] Bring up to date with version 3.26.0. (check-in: [f0ddb358cc] user: drh branch: begin-concurrent, size: 154882)
2018-12-01
21:13
[fce47a9789] part of check-in [27798f17f5] Very slightly smaller and faster. (check-in: [27798f17f5] user: drh branch: trunk, size: 154779)
2018-11-28
08:02
[127d33ad57] part of check-in [9bcdec85e2] Fixes for SQLITE_OMIT_VIRTUAL_TABLE builds. (check-in: [9bcdec85e2] user: dan branch: trunk, size: 154793)
2018-11-27
19:47
[06b417bd39] part of check-in [0ea049f342] Fix a failing assert() in sqlite3ResetAllSchemasOfConnection(). (check-in: [0ea049f342] user: dan branch: trunk, size: 154675)
2018-11-26
07:21
[ce4de1bc5d] part of check-in [28a615a2e0] Merge latest trunk changes into this branch. (check-in: [28a615a2e0] user: dan branch: begin-concurrent, size: 154661)
2018-11-20
16:02
[d31ac32f9f] part of check-in [dfab7170ed] Consolidate the two sqlite3SchemaToIndex() routines. (check-in: [dfab7170ed] user: dan branch: reuse-schema1, size: 154734)
2018-11-19
20:41
[6ef4b77f66] part of check-in [84be9220db] Fix a problem with virtual tables in shared schemas. (check-in: [84be9220db] user: dan branch: reuse-schema1, size: 154741)
2018-11-17
18:45
[20c584fc7d] part of check-in [9fdd186897] Merge latest trunk changes into this branch. (check-in: [9fdd186897] user: dan branch: reuse-schema1, size: 154740)
18:11
[f7487a0538] part of check-in [6d7a7e5faf] Fix further problems with the feature on this branch. (check-in: [6d7a7e5faf] user: dan branch: reuse-schema1, size: 153724)
2018-11-16
17:04
[82e9198192] part of check-in [9780829a77] Fix further REUSE_SCHEMA issues. (check-in: [9780829a77] user: dan branch: reuse-schema1, size: 153748)
2018-11-15
21:20
[ce75a5834f] part of check-in [31b6aee755] Fix some problems with the feature on this branch. Many problems remain. (check-in: [31b6aee755] user: dan branch: reuse-schema1, size: 153715)
2018-11-09
18:44
[b48fa5d9ee] part of check-in [ae88f8e1ff] Merge latest trunk changes with this branch. (check-in: [ae88f8e1ff] user: dan branch: reuse-schema, size: 153709)
2018-11-08
17:32
[d70d8badf0] part of check-in [9292d3351c] Improved documentation for SQLITE_DBCONFIG_DEFENSIVE. Add a NEVER() macro on an unreachable branch. (check-in: [9292d3351c] user: drh branch: read-only-shadow, size: 154579)
2018-11-06
13:37
[5bc91901b0] part of check-in [f79b47c985] 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(). (check-in: [f79b47c985] user: drh branch: read-only-shadow, size: 154572)
2018-11-05
23:01
[3b611e7da0] part of check-in [31942b3dd3] Initial code to make shadow tables read-only to ordinary SQL. The now xShadowName method is added to the sqlite3_module object and is used to identify potential shadow tables. The SQLITE_PREPARE_SHADOW argument to sqlite3_prepare_v3() is defined. It is designed to permit writing to shadow tables, but is currently an unused placeholder. (check-in: [31942b3dd3] user: drh branch: read-only-shadow, size: 154667)
19:37
[a614b226b9] part of check-in [11d98414ea] Add the SQLITE_DBCONFIG_DEFENSIVE flag. (check-in: [11d98414ea] user: drh branch: trunk, size: 153556)
16:38
[dad9c5ef02] part of check-in [b8d35c4a7c] Eponymous virtual tables appear to exist in all schemas. This is an alternative and improved fix to the eponymous virtual table in trigger problem that was previously addressed by checkin [1fa74930ab56171e]. (check-in: [b8d35c4a7c] user: drh branch: trunk, size: 153006)
2018-11-03
17:31
[55f1059609] part of check-in [7609434582] Correct the internal logic for SQLITE_DBCONFIG_DEFENSIVE. (check-in: [7609434582] user: drh branch: dbconfig-defensive, size: 153625)
16:09
[f5d49f97ab] part of check-in [af3f29d493] Add the SQLITE_DBCONFIG_DEFENSIVE flag. (check-in: [af3f29d493] user: drh branch: dbconfig-defensive, size: 153094)
2018-10-31
19:01
[792a3246e8] part of check-in [790ea39a65] 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. (check-in: [790ea39a65] user: drh branch: trunk, size: 153075)
2018-10-29
21:01
[bd47530436] part of check-in [147a9429a5] Fix a potential assertion fault that can occur while trying to DROP a table from a corrupted database file. (check-in: [147a9429a5] user: drh branch: trunk, size: 152931)
17:53
[675799caa8] part of check-in [592b66e805] Add the sqlite3_normalized_sql() API. (check-in: [592b66e805] user: mistachkin branch: normalized_sql, size: 153037)
2018-10-08
18:58
[9cc3ee9b57] part of check-in [2ac72114a1] Merge latest trunk changes into this branch. (check-in: [2ac72114a1] user: dan branch: reuse-schema, size: 153046)
2018-09-28
20:58
[a15d10c6c2] part of check-in [86750c927c] Merge latest trunk into this branch. (check-in: [86750c927c] user: dan branch: begin-concurrent, size: 152982)
2018-09-24
14:10
[0b3d422770] part of check-in [5a38d9281b] Allow a writable virtual table to have a schema with an INTEGER PRIMARY KEY and WITHOUT ROWID. This fixes ticket [f25d5ceebe1d710ff61a571e395356869d8272ef]. Test case in TH3. (check-in: [5a38d9281b] user: drh branch: trunk, size: 152893)
2018-09-17
08:27
[3bdd61d7ec] part of check-in [1856ea63b3] Add extra test for the fix on this branch. Also fix a pointer-compare-after-free problem that occurs in similar cases. (check-in: [1856ea63b3] user: dan branch: tkt-b41031ea, size: 153020)
2018-09-12
08:51
[90571aa2a9] part of check-in [572de7e4e3] Fix an invalid pointer comparison triggered by renaming a table column when there are views with explicit column names in the schema. (check-in: [572de7e4e3] user: dan branch: trunk, size: 152823)
2018-09-07
18:52
[08edbe3772] part of check-in [8fa254aa63] Add assert() and ALWAYS() to identify two unreachable branches. (check-in: [8fa254aa63] user: drh branch: trunk, size: 152744)
2018-09-05
14:36
[3565efa519] part of check-in [2ec7e50cbc] Avoid comparing pointer values after the object that they point to has been deleted. (check-in: [2ec7e50cbc] user: dan branch: alter-table-rename-column, size: 152650)
2018-08-29
21:00
[79c5f75243] part of check-in [01308bae3a] Extend RENAME TABLE to edit triggers and views. Still buggy. (check-in: [01308bae3a] user: dan branch: alter-table-rename-table, size: 152577)
2018-08-21
16:32
[b49367a942] part of check-in [b9ae9a0a18] Rename internal function sqlite3RenameToken() to sqlite3RenameTokenMap() and sqlite3MoveRenameToken() to sqlite3RenameTokenRemap(). (check-in: [b9ae9a0a18] user: dan branch: alter-table-rename-column, size: 152212)
2018-08-14
20:18
[a2e61e716e] part of check-in [db829dc1a2] Have ALTER TABLE RENAME edit column references in CREATE VIEW statements. (check-in: [db829dc1a2] user: dan branch: edit-trigger-wrapper, size: 152203)
16:18
[a38f9e25a3] part of check-in [32ca8418df] Fix ALTER TABLE RENAME COLUMN in cases where the column being renamed is an IPK declared with a separate PRIMARY KEY clause - "CREATE TABLE x(y INTEGER, PRIMARY KEY(y))". (check-in: [32ca8418df] user: dan branch: alter-table-rename-column, size: 151972)
2018-08-13
17:14
[49cad074fc] part of check-in [5fdb6b0aaf] Edit the WHEN and UPDATE OF clauses of trigger programs as part of ALTER TABLE RENAME COLUMN. (check-in: [5fdb6b0aaf] user: dan branch: edit-trigger-wrapper, size: 152005)
2018-08-10
19:19
[a8e71a3cf7] part of check-in [191079bd4f] When a column is renamed, update any references to it in REFERENCES clauses that belong to other tables. (check-in: [191079bd4f] user: dan branch: alter-table-rename-column, size: 151858)
14:23
[e7c0350573] part of check-in [d48f7bbdf4] Fix a problem with renaming columns on tables with REFERENCES clauses that specify a large number of columns. (check-in: [d48f7bbdf4] user: dan branch: alter-table-rename-column, size: 151757)
2018-08-09
20:47
[1cdcd12f5d] part of check-in [fa0fc01eb4] Experimental implementation of ALTER TABLE ... RENAME COLUMN. Still buggy. (check-in: [fa0fc01eb4] user: dan branch: alter-table-rename-column, size: 151752)
2018-08-04
14:30
[fe407be13d] part of check-in [db6052e972] Remove additional traces of the column cache. (check-in: [db6052e972] user: drh branch: omit-column-cache, size: 151216)
2018-07-27
22:55
[7e82726057] part of check-in [7efdba2bbc] When doing a DROP VIEW do not try to delete entries from the sqlite_stat1 table as there are none. (check-in: [7efdba2bbc] user: drh branch: trunk, size: 151291)
2018-07-24
22:02
[ae6edcd6e1] part of check-in [2bd593332d] Do not abort running queries due to a CREATE INDEX statement. Allow them to run to completion before being reprepared. Fix for ticket [c694113e50321afdf9]. (check-in: [2bd593332d] user: drh branch: trunk, size: 151262)
2018-07-20
20:56
[80cd1c21e0] part of check-in [2f5be3a2dd] When dropping a view, skip trying to delete from 'sqlite_stat*'. (check-in: [2f5be3a2dd] user: mistachkin branch: dropViewNoStat, size: 151285)
2018-07-10
15:45
[da448a48fc] part of check-in [e9a3e8642e] Merge latest trunk changes into this branch. (check-in: [e9a3e8642e] user: dan branch: begin-concurrent, size: 151345)
2018-07-09
18:55
[d8f6ac1e9e] part of check-in [1ddbb5372e] Avoid leaving view-definitions with an incomplete set of column names/types in the in-memory schema if an OOM strikes while allocating the same. (check-in: [1ddbb5372e] user: dan branch: trunk, size: 151256)
02:02
[1f0d06978a] part of check-in [164b1641e3] During WITHOUT ROWID table creation, if the sqlite3CreateTable() call fails due to an authorizer denying the INSERT into the sqlite_master table, then detect this fact and abort the CREATE TABLE early, to avoid an assertion fault. (check-in: [164b1641e3] user: drh branch: trunk, size: 151140)
2018-06-09
01:12
[3b3bfa8880] part of check-in [d735872ec3] Compute the bitmask of indexed columns for each index once when the Index objecct is constructed, instead of recomputing it every time it is needed. (check-in: [d735872ec3] user: drh branch: trunk, size: 151124)
2018-06-06
17:03
[3c182a684d] part of check-in [d7299bfeb1] Merge changes from trunk, including all the 3.24.0 changes plus some later enhancements. (check-in: [d7299bfeb1] user: drh branch: begin-concurrent, size: 150398)
2018-05-28
17:31
[5fc4145850] part of check-in [5a4542dbcf] When compiling with SQLITE_DEBUG, add run-time checks to ensure that no statement aborts unless either there have been no writes or else there is a statement journal. (check-in: [5a4542dbcf] user: drh branch: stmt-journal-testing, size: 150309)
2018-05-15
11:45
[8add8a528a] part of check-in [ae86cf60b6] Merge latest trunk changes with this branch. (check-in: [ae86cf60b6] user: dan branch: begin-concurrent, size: 150328)
2018-05-14
17:12
[d71b7da8f3] part of check-in [32b3d11050] Experimental syntax enhancement for an "INDEXED" keyword following a FROM-clause subquery that indicates that an automatic index on that subquery is suggested. (check-in: [32b3d11050] user: drh branch: exp-indexed-clause, size: 150254)
2018-05-09
13:46
[50ff3e0fa0] part of check-in [87f261f0cb] Make the internal dynamic string interface available to extensions using the new sqlite3_str object and its associated methods. This is mostly just a renaming of internal objects and methods to use external names, through there are a few small wrapper functions. (check-in: [87f261f0cb] user: drh branch: trunk, size: 150239)
2018-05-01
18:39
[0c2be5839f] part of check-in [853f316359] The SQLITE_ALLOW_SQLITE_MASTER_INDEX compile-time option allows a CREATE INDEX statement against the sqlite_master table. Once created, the index works, and is usable by legacy instances of SQLite. (check-in: [853f316359] user: drh branch: trunk, size: 150246)
2018-04-26
17:54
[1ef8945748] part of check-in [d8ae7ba083] Merge latest changes from trunk. Including the "ORDER BY ... LIMIT" optimization. (check-in: [d8ae7ba083] user: dan branch: begin-concurrent, size: 150233)
2018-04-25
12:01
[c4227d058d] part of check-in [58cf812fd8] Avoid many unnecessary calls to sqlite3ReadSchema() and sqlite3Init() when the schema is known to be valid already. (check-in: [58cf812fd8] user: drh branch: trunk, size: 150144)
2018-04-24
19:21
[1a27e1f4ba] part of check-in [b27bd799ea] Merge latest trunk changes into this branch. (check-in: [b27bd799ea] user: dan branch: begin-concurrent, size: 150121)
2018-04-18
14:48
[91d548027a] part of check-in [f3596ab9eb] Omit some code not used without SQLITE_ENABLE_SORTER_REFERENCES. Improvements to comments used for documentation. (check-in: [f3596ab9eb] user: drh branch: sorter-reference, size: 150032)
2018-04-16
21:12
[850d831d98] part of check-in [b25a7bb769] Add SQLITE_CONFIG_SORTERREF_SIZE configuration option. (check-in: [b25a7bb769] user: dan branch: sorter-reference, size: 149939)
2018-04-12
17:28
[16cbe48698] part of check-in [e4396c540a] Extend the upsert syntax to allow a WHERE clause on the UPDATE. (check-in: [e4396c540a] user: drh branch: upsert, size: 151466)
15:43
[6da67b1fbb] part of check-in [c48f64d8ae] Update the upsert parsing so that it accepts conflict-target labels using the PostgreSQL syntax, and also accepts the MySQL "ON DUPLICATE KEY" syntax. (check-in: [c48f64d8ae] user: drh branch: upsert, size: 151326)
13:15
[1932d05343] part of check-in [d83eaed539] Add the Upsert object for holding upsert clause information. (check-in: [d83eaed539] user: drh branch: upsert, size: 150577)
2018-04-09
00:46
[61320fb840] part of check-in [43c2c60caf] Fix a (harmless) signed integer overflow warning. (check-in: [43c2c60caf] user: drh branch: trunk, size: 149767)
2018-03-28
15:56
[5ac9eb8afc] part of check-in [eb29b3369e] Remove tab characters. No logical changes to code. (check-in: [eb29b3369e] user: drh branch: trunk, size: 149751)
15:41
[4b085737d3] part of check-in [df52e89fff] Update this branch with latest trunk changes. (check-in: [df52e89fff] user: dan branch: server-process-edition, size: 149786)
2018-03-20
13:52
[adf56922a6] part of check-in [b0c2f760a6] Merge all recent enhancements from trunk. (check-in: [b0c2f760a6] user: drh branch: begin-concurrent, size: 149842)
2018-03-16
20:15
[8b53aacc26] part of check-in [e13993cf83] Better error message text when the schema is corrupted by a CREATE TABLE AS entry. (check-in: [e13993cf83] user: drh branch: corrupt-schema, size: 149753)
2018-03-02
17:40
[4584d3b8bf] part of check-in [36801effa9] Merge latest trunk changes into this branch. (check-in: [36801effa9] user: dan branch: begin-concurrent, size: 149809)
2018-01-29
16:22
[672022c06e] part of check-in [8767f7b880] Ensure the "unique-not-null" flag is set for automatic indexes on columns declared with "col UNIQUE NOT NULL" (where the NOT NULL comes after the UNIQUE). (check-in: [8767f7b880] user: dan branch: trunk, size: 149720)
2018-01-10
00:40
[9f9647454f] part of check-in [36b89d728f] Compute the correct column name even if the column identifier is the very last token in the SQL statement. This fixes a problem introduced by check-in [0fdf97efe5df745510c6b] and reported by the community during beta-testing. (check-in: [36b89d728f] user: drh branch: trunk, size: 149264)
2017-12-27
19:43
[a03eb5a1cf] part of check-in [a8e1545cb7] Add and use the internal sqlite3DbSpanDup() interface. (check-in: [a8e1545cb7] user: drh branch: span-refactor, size: 149251)
19:27
[972224edcc] part of check-in [7637309135] Merge recent enhancements from trunk. (check-in: [7637309135] user: drh branch: span-refactor, size: 149399)
2017-12-25
13:43
[6ab114a9a4] part of check-in [90d6e4f10d] Fix an assertion fault on a syntax error input caused by check-in [6b2ff26c25bb9da3]. Problem discovered by OSSFuzz. (check-in: [90d6e4f10d] user: drh branch: trunk, size: 149183)
2017-12-24
18:56
[ab5bdf955c] part of check-in [d49afb8f98] Fix a NULL pointer dereference after a syntax error that can occur as a result of check-in [6b2ff26c25bb9da3] yesterday. This problem was discovered by the OSSFuzz. (check-in: [d49afb8f98] user: drh branch: trunk, size: 149150)
00:18
[d3d2feeeee] part of check-in [3eab7bdc44] Remove the ExprSpan object. Instead, keep track of the test of subphrases in the parse using the "scanpt" non-terminal. (check-in: [3eab7bdc44] user: drh branch: span-refactor, size: 149333)
2017-12-23
12:33
[ed567f088e] part of check-in [6b2ff26c25] Move the generation of output column names earlier in the case of a CREATE TABLE AS. This is a fix for ticket [3b4450072511e62] and a continuation of check-in [ade7ddf1998190b2b63] that fixes cases of ticket [de3403bf5ae5f72ed6] that were missed previously. (check-in: [6b2ff26c25] user: drh branch: trunk, size: 149117)
2017-12-08
19:37
[87b68e3b45] part of check-in [02013fc120] The query planner tries to avoids using indexes that use unknown collating functions. (check-in: [02013fc120] user: drh branch: trunk, size: 149150)
2017-11-06
20:02
[f890a66f2b] part of check-in [7f217edab4] Merge latest trunk changes into this branch. (check-in: [7f217edab4] user: dan branch: begin-concurrent, size: 148619)
2017-10-31
03:40
[514db9d494] part of check-in [1c80c75d4b] Remove unnecessary NEVER() and ALWAYS() conditionals. (check-in: [1c80c75d4b] user: drh branch: trunk, size: 148530)
2017-10-21
13:29
[e24b61144f] part of check-in [6ec82acde8] Remove unnecessary "#if SQLITE_MAX_COLUMN". SQLITE_MAX_COLUMN is always defined. (check-in: [6ec82acde8] user: drh branch: trunk, size: 148528)
2017-10-10
13:37
[6ffe76970a] part of check-in [b8c1b5a584] DROP TABLE now works for WITHOUT ROWID tables and the SQLITE_OMIT_AUTOVACUUM compile-time option. Fix for ticket [e651b1341861d6] (check-in: [b8c1b5a584] user: drh branch: trunk, size: 148557)
2017-09-22
20:18
[ff2ea9709d] part of check-in [8d2a1cca61] Merge in all the trunk enhancements of the previous 7 months. The LIKE optimization has stopped working when there is an ESCAPE - that problem will be addressed in a subsequent check-in. (check-in: [8d2a1cca61] user: drh branch: est_count_pragma, size: 149193)
10:49
[f4d7f09ef5] part of check-in [307b802e86] Merge latest trunk changes into this branch. (check-in: [307b802e86] user: dan branch: begin-concurrent, size: 148909)
2017-08-29
20:21
[e71e96a67d] part of check-in [a06263f1ef] Faster memory allocation from lookaside by not trying to keep track of the number of outstanding allocations, and rather computing that value only when requested. (check-in: [a06263f1ef] user: drh branch: trunk, size: 148820)
2017-08-28
17:19
[a720180d5d] part of check-in [d53108e763] Merge recent enhancements from trunk. (check-in: [d53108e763] user: drh branch: begin-concurrent, size: 148954)
2017-08-18
14:34
[b47a0320c6] part of check-in [eb1202b5e4] Combine the OP_CreateTable and OP_CreateIndex opcodes of the bytecode engine into a single OP_CreateBtree opcode. This simplifies the implementation and makes the bytecode programs clearer. (check-in: [eb1202b5e4] user: drh branch: trunk, size: 148865)
2017-08-17
18:23
[5b81049a4c] part of check-in [f13682ea23] In sqlite3ViewGetColumnNames(), return the number of errors, not an error code. (check-in: [f13682ea23] user: drh branch: trunk, size: 149012)
02:26
[559bce114d] part of check-in [a7bc7752ba] Defer schema resets when the query planner is running. Proposed fix for ticket [be436a7f4587ce517]. (check-in: [a7bc7752ba] user: drh branch: trunk, size: 149023)
2017-08-14
06:55
[045e3f469e] part of check-in [bc2498d60f] Update this branch with latest trunk changes. (check-in: [bc2498d60f] user: dan branch: server-process-edition, size: 148966)
2017-08-12
01:09
[f8a85d2ad1] part of check-in [28a5aec118] Size and performance micro-optimization on sqlite3SrcListIndexedBy(). (check-in: [28a5aec118] user: drh branch: trunk, size: 148933)
2017-08-11
19:16
[7c5d92a0a7] part of check-in [47e716952d] Merge the latest enhancements from trunk. (check-in: [47e716952d] user: drh branch: begin-concurrent, size: 149012)
2017-08-09
20:35
[5b857c4302] part of check-in [a625698048] Add experimental sqlite3_open_v2() flag SQLITE_OPEN_REUSE_SCHEMA. For sharing identical in-memory schema objects between connections. (check-in: [a625698048] user: dan branch: reuse-schema, size: 148905)
2017-08-07
14:15
[037f793bd6] part of check-in [17bc7ded07] Update this branch with latest trunk changes. (check-in: [17bc7ded07] user: dan branch: server-process-edition, size: 148956)
2017-08-02
22:43
[33b0f6055b] part of check-in [aea5990eab] In the KeyInfo object, refactor the nField and nXField elements into nKeyField and nAllField, which are more useful and run a little faster. (check-in: [aea5990eab] user: drh branch: trunk, size: 148923)
2017-08-01
19:53
[1285d6b7da] part of check-in [3e02474c7b] Split the OP_Last opcode into OP_Last and OP_SeekEnd. Use OP_SeekEnd to position a cursor prior to appending. Ticket [cb91bf4290c211d]. (check-in: [3e02474c7b] user: drh branch: trunk, size: 148921)
13:54
[f193b9b9b8] part of check-in [aafe1fec80] Merge recent enhancements from trunk. (check-in: [aafe1fec80] user: drh branch: begin-concurrent, size: 149014)
2017-07-31
12:19
[ce2ee94ac2] part of check-in [322a2ede6d] Correctly handle an "INTEGER PRIMARY KEY UNIQUE" column in a WITHOUT ROWID table. This is a fix for ticket [bc115541132dad136], cherry-picked from check-in [5216bfb73f1a49bdd8] (check-in: [322a2ede6d] user: drh branch: branch-3.19, size: 148744)
2017-07-30
20:30
[c3837ad57c] part of check-in [5c8cb1ff5d] Correctly handle an "INTEGER PRIMARY KEY UNIQUE" column in a WITHOUT ROWID table. This is a fix for ticket [bc115541132dad136] cherry-picked from [5216bfb73f1a49bdd]. (check-in: [5c8cb1ff5d] user: drh branch: branch-3.20, size: 148897)
18:40
[f65f86520a] part of check-in [5216bfb73f] Correctly handle an "INTEGER PRIMARY KEY UNIQUE" column in a WITHOUT ROWID table. This is a fix for ticket [bc115541132dad136], a problem discovered by OSSFuzz. (check-in: [5216bfb73f] user: drh branch: trunk, size: 148925)
2017-07-29
17:10
[4da6fe799d] part of check-in [b42c87790e] Merge latest trunk changes with this branch. (check-in: [b42c87790e] user: dan branch: server-process-edition, size: 148959)
2017-07-26
19:59
[66f3ae9eac] part of check-in [3808a00f06] Add the new sqlite3.mDbFlags field. Factor out bits of sqlite3.flags that do not interact with PRAGMA statements into sqlite3.mDbFlags. (check-in: [3808a00f06] user: drh branch: trunk, size: 148926)
2017-07-20
17:47
[62faff0876] part of check-in [213c61cb82] Merge all the latest trunk enhancements. (check-in: [213c61cb82] user: drh branch: begin-concurrent, size: 148987)
2017-07-08
20:46
[32107046e8] part of check-in [5a043aa8dd] Support read-only MVCC transactions in server-mode. Started using "BEGIN READONLY". (check-in: [5a043aa8dd] user: dan branch: server-process-edition, size: 148931)
2017-07-06
01:28
[74108007d2] part of check-in [4da663d986] Slightly more compact implementation of the byte-code generator for the COMMIT and ROLLBACK commands. (check-in: [4da663d986] user: drh branch: trunk, size: 148898)
01:02
[74a7e10f2d] part of check-in [7b2623f199] Small performance increase in sqlite3SrcListAppend(). (check-in: [7b2623f199] user: drh branch: trunk, size: 148954)
2017-06-28
00:55
[b24e0889ba] part of check-in [29d6ceb383] Avoid an unnecessary call to sqlite3XPrintf() in the code generator, for a performance improvement. (check-in: [29d6ceb383] user: drh branch: trunk, size: 148936)
2017-06-06
18:22
[3d1abf90ec] part of check-in [802b82f342] Add the SQLITE_DEFAULT_ROWEST compile-time option for changing the estimated number of rows in tables that lack sqlite_stat1 entries. (check-in: [802b82f342] user: drh branch: branch-3.8.9, size: 142165)
18:20
[88a8cdc11d] part of check-in [234ede26e3] Add the SQLITE_DEFAULT_ROWEST compile-time option for changing the estimated number of rows in tables that lack sqlite_stat1 entries. (check-in: [234ede26e3] user: drh branch: trunk, size: 148848)
2017-05-15
17:34
[ba3f389668] part of check-in [14ea840036] Merge the latest changes from trunk. (check-in: [14ea840036] user: drh branch: begin-concurrent, size: 148834)
2017-04-17
17:03
[3fd4678148] part of check-in [159e8022a9] Add support for analyzing trigger programs to the sqlite3_expert code. (check-in: [159e8022a9] user: dan branch: schemalint, size: 148677)
2017-04-05
12:39
[4026a9c554] part of check-in [ad90e8bb5e] Split off sqlite3DbFreeNN() from sqlite3DbFree() and use it in cases where we know that the argument to be freed is never NULL. (check-in: [ad90e8bb5e] user: drh branch: trunk, size: 148745)
2017-03-24
15:09
[3761b2cc63] part of check-in [fd5676fe7f] Merge all recent enhancements from trunk. (check-in: [fd5676fe7f] user: drh branch: begin-concurrent, size: 148830)
2017-02-22
19:49
[43f903c908] part of check-in [fe07390508] Merge integrity_check and other improvements from trunk. (check-in: [fe07390508] user: drh branch: auto-analyze, size: 148741)
15:11
[51b473eec4] part of check-in [5264844b06] Fix integrity_check so that it verifies NOT NULL constraints even for tables that have no indexes. Enhance quick_check so that it verifies NOT NULL and CHECK constraints. (check-in: [5264844b06] user: drh branch: integrity-check-improvements, size: 148641)
2017-02-17
13:38
[2e05d03605] part of check-in [85026c8ee1] Enhance the Index and Table objects so that they remember if their stats come from the sqlite_stat1 table. Make the "PRAGMA stats" an SQLITE_DEBUG only pragma. Add the flags column to "PRAGMA stats". These are all preliminary steps toward a "PRAGMA analyze_ifneeded;" feature. (check-in: [85026c8ee1] user: drh branch: auto-analyze, size: 148709)
2017-01-27
16:24
[26f9e24b58] part of check-in [fe86ff5429] Merge all recent enhancements from trunk. (check-in: [fe86ff5429] user: drh branch: est_count_pragma, size: 148982)
2017-01-09
06:53
[58bd67d664] part of check-in [c8ca3e0a8d] Disable the optimization from [8cb8516d] (omit TableLock instructions for non-sharable databases) on this branch. This branch uses the TableLock instructions to ensure that the db schema is not written from within a BEGIN CONCURRENT transaction. (check-in: [c8ca3e0a8d] user: dan branch: begin-concurrent, size: 148698)
06:33
[efef69bbc7] part of check-in [d0e212d08f] Upgrade this branch to 3.16 plus the various fixes that appeared after its release. (check-in: [d0e212d08f] user: dan branch: begin-concurrent, size: 148661)
2016-12-24
19:37
[9e799f1edd] part of check-in [2f481b854f] The schema name "main" is always an acceptable alias for the primary database even if the primary database is renamed using SQLITE_DBCONFIG_MAINDBNAME. (check-in: [2f481b854f] user: drh branch: trunk, size: 148609)
2016-12-16
16:49
[d814cb158c] part of check-in [4b73ee33f3] Experimental merge of the est_count_pragma and the pragma-as-vtab branches. (check-in: [4b73ee33f3] user: drh branch: est-count-pragma-vtab, size: 148775)
15:57
[182877f27b] part of check-in [74a0ca1f15] Merge recent trunk enhancements. (check-in: [74a0ca1f15] user: drh branch: est_count_pragma, size: 148670)
02:31
[52970b6cf3] part of check-in [01afc51597] Simplifications to facilitate full test coverage. (check-in: [01afc51597] user: drh branch: pragma-as-vtab, size: 148402)
01:09
[ec9e3595d7] part of check-in [994a4401f5] Merge enhancements from trunk, and especially the ability to use temp.sqlite_master as an alias for sqlite_temp_master. (check-in: [994a4401f5] user: drh branch: pragma-as-vtab, size: 148431)
01:00
[854ec3a222] part of check-in [8d646905b8] All temp.sqlite_master to be used as an alias for sqlite_temp_master. (check-in: [8d646905b8] user: drh branch: trunk, size: 148297)
2016-12-15
20:59
[43c9c2bde1] part of check-in [988a61e8b0] Code to automatically create eponymous virtual tables for read-only pragmas. Compiles, but does not yet work. (check-in: [988a61e8b0] user: drh branch: pragma-as-vtab, size: 148090)
18:59
[4c7952b6d4] part of check-in [4e3749127e] Do exponential rather than linear expansion of the SrcList.a array when appending new elements, to reduce the number of malloc() calls. (check-in: [4e3749127e] user: drh branch: trunk, size: 147958)
2016-12-14
14:07
[e2b3276684] part of check-in [9cae4c2e30] Refactor the Table.nRef field as Table.nTabRef for easier grepping. (check-in: [9cae4c2e30] user: drh branch: trunk, size: 147956)
11:14
[66bab5ee39] part of check-in [0ea2762f1d] Three times faster sqlite3SrcListAppend() in the common case by avoiding the call to sqlite3SrcListEnlarge() for the first allocation. (check-in: [0ea2762f1d] user: drh branch: trunk, size: 147950)
2016-11-30
16:39
[432a2e267f] part of check-in [7ca58a07d3] Merge all the latest changes from trunk. (check-in: [7ca58a07d3] user: drh branch: est_count_pragma, size: 148232)
2016-11-09
00:10
[178f16698c] part of check-in [89d958abba] Enhance the OP_IdxInsert opcode to optionally accept unpacked key material. (check-in: [89d958abba] user: drh branch: unpacked-IdxInsert, size: 147859)
2016-11-08
17:19
[fcd220ccf7] part of check-in [8cb8516d20] Avoid generating OP_TableLock unnecessary instructions on btrees that are not sharable. (check-in: [8cb8516d20] user: drh branch: trunk, size: 147862)
2016-10-20
18:20
[e22e66fb34] part of check-in [fd81d8a430] Add the ability for the PRAGMA statement to accept multiple arguments. Currently all arguments other than the first are ignored. (check-in: [fd81d8a430] user: drh branch: multi-arg-pragma, size: 148148)
2016-10-17
23:44
[2f9da95e68] part of check-in [29997f797f] Fix SQLITE_DBCONFIG_REQUIRE_TXN so that it allows BEGIN IMMEDAITE and BEGIN EXCLUSIVE to run outside of a transaction. (check-in: [29997f797f] user: drh branch: require-write-txn, size: 146652)
2016-09-30
22:24
[59dcfdc1ee] part of check-in [63cf7eafae] 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. (check-in: [63cf7eafae] user: drh branch: trunk, size: 147775)
18:35
[4d01b74ea7] part of check-in [814e41da35] Remove unnecessary fields from the Parse object. (check-in: [814e41da35] user: drh branch: trunk, size: 147793)
2016-09-29
19:50
[ab95712203] part of check-in [984a96d796] Remove the peep-hole optimization of removing OP_Close opcodes that come before OP_Halt, as the extra work of removing those opcodes uses more cycles than just running them. (check-in: [984a96d796] user: drh branch: trunk, size: 148042)
2016-09-27
00:09
[9a1f228cfa] part of check-in [bf903b2eca] Update requirements marks due to improvements in the wording of documentation. No changes to code. (check-in: [bf903b2eca] user: drh branch: trunk, size: 148099)
2016-09-16
11:53
[7438b6dae3] part of check-in [a3e3b3e1c5] Fix SQLITE_OMIT_AUTHORIZATION so that it compiles cleanly. (check-in: [a3e3b3e1c5] user: drh branch: trunk, size: 147977)
2016-08-23
14:42
[c2ccfcdd99] part of check-in [c640489db2] Fix the SQLITE_USER_AUTHENTICATION login check so that the SQLITE_AUTH_USER error code correctly propagates and is not overwritten by SQLITE_ERROR. (check-in: [c640489db2] user: drh branch: trunk, size: 147936)
2016-08-19
14:20
[d32cacbb59] part of check-in [29d63059b4] 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. (check-in: [29d63059b4] user: drh branch: vacuum-attached-db, size: 147936)
2016-08-18
14:33
[c38fd92a8d] part of check-in [92a22f0134] 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. (check-in: [92a22f0134] user: drh branch: zDbSName, size: 147898)
2016-08-11
19:12
[e3b41d597d] part of check-in [d9f8918c5b] Merge version 3.14 plus some subsequent patches (including the page-cache performance patch) from trunk. (check-in: [d9f8918c5b] user: drh branch: begin-concurrent, size: 147875)
2016-08-05
14:35
[7c3c780b70] part of check-in [68eac74874] Fix a very obscure problem following OOM in sqlite3_declare_vtab(). (check-in: [68eac74874] user: drh branch: trunk, size: 147823)
2016-06-10
22:49
[d1fdfd7ab8] part of check-in [53a1e5d513] Enhance "PRAGMA table_info" to that it provides information about eponymous virtual tables. (check-in: [53a1e5d513] user: drh branch: trunk, size: 147423)
2016-06-08
18:07
[535879738a] part of check-in [fe1874321b] Prefer to use partial indexes for full table scans when that is possible. (check-in: [fe1874321b] user: drh branch: trunk, size: 147331)
2016-06-04
13:57
[e827e57e4a] part of check-in [313e990c74] Remove an unreachable branch in the UNIQUE constraint parsing. (check-in: [313e990c74] user: drh branch: trunk, size: 147212)
2016-06-02
16:22
[555b459d1f] part of check-in [a393bbb972] Fix corner cases in the WITHOUT ROWID virtual table logic. (check-in: [a393bbb972] user: drh branch: without-rowid-vtab, size: 147200)
2016-05-31
21:18
[7acc29d094] part of check-in [49638f180e] An experimental branch with code that allows virtual tables to be declared as WITHOUT ROWID tables. This might be useful for virtual tables that model external data sources that do not have a convenient way of computing a unique rowid. The current check-in almost works, but there are still serious issues. (check-in: [49638f180e] user: drh branch: without-rowid-vtab, size: 147098)
2016-05-20
15:15
[785fa78931] part of check-in [3d55d24dcb] Use sqlite3VdbeAddOp0() to code OP_Expire, to save a few bytes. (check-in: [3d55d24dcb] user: drh branch: trunk, size: 147258)
2016-05-07
12:15
[d65be62254] part of check-in [d75140b851] Make the sqlite3DeleteTable() routine smaller and faster. (check-in: [d75140b851] user: drh branch: trunk, size: 147261)
2016-04-20
12:16
[034b1b7c3d] part of check-in [1f709fbf93] Merge all recent enhancements from trunk. (check-in: [1f709fbf93] user: drh branch: begin-concurrent, size: 147269)
2016-04-18
15:51
[16bbcb166a] part of check-in [abf9d602ee] Faulty check-in. Extraneous edits that were not logically part of the check-in. (check-in: [abf9d602ee] user: drh branch: mistake, size: 147228)
15:46
[42e8ee74df] part of check-in [eba27d4d17] Remove quotes from identifiers used as datatype names in a CREATE TABLE statement. Fix for ticket [7d7525cb01b68] (check-in: [eba27d4d17] user: drh branch: trunk, size: 147217)
2016-04-07
21:29
[84fb5a66c8] part of check-in [3360ab098a] Carry table column types through into VIEW definitions, where possible. (check-in: [3360ab098a] user: drh branch: branch-3.12.0, size: 147201)
2016-04-05
20:59
[1944d95f02] part of check-in [fb555c3c2a] Carry table column types through into VIEW definitions, where possible. (check-in: [fb555c3c2a] user: drh branch: trunk, size: 147190)
15:59
[c5cf206191] part of check-in [cf569f9f2f] Incorrect version of build.c checked in at [87e5f5a6c60e3] (because I neglected to press the "Save" button on the text editor). There is no change to the logic, just improved presentation. (check-in: [cf569f9f2f] user: drh branch: trunk, size: 146649)
14:01
[ab763de473] part of check-in [87e5f5a6c6] Remove an unnecessary conditional from the index builder. (check-in: [87e5f5a6c6] user: drh branch: trunk, size: 146664)
2016-03-29
10:36
[745020bd3d] part of check-in [d7381efff4] Merge 3.12.0 changes. (check-in: [d7381efff4] user: drh branch: begin-concurrent, size: 146712)
2016-03-25
12:10
[39faaaeecb] part of check-in [99fd194c83] Fix two instances of undefined behavior in the C code - both harmless for all current compilers. (check-in: [99fd194c83] user: drh branch: trunk, size: 146660)
2016-03-22
20:05
[7d1a5e64fc] part of check-in [605eba4a75] The sqlite3_column_decltype() routine should return NULL, not an empty string, if the column has no declared type. (check-in: [605eba4a75] user: drh branch: trunk, size: 146654)
2016-03-16
19:34
[12ad19cfe1] part of check-in [a7978ab6d2] Merge the latest enhancements from trunk. (check-in: [a7978ab6d2] user: drh branch: begin-concurrent, size: 146702)
2016-03-09
02:12
[213cbf84e9] part of check-in [ee486ef742] Change a branch made obsolete by recent parser enhancements into an assert(). (check-in: [ee486ef742] user: drh branch: trunk, size: 146650)
2016-02-29
15:53
[43b93fe757] part of check-in [842b211627] Reduce the amount of heap required to store many schemas by storing each column datatype appended to the column name, rather than as a separate allocation. (check-in: [842b211627] user: drh branch: schema-storage, size: 146657)
13:37
[5a3e2c884c] part of check-in [519fd03b84] Further simplifications to the grammar. (check-in: [519fd03b84] user: drh branch: schema-storage, size: 146533)
2016-02-27
23:25
[8bde0b1cf0] part of check-in [ad3ffe2eec] Update the parser so that it pulls out the column name and type all in one go, rather than using separate reductions. (check-in: [ad3ffe2eec] user: drh branch: schema-storage, size: 146498)
21:16
[6854e717e3] part of check-in [d8c94a46df] Eliminate the need for the Column.zDflt (using Column.pDflt instead) to reduce the amount of memory needed to hold the schema. (check-in: [d8c94a46df] user: drh branch: trunk, size: 147239)
2016-02-24
20:16
[6661513c8f] part of check-in [e721975faa] Extend [3e9ed1ae] so that covering indexes on WITHOUT ROWID tables are also identified. (check-in: [e721975faa] user: dan branch: trunk, size: 147167)
15:43
[2c85d62e50] part of check-in [71d488b599] Identify indexes that completely cover their table. (check-in: [71d488b599] user: drh branch: covering-index, size: 147088)
2016-02-15
18:15
[88f185a37d] part of check-in [9b3454762d] Add the SQLITE_NOMEM_BKPT macro to enhance the ability to debug OOM errors. Only effective with compiling with SQLITE_DEBUG. (check-in: [9b3454762d] user: drh branch: trunk, size: 146711)
17:44
[88ec1b5da6] part of check-in [c393ddc71a] Merge version 3.11.0 (check-in: [c393ddc71a] user: drh branch: begin-concurrent, size: 146888)
2016-02-13
23:43
[f1c304326b] part of check-in [6a9c4a3ebf] Enhance ability to debug out-of-memory errors. (check-in: [6a9c4a3ebf] user: mistachkin branch: noMemBkpt, size: 146846)
2016-02-11
13:30
[7bc84362e4] part of check-in [a863729ccb] Minor simplifications deferred to the next release. (check-in: [a863729ccb] user: drh branch: simplify, size: 146701)
2016-02-09
02:12
[54866fbafa] part of check-in [ca72be8618] Make sure every co-routines has its own set of temporary registers and does not share temporaries, since a co-routine might expect the content of a temporary register to be preserved across an OP_Yield. Proposed fix for ticket [d06a25c84454a]. (check-in: [ca72be8618] user: drh branch: trunk, size: 146836)
2016-02-05
14:34
[a9955bb322] part of check-in [332c8036ca] Merge PRAGMA synchronous=EXTRA and OOM performance enhancements from trunk. (check-in: [332c8036ca] user: drh branch: begin-concurrent, size: 146899)
13:38
[198eaa849c] part of check-in [0a802e96ab] Add the slightly faster sqlite3DbMallocRawNN(db,n) routine for the majority cases where db is guaranteed to be not NULL. (check-in: [0a802e96ab] user: drh branch: oom-handling, size: 146847)
02:42
[784c61366e] part of check-in [d94416ddca] Further performance improvements that fall out of the mallocFailed changes. (check-in: [d94416ddca] user: drh branch: oom-handling, size: 146826)
01:55
[dcb55142c4] part of check-in [c3ef03478a] Improvements to the way that OOM errors are processed. (check-in: [c3ef03478a] user: drh branch: oom-handling, size: 146839)
2016-02-04
11:48
[88ee370118] part of check-in [b787165b25] Remove unnecessary sets of db->mallocFailed. (check-in: [b787165b25] user: drh branch: trunk, size: 146935)
02:34
[2d8094638d] part of check-in [1c8d300189] Add and use the sqlite3VdbeZeroRegister() interface for coding the common operation of writing zero into a register. (check-in: [1c8d300189] user: drh branch: zero-register, size: 146920)
2016-02-02
02:53
[a183756487] part of check-in [347f6a80c2] Merge recent enhancements from trunk. (check-in: [347f6a80c2] user: drh branch: begin-concurrent, size: 146981)
00:59
[bb3c003fbe] part of check-in [7453790c3b] Add the SQLITE_DBCONFIG_REQUIRE_WRITE_TXN connection setting, which if enabled requires all write operations to be enclosed within BEGIN ... COMMIT. (check-in: [7453790c3b] user: drh branch: require-write-txn, size: 146987)
2016-02-01
21:48
[33dea2cef0] part of check-in [6d7d4703eb] Change the OP_SetCookie instruction to write the literal P3 value, not the value in register P3. (check-in: [6d7d4703eb] user: drh branch: trunk, size: 146929)
13:21
[c177ca703d] part of check-in [a9b6a0672f] Minor simplification to the OP_AutoCommit opcode. Fix some code comments related to transaction control. (check-in: [a9b6a0672f] user: drh branch: trunk, size: 147127)
2016-01-30
12:50
[0510844c48] part of check-in [0bdb41c45a] Simplification and size reduction to the printf logic. Remove the bFlags parameter from sqlite3VXPrintf() and sqlite3XPrintf(). Use sqlite3XPrintf() instead of sqlite3_snprintf() for rendering P4 values in EXPLAIN output. (check-in: [0bdb41c45a] user: drh branch: trunk, size: 147109)
2016-01-26
15:23
[9135b9b8c3] part of check-in [12ef3a8f3d] Change the automatic index mechanism so that it avoids creating transient indexes on columns that are known to have low cardinality. (check-in: [12ef3a8f3d] user: drh branch: autoindex-planning, size: 147405)
2016-01-22
17:48
[b4eba1e847] part of check-in [7323175337] Add the sqlite3TokenInit() utility function. (check-in: [7323175337] user: drh branch: trunk, size: 147115)
2016-01-20
12:18
[408543fbdd] part of check-in [5520f600ea] Merge recent enhancements from trunk. (check-in: [5520f600ea] user: drh branch: begin-concurrent, size: 147219)
2016-01-18
13:18
[31af80bba3] part of check-in [9e8c23acf7] Avoid unnecessary calls to memset() for a small performance improvement. (check-in: [9e8c23acf7] user: drh branch: trunk, size: 147173)
2016-01-16
15:12
[59783188d8] part of check-in [a4258cd461] Use sqlite3VdbeAddOp4() rather than a separate sqlite3VdbeChangeP4() call, for a slightly smaller and faster binary. (check-in: [a4258cd461] user: drh branch: trunk, size: 147153)
2016-01-15
21:55
[a23d2012f0] part of check-in [689421a9f7] Remove an unnecessary memset(). (check-in: [689421a9f7] user: drh branch: trunk, size: 147168)
16:11
[ae94a76279] part of check-in [75ab30c5fc] Remove unnecessary de-initialization of the Parse object. (check-in: [75ab30c5fc] user: drh branch: trunk, size: 147226)
15:06
[2778ccdb32] part of check-in [c52ca2c066] Work toward making the schema parsing logic simplier and more compact. (check-in: [c52ca2c066] user: drh branch: trunk, size: 147133)
2016-01-14
15:46
[fd8be668b4] part of check-in [fccc5f20c3] Merge the latest enhancements and fixes from trunk. (check-in: [fccc5f20c3] user: dan branch: begin-concurrent, size: 147416)
2016-01-07
17:09
[9d497ff4bf] part of check-in [828958ff77] Small performance and size optimization spotted while working on the shared-cache problem. (check-in: [828958ff77] user: drh branch: trunk, size: 147370)
2016-01-06
15:49
[7fcb454e80] part of check-in [e1d2ffc06d] Merge changes for version 3.10.0. (check-in: [e1d2ffc06d] user: drh branch: begin-concurrent, size: 147663)
2016-01-03
18:07
[d8006e9030] part of check-in [e30062e9f6] Bug fix: the conflict resolution behavior for the implied NOT NULL constraint on the PRIMARY KEY of a WITHOUT ROWID table should be ABORT. (check-in: [e30062e9f6] user: drh branch: trunk, size: 147617)
2016-01-01
14:14
[a79c1b5ce7] part of check-in [6bea792c3d] Merge recent trunk enhancements. (check-in: [6bea792c3d] user: drh branch: begin-concurrent, size: 147656)
2015-12-31
19:04
[1c9fb55214] part of check-in [98ec778daa] Fix harmless compiler warning seen with MSVC. (check-in: [98ec778daa] user: mistachkin branch: trunk, size: 147610)
15:34
[249e9605fc] part of check-in [9c392c1019] Fix harmless compiler warnings associated with SQLITE_ENABLE_HIDDEN_COLUMNS. (check-in: [9c392c1019] user: drh branch: trunk, size: 147602)
2015-12-30
16:51
[5a8611a01c] part of check-in [2081d75767] Changes to the way that the default BINARY collating sequence is recorded result in a slightly smaller and slightly faster executable. More work could be done to make this cleaner. (check-in: [2081d75767] user: drh branch: trunk, size: 147602)
2015-12-02
20:53
[a3fa162b06] part of check-in [9130661a78] Merge recent enhancements from trunk. (check-in: [9130661a78] user: drh branch: begin-concurrent, size: 147640)
2015-11-26
15:51
[e83da4d004] part of check-in [8b15621952] Fix a problem with the userauth extension and no-authentication databases. Run the tests for this extension as part of the Debug-One module in releasetest.tcl. (check-in: [8b15621952] user: dan branch: trunk, size: 147594)
2015-11-21
13:24
[19f7585c97] part of check-in [ff5716b89f] Do not allow table-valued function syntax on ordinary tables and views as those objects are not table-valued functions. Fix for ticket [73eba7ba5c7c0fc]. Problem found by libFuzzer. (check-in: [ff5716b89f] user: drh branch: trunk, size: 147753)
2015-11-20
13:49
[a59767596b] part of check-in [41c8b8e39b] Merge all the latest enhancements and fixes from trunk. (check-in: [41c8b8e39b] user: drh branch: begin-concurrent, size: 147808)
2015-11-19
16:46
[5a3b71786e] part of check-in [59bd0ec7d4] Fix problems with INSERT INTO ... SELECT ... statements that write to tables with __hidden__ columns. (check-in: [59bd0ec7d4] user: dan branch: trunk, size: 147762)
14:11
[c909d178ef] part of check-in [011904cad2] If compiled with SQLITE_ENABLE_HIDDEN_COLUMNS, then columns in ordinary tables and views that have names beginning with "__hidden__" are omitted from the "*" expansion in SELECT statements and from the automatic list of columns following the table name in an INSERT INTO statement. (check-in: [011904cad2] user: drh branch: trunk, size: 147630)
13:53
[c67e12bdaf] part of check-in [5490646b2e] Only support the magic "__hidden__" column name prefix interpretation when compiled with SQLITE_ENABLE_HIDDEN_COLUMNS. (check-in: [5490646b2e] user: drh branch: hidden-columns-in-tables, size: 148090)
13:21
[baee971344] part of check-in [3833cbac07] Fix a 10-year-old misguided attempt at parser performance improvement that actually made parsing slightly slower. (check-in: [3833cbac07] user: drh branch: trunk, size: 147306)
2015-11-18
18:43
[a62cef3354] part of check-in [2dbffb3a3b] If a table column name begins with "__hidden__" then do not include that column in "*" expansions in SELECT statements, nor fill in that column in an INSERT INTO that omits the column list. This branch is a proof-of-concept only and is not intended to ever be merged into trunk. (check-in: [2dbffb3a3b] user: drh branch: hidden-columns-in-tables, size: 147858)
2015-11-01
21:19
[ca574d33ff] part of check-in [db319a035f] If a table-constraint PRIMARY KEY lists a single column in single-quotes and that column has type INTEGER, then make that column an integer primary key, for historical compatibility. Fix for ticket [ac661962a2aeab3c331]. (check-in: [db319a035f] user: drh branch: trunk, size: 147766)
2015-10-15
07:44
[569313d377] part of check-in [5c3a2a6ed6] Merge in the 3.9.0 changes from trunk. (check-in: [5c3a2a6ed6] user: drh branch: begin-concurrent, size: 147779)
2015-10-10
14:41
[d6162335d6] part of check-in [9ddef84d43] Compiler warning fixes: Rename some local variables from "j1" to avoid a name collision with the j1() bessel function in the math library. Omit a dummy initializer that gcc 4.6.3 does not like. (check-in: [9ddef84d43] user: drh branch: trunk, size: 147733)
2015-09-29
17:20
[0549b56722] part of check-in [7d272aa62c] Use symbolic names XN_ROWID and XN_EXPR in place of the (-1) and (-2) magic numbers in Index.aiColumn[]. Add asserts to help verify that Index.aiColumn[] is always used correctly. Fix one place in FK processing where Index.aiColumn[] was not being used correctly. (check-in: [7d272aa62c] user: drh branch: trunk, size: 147724)
2015-09-28
15:20
[361f58b73a] part of check-in [e73f919fae] Changes to allow DELETE operations on virtual tables to use the onepass strategy under some circumstances. (check-in: [e73f919fae] user: dan branch: vtab-onepass, size: 147698)
2015-09-26
11:15
[edc5a29cd5] part of check-in [f4704035a6] Fix a memory leak that can occur following a syntax error in CREATE VIEW. (check-in: [f4704035a6] user: drh branch: trunk, size: 147594)
2015-09-15
19:16
[a5b54106a7] part of check-in [fc4d1de8ae] Merge enhancements from trunk. (check-in: [fc4d1de8ae] user: drh branch: begin-concurrent, size: 147663)
2015-09-14
14:49
[8a86f4203a] part of check-in [379455af9f] Fix a typo in an SQLITE_USER_AUTHENTICATION macro. (check-in: [379455af9f] user: drh branch: trunk, size: 147617)
2015-09-09
13:28
[f81380bc4d] part of check-in [4a18d8bd4c] When running a CREATE TABLE AS, make the initial temporary sqlite_master entry for the new table a real record rather than a NULL, in case the query after the AS actually tries to read the sqlite_master table. Fix for ticket [acd12990885d9276]. (check-in: [4a18d8bd4c] user: drh branch: trunk, size: 147616)
2015-09-08
20:26
[ba9e152973] part of check-in [06f90bb274] Eponymous virtual tables exist in the "main" schema only. Enforce this rule. (check-in: [06f90bb274] user: drh branch: trunk, size: 147464)
2015-09-07
20:22
[0620be86a9] part of check-in [9cf3e51bcc] Merge parser enhancements and other improvements and bug fixes from trunk. (check-in: [9cf3e51bcc] user: drh branch: begin-concurrent, size: 147439)
2015-09-04
17:22
[1f4fc82459] part of check-in [a9b84885aa] Merge the latest trunk changes, and especially the fix for allowing strings as identifiers in CREATE INDEX statements. (check-in: [a9b84885aa] user: drh branch: begin-concurrent, size: 146722)
13:02
[5566b34100] part of check-in [5ff8552938] Merge trunk enhancements, and espeically the fix for allowing strings as column identifers in CREATE INDEX statements. (check-in: [5ff8552938] user: drh branch: index-expr, size: 147393)
12:54
[3f6176b3af] part of check-in [3d3df79bfa] Continue to support the (broken) legacy syntax of allowing strings for column names in CREATE INDEX statements and in UNIQUE and PRIMARY KEY constraints. (check-in: [3d3df79bfa] user: drh branch: trunk, size: 146676)
2015-09-03
14:18
[77da539363] part of check-in [1ab10cbf27] Merge enhancements from trunk. (check-in: [1ab10cbf27] user: drh branch: index-expr, size: 146453)
14:04
[565d84cf1d] part of check-in [71e7299e8d] Merge trunk optimizations. (check-in: [71e7299e8d] user: drh branch: begin-concurrent, size: 145782)
13:46
[6c3a8a9b21] part of check-in [847387ec8e] Add the sqlite3VdbeLoadString() and sqlite3VdbeMultiLoad() routines to help with code generation, especially on PRAGMAs. Rename sqlite3VdbeAddGoto() to just sqlite3VdbeGoto(). (check-in: [847387ec8e] user: drh branch: trunk, size: 145736)
2015-09-02
18:40
[4e8b8bdeb2] part of check-in [0a5b00e493] Add and use the sqlite3VdbeChangeOpcode() routine. Simplify the implementation of the other sqlite3VdbeChange*() routines. (check-in: [0a5b00e493] user: drh branch: trunk, size: 145745)
18:19
[794cb0534e] part of check-in [be78f413df] Add the sqlite3VdbeAddGoto(v,i) routine as a shorthand for sqlite3VdbeAddOp2(v,OP_Goto,0,i). (check-in: [be78f413df] user: drh branch: trunk, size: 145749)
2015-09-01
18:01
[cbf7c81a63] part of check-in [3dea047465] Merge the latest trunk enhancements. (check-in: [3dea047465] user: drh branch: begin-concurrent, size: 145828)
00:42
[c6926497c5] part of check-in [fd4da2318c] Remove unreachable branches. (check-in: [fd4da2318c] user: drh branch: index-expr, size: 146499)
2015-08-31
23:09
[f85ede9d6d] part of check-in [5a2c0e90a1] Fix a bug in error reporting when a UNIQUE index on expressions fails its uniqueness test. (check-in: [5a2c0e90a1] user: drh branch: index-expr, size: 146459)
19:38
[9e7216acaf] part of check-in [cc60321a67] Always assume that indexed expressions can generate a NULL. Get indexed expressions working for the case of two or more expressions in the same index. (check-in: [cc60321a67] user: drh branch: index-expr, size: 146430)
14:27
[e0902658fc] part of check-in [7bde6d4d8c] Merge the latest enhancements from trunk. (check-in: [7bde6d4d8c] user: drh branch: index-expr, size: 146351)
2015-08-29
17:22
[511b02138e] part of check-in [752918def7] Fix the build with -DSQLITE_OMIT_VIRTUALTABLE. (check-in: [752918def7] user: drh branch: trunk, size: 145782)
2015-08-28
09:27
[bb9335e06a] part of check-in [57bc0194f4] Merge latest trunk changes with this branch. (check-in: [57bc0194f4] user: dan branch: begin-concurrent, size: 145829)
2015-08-26
18:04
[6b7f6ccacd] part of check-in [ec6ddb3d48] Merge enhancements from trunk. (check-in: [ec6ddb3d48] user: drh branch: index-expr, size: 146352)
11:40
[97f6822298] part of check-in [58ba73630e] Refactor With.a.zErr into With.a.zCteErr. No logic changes. (check-in: [58ba73630e] user: drh branch: trunk, size: 145783)
2015-08-25
16:57
[c249a192b2] part of check-in [efaabdb716] Add code to maintain indexes with expression arguments across DELETE, INSERT, and UPDATE statements. Legacy tests pass, but the new code paths are still largely untested. The query planner currently makes no effort to use expression indexes. (check-in: [efaabdb716] user: drh branch: index-expr, size: 146349)
11:16
[1b5814e0ee] part of check-in [3e7d6dd62d] Merge latest trunk changes with this branch. (check-in: [3e7d6dd62d] user: dan branch: begin-concurrent, size: 145826)
00:34
[6debb6244f] part of check-in [8f1d9f1f30] Fix a memory leak that might occur when compiling with SQLITE_OMIT_CHECK. (check-in: [8f1d9f1f30] user: drh branch: trunk, size: 145780)
00:27
[d9d53c7318] part of check-in [0ad0f8d77d] Changes toward being able to process indexes on expressions. Not there yet - this check-in is just movement in that direction. Some tests are failing. (check-in: [0ad0f8d77d] user: drh branch: index-expr, size: 145547)
2015-08-24
20:21
[789e75f347] part of check-in [bed42116ad] Enhances the parser so that it accepts arbitrary expressions for the arguments of an index, though the code generator still rejects everything other than simple column names. The sqlite3RestrictColumnListSyntax() routine is removed since that feature is now handled by the parser. (check-in: [bed42116ad] user: drh branch: trunk, size: 145813)
19:56
[2890c89e0d] part of check-in [ba1ab858e2] Change "BEGIN UNLOCKED" to "BEGIN CONCURRENT". (check-in: [ba1ab858e2] user: dan branch: begin-concurrent, size: 144918)
17:42
[a4e2669bc5] part of check-in [d794b34da6] Enhance the CREATE VIEW syntax so that the names of columns of the view can be specified after the view name. (check-in: [d794b34da6] user: drh branch: trunk, size: 146476)
15:39
[f49c55c1fb] part of check-in [83cbc4d876] Disallow the use of COLLATE clauses and the ASC and DESC keywords within foreign key constraints and in the argument list to common table expressions. (check-in: [83cbc4d876] user: drh branch: trunk, size: 146004)
2015-08-21
16:22
[e47b6fffe1] part of check-in [deaf3b1856] Merge trunk changes with this branch. (check-in: [deaf3b1856] user: dan branch: begin-concurrent, size: 144916)
2015-08-20
23:28
[5eb5d055a1] part of check-in [bc577fe6cb] Fix a couple C99-isms that cause compile errors on MSVC. (check-in: [bc577fe6cb] user: drh branch: trunk, size: 144872)
23:21
[0ebd9d2150] part of check-in [774e6a14b1] Fix corner-case memory management issues in table-valued functions. Change virtual table handling so that if xDestroy is missing the table is eponymous only even if xCreate is present. (check-in: [774e6a14b1] user: drh branch: trunk, size: 144872)
20:21
[733a7b19f2] part of check-in [17eb7f18cb] Fix stray variable declaration for C89. (check-in: [17eb7f18cb] user: mistachkin branch: trunk, size: 144848)
20:13
[2a2fd9547c] part of check-in [a7acc7878b] Correctly handle empty function argument lists on table-valued functions. (check-in: [a7acc7878b] user: drh branch: trunk, size: 144838)
2015-08-19
17:11
[16051071cd] part of check-in [40e12cfe4c] A list of arguments following a table name translates into equality constraints against hidden columns in that table. (check-in: [40e12cfe4c] user: drh branch: table-valued-functions, size: 144829)
15:20
[909416959d] part of check-in [b919376147] Minor refactor of the SrcList object so that it is able to hold the argument list to a table-valued-function in the FROM clause. (check-in: [b919376147] user: drh branch: table-valued-functions, size: 144391)
02:32
[77a9683d92] part of check-in [c1f43a7799] Initial implementation of eponymous virtual table instances. (check-in: [c1f43a7799] user: drh branch: table-valued-functions, size: 144154)
2015-08-08
23:23
[4acc35c4e0] part of check-in [962b6cd6bb] Fix an assert() that was in the wrong spot. (check-in: [962b6cd6bb] user: drh branch: warnings, size: 143750)
22:47
[31782da5c7] part of check-in [be190fe782] Fix compiler warnings and remove unreachable code. (check-in: [be190fe782] user: drh branch: warnings, size: 143750)
2015-08-03
13:44
[70a18e1229] part of check-in [70b57dafb3] Allow a VIEW to reference undefined tables and functions when initially created. The error report is deferred until the VIEW is used. This allows views to be created before subviews and tables that the view references. (check-in: [70b57dafb3] user: drh branch: trunk, size: 143741)
2015-07-27
19:31
[28c15c43ee] part of check-in [8079421604] Add an experimental "BEGIN UNLOCKED" command. (check-in: [8079421604] user: dan branch: begin-concurrent, size: 143855)
2015-06-16
16:39
[b3f15255d5] part of check-in [400e025e7c] Ensure that the CREATE TABLE AS statement correctly undoes partial changes to the sqlite_master table if the SELECT on the right-hand side aborts with an error. Fix for ticket [873cae2b6e25b] (check-in: [400e025e7c] user: drh branch: trunk, size: 143811)
2015-06-04
12:08
[6770b74ccb] part of check-in [6a9cf06337] Change the name of SrcList.a[].zIndex to the more descriptive SrcList.a[0].zIndexedBy. (check-in: [6a9cf06337] user: drh branch: trunk, size: 143780)
2015-06-02
15:32
[73da2b9e93] part of check-in [bce3f04186] Rename SQLITE_AFF_NONE to SQLITE_AFF_BLOB. (check-in: [bce3f04186] user: drh branch: blob-affinity-rename, size: 143768)
2015-05-27
13:06
[85a169a0a2] part of check-in [0055df0445] CTEs have never had working rowids. So disallow the use of the "rowid" column within CTEs. (check-in: [0055df0445] user: drh branch: no-rowid-in-cte, size: 143768)
2015-05-26
11:53
[9552e7490b] part of check-in [3b936913f3] Fix a problem with ignoring UNIQUE constraints on WITHOUT ROWID tables rendered redundant by the PRIMARY KEY. (check-in: [3b936913f3] user: dan branch: trunk, size: 143748)
2015-05-20
17:18
[d5d9090788] part of check-in [937f659e89] Simplification of the initialization code for CREATE TABLE AS. (check-in: [937f659e89] user: drh branch: create-table-as-type-fix, size: 143277)
15:51
[857606eac0] part of check-in [d5e2c1fc76] A proposed fix for the problem of CREATE TABLE AS generating a table that has INTEGER values in a TEXT column. Ticket [f2ad7de056ab1dc92]. (check-in: [d5e2c1fc76] user: drh branch: create-table-as-type-fix, size: 143049)
2015-05-02
11:45
[61b47073f7] part of check-in [7952c32268] Cleanup of the sqlite3StrAccumInit() function. No functionality changes. (check-in: [7952c32268] user: drh branch: trunk, size: 142136)
2015-04-19
22:31
[e246c2cea6] part of check-in [2cb37b959c] Silently ignore parser stack overflow when parsing a malformed schema in PRAGMA writable_schema mode. (check-in: [2cb37b959c] user: drh branch: trunk, size: 142150)
21:59
[2e46e275a9] part of check-in [bc97cec633] Fix another assert() that is not true if the database schema is corrupt. (check-in: [bc97cec633] user: drh branch: trunk, size: 142094)
20:39
[bc3a513a57] part of check-in [b1ed949584] Fix a faulty assert in the schema parsing logic. (check-in: [b1ed949584] user: drh branch: trunk, size: 142038)
2015-04-18
17:43
[2d43ee768a] part of check-in [2eed41fda0] Fix an incorrect assert() statement in the CREATE INDEX code generator. (check-in: [2eed41fda0] user: drh branch: trunk, size: 142024)
2015-04-17
18:22
[8c4cbff225] part of check-in [3f3b0f683a] Remove unnecessary parser error count increments. Let the sqlite3ErrorMsg() take care of doing that. (check-in: [3f3b0f683a] user: drh branch: trunk, size: 142077)
15:58
[f82d394b9a] part of check-in [7aeade9a07] Ensure that semantic SQL errors are always reported back up to the syntax parser. Also: Improve the defense against invalid PRAGMA synchronous settings. (check-in: [7aeade9a07] user: drh branch: trunk, size: 142121)
2015-04-15
04:10
[01b969b20a] part of check-in [a084690b4f] An oversize hex literal can cause a parsing error while generating code for constants that are factored out of the main body of the VDBE program. So allow for that case. (check-in: [a084690b4f] user: drh branch: trunk, size: 142066)
2015-04-10
08:20
[fa4795bc79] part of check-in [60be9c1c1a] Update this branch with latest trunk changes. (check-in: [60be9c1c1a] user: dan branch: sorter-opt, size: 142074)
2015-04-09
16:30
[4a6d573cd5] part of check-in [83b342a44f] Remove two pointless assert() statements. This should silence harmless compiler warnings reported at https://bugzilla.mozilla.org/show_bug.cgi?id=1152845 (check-in: [83b342a44f] user: drh branch: trunk, size: 142028)
2015-04-01
16:18
[9103f5cd8f] part of check-in [592cdc5d72] Reduce the CPU used by CREATE INDEX statements by taking better advantage of the fact that keys are inserted in sorted order. (check-in: [592cdc5d72] user: dan branch: sorter-opt, size: 142108)
2015-03-30
19:56
[a455f638dc] part of check-in [763d2bc74b] Optimize CREATE INDEX, REINDEX and VACUUM statements by taking better advantage of the fact that index keys are being inserted into b-trees in sorted order. (check-in: [763d2bc74b] user: dan branch: mistake, size: 142014)
2015-03-21
02:58
[0419bba592] part of check-in [d871a79217] If a column is both UNIQUE and a PRIMARY KEY, make sure the PRIMARY KEY designation takes precedence. (check-in: [d871a79217] user: drh branch: trunk, size: 142062)
2015-02-13
16:36
[ba45ebd029] part of check-in [823ad40ccb] Improvements to SQLITE_ENABLE_API_ARMOR. (check-in: [823ad40ccb] user: drh branch: trunk, size: 142041)
2015-01-30
20:59
[eefaa4f1d8] part of check-in [42d5601739] Change SQLITE_TESTCTRL_INITMODE to SQLITE_TESTCTRL_IMPOSTER. Revise the order of parameters. Give it the ability to reset the schema parse table so that imposter tables can be erased. (check-in: [42d5601739] user: drh branch: trunk, size: 142136)
2014-12-28
22:10
[f5cfd7b322] part of check-in [0dfef67570] Fix WITHOUT ROWID tables so that they correctly deal with PRIMARY KEYs that contain redundant columns. (check-in: [0dfef67570] user: drh branch: trunk, size: 142033)
2014-12-12
00:20
[162d84e483] part of check-in [b7489f9451] Fix a bug in the threadtest4.c program. Remove the keyinfo cache as it provides minimal performance improvements, and then only at SQL preparation time, not at runtime, and it has problems with data races in shared-cache mode. We might later add the keyinfo cache back but only enable it when shared-cache mode is off. (check-in: [b7489f9451] user: drh branch: threadtest4, size: 141579)
2014-10-24
00:35
[67bb05b107] part of check-in [c297a84bc6] Add the SQLITE_ENABLE_API_ARMOR compile-time option. This is a work in progress and is not yet completely functional. (check-in: [c297a84bc6] user: drh branch: api-armor, size: 141949)
2014-10-13
13:00
[9dc2bd9434] part of check-in [20062f4942] Remove the OPFLAG_CLEARCACHE flag from OP_Column. In its place, change the P3 parameter of OP_SorterData to be the index of the pseudo-table cursor whose record header cache is to be cleared. This gives a small size reduction and performance increase. (check-in: [20062f4942] user: drh branch: trunk, size: 141875)
2014-10-04
00:07
[9e5205db9a] part of check-in [efd87ba142] Avoid leaking Index.aiRowEst memory if an OOM causes a rollback which deletes the index before the aiRowEst deletion code in sqlite3AnalysisLoad() routine has a chance to run. Since the aiRowEst now might be deleted from freeIndex() which does not always have a db pointer, make sure the aiRowEst memory is not held in lookaside. (check-in: [efd87ba142] user: drh branch: stat4-avgeq, size: 141869)
2014-09-24
13:20
[bde83dd5cf] part of check-in [1ad2bc1ed4] Do not allow parameters in a DEFAULT clause of a CREATE TABLE statement. Ticket [78c0c8c3c9f7c1]. (check-in: [1ad2bc1ed4] user: drh branch: trunk, size: 141797)
2014-09-18
14:36
[8dbca25988] part of check-in [4ef4c9a7c8] Since numeric affinity is the most common case, check it first. Interchange the NONE and TEXT affinity codes for easier checking of no affinity. (check-in: [4ef4c9a7c8] user: drh branch: trunk, size: 141782)
2014-09-11
16:36
[047d7e1d2d] part of check-in [cda33c1ef3] Suppress the potential schema error that occurs when a non-user-auth SQLite library tries to parse the sqlite_user table definition in a user-auth database. (check-in: [cda33c1ef3] user: drh branch: user-auth, size: 141780)
16:19
[555826ae03] part of check-in [842c6da8f1] Enhance the sqlite3_user_add() interface to initialize the user authentication logic. Add test cases for the extra argument on the end of the authorizer callback. (check-in: [842c6da8f1] user: drh branch: user-auth, size: 141753)
14:01
[8b02494e4d] part of check-in [70121e7cf8] 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. (check-in: [70121e7cf8] user: drh branch: user-auth, size: 142054)
13:44
[4c7aac1ddd] part of check-in [596e728b0e] 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. (check-in: [596e728b0e] user: drh branch: user-auth, size: 141460)
2014-09-10
17:34
[3a61555d46] part of check-in [c8171ecd0d] Further ideas on user authentication. Not yet working code. (check-in: [c8171ecd0d] user: drh branch: user-auth, size: 141480)
2014-09-09
14:47
[8b4c67c9fb] part of check-in [8440f093ba] Non-working preliminary implementation attempts on user authentication. (check-in: [8440f093ba] user: drh branch: user-auth, size: 141298)
2014-09-06
16:39
[8cb237719c] part of check-in [e62aab5e92] Fix typos in comments. No code changes. (check-in: [e62aab5e92] user: peter.d.reid branch: trunk, size: 140755)
2014-08-25
13:27
[c26b233dcd] part of check-in [dfdc900f5d] Merge the recent performance enhancements implemented on trunk into the threads branch. (check-in: [dfdc900f5d] user: drh branch: threads, size: 140757)
2014-08-21
20:26
[058e3aadb1] part of check-in [14b0f561fe] Simplify the interface to the symbol table, saving 600 bytes of code space. (check-in: [14b0f561fe] user: drh branch: trunk, size: 140765)
2014-08-06
02:03
[6aa8134d18] part of check-in [a353a8515f] Merge all recent changes from trunk. (check-in: [a353a8515f] user: drh branch: threads, size: 141123)
2014-08-05
11:04
[5abf794fe8] part of check-in [5ae80b3c8f] Rename the internal Schema.flags field to Schema.schemaFlags. (check-in: [5ae80b3c8f] user: drh branch: trunk, size: 141131)
2014-07-31
22:59
[c67a915cd5] part of check-in [e75b26ee35] Refactoring: Change "pIndex->onError!=OE_None" to use a macro: "IsUniqueIndex(pIndex)". Easier to understand that way. (check-in: [e75b26ee35] user: drh branch: trunk, size: 141125)
2014-07-30
14:44
[f6e49e1b32] part of check-in [5b50a8380b] Merge recent trunk changes, and especially the fix for the CREATE UNIQUE INDEX problem of ticket [9a6daf340df99ba9]. (check-in: [5b50a8380b] user: drh branch: threads, size: 141129)
13:56
[7ba21d8f0f] part of check-in [6b785e92f2] Ensure that the correct number of columns in a UNIQUE index are checked for uniqueness, regardless of whether or not the original table has a ROWID or if the columns are NOT NULL, etc. Ticket [9a6daf340df99ba93c]. (check-in: [6b785e92f2] user: drh branch: trunk, size: 141137)
2014-07-24
16:54
[af833cdcba] part of check-in [770685892c] Merge all recent trunk changes into the threads branch. (check-in: [770685892c] user: drh branch: threads, size: 141144)
2014-07-21
15:44
[48f400fa14] part of check-in [1a817ae2f3] Allow the SQLITE_MAX_ATTACHED compile-time option to be larger than 62. The default limit on the number of attached databases remains 10. (check-in: [1a817ae2f3] user: drh branch: trunk, size: 141152)
2014-05-29
20:24
[ac8dc0b8b6] part of check-in [416cb09126] Merge changes from the trunk into the threads branch. (check-in: [416cb09126] user: drh branch: threads, size: 140814)
2014-05-27
18:18
[927e39b6aa] part of check-in [d16e575dac] Change the name of the Index.autoIndex field to Index.idxType and provide symbolic names for the various values of that field rather than using magic numbers. (check-in: [d16e575dac] user: drh branch: trunk, size: 140822)
2014-05-26
20:15
[c68e0391db] part of check-in [8215202759] Merge recent trunk changes into the threads branch. (check-in: [8215202759] user: drh branch: threads, size: 140623)
2014-05-21
08:48
[92539f4704] part of check-in [34ddf02d3d] Do not burn memory remembering CHECK constraints in a read-only database. (check-in: [34ddf02d3d] user: drh branch: trunk, size: 140631)
2014-05-19
15:16
[30012cb6c4] part of check-in [17349a49d2] Changes to help ensure that a multiplication does not overflow when computing the number of bytes needed for a memory allocation, and cause a malfunction. No problems existing problems were discovered. However, these changes should help to ensure that no problems arise in the future. (check-in: [17349a49d2] user: drh branch: safer-malloc, size: 140604)
2014-05-05
22:49
[be2063ff92] part of check-in [f1a4bf01a2] Add the "omit_check_constraints" pragma that causes the check constraint expressions to be omitted from the parse tree. (check-in: [f1a4bf01a2] user: drh branch: reduce-schema-size, size: 140598)
19:57
[7fec8e35d4] part of check-in [35a9f3f178] Try to reduce the amount of memory used to hold the schema when PRAGMA ignore_check_constraints is active. (check-in: [35a9f3f178] user: drh branch: reduce-schema-size, size: 140600)
2014-05-02
18:05
[9c522b6e5a] part of check-in [d9549de317] Merge orderby-planning with this branch. (check-in: [d9549de317] user: dan branch: threads, size: 140536)
2014-04-29
19:01
[02665ca158] part of check-in [e2d42f909d] Test that the default values used when sqlite_stat1 data is not available are calculated correctly. Fixes for the same. (check-in: [e2d42f909d] user: dan branch: experimental-costs, size: 140544)
2014-04-25
15:01
[9f7b2ed2af] part of check-in [1bd74c49dd] Store values loaded from the stat1 table as logarithmic values in memory. (check-in: [1bd74c49dd] user: dan branch: experimental-costs, size: 140343)
2014-04-18
12:38
[9ea11e2923] part of check-in [8729aa3e3e] Merge recent trunk changes into the threads branch. (check-in: [8729aa3e3e] user: drh branch: threads, size: 139929)
2014-04-13
19:15
[5bfeea8f30] part of check-in [3122b83640] Make sure column cache elements are cleared correctly when jumping over code for key generation in a partial index. Fix for ticket [2ea3e9fe6379fc3f6]. (check-in: [3122b83640] user: drh branch: trunk, size: 139937)
2014-04-04
22:44
[e120a3693a] part of check-in [e54dded201] Fix harmless compiler warnings. (check-in: [e54dded201] user: drh branch: threads, size: 139921)
2014-04-01
18:41
[b507fb9b4c] part of check-in [821d1ac450] When sorting data for a CREATE INDEX statement in single-threaded mode, assume that keys are delivered to the sorter in primary key order. Also fix various comments that had fallen out of date. (check-in: [821d1ac450] user: dan branch: threads, size: 139943)
2014-03-05
19:04
[0d50ef95aa] part of check-in [0723effc9c] Fix a harmless compiler warning on MSVC. (check-in: [0723effc9c] user: drh branch: trunk, size: 139929)
15:52
[04acd702f9] part of check-in [eee2a13f2c] Count the number of elements in a SrcList object using an "int" rather than a "u8", to avoid overflows and to work around an issue in the C compiler on AIX. (check-in: [eee2a13f2c] user: drh branch: trunk, size: 139924)
2014-02-17
22:40
[00ce613bc2] part of check-in [ce184c7bb1] Add logic to do test coverage measurements on the VDBE code. (check-in: [ce184c7bb1] user: drh branch: insert-optimization, size: 139932)
2014-02-08
04:24
[13b9d82181] part of check-in [a45b87713c] Enable constant expression factoring even if no tables are read and no transaction is started. (check-in: [a45b87713c] user: drh branch: trunk, size: 139830)
01:40
[1bc2584761] part of check-in [192dea9731] Change the OP_Trace opcode to OP_Init and give it the ability to jump to the initialization code at the bottom of the program, thus avoiding the need for an extra OP_Goto. (check-in: [192dea9731] user: drh branch: trunk, size: 139923)
2014-02-06
23:56
[40c38ec8f1] part of check-in [2f3376ebf1] Delete the OP_VerifySchema opcode. Enhance OP_Transaction to do the schema version checks that OP_VerifySchema used to do. (check-in: [2f3376ebf1] user: drh branch: trunk, size: 141295)
2014-01-16
21:59
[7e6c275ab1] part of check-in [090a77d978] Tweaks to error message text. (check-in: [090a77d978] user: drh branch: common-table-expr, size: 141270)
21:02
[a6b9ba918f] part of check-in [54eee9fe99] Improve the error messages used to report illegal recursive cte references. (check-in: [54eee9fe99] user: dan branch: common-table-expr, size: 141263)
2014-01-13
16:36
[5a2daa6649] part of check-in [8839850c44] Fix some memory leaks and crashes that could follow an OOM condition during WITH clause parsing. (check-in: [8839850c44] user: dan branch: common-table-expr, size: 141229)
15:12
[1efdc65020] part of check-in [a26f399ba4] Add code to handle non-recursive CTEs in the same way as SQL views. (check-in: [a26f399ba4] user: dan branch: common-table-expr, size: 141201)
2014-01-11
19:19
[1da29e4e93] part of check-in [704d3931b8] Update the parser so that sub-queries and CTEs may have WITH clauses. (check-in: [704d3931b8] user: dan branch: common-table-expr, size: 140045)
13:22
[198670a78f] part of check-in [da98b7205e] Parse common table expressions. But do not do anything with them (yet). (check-in: [da98b7205e] user: drh branch: common-table-expr, size: 139995)
2014-01-10
20:38
[8c56d91447] part of check-in [632045f21c] Fix CREATE TABLE ... AS so that it works with column names that are empty strings. (check-in: [632045f21c] user: drh branch: trunk, size: 139311)
2014-01-04
19:27
[3609c8aa26] part of check-in [8f6e6149a1] Avoid redundant register loads during index key generation when doing a DELETE or INTEGRITY_CHECK on a table with multiple indices. (check-in: [8f6e6149a1] user: drh branch: trunk, size: 139302)
16:49
[5597ffa6d6] part of check-in [874b7e9999] Omit OP_Close operations that occur immediately prior to OP_Halt and which cannot be jumped over. (check-in: [874b7e9999] user: drh branch: trunk, size: 139303)
2013-12-09
19:03
[47ef8209e5] part of check-in [9227ad48e1] Performance optimizations for sqlite3VXPrintf(). (check-in: [9227ad48e1] user: drh branch: trunk, size: 139246)
2013-12-06
22:45
[9b40580b62] part of check-in [c5a3a1af3c] Use memcmp() instead of the BINARY collating function where possible, for a performance boost. (check-in: [c5a3a1af3c] user: drh branch: trunk, size: 139248)
2013-12-03
00:11
[1965c7b596] part of check-in [74328de1d7] Fix a harmless compiler warning on MacOS. (check-in: [74328de1d7] user: drh branch: trunk, size: 139210)
2013-11-15
18:15
[07054d4531] part of check-in [d10fb49a92] Changes to make the new constant expression factoring logic more general and more testable. (check-in: [d10fb49a92] user: drh branch: expr-codegen-enhancement, size: 139210)
01:10
[5b74461701] part of check-in [8dc5c76c76] Rework the logic that factors constant expressions out of inner loops, making it both simpler and faster. (check-in: [8dc5c76c76] user: drh branch: expr-codegen-enhancement, size: 139201)
2013-11-13
17:58
[2baeed38bd] part of check-in [8ce33f4c81] Add the "PRAGMA vdbe_eqp" command, only available with SQLITE_DEBUG. Simplify some of the other debugging logic. (check-in: [8ce33f4c81] user: drh branch: trunk, size: 138903)
2013-11-11
16:55
[4d74024314] part of check-in [924d63b283] Remove unreachable code, replacing it in most cases with assert() or NEVER() macros. (check-in: [924d63b283] user: drh branch: trunk, size: 139028)
2013-11-09
18:15
[837587dbeb] part of check-in [b1abb2b078] Throw an error if AUTOINCREMENT appears in a WITHOUT ROWID table. Updates to API documentation to discuss WITHOUT ROWID. (check-in: [b1abb2b078] user: drh branch: trunk, size: 139021)
2013-11-07
14:09
[d4d5ceedf1] part of check-in [55eea1782a] Make sure cached KeyInfo objects are only valid for a single database connection. Clear all cached KeyInfo objects on any collating sequence change. (check-in: [55eea1782a] user: drh branch: omit-rowid, size: 138859)
2013-11-06
19:59
[a74889231f] part of check-in [defd5205a7] Reference count the KeyInfo object. Cache a copy of an appropriate KeyInfo for each index in the Index object, and reuse that one copy as much as possible. (check-in: [defd5205a7] user: drh branch: omit-rowid, size: 138685)
16:28
[5e4d105d5f] part of check-in [474555002d] Have the OP_NoConflict opcode set the VdbeCursor.seekResult variable. This speeds up subsequent OP_Insert and OP_IdxInsert opcodes. (check-in: [474555002d] user: dan branch: omit-rowid, size: 138444)
2013-11-05
22:39
[3182fb1743] part of check-in [03e7019e14] Make sure the query planner knows that the PRIMARY KEY index of a WITHOUT ROWID table is always a covering index. (check-in: [03e7019e14] user: drh branch: omit-rowid, size: 138469)
17:30
[507bacb8f4] part of check-in [52a3d88519] Fix a bug in secondary index initialization when the secondary index is a superset of the PRIMARY KEY for a WITHOUT ROWID table. (check-in: [52a3d88519] user: drh branch: omit-rowid, size: 138446)
13:33
[6790e7b702] part of check-in [54b2219297] Standardize the error messages generated by constraint failures to a format of "$TYPE constraint failed: $DETAIL". This involves many changes to the expected output of test cases. (check-in: [54b2219297] user: drh branch: omit-rowid, size: 138408)
01:59
[309f387dae] part of check-in [294ed33756] Add the conflict2.test script. Fix issues discovered by this script. (check-in: [294ed33756] user: drh branch: omit-rowid, size: 136795)
2013-11-04
18:34
[10b7e68729] part of check-in [bc2a06eb8e] Add another test case file for WITHOUT ROWID and fix the bugs that the new test file uncovered. (check-in: [bc2a06eb8e] user: drh branch: omit-rowid, size: 136783)
17:00
[0610712b05] part of check-in [89098e6d18] Fix a problem with processing INTEGER PRIMARY KEY on a WITHOUT ROWID table. (check-in: [89098e6d18] user: drh branch: omit-rowid, size: 136743)
2013-11-03
02:27
[21727e787a] part of check-in [1315d9109c] Improved comments on foreign key logic. (check-in: [1315d9109c] user: drh branch: omit-rowid, size: 136720)
2013-11-02
22:09
[113a23bc6f] part of check-in [39e32187b6] Many new test cases added, that mostly work. Currently 18 errors in without_rowid3.test. Also there is a hack marked by a /*FIXME*/ comment on at fkey.c:547 that needs fixing. (check-in: [39e32187b6] user: drh branch: omit-rowid, size: 136723)
14:37
[38d6d73962] part of check-in [b7544bb280] Store the root page of the PRIMARY KEY index for a WITHOUT ROWID table in the sqlite_master entry for the main table and omit the sqlite_master entry for the PRIMARY KEY. (check-in: [b7544bb280] user: drh branch: omit-rowid, size: 136699)
2013-11-01
22:02
[bc63356abf] part of check-in [302a81390f] Size KeyInfo objects so that IdxInserts always compare the correct number of fields. (check-in: [302a81390f] user: drh branch: omit-rowid, size: 135370)
20:30
[7a940e5e3e] part of check-in [f9769d701c] Fix sqlite3_analyzer so that it works with WITHOUT ROWID tables. Fix index generation for secondary indices that include fields from the PRIMARY KEY. (check-in: [f9769d701c] user: drh branch: omit-rowid, size: 135147)
17:59
[7c3d657862] part of check-in [845153be36] Fix an invalid cast operation in the WITHOUT ROWID parsing logic. (check-in: [845153be36] user: drh branch: omit-rowid, size: 134994)
01:45
[4f3f549d8c] part of check-in [cdf00248cf] A couple of bug fixes. (check-in: [cdf00248cf] user: drh branch: omit-rowid, size: 134999)
2013-10-30
15:52
[9d33b8691f] part of check-in [6d9af6065f] Make sure KeyInfo objects on multi-column indices of WITHOUT ROWID tables have the correct nField and nXField values. Also, add the SQLITE_ENABLE_MODULE_COMMENT compile-time option and the VdbeModuleComment() macro and use it to label entry and exit points of some key routines. (check-in: [6d9af6065f] user: drh branch: omit-rowid, size: 135048)
2013-10-25
14:46
[4d62e99fa3] part of check-in [9eafafa31c] Basic DELETE operations now working on WITHOUT ROWID tables. (check-in: [9eafafa31c] user: drh branch: omit-rowid, size: 135014)
2013-10-24
14:16
[f99c6980a2] part of check-in [0e56ba69f0] Delete PRIMARY KEY index entries last. Only construct the unique prefix of an index key when deleting entries from an index. (check-in: [0e56ba69f0] user: drh branch: omit-rowid, size: 135081)
2013-10-23
23:37
[2dccf54c05] part of check-in [247f389930] Change the sqlite3OpenTable() utility to open the PRIMARY KEY index when reading a WITHOUT ROWID table. (check-in: [247f389930] user: drh branch: omit-rowid, size: 135058)
22:23
[6970691b8d] part of check-in [2c028ddc85] Construct secondary indices on WITHOUT ROWID tables. (check-in: [2c028ddc85] user: drh branch: omit-rowid, size: 135366)
13:30
[029e170965] part of check-in [b21d831b2a] Some inserts and queries working for multi-column primary keys and WITHOUT ROWID. (check-in: [b21d831b2a] user: drh branch: omit-rowid, size: 134149)
01:57
[2b8af1054c] part of check-in [3f8016dee2] Some simple inserts and queries working on WITHOUT ROWID tables. (check-in: [3f8016dee2] user: drh branch: omit-rowid, size: 134094)
00:32
[fbc70ed499] part of check-in [35a3606071] Build internal data structures appropriately for WITHOUT ROWID tables. (check-in: [35a3606071] user: drh branch: omit-rowid, size: 133957)
2013-10-22
18:01
[c29b38fb05] part of check-in [a106ce86cd] The Index object now has nKeyCol and nColumn. nColumn is the total number of columns and nKeyCol is the number of key columns. Currently these always differ by one. Refactor aiColumn[] to be of type i16 instead of int. (check-in: [a106ce86cd] user: drh branch: omit-rowid, size: 129827)
14:28
[1c52201907] part of check-in [45efc94f9a] Add a procedure to handle the messy details of allocating an Index object from the heap. (check-in: [45efc94f9a] user: drh branch: omit-rowid, size: 129660)
01:18
[06b5fbc1f5] part of check-in [824b549f9b] Previous refactor is not going to be helpful because implied indices must be created in the same order that they appear in the CREATE TABLE statement for backwards compatibility. This is a much smaller change to clean up a few loose ends. (check-in: [824b549f9b] user: drh branch: omit-rowid, size: 129044)
2013-10-21
23:55
[f95446a929] part of check-in [4e69dd5f9b] Minor refactoring of the PRIMARY KEY parsing logic to facilitate enhancements. (check-in: [4e69dd5f9b] user: drh branch: omit-rowid, size: 128388)
02:14
[34096edeeb] part of check-in [131cc6e152] Simplification of the syntax: Merely append "WITHOUT rowid" to the end of the table definition. (check-in: [131cc6e152] user: drh branch: omit-rowid, size: 129031)
2013-10-19
23:31
[2adfe99b97] part of check-in [0248ec5e6e] Experimental changes toward "index only" tables. Add the ability to specify options on CREATE TABLE statements using the WITH clause modeled after PostgreSQL and SQL Server. Only the "omit_rowid" option is currently recognized and that option is currently a no-op. (check-in: [0248ec5e6e] user: drh branch: omit-rowid, size: 129412)
15:07
[6d9a545d72] part of check-in [56dca4a65c] Fix a bug causing an "malformed database schema error" error if a temp table with the same name as an existing table that has at least one temp trigger attached to it is created. (check-in: [56dca4a65c] user: dan branch: trunk, size: 128683)
2013-10-11
15:05
[8ae900bf02] part of check-in [7df06684ab] Fix various harmless compiler warnings. Change the "warnings.sh" script to work with STAT4 instead of STAT3. (check-in: [7df06684ab] user: drh branch: trunk, size: 128667)
2013-10-08
18:40
[3da02c07b0] part of check-in [18bd6ba96d] Further refinement of the idea of multiplying run-time cost estimates by the estimated row size. (check-in: [18bd6ba96d] user: drh branch: row-size-est, size: 128663)
2013-10-07
16:53
[46bb89df0a] part of check-in [8e78557a40] Try to remember statistics from ANALYZE using LogEst instead of u64. (check-in: [8e78557a40] user: drh branch: log-stats, size: 128697)
2013-10-05
20:18
[ea07ec3535] part of check-in [029430c503] Fix an issue in the test8.c test module that arises because of the change to PRAGMA index_list(). Remove an unused local variable. (check-in: [029430c503] user: drh branch: row-size-est, size: 128663)
19:18
[3278345550] part of check-in [8b4aa0c7a2] Completely remove the iScanRatio field. The PRAGMA index_list(TABLE) command shows the estimated row size in the forth column. It also generates a row for the table with an index name of NULL. The query planner still does not take row size estimates into account - that is the next step. (check-in: [8b4aa0c7a2] user: drh branch: row-size-est, size: 128743)
2013-10-04
18:29
[f92f1cd23d] part of check-in [e5d9371da9] Further refinements of the index scanning speed logic. (check-in: [e5d9371da9] user: drh branch: index-scan-rate, size: 129064)
15:30
[7a91b0db70] part of check-in [07462bb605] Improved estimates of the relative speed of index scans based on declared datatypes of columns in the table. Add "r" column to PRAGMA index_info, showing the estimated relative scan rate. (check-in: [07462bb605] user: drh branch: index-scan-rate, size: 128734)
2013-10-03
19:21
[7926e17a5d] part of check-in [d59d97b0a8] Experimental branch allowing different postulated scan rates for each index. (check-in: [d59d97b0a8] user: drh branch: index-scan-rate, size: 127336)
15:39
[834fa4bb0f] part of check-in [500c5932fe] The sqlite3FixInit() routine cannot fail. So change the return type from "int" to "void". (check-in: [500c5932fe] user: drh branch: trunk, size: 126495)
2013-09-02
23:40
[ec867822b3] part of check-in [d8daaba7da] Add the experimental SQLITE_DEFAULT_INDEX_SHAPE=1 compile-time option that makes a much more pessimistic guess at the effectiveness of unanalyzed indices. (check-in: [d8daaba7da] user: drh branch: index-shape-1, size: 126975)
2013-08-26
23:18
[f63e8929c7] part of check-in [a32af0abe5] Merge the STAT4 capability into trunk. (check-in: [a32af0abe5] user: drh branch: trunk, size: 126511)
2013-08-19
11:15
[f99a715ff9] part of check-in [a0d9ca4f07] Fixes for harmless compiler warnings. (check-in: [a0d9ca4f07] user: drh branch: trunk, size: 126511)
2013-08-07
18:42
[c2e4d057c8] part of check-in [08f74c45ec] Merge latest trunk changes with this branch. (check-in: [08f74c45ec] user: dan branch: sqlite_stat4, size: 126506)
2013-08-05
19:11
[cee4724668] part of check-in [7301bedd94] Factor all KeyInfo object allocations into a single function: sqlite3KeyInfoAlloc(). Always allocate enough space so that sqlite3VdbeRecordCompare() can avoid checking boundaries and hence run faster. (check-in: [7301bedd94] user: drh branch: trunk, size: 126506)
2013-08-03
20:24
[b2771cc574] part of check-in [2beea303a1] Begin adding experimental sqlite_stat4 table. This commit is buggy. (check-in: [2beea303a1] user: dan branch: sqlite_stat4, size: 126762)
2013-08-02
16:41
[fc76e1cd01] part of check-in [478113f18b] Add support for partial indices. (check-in: [478113f18b] user: drh branch: trunk, size: 126762)
2013-08-01
22:27
[1a6db7f48a] part of check-in [e3c8935f87] Fix the CREATE INDEX statement so that trying to create a TEMP index on a non-TEMP table throws an error rather than segfaulting. (check-in: [e3c8935f87] user: drh branch: trunk, size: 127100)
16:02
[7fe3c81e50] part of check-in [2e3df0bc90] Fix bug in the logic that determines the end of a CREATE INDEX statement. Added a VACUUM test case that exposed the bug. (check-in: [2e3df0bc90] user: drh branch: partial-indices, size: 126598)
03:36
[4be8975927] part of check-in [6b73ae7c12] Test cases and bug fixes for the partial index logic. (check-in: [6b73ae7c12] user: drh branch: partial-indices, size: 126579)
01:14
[9422ab5fe5] part of check-in [fb9044d15a] Add the logic to keep partial indices up to date through DML statements and when new partial indices are created. This new logic is untested except to verify that it does not interfere with full indices. (check-in: [fb9044d15a] user: drh branch: partial-indices, size: 126711)
2013-07-31
19:05
[f1ef982f38] part of check-in [f2aa7842c8] Resolve names in CREATE INDEX WHERE clauses and detect errors. Disallow expressions that contain variables, subqueries, or functions. The expression is still not used for anything, however. still unused. (check-in: [f2aa7842c8] user: drh branch: partial-indices, size: 126585)
18:12
[c2903be4a8] part of check-in [6794b2dcb4] Here begins an experimental branch for exploring the idea of a partial index. This check-in is able to parse a WHERE clause on a CREATE INDEX statement, but does not actually do anythingn with that WHERE clause yet. (check-in: [6794b2dcb4] user: drh branch: partial-indices, size: 127103)
2013-06-19
13:59
[42239cfd95] part of check-in [8d2ae8e2f3] Additional compiler warning fixes. (check-in: [8d2ae8e2f3] user: drh branch: nextgen-query-plan-exp, size: 126936)
2013-06-12
17:17
[eadda12ec0] part of check-in [f2e15b1974] Merge all changes from trunk. (check-in: [f2e15b1974] user: drh branch: nextgen-query-plan-exp, size: 126938)
2013-06-08
19:58
[1ecf685223] part of check-in [60fc77bc53] Candidate fix for a memory leak that occurs if a CREATE TABLE statement contains two or more COLLATE clauses on the same column definition. (check-in: [60fc77bc53] user: drh branch: memleak, size: 126835)
2013-06-04
12:42
[838cbdcbf1] part of check-in [e605c468e3] Refactor the ORDER BY optimizer in the NGQP so that it is easier to maintain and so that it can support optimizing out GROUP BY and DISTINCT clauses. (check-in: [e605c468e3] user: drh branch: nextgen-query-plan-exp, size: 126897)
2013-05-15
15:16
[92ef948318] part of check-in [6dae62c4e5] When loading a database schema that contains an index definition that includes a COLLATE clause for which the collation sequence is unavailable, do not assume that that index uses BINARY instead. Fix for [0fc59f908b]. (check-in: [6dae62c4e5] user: dan branch: trunk, size: 126794)
2013-03-24
22:56
[083da8466f] part of check-in [8b44d6fb15] Remove the SQLITE_OMIT_MERGE_SORT compile-time option and its related code. The merge sorter is now a required component. (check-in: [8b44d6fb15] user: drh branch: trunk, size: 126922)
2013-03-21
21:20
[b85db6cb50] part of check-in [6f6e2d5094] Many spelling fixes in comments. No changes to code. (check-in: [6f6e2d5094] user: mistachkin branch: trunk, size: 128308)
2013-03-01
01:07
[375e5df716] part of check-in [d73435587b] Always use strncmp() rather than memcmp() when comparing strings where one or other string might be less than the length parameter, since optimized versions of memcmp() might read past the first difference and in so doing generate an access violation. (check-in: [d73435587b] user: drh branch: trunk, size: 128309)
2013-02-09
13:58
[73ca65f329] part of check-in [5461104668] Add extended error codes for constraint errors. (check-in: [5461104668] user: drh branch: constraint-error-codes, size: 128300)
2012-12-08
21:51
[f4f86c0700] part of check-in [8542e6180d] Refactor collating-sequence handling as a fix for ticket [71e333e7d2e642]. The Expr.pColl field is removed from the Expr object. The COLLATE operator now becomes a separate instance of Expr in the expression tree. The code generator looks up the correct collating function as needed, rather than referring to Expr.pColl. (check-in: [8542e6180d] user: drh branch: trunk, size: 128048)
2012-12-06
21:16
[9721f654f5] part of check-in [fd011cb22f] Remove the Expr.pColl field and compute the collating sequence as it is needed. This fixes the test script "shared9.test", though there is still a memory leak. And there are other problems. Consider this a work-in-progress. (check-in: [fd011cb22f] user: drh branch: ticket-71e333e7, size: 127678)
20:27
[f354512133] part of check-in [34aafb7436] Cherrypick [79ef8e3c77] (Apply the same restrictions on constant refactoring to statements within a trigger program as top-level statements). (check-in: [34aafb7436] user: dan branch: branch-3.7.9, size: 127511)
19:37
[fd68fb1bee] part of check-in [0c31a46801] Apply the same restrictions on constant refactoring to statements within a trigger program as top-level statements. Candidate fix for [ae3c5670b6]. (check-in: [0c31a46801] user: dan branch: constant-refactoring-in-triggers, size: 128444)
2012-10-26
13:34
[0aef4fa83f] part of check-in [325364a984] Backport the shared-cache-fix branch. (check-in: [325364a984] user: drh branch: branch-3.7.14, size: 128063)
2012-10-25
17:21
[1c01c649a1] part of check-in [9078ea75f5] Use a constant string "BINARY" for the unspecified collating sequence. This is part of check-in [635e3a762dd] that is being back-ported. (check-in: [9078ea75f5] user: drh branch: branch-3.7.9, size: 127141)
2012-10-09
18:51
[f35dac5292] part of check-in [7b1a6e6cb5] Attempt to suppress warnings generated by Coverity. (check-in: [7b1a6e6cb5] user: drh branch: trunk, size: 128074)
2012-10-08
23:25
[b21c130017] part of check-in [28d1eb40bf] Changes to facilitate full test coverage. (check-in: [28d1eb40bf] user: drh branch: trunk, size: 128027)
2012-10-05
18:38
[d1acf9b8d2] part of check-in [cd9efeb3eb] Fix an accidental fork on branch-3.7.9. (check-in: [cd9efeb3eb] user: drh branch: branch-3.7.9, size: 127153)
18:35
[55c4e4a12a] part of check-in [ac81ae493f] Backport fixes to shared-cache mode, from the shared-cache-fix branch, to version 3.7.9 (check-in: [ac81ae493f] user: drh branch: branch-3.7.9, size: 126958)
17:44
[aaff8dbeb5] part of check-in [698ec7769d] Merge the shared-cache related fixes from the shared-cache-fix branch to the trunk. (check-in: [698ec7769d] user: dan branch: trunk, size: 127999)
14:43
[b87aff4aa8] part of check-in [8ea67522fb] Consolidate all occurrences of the "no such collation sequence" error message into a single spot. (check-in: [8ea67522fb] user: drh branch: trunk, size: 127338)
2012-10-04
19:33
[74baa2d6d6] part of check-in [2b370dea70] Shared-cache mode fixes for views and virtual tables. (check-in: [2b370dea70] user: dan branch: shared-cache-fix, size: 128091)
2012-09-13
14:22
[c4555e16f8] part of check-in [4163f5f194] Change boolean fields in the Column object from unsigned characters into bits in a single bit mask variable. (check-in: [4163f5f194] user: drh branch: trunk, size: 127430)
2012-08-25
10:01
[a3b700afd4] part of check-in [9b19b84753] Fix all known instances of 'repeated the' style typos in comments. No changes to code. (check-in: [9b19b84753] user: mistachkin branch: trunk, size: 127402)
2012-08-20
15:53
[1967343741] part of check-in [7edd10a960] Remove tab characters from source code files. Replace them with spaces. (check-in: [7edd10a960] user: drh branch: trunk, size: 127406)
2012-08-06
18:50
[0f6b40ad62] part of check-in [d045f8b2d4] When reusing pages as part of creating a new index, allocate the leaves from each free-list trunk page in ascending order, instead of trying to maximize localization for each individual allocation. This increases the chance that pages will be written to disk in ascending order by a large CREATE INDEX statement, improving overall performance. (check-in: [d045f8b2d4] user: dan branch: sorter-coalesce-writes, size: 127400)
2012-07-18
16:07
[4357149e38] part of check-in [defd828e90] Remove another branch from the DbMalloc() paths. (check-in: [defd828e90] user: dan branch: calloc, size: 127343)
2012-06-06
10:56
[47c4506afe] part of check-in [c469850b2e] Make sure the Index.azColl pointers do not point to connection-specific memory. Also, remove an unnecessary reinitialization to sqlite3.pDfltColl. (check-in: [c469850b2e] user: drh branch: shared-schema, size: 127368)
2012-06-05
19:20
[178b24b35a] part of check-in [42338e9e69] Merge the latest trunk changes into shared-schema branch. Also fix a C99-ism in that branch. (check-in: [42338e9e69] user: drh branch: shared-schema, size: 127380)
2012-05-21
19:11
[2bb2163bb1] part of check-in [7222609693] Convert the NameContext object from using u8 booleans to using individual bits in a single u8 as its booleans. This change might become a basis for a fix for [c2ad16f997ee9c]. (check-in: [7222609693] user: drh branch: nested-agg, size: 127626)
2012-05-15
18:28
[6da3a26195] part of check-in [aa0c3493d3] The former sqlite3ResetInternalSchema() routine was really two different routines, selected by parameter, each with a confused mission. So split this routine up into three separate smaller routines, calling each separately as needed. Hopefully this will make further refactoring and schema reset collateral damage containment easier. (check-in: [aa0c3493d3] user: drh branch: shared-schema, size: 127364)
12:49
[95fd8aa1bf] part of check-in [736d6ea677] Add assert()s to verify that Table objects in the schema never use lookaside memory. (check-in: [736d6ea677] user: drh branch: trunk, size: 127617)
2012-03-30
15:48
[987c6933ea] part of check-in [1b75f301af] When a named CHECK constraint fails, include the name of the constraint in the error message. (check-in: [1b75f301af] user: drh branch: trunk, size: 126772)
2012-03-29
07:51
[139dc386eb] part of check-in [4afdd5ae53] Fix an out of date comment on sqlite3ArrayAllocate(). (check-in: [4afdd5ae53] user: dan branch: trunk, size: 126450)
2012-03-07
19:13
[d58d314c58] part of check-in [9a0f90d9de] If a CHECK constraint is named, report that name on the error message when the constraint fails. (check-in: [9a0f90d9de] user: drh branch: named-check-constraints, size: 126554)
2012-02-02
15:50
[c4d36e527f] part of check-in [0bc594e861] Data structure cleanup. Remove unused fields. Rearrange other files for tighter packing and reduced memory usage. (check-in: [0bc594e861] user: drh branch: trunk, size: 126232)
03:38
[7a03d1772f] part of check-in [25df2a7458] Simplified array allocation in the IdList and AggInfo objects. (check-in: [25df2a7458] user: drh branch: trunk, size: 126250)
2012-01-05
12:38
[8e2a4dedad] part of check-in [1378f905d3] Ensure 8-byte alignment of Index.aiRowEst elements even if the size of an Index object is not a multiple of 8 bytes. (check-in: [1378f905d3] user: drh branch: trunk, size: 126536)
2011-11-14
02:53
[8915bb6d72] part of check-in [54cc119811] Fix a 8-byte alignment problem that causes a SIGBUS on Sparc. (check-in: [54cc119811] user: drh branch: branch-3.7.9, size: 126492)
2011-10-21
19:06
[8af67a08a8] part of check-in [aed2bf7a3c] Purge lingering references to SQLITE_STAT2 from the code and test scripts. (check-in: [aed2bf7a3c] user: drh branch: trunk, size: 126297)
2011-10-14
21:49
[ae152efb9c] part of check-in [60fee9574b] Add assert() statements and eliminate needless variable assignments in order to get the clang scan-build utility to report zero problems against the SQLite core. Clang's static analysis did find one real problem - but it was in the command-line shell, not in the SQLite core. (check-in: [60fee9574b] user: drh branch: trunk, size: 126354)
2011-10-07
23:52
[119937b0ae] part of check-in [589f3f5652] Change the ANALYZE command so that it no longer tried to delete unused sqlite_stat2 and sqlite_stat3 tables. Change the DROP TABLE command so that it is able to drop those tables. (check-in: [589f3f5652] user: drh branch: trunk, size: 126275)
2011-09-23
13:59
[2dc0938598] part of check-in [be44928cf2] Testability enhancements. (check-in: [be44928cf2] user: drh branch: stat3-trunk, size: 126216)
2011-09-13
19:09
[57e3b27c26] part of check-in [11ca4ed8bf] Merge the latest trunk changes into the stat3-trunk branch. (check-in: [11ca4ed8bf] user: drh branch: stat3-trunk, size: 126235)
2011-09-03
00:17
[851e81f26a] part of check-in [68e26c4487] The build works again with -DSQLITE_OMIT_MERGE_SORT. The merge-sorter now avoids spilling to disk (letting the in-memory linked list grow without bound) if PRAGMA temp_store=3. (check-in: [68e26c4487] user: drh branch: merge-sort, size: 125978)
2011-09-02
10:31
[dc367138cb] part of check-in [7769fb988d] Instead of a temporary b-tree, use a linked-list and merge-sort to sort records in main memory in vdbesort.c. (check-in: [7769fb988d] user: dan branch: merge-sort, size: 126268)
2011-08-26
18:28
[90685b71df] part of check-in [a7e1846882] Veryquick and min.rc tests now passing. (check-in: [a7e1846882] user: drh branch: stat3-3.7.2, size: 122405)
13:52
[556c591835] part of check-in [0df04f920b] Merge branches branch-3.7.2 and stat3-enhancement into a new branch for testing purposes. (check-in: [0df04f920b] user: drh branch: stat3-3.7.2, size: 122552)
13:16
[ea854c9d5e] part of check-in [63f2c7859f] Merge the stat3-enhancement branch with trunk, but keep the resulting merge in a separate branch for now. (check-in: [63f2c7859f] user: drh branch: stat3-trunk, size: 126023)
00:34
[2d5de52df6] part of check-in [c71d73201d] Create a new pager type, PAGER_SORTER, for use in the external merge sort. Such pagers are always held in memory but do report when they are under memory pressure by calling pagerStress. (check-in: [c71d73201d] user: drh branch: trunk, size: 125766)
2011-08-24
15:12
[20784c6b4e] part of check-in [46f5a68bfa] Fix some harmless compiler warnings. (check-in: [46f5a68bfa] user: drh branch: trunk, size: 125724)
2011-08-23
00:01
[6c60478a1e] part of check-in [a65681926d] Remove a branch that is always true. (check-in: [a65681926d] user: drh branch: trunk, size: 125720)
2011-08-18
02:51
[4534f8c4b1] part of check-in [3fe5d54f63] Fix a bug in the cleanup of stat tables on a DROP TABLE in autovacuum mode. (check-in: [3fe5d54f63] user: drh branch: stat3-enhancement, size: 124874)
2011-08-17
00:40
[77be7c2174] part of check-in [f01766f423] Use OP_Sort rather than OP_Rewind in order to sort the content of a new index on the CREATE INDEX statement. Add an ALWAYS() to the merge sort logic to document an unreachable branch. (check-in: [f01766f423] user: drh branch: trunk, size: 125694)
2011-08-13
19:35
[cd77ae9792] part of check-in [89b2f70884] Further testing and bug fixing for sqlite_stat3. Added the Index.avgEq field to index statistics. Fixed several problems in the query planner associated with stat3. (check-in: [89b2f70884] user: drh branch: stat3-enhancement, size: 124875)
2011-08-12
16:30
[77b40abf79] part of check-in [7e515055f2] Merge latest trunk changes into experimental branch. (check-in: [7e515055f2] user: dan branch: experimental, size: 125696)
15:02
[ac39a62c06] part of check-in [4ced2394b1] Add the SQLITE_OMIT_MERGE_SORT pre-processor directive. To omit the code in vdbesort.c. (check-in: [4ced2394b1] user: dan branch: experimental, size: 125323)
01:51
[4165efa323] part of check-in [52e1d7e8dd] Begin a branch that experimentally replaces sqlite_stat2 with a new table called sqlite_stat3 that will hopefully facilitate better query planning decisions. (check-in: [52e1d7e8dd] user: drh branch: stat3-enhancement, size: 124873)
2011-08-07
01:31
[19a8957a44] part of check-in [3c8f97ae52] Remove relevant elements from the sqlite_stat2 table when doing a DROP INDEX or DROP TABLE. (check-in: [3c8f97ae52] user: drh branch: trunk, size: 124617)
2011-07-12
14:28
[8aca0539ba] part of check-in [30dbf0feab] Experimental support for speeding up CREATE INDEX commands using an offline merge sort. (check-in: [30dbf0feab] user: dan branch: experimental, size: 124904)
2011-06-24
18:43
[5e614e586d] part of check-in [90cfeaf7b6] Explicitly cast an argument to printf() to (int), in case the result of the pointer arithmetic expression is a 64-bit integer on some platforms. (check-in: [90cfeaf7b6] user: dan branch: trunk, size: 124244)
2011-06-03
20:11
[5a428625d2] part of check-in [957b2ab67c] Create and use a function especially for adding the ParseSchema opcode. This gives a small reduction in code and a small performance increase. (check-in: [957b2ab67c] user: drh branch: trunk, size: 124237)
2011-06-01
18:15
[c10ab9e2c7] part of check-in [b3aaf715b6] Refactor the SQL parameter processing so that parameter names for values that are optimized out of the prepare statement are not forgotten. (check-in: [b3aaf715b6] user: drh branch: trunk, size: 124287)
2011-05-01
22:57
[a8aca43dc4] part of check-in [7155e6f328] Backport check-ins [0900e35348f4b9bf3] and [4fead8e714c7e50] to the 3.7.2 branch. These check-ins provide hints to the btree layer for when it is possible to use a hash table rather than a btree to implement an index. The SQLite BTree layer does not use these hints, but alternative btree layers might. (check-in: [7155e6f328] user: drh branch: branch-3.7.2, size: 121768)
2011-04-23
15:54
[0132bc6631] part of check-in [68240e75e8] Have the ATTACH command do URI interpretation in the same way as sqlite3_open() and sqlite3_open_v2() do. (check-in: [68240e75e8] user: dan branch: uri, size: 124447)
2011-04-09
17:32
[f09c46c66a] part of check-in [a46f32900a] Add VerifyCookie instructions to "DROP XXX IF EXISTS" statements if the specified database object does not exist when the statement is prepared. (check-in: [a46f32900a] user: dan branch: trunk, size: 124437)
15:39
[84d4a8030d] part of check-in [b9dbd99361] Add an OP_VerifyCookie instruction to "CREATE XXX IF NOT EXISTS" commands. This way, if the specified database object existed when the statement was compiled but removed from the database before sqlite3_step() was called, the statement still works as expected (and creates the object). (check-in: [b9dbd99361] user: dan branch: trunk, size: 123844)
2011-04-05
22:08
[b7c993274e] part of check-in [3eeb0ff78d] Suppress many harmless compiler warnings, mostly signed/unsigned comparisons within asserts or unused parameters in extensions. (check-in: [3eeb0ff78d] user: drh branch: trunk, size: 123658)
19:26
[8fc7133b6c] part of check-in [a4c3ac989d] Simplifications to the sqlite3ResetInternalSchema() logic to eliminate unreachable branches. (check-in: [a4c3ac989d] user: drh branch: trunk, size: 123673)
2011-04-04
21:25
[d809f57250] part of check-in [39c0090783] Additional schema mutex checks for sqlite3RootPageMoved(). Reduce the scope of sqlite3ResetInternalSchema() in a few places. (check-in: [39c0090783] user: drh branch: schema-parse-refactor, size: 123673)
18:22
[63465c86f7] part of check-in [ae8374af05] Add a description of access rules for the Schema object and lots of asserts to verify that the access rules are followed. (check-in: [ae8374af05] user: drh branch: schema-parse-refactor, size: 123578)
13:40
[3377719d96] part of check-in [71d7440023] Rename sqlite3SchemaFree() to sqlite3SchemaClear() to more accurately reflect its function. (check-in: [71d7440023] user: drh branch: schema-parse-refactor, size: 122450)
2011-04-02
20:08
[0dd1fd5a9d] part of check-in [0d99229a7a] Merge in the latest changes from trunk. (check-in: [0d99229a7a] user: drh branch: schema-parse-refactor, size: 122447)
20:01
[3a8c6c4b1e] part of check-in [3d6f2e8235] Change the name of the "tAttachMask" datatype to "yDbMask". (check-in: [3d6f2e8235] user: drh branch: trunk, size: 121876)
16:50
[fcdd8f4736] part of check-in [211d5dde1f] When resetting any non-TEMP schema, also reset the TEMP schema since it might be holding references to the non-TEMP schema that just got reset. (check-in: [211d5dde1f] user: drh branch: schema-parse-refactor, size: 122463)
16:28
[9dca3dc000] part of check-in [6a8ad6e31e] Begin a series of changes designed to reduce the scope and frequency of invalidating schemas. Design goals are that the internal schema should never be deleted out from under a prepared statement that is running and that all prepared statements should be expired if the schema is invalidated. At the same time, minimize the number of schema invalidations. This change merely revises the sqlite3ResetInternalSchema() function to use -1 as the wildcard for "all" rather than 0, so that we can reset the main schema independently of all the others. (check-in: [6a8ad6e31e] user: drh branch: schema-parse-refactor, size: 122185)
2011-03-24
01:34
[6c490fe14d] part of check-in [b6e268fce1] The changes to fix [f7b4edece25c9948] mean that the schema is always loaded whenever a prepared statement is running. This means that a couple of branches can be eliminated and one operand of OP_ParseSchema can be removed. (check-in: [b6e268fce1] user: drh branch: trunk, size: 121892)
2011-03-23
18:22
[821d4b3c6b] part of check-in [7aaf877227] Increase the upper bound on SQLITE_MAX_ATTACHED from 30 to 62. (check-in: [7aaf877227] user: drh branch: trunk, size: 121884)
2011-03-18
21:55
[3b86c8efc0] part of check-in [36c04dd169] Add a generation counter to the Schema object and enhance OP_VerifySchema to also check the Schema generation. Fix for ticket [f7b4edece25c99]. (check-in: [36c04dd169] user: drh branch: trunk, size: 121838)
2011-02-12
05:34
[a3c83d34a7] part of check-in [9d2b0af266] Fix problems in the backport, reducing the number of errors in the TCL tests to just a few dozen. Most of the remaining errors seem to be real and desirable changes of behavior. (check-in: [9d2b0af266] user: drh branch: branch-3.7.2, size: 121798)
2010-09-28
20:26
[00a327120d] part of check-in [3f30f00a38] Simplify the test that determines if the name of a new table collides with a prior index name. (check-in: [3f30f00a38] user: drh branch: trunk, size: 121746)
19:16
[e70451e17a] part of check-in [655991ec8a] Fix some problems that can occur if a trigger has the same name as another database object. (check-in: [655991ec8a] user: dan branch: trunk, size: 121776)
17:34
[0451673aea] part of check-in [6251e58740] Add tests to e_createtable.test. Allow a table to be created if there is an index of the same name in a different attached database. (check-in: [6251e58740] user: dan branch: trunk, size: 121732)
15:55
[907385634c] part of check-in [dd1b34bab7] Disallow statements of the form "CREATE TEMP TABLE main.t1 ...". (check-in: [dd1b34bab7] user: dan branch: trunk, size: 121709)
2010-09-25
22:32
[99894b89b7] part of check-in [a7645d2938] Enhance the ANALYZE command so that it gathers statistics in the sqlite_stat1 table even for tables that are empty or have no indices. (check-in: [a7645d2938] user: drh branch: trunk, size: 121640)
2010-08-30
15:02
[5acc8a7d79] part of check-in [0900e35348] Remove the sqlite3BtreeFactory() wrapper routine. All modules now call sqlite3BtreeOpen() directly. (check-in: [0900e35348] user: drh branch: trunk, size: 121576)
2010-08-27
12:21
[aa5ebbf962] part of check-in [51049479a8] Remove unnecessary code from malloc.c. Enhance pcache1.c so that is tries to reuse existing pages, rather than create new pages, when SQLite is under memory pressure. "Memory pressure" means that SQLITE_CONFIG_PAGECACHE memory is nearly exhausted or sqlite3_soft_heap_limit() has been reached. (check-in: [51049479a8] user: drh branch: trunk, size: 121606)
2010-07-28
19:17
[0018d49629] part of check-in [33b1e862ff] Get SQLITE_OMIT_VIRTUALTABLE working again after being broken by recent changes. (check-in: [33b1e862ff] user: drh branch: trunk, size: 121734)
2010-07-26
11:07
[d4593392b8] part of check-in [629e38a8c9] Make sure all memory from sqlite3DbMalloc() is freed by sqlite3DbFree() and all memory from sqlite3_malloc() is freed by sqlite3_free(). (check-in: [629e38a8c9] user: drh branch: experimental, size: 121694)
2010-07-25
02:12
[b4f3c9ba15] part of check-in [da2f62c502] Further examples of using automatic deallocation to replace "delete" methods. (check-in: [da2f62c502] user: drh branch: malloc-enhancement, size: 121692)
2010-07-24
19:08
[216e3635a8] part of check-in [e5ecb15984] Additional malloc sanity changes. Use sqlite3MemLink() on Index.zColAff and Table.zColAff as a proof of concept. (check-in: [e5ecb15984] user: drh branch: malloc-enhancement, size: 121792)
16:34
[6d3bd01296] part of check-in [ac1f37a647] Make sure all memory from sqlite3DbMalloc() is freed by sqlite3DbFree() and all memory from sqlite3_malloc() is freed by sqlite3_free(). (check-in: [ac1f37a647] user: drh branch: malloc-enhancement, size: 121925)
11:28
[fdf428a35c] part of check-in [9aa30342f4] Experimental code to measure memory consumed by database schemas and prepared statements. (check-in: [9aa30342f4] user: dan branch: experimental, size: 121683)
2010-07-23
15:41
[8ccdb8ff8e] part of check-in [6eddc6e601] Remove the Table.dbMem variable, as it is no longer being used for its original purpose. (check-in: [6eddc6e601] user: dan branch: trunk, size: 121914)
2010-07-08
17:40
[559d38b48f] part of check-in [e396184cd3] Change the journal_mode pragma to remove the "default journal mode" concept. The journal_mode pragma only effects currently attached databases and does not change the behavior of future attachments. (check-in: [e396184cd3] user: drh branch: trunk, size: 121983)
2010-06-28
10:15
[31830208ad] part of check-in [4932f22848] Currently, if SQLite cannot find a table or index referred to by a query, it reloads the database schema from disk to see if the table or index has been added since the schema was cached in memory. Extend this behaviour to columns (which may have been added using ALTER TABLE) and fix some obscure cases related to tables and indexes (INDEXED BY, DROP TABLE etc.). (check-in: [4932f22848] user: dan branch: trunk, size: 122060)
2010-06-11
17:01
[9d48f4023d] part of check-in [95cc3f6fde] Refactor and simplify the logic used to change journalmode. (check-in: [95cc3f6fde] user: drh branch: trunk, size: 122029)
2010-06-02
05:53
[fa9bf63365] part of check-in [e7073e23b8] Add some 'const' markers to static data that is really constant. (check-in: [e7073e23b8] user: dan branch: trunk, size: 122026)
2010-02-25
23:44
[11100b66fb] part of check-in [0f6291bbbd] Fix to the database connection validity checker. Other test coverage enhancements. (check-in: [0f6291bbbd] user: drh branch: trunk, size: 122019)
02:32
[ffad52833f] part of check-in [46f406b202] 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]. (check-in: [46f406b202] user: drh branch: branch-3.6.22, size: 121959)
2010-02-22
19:32
[254a273acb] part of check-in [a8076aede3] Log all error messages if logging is enabled. (check-in: [a8076aede3] user: drh branch: trunk, size: 122047)
2010-01-31
14:18
[81412e0f3c] part of check-in [6487e70a1e] If an OOM occurs while setting the page size for the TEMP database, be sure that error gets reported back out to the interface layer. (check-in: [6487e70a1e] user: drh branch: trunk, size: 122037)
2010-01-26
01:25
[f9002fe1d9] part of check-in [5dcfb0c9e4] Make the TEMP file tables use the page size set for the main database. Ticket [b80eeab588c4]. Also copy over the changes from apple-osx check-in [7c3bede3f2]. (check-in: [5dcfb0c9e4] user: drh branch: trunk, size: 122021)
2010-01-05
18:06
[d8fe03f762] part of check-in [9f819ea6b2] Apply fix [097737e368] to the 3.6.1 branch. (check-in: [9f819ea6b2] user: dan branch: branch-3.6.1, size: 113587)
2009-12-22
23:52
[6ab7f8d8fa] part of check-in [4a97c623f4] Move the query flattener turn-off from a pragma to an sqlite3_test_control() call. Make provisions (not yet implemented) to turn off other optimizers using the same call. (check-in: [4a97c623f4] user: drh branch: trunk, size: 121949)
2009-12-08
14:34
[5a18b6846e] part of check-in [7b1cfd65a6] Allow zero-length names for tables, columns, and indices. Fix for ticket [78e04e52eaf]. (check-in: [7b1cfd65a6] user: drh branch: trunk, size: 122014)
2009-11-10
01:30
[a48e74d248] part of check-in [f6c045f649] Remove the obsolete "$Id:$" RCS identifier strings from the source code. (check-in: [f6c045f649] user: drh branch: trunk, size: 121956)
2009-10-12
22:30
[3c5762687d] part of check-in [634ef4fc9f] Add asserts as evidence that all FK constraints are either immediate or deferred. (check-in: [634ef4fc9f] user: drh branch: trunk, size: 122021)
2009-09-28
14:49
[1988dad279] part of check-in [8353808c9e] Fix the DROP TABLE command so that it cannot be used to bypass foreign key constraints (if foreign key support is enabled). (check-in: [8353808c9e] user: dan branch: trunk, size: 121997)
2009-09-24
00:09
[c6c8d4ce8c] part of check-in [f0c56fa90d] Make sure a transaction is available for rollback whenever a REDUCE conflict resolution occurs and there is the possibility to ABORT. Ticket [4a03edc4c8c] (check-in: [f0c56fa90d] user: drh branch: trunk, size: 121952)
2009-09-23
08:43
[a6bd2dd725] part of check-in [540c2d18e1] Add missing comments to fkey.c. Also, change the terminology used for comments and names in fkey.c from "referenced/referencing" to "parent/child". This is arguably less correct, but is easier to follow. (check-in: [540c2d18e1] user: dan branch: trunk, size: 120704)
2009-09-22
16:55
[b0aee84fe3] part of check-in [e2bc51bc61] Fix another OOM related problem in fkey.c. (check-in: [e2bc51bc61] user: dan branch: trunk, size: 120695)
2009-09-19
17:00
[6520093d96] part of check-in [d5d3998118] Check in implementation of foreign key constraints. (check-in: [d5d3998118] user: dan branch: trunk, size: 120660)
2009-09-14
23:47
[713f27807d] part of check-in [2b2a1ef74e] Make sure sufficient space is allocated for at least one VDBE cursor when autoincrement is used. Ticket [a696379c1f088]. (check-in: [2b2a1ef74e] user: drh branch: trunk, size: 120191)
2009-09-11
14:05
[f7da9f9a1d] part of check-in [b084828a77] Version 3.6.18 (check-in: [b084828a77] user: drh branch: trunk, size: 120020)
2009-09-10
16:14
[7569d7e263] part of check-in [b302786350] Fix a problem with the sqlite3VdbeMayAbort() assert failing following an OOM. (check-in: [b302786350] user: dan branch: trunk, size: 120012)
2009-09-09
11:37
[5269733241] part of check-in [28aa1f4ea8] Add a complicated assert() to check that statement transactions are opened when required. (check-in: [28aa1f4ea8] user: dan branch: trunk, size: 120001)
2009-09-08
19:15
[1a21d6dcb6] part of check-in [aec9dbd8d2] Combine the OP_Statement and OP_Transaction opcodes. (check-in: [aec9dbd8d2] user: dan branch: trunk, size: 119920)
2009-09-01
12:16
[df8dfff696] part of check-in [38a9327bad] More fixes and comment updates. (check-in: [38a9327bad] user: dan branch: trunk, size: 119425)
2009-08-28
18:53
[212476dc97] part of check-in [9b9c192115] Changes to support recursive triggers. (check-in: [9b9c192115] user: dan branch: trunk, size: 119461)
2009-08-20
02:34
[a43c959c59] part of check-in [4ee44322ca] All the sqlite3GetCollSeq() function to specify an arbitrary text encoding. (check-in: [4ee44322ca] user: drh branch: trunk, size: 119177)
2009-08-19
14:34
[ace6b5d99f] part of check-in [aa728e06ce] Clean up sqlite_stat2 related code. Add test cases. (check-in: [aa728e06ce] user: dan branch: trunk, size: 119172)
2009-08-18
16:24
[979b2aa923] part of check-in [ded9dec645] Change the sqlite_stat2 schema to be more flexible. (check-in: [ded9dec645] user: dan branch: trunk, size: 119392)
2009-08-17
17:06
[09389ab5d5] part of check-in [dd96bda2a8] First version of sqlite_stat2 (schema forces exactly 10 samples). (check-in: [dd96bda2a8] user: dan branch: trunk, size: 119173)
2009-07-24
17:58
[a15de7c5d0] part of check-in [5d9e767a05] Allow virtual tables to be used in shared-cache mode. (CVS 6928) (check-in: [5d9e767a05] user: danielk1977 branch: trunk, size: 119140)
2009-07-01
16:12
[867028ee9f] part of check-in [29b48972b6] Report an error if a USING or ON clause is specified following a from-list element that is not to the right of a join operator. Fix for #3846. (CVS 6832) (check-in: [29b48972b6] user: danielk1977 branch: trunk, size: 119074)
14:56
[1906bb2856] part of check-in [42f9d1e564] Do not ignore alias "a" in a query of the form "SELECT ... FROM (...) AS a" Fix for #3935. Also expand upon (6751) to fix some similar obscure memory leaks. (CVS 6831) (check-in: [42f9d1e564] user: danielk1977 branch: trunk, size: 118953)
2009-06-25
11:50
[813f6bdab5] part of check-in [6e9140a729] 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) (check-in: [6e9140a729] user: drh branch: trunk, size: 118840)
2009-06-23
20:28
[d930b3899a] part of check-in [1330993de8] Enhance autoincrement so that it works with triggers that also do autoincrement inserts, even multiple inserts into the same table. Ticket #3928 (CVS 6807) (check-in: [1330993de8] user: drh branch: trunk, size: 119054)
2009-06-18
17:22
[e98868af6a] part of check-in [ed08b53cd6] Move codec management from database connections into the pager so that it will work together with shared cache. (CVS 6782) (check-in: [ed08b53cd6] user: drh branch: trunk, size: 118866)
2009-06-16
04:35
[75b57e3f4d] part of check-in [d9f997aeb7] Leave out a redundant line in build.c. Ticket #3916. (CVS 6766) (check-in: [d9f997aeb7] user: danielk1977 branch: trunk, size: 119086)
2009-06-11
00:47
[6c7b96103c] part of check-in [43a6ca98b1] Changes to reenable codec operation and to handle memory allocation failures within a codec. (CVS 6746) (check-in: [43a6ca98b1] user: drh branch: trunk, size: 119095)
2009-06-03
11:25
[20e02fd722] part of check-in [6dbf4eca00] 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) (check-in: [6dbf4eca00] user: danielk1977 branch: trunk, size: 118891)
2009-06-01
16:53
[6d5276345e] part of check-in [0791588520] Fix compiler warnings with MSVC build. (CVS 6699) (check-in: [0791588520] user: shane branch: trunk, size: 118836)
2009-05-28
21:04
[dedb5bcbd8] part of check-in [6ae4ad6ebe] Remove references to deleted function sqlite3ExprRegister(). Changes to the expr.c source module to promote better testing. (CVS 6686) (check-in: [6ae4ad6ebe] user: drh branch: trunk, size: 118827)
01:00
[567574f575] part of check-in [4ac2bdfbb4] Additional refinements to Expr handling. Restore compression of trigger expressions. Change Expr.zToken to Expr.u.zToken and added Expr.u.iValue. Remove an unnecessary ExprDup from CHECK constraint processing. And so forth. (CVS 6682) (check-in: [4ac2bdfbb4] user: drh branch: trunk, size: 118765)
2009-05-27
10:31
[028255aa48] part of check-in [7cb1c3ba07] Simplifications to the Expr object: Remove Expr.span completely and convert Expr.token into a char* Expr.zToken. Also simplify the Token object by removing the Token.dyn and Token.quoted fields. (CVS 6681) (check-in: [7cb1c3ba07] user: drh branch: trunk, size: 118971)
2009-05-13
22:58
[2b4cef0dcc] part of check-in [913d111493] Additional simplifications to build.c in support full coverage testing. (CVS 6636) (check-in: [913d111493] user: drh branch: trunk, size: 118858)
17:35
[6cf99a4e32] part of check-in [c684957991] Remove incorrect NEVER() macro in the previous check-in (6634). (CVS 6635) (check-in: [c684957991] user: drh branch: trunk, size: 118637)
17:21
[d9890c52f0] part of check-in [264ace50bb] Changes to build.c to help facilitate full coverage testing. (CVS 6634) (check-in: [264ace50bb] user: drh branch: trunk, size: 118644)
2009-05-12
18:00
[e8e2f7d6cf] part of check-in [8207056036] Remove debugging comments left in the prior check-in by mistake. (CVS 6631) (check-in: [8207056036] user: drh branch: trunk, size: 118438)
17:46
[f796caf373] part of check-in [6fe3750a30] Move the sqlite3MinimumFileFormat() routine from build.c over to alter.c since alter.c is the only code that uses it. Additional changes and cleanup to build.c to facility coverage testing. (CVS 6630) (check-in: [6fe3750a30] user: drh branch: trunk, size: 118591)
00:40
[65caba7586] part of check-in [6572b438a0] Tweaks to build.c to facilitate coverage testing. (CVS 6628) (check-in: [6572b438a0] user: drh branch: trunk, size: 118010)
2009-05-11
20:53
[caece8163a] part of check-in [33cf83591e] 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) (check-in: [33cf83591e] user: drh branch: trunk, size: 117868)
2009-05-06
18:42
[a8320b5fe7] part of check-in [3742843597] Fix three variable initialization problems found by valgrind. (CVS 6612) (check-in: [3742843597] user: drh branch: trunk, size: 119230)
2009-05-04
11:42
[8e83444d31] part of check-in [cac4f3d812] Speed up INSERT operations that add data to UNIQUE or PRIMARY KEY indexes by rationalizing duplicate seek operations. (CVS 6599) (check-in: [cac4f3d812] user: danielk1977 branch: trunk, size: 119215)
2009-05-03
20:23
[894dc1b8fb] part of check-in [a612299092] Changes to facility full coverage testing of util.c. (CVS 6597) (check-in: [a612299092] user: drh branch: trunk, size: 118690)
2009-05-02
13:29
[9f00cc9cc0] part of check-in [80c43a355c] Remove the aFKey hash table, which was not being used. Simplify the FKey object. Simplify the hash.c module since the copyKey parameter formerly used only by aFKey is now no longer required. (CVS 6594) (check-in: [80c43a355c] user: drh branch: trunk, size: 118698)
2009-05-01
21:13
[a079f965fe] part of check-in [12bcb03d9b] Record within the Token structure itself whether or not the token has been dequoted. This steals one bit from the length of a token and thus limits the size of tokens to 1GiB. (CVS 6589) (check-in: [12bcb03d9b] user: drh branch: trunk, size: 120068)
2009-04-28
13:01
[dca0ad77c8] part of check-in [23d67af392] Do not store the zero string terminator as part of the name when holding symbols in the symbol table. (CVS 6557) (check-in: [23d67af392] user: drh branch: trunk, size: 119957)
2009-04-24
18:06
[2a50f5e65a] part of check-in [600482d161] Dequote the "from" table in a FOREIGN KEY definition (affects the output of "pragma foreign_key_list). Fix for #3800. (CVS 6547) (check-in: [600482d161] user: danielk1977 branch: trunk, size: 119991)
2009-04-23
13:22
[d4c6d22636] part of check-in [dd4d67a674] Rework the column-cache mechanism to be more robust (and more correct). The column-alias cache is currently disabled, (CVS 6538) (check-in: [dd4d67a674] user: drh branch: trunk, size: 119962)
2009-04-20
17:43
[18c5e51c2c] part of check-in [419e320ae5] 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) (check-in: [419e320ae5] user: drh branch: trunk, size: 119966)
2009-04-08
13:51
[2882f22078] part of check-in [44ded2ea67] Minor refactoring of the expression-compaction logic for clarity of presentation. New comments added. The EXPRDUP_DISTINCTSPAN flag is removed as obsolete. (CVS 6470) (check-in: [44ded2ea67] user: drh branch: trunk, size: 119922)
2009-03-31
03:41
[72357fd75e] part of check-in [768514179a] Fix compiler warnings from gcc and MSVC; Correct typo in select.c; (CVS 6417) (check-in: [768514179a] user: shane branch: trunk, size: 119950)
2009-03-24
15:08
[be2bdaf2a3] part of check-in [ea74d8dc62] Changes to insure that lookaside memory allocations are never used to hold schema content. Ticket #3743. (CVS 6377) (check-in: [ea74d8dc62] user: drh branch: trunk, size: 119949)
2009-03-21
16:19
[f217f9ce25] part of check-in [a915e8e0a4] Update comments in build.c to conform to the latest implementation. (CVS 6369) (check-in: [a915e8e0a4] user: drh branch: trunk, size: 119780)
2009-03-18
18:43
[c816377c11] part of check-in [097737e368] Fix a crash that could occur when creating an index in shared-cache mode with lookaside enabled. (CVS 6358) (check-in: [097737e368] user: danielk1977 branch: trunk, size: 120071)
2009-03-17
17:49
[5f050f06ee] part of check-in [afadddc34e] Fix a problem that could cause a crash when a shared-cache schema contains column default values. (CVS 6353) (check-in: [afadddc34e] user: danielk1977 branch: trunk, size: 120028)
2009-03-14
08:37
[7e5e93011b] part of check-in [7c6437efe0] Fix for #3719. When synthesizing a CREATE TABLE statement as as result of a "CREATE TABLE AS", quote the column type names unless they are simple identifiers or simple identifiers followed by one or two dimensions (e.g. "VARCHAR(10)"). (CVS 6345) (check-in: [7c6437efe0] user: danielk1977 branch: trunk, size: 120002)
2009-02-28
10:47
[741240c8d6] part of check-in [3befe1ef7e] Instead of linking temporary triggers on non-temporary tables into the Table.pTrigger list, search the temp schema for them on demand. Fix for #3688. (CVS 6329) (check-in: [3befe1ef7e] user: danielk1977 branch: trunk, size: 117367)
2009-02-20
10:58
[a1db48aec6] part of check-in [e43ed64963] Instead of using SetNumColumns, specify the number of columns in a table or index using the P4 argument. (CVS 6310) (check-in: [e43ed64963] user: danielk1977 branch: trunk, size: 117349)
2009-02-19
14:39
[0860029ca6] part of check-in [d9f6ffbc5e] 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) (check-in: [d9f6ffbc5e] user: danielk1977 branch: trunk, size: 117357)
2009-02-13
03:43
[a394b2511c] part of check-in [dd179ff298] Correctly handle attempts to add a UNIQUE or PRIMARY KEY column using the ALTER TABLE statement. Ticket #3651. (CVS 6291) (check-in: [dd179ff298] user: drh branch: trunk, size: 117626)
2009-02-10
10:44
[909c43d7f2] part of check-in [f76b0b8129] Do not always open a transaction on the temp database when writing to the main or another attached database. (CVS 6273) (check-in: [f76b0b8129] user: danielk1977 branch: trunk, size: 117580)
2009-02-03
22:17
[6f3d5f74e2] part of check-in [76f23a4394] A backup must clear the internal schema of the destination database so that the schema will be reloaded for the next sqlite3_prepare() (CVS 6247) (check-in: [76f23a4394] user: drh branch: trunk, size: 117992)
16:51
[ed7a59fa45] part of check-in [663479b417] Commit first version of the 'backup' feature. (CVS 6241) (check-in: [663479b417] user: danielk1977 branch: trunk, size: 118000)
15:50
[1d755e4920] part of check-in [85e9196d79] Remove several compiler warnings. (CVS 6239) (check-in: [85e9196d79] user: drh branch: trunk, size: 117652)
2009-02-02
18:03
[691354249a] part of check-in [3b0a25548c] Omit the TEMP keyword from the schema of TEMP tables created using CREATE TEMP TABLE AS SELECT ..... Ticket #3630. (CVS 6232) (check-in: [3b0a25548c] user: drh branch: trunk, size: 117696)
2009-01-20
16:53
[c8bf5dcef4] part of check-in [1041abd678] 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) (check-in: [1041abd678] user: danielk1977 branch: trunk, size: 117766)
2008-12-30
06:24
[6eb9d20e99] part of check-in [e49807b16f] Invoke the authorization callback when compiling SAVEPOINT, ROLLBACK TO and RELEASE commands. (CVS 6074) (check-in: [e49807b16f] user: danielk1977 branch: trunk, size: 117764)
2008-12-23
11:11
[92335a6c6a] part of check-in [0c53a4c2da] In sqlite3AddColumn(), use local variable 'db' instead of 'pParse->db'. (CVS 6056) (check-in: [0c53a4c2da] user: danielk1977 branch: trunk, size: 117533)
2008-12-17
17:30
[f3e8377cbc] part of check-in [34b56600ec] Add the savepoint feature. This feature is largely untested at this point. (CVS 6036) (check-in: [34b56600ec] user: danielk1977 branch: trunk, size: 117549)
2008-12-10
22:30
[ae4359475f] part of check-in [715dcd52c1] Work to remove harmless MSVC compiler warnings. (CVS 6013) (check-in: [715dcd52c1] user: shane branch: trunk, size: 117077)
21:19
[205538f36c] part of check-in [ea01d43788] Additional work at eliminating silly compiler warnings. (CVS 6010) (check-in: [ea01d43788] user: drh branch: trunk, size: 117075)
19:26
[64e9eb409a] part of check-in [c872d55493] 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) (check-in: [c872d55493] user: drh branch: trunk, size: 116906)
17:20
[01919ad8f5] part of check-in [e7e9fa4fa1] Remove or rename local variables that shadow other variables or parameters. (CVS 6005) (check-in: [e7e9fa4fa1] user: drh branch: trunk, size: 116619)
2008-12-05
15:24
[ce642b0601] part of check-in [46f2d08959] Make use of sqlite3DbMallocSize to maximize the size of growable buffers after each reallocation. Added new comments and testcase() macros to where.c. (CVS 5981) (check-in: [46f2d08959] user: drh branch: trunk, size: 116659)
2008-11-17
19:18
[a89e901ea2] part of check-in [8009220c36] Modifications to avoid unsigned/signed comparisons in various files. (CVS 5914) (check-in: [8009220c36] user: danielk1977 branch: trunk, size: 116544)
2008-11-13
18:29
[7723123a57] part of check-in [9b7a52e952] Fixed several more crashes due to corrupt db files. Added corruptC.test to soak.test. (CVS 5905) (check-in: [9b7a52e952] user: shane branch: trunk, size: 116531)
2008-11-11
18:28
[98a6884d47] part of check-in [ea5f4baa04] Cleanup in flattenSubquery. Add OOM tests for flattenSubquery. Fix issues with OOM errors causes problems for flattenSubquery. Ticket #3485. (CVS 5882) (check-in: [ea5f4baa04] user: drh branch: trunk, size: 116437)
2008-11-03
20:55
[41464eb891] part of check-in [fdb98fd8c1] Change the name of the Cursor object to VdbeCursor. (CVS 5857) (check-in: [fdb98fd8c1] user: drh branch: trunk, size: 114422)
2008-10-22
10:45
[d6d55f97ab] part of check-in [e0d3aa75b4] Fix an assert() failure that can occur following a malloc() failure. Ticket #3455. (CVS 5834) (check-in: [e0d3aa75b4] user: danielk1977 branch: trunk, size: 114413)
2008-10-06
16:18
[8714bd8095] part of check-in [83a7e446b2] Allow INDEXED BY and NOT INDEXED to be used in UPDATE and DELETE statements. (CVS 5772) (check-in: [83a7e446b2] user: danielk1977 branch: trunk, size: 114393)
05:32
[5097bb7978] part of check-in [98ca5580f5] Allow INDEXED BY and NOT INDEXED clauses in SELECT statements. (CVS 5766) (check-in: [98ca5580f5] user: danielk1977 branch: trunk, size: 114088)
2008-08-20
16:35
[160c71acca] part of check-in [daf730d1de] Refactor the name resolution procedures in the code generator. (CVS 5569) (check-in: [daf730d1de] user: drh branch: trunk, size: 113739)
2008-08-11
18:44
[931ed94fd3] part of check-in [0e1d8d14a1] 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) (check-in: [0e1d8d14a1] user: drh branch: trunk, size: 113553)
2008-08-06
13:47
[00aa62a843] part of check-in [ce8cbeea51] Fix compilation with SQLITE_OMIT_FOREIGN_KEY defined. Ticket #3273. (CVS 5544) (check-in: [ce8cbeea51] user: danielk1977 branch: trunk, size: 113538)
2008-08-04
04:39
[f774f01e10] part of check-in [34208f0ba4] Add an assert() statement that will alert us if the potential problem identified by #3243 ever becomes a reality. (CVS 5532) (check-in: [34208f0ba4] user: danielk1977 branch: trunk, size: 113544)
2008-08-02
03:50
[05be60b1ed] part of check-in [f1e44eb323] Additional coverage testing. Fix a segfault following OOM in sqltie3_load_extension(). (CVS 5523) (check-in: [f1e44eb323] user: drh branch: trunk, size: 113505)
2008-07-28
19:34
[77d5518a64] part of check-in [e48f9697e9] 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) (check-in: [e48f9697e9] user: drh branch: trunk, size: 113635)
2008-07-08
23:40
[bac7233d98] part of check-in [cbd3c1585b] Remove obsolete code from select.c, including the "affinity" parameter to the sqlite3Select() module. (CVS 5380) (check-in: [cbd3c1585b] user: drh branch: trunk, size: 113121)
22:28
[c5985afa7f] part of check-in [6cdb6841ff] Added macros to convert between 32-bit ints and 64-bit ptrs to avoid compiler warnings. (CVS 5378) (check-in: [6cdb6841ff] user: shane branch: trunk, size: 113126)
19:34
[f6a74df6d8] part of check-in [8ed04b1e26] Completely rework the sqlite3SetString() primitive so that it honors the SQLITE_LIMIT_LENGTH and avoids the use of strlen(). (CVS 5374) (check-in: [8ed04b1e26] user: drh branch: trunk, size: 113112)
14:52
[142ceacdc1] part of check-in [ee93150878] Improved enforcement of the SQLITE_LIMIT_LENGTH limit. (CVS 5368) (check-in: [ee93150878] user: drh branch: trunk, size: 113229)
00:06
[8779e9276b] part of check-in [fe80aa58a4] Testing coverage enhancements. (CVS 5358) (check-in: [fe80aa58a4] user: drh branch: trunk, size: 113133)
2008-06-15
02:51
[88cc5501a8] part of check-in [65fe7b62cf] 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) (check-in: [65fe7b62cf] user: drh branch: trunk, size: 113080)
2008-05-01
17:16
[a52d9d5134] part of check-in [59568844e7] Fix more compiler warnings. (CVS 5074) (check-in: [59568844e7] user: drh branch: trunk, size: 113081)
2008-04-28
18:46
[2cde01caed] part of check-in [133b7ee50e] Make sure that transactions are started on all virtual tables that changes in a single statement, not just the first. Ticket #3083. Need to add test cases. (CVS 5063) (check-in: [133b7ee50e] user: drh branch: trunk, size: 113043)
2008-04-27
18:40
[8fd7fabaca] part of check-in [6a94d19747] Remove all references to sqlite3_intptr_t. (CVS 5051) (check-in: [6a94d19747] user: drh branch: trunk, size: 113002)
2008-04-17
20:59
[f56940d7b7] part of check-in [4a72a7bb9c] Continuing progress on the journal_mode pragma. It still does not work. (CVS 5027) (check-in: [4a72a7bb9c] user: drh branch: trunk, size: 113020)
2008-04-11
17:11
[e6f17bbb03] part of check-in [349aab42c7] Remove entries from the sqlite_stat1 table whenever an index is dropped. Related to #3033. (CVS 4989) (check-in: [349aab42c7] user: danielk1977 branch: trunk, size: 112915)
2008-04-02
16:29
[5d36a60412] part of check-in [66c5d715bb] Simplifications to the LockTable opcode. (CVS 4954) (check-in: [66c5d715bb] user: drh branch: trunk, size: 112431)
2008-04-01
03:27
[fb04227945] part of check-in [7e8156129d] More test cases and bug fixes with CSE. (CVS 4948) (check-in: [7e8156129d] user: drh branch: trunk, size: 112450)
2008-03-25
17:23
[4e6321d112] part of check-in [ee381b4356] Modify the {quote: IdxDelete} opcode so that it takes an array of registers rather than a record formed using {quote: MakeRecord.} This avoids a needless packing and unpacking of the record to be deleted. (CVS 4916) (check-in: [ee381b4356] user: drh branch: trunk, size: 112371)
09:47
[d0715b3454] part of check-in [0471536481] Use a vdbe memory cell to allocate the space required for vdbe cursors. (CVS 4912) (check-in: [0471536481] user: danielk1977 branch: trunk, size: 112376)
2008-03-20
14:03
[31ed5af4e8] part of check-in [60c77882b2] 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) (check-in: [60c77882b2] user: drh branch: trunk, size: 112369)
2008-03-06
09:58
[fa70bc0fb0] part of check-in [e2a9f5f105] Handle non-autoconf build correctly with new changes (CVS 4832) (check-in: [e2a9f5f105] user: mlcreech branch: trunk, size: 112303)
07:35
[19990e2ce7] part of check-in [54839a84e6] Use intptr_t definition to silence warnings about ptr-int casts (CVS 4824) (check-in: [54839a84e6] user: mlcreech branch: trunk, size: 112295)
2008-01-31
13:35
[7d93ee565b] part of check-in [72411043e6] Version number to 3.5.5. Include FTS3 in the amalgamation by default (but disabled unless compiled with -DSQLITE_ENABLE_FTS3). Fix a memory allocation problem. (CVS 4757) (check-in: [72411043e6] user: drh branch: trunk, size: 112280)
2008-01-25
15:04
[3302f9a852] part of check-in [50815a82e0] Error messages says "no such view" instead of "no such table" when trying to DROP a VIEW that does not exist. (CVS 4750) (check-in: [50815a82e0] user: drh branch: trunk, size: 112228)
2008-01-22
14:50
[a073dde217] part of check-in [83ca4fc7dc] Remove dead code from the lemon-generated parser. Better testing of the sqlite3_file_control() interface, and in particular make sure the interface works on :memory: databases. (CVS 4738) (check-in: [83ca4fc7dc] user: drh branch: trunk, size: 111904)
01:48
[b228a333d7] part of check-in [2a0bc1e186] 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) (check-in: [2a0bc1e186] user: drh branch: trunk, size: 111904)
2008-01-21
16:22
[deb031f71a] part of check-in [720bc20a11] Miscellaneous test coverage improvements. (CVS 4734) (check-in: [720bc20a11] user: drh branch: trunk, size: 111875)
2008-01-17
16:22
[27a3be10a7] part of check-in [706b41b70b] Registerification of the VDBE is complete. The operand stack has been removed from the code. All instructions operate out of registers only. (CVS 4718) (check-in: [706b41b70b] user: drh branch: trunk, size: 112094)
02:36
[ea291f0914] part of check-in [b3a141b2b0] Registerification of the WHERE clause logic. (CVS 4716) (check-in: [b3a141b2b0] user: drh branch: trunk, size: 111962)
2008-01-12
21:35
[c0f9dba702] part of check-in [110c000d86] The sqlite3_trace() callback now prints a message as each trigger fires within a statement. (CVS 4709) (check-in: [110c000d86] user: drh branch: trunk, size: 111858)
12:48
[353cce0f4e] part of check-in [a6dddebcc5] Continuing work toward converting the VM into a register machine. (CVS 4707) (check-in: [a6dddebcc5] user: drh branch: trunk, size: 111840)
2008-01-10
23:50
[e5bb1ddf63] part of check-in [8cbd46517f] More work toward converting the VM into a register-based machine. (CVS 4704) (check-in: [8cbd46517f] user: drh branch: trunk, size: 111657)
2008-01-09
23:04
[785139de34] part of check-in [e3cf1c1c11] All essential opcodes can now operate out of registers and completely avoid the stack. Many still optionally use the stack to support legacy code generation, but the stack is not required. The next step is to update all code generation to avoid using the stack. (CVS 4700) (check-in: [e3cf1c1c11] user: drh branch: trunk, size: 111387)
2008-01-06
00:25
[22b50a462d] part of check-in [8201f71729] Registerify the SRT_Subroutine destination for SELECT results. (CVS 4690) (check-in: [8201f71729] user: drh branch: trunk, size: 111276)
2008-01-05
18:48
[26690c519a] part of check-in [6bb1b1bc18] Modify OP_RegMakeRec to take a base register and count and optionally store results in the register specified by P3. (CVS 4689) (check-in: [6bb1b1bc18] user: drh branch: trunk, size: 111245)
05:20
[60a3ec74b4] part of check-in [3e8a07dd3c] Register-ify the OP_AddImm and all casting opcodes. Omit the OP_MemIncr opcode. (CVS 4683) (check-in: [3e8a07dd3c] user: drh branch: trunk, size: 111245)
04:06
[739eeee868] part of check-in [cc149eb9ca] Get rid of OP_Dup, OP_MemStore, OP_MemLoad, and OP_MemMove. Replace with OP_Copy, OP_SCopy, and OP_Move. Add the infrastructure for operation properties in1, in2, in3, out2, and out3 but do not yet use any of these. (CVS 4682) (check-in: [cc149eb9ca] user: drh branch: trunk, size: 111242)
2008-01-04
22:01
[eac0f7e670] part of check-in [fe057a88d0] Implement the out2-prerelease opcode design pattern. (CVS 4681) (check-in: [fe057a88d0] user: drh branch: trunk, size: 111249)
2008-01-03
18:03
[b7874b4571] part of check-in [0b849805c3] Registers (aka memory cells) in the VM are now numbered starting with 1 instead of 0. A register number of 0 means "no such register". (CVS 4669) (check-in: [0b849805c3] user: drh branch: trunk, size: 111243)
09:51
[11cd1e6a64] part of check-in [46501f490a] Change the OP_Insert opcode to read the key and data to insert from memory cells, not the stack. (CVS 4666) (check-in: [46501f490a] user: danielk1977 branch: trunk, size: 111251)
07:54
[a34fc6b288] part of check-in [35da261daf] Change OP_OpenRead and OP_OpenWrite so that the database number is read from the P3 operand, not the stack. (CVS 4663) (check-in: [35da261daf] user: danielk1977 branch: trunk, size: 111257)
00:01
[043c36a387] part of check-in [027875e4d4] 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) (check-in: [027875e4d4] user: drh branch: trunk, size: 111364)
2008-01-02
16:27
[640c2a2a22] part of check-in [86dcdfe6d7] Combine the eDest and iParm arguments to sqlite3Select() into a single type - "SelectDest". (CVS 4657) (check-in: [86dcdfe6d7] user: danielk1977 branch: trunk, size: 111325)
2007-12-27
15:12
[cbfd98ceb9] part of check-in [b37babef91] Fix a race condition that can occur when reloading the database schema in shared-cache mode. (CVS 4643) (check-in: [b37babef91] user: danielk1977 branch: trunk, size: 111289)
2007-12-04
16:54
[580561a0d9] part of check-in [bf34284ff0] Make sure statement journals are initiated when doing DROP operations (since the DROP might fail after sqlite_master changes). Also make sure statement journals are initiated if there are pending SELECT statements. Ticket #2820. (CVS 4591) (check-in: [bf34284ff0] user: drh branch: trunk, size: 111133)
2007-12-02
11:46
[04e0783a10] part of check-in [e6f02aa5ae] When parsing CREATE INDEX statements from the sqlite_master table, do not search the temp database schema for the corresponding table. Only consider the database for which the schema is being parsed. Ticket #2817. (CVS 4587) (check-in: [e6f02aa5ae] user: danielk1977 branch: trunk, size: 111093)
2007-11-12
09:50
[b58dd7c7a7] part of check-in [06749ac7af] Allow collation sequence names to be quoted. Ticket #2744. (CVS 4537) (check-in: [06749ac7af] user: danielk1977 branch: trunk, size: 110996)
2007-10-15
07:08
[d4ace66c26] part of check-in [260711a14d] Fix for OMIT_AUTHORIZATION builds. (CVS 4489) (check-in: [260711a14d] user: danielk1977 branch: trunk, size: 110846)
2007-10-12
20:42
[a400945db0] part of check-in [e756bc9b74] 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) (check-in: [e756bc9b74] user: drh branch: trunk, size: 110734)
2007-10-04
18:11
[fec792576c] part of check-in [755fcaf7e3] Fixes for OMIT_AUTHORIZATION builds. #2691. (CVS 4466) (check-in: [755fcaf7e3] user: danielk1977 branch: trunk, size: 110602)
2007-09-03
15:19
[94d0d6dfd1] part of check-in [020a2b10d4] Honor the SQLITE_OPEN_ flags passed into sqlite3_open_v2(). Some test cases added but more are needed. Ticket #2616. (CVS 4376) (check-in: [020a2b10d4] user: drh branch: trunk, size: 110488)
2007-08-30
01:19
[f8eeec5c71] part of check-in [e40d40a5d4] Fix for the sqlite3AbortOtherActiveVdbes() problem. (CVS 4328) (check-in: [e40d40a5d4] user: drh branch: trunk, size: 110274)
2007-08-29
14:06
[830d1a6b2d] part of check-in [c790c234c3] Use the DbMalloc() and DbRealloc() functions more consistently. (CVS 4323) (check-in: [c790c234c3] user: danielk1977 branch: trunk, size: 110198)
12:31
[915c4591ca] part of check-in [e38ef81b85] Modifications to the malloc failure tests to test transient and persistent failures. (CVS 4321) (check-in: [e38ef81b85] user: danielk1977 branch: trunk, size: 110266)
2007-08-28
22:24
[99b0b0c44c] part of check-in [967ab229af] Clean up the locking in the btree logic. (CVS 4316) (check-in: [967ab229af] user: drh branch: trunk, size: 110087)
02:27
[08001e8a12] part of check-in [b8cc493b47] Work toward correct btree locking in a multithreaded environment. (CVS 4307) (check-in: [b8cc493b47] user: drh branch: trunk, size: 110086)
2007-08-22
20:18
[bc7406e2ea] part of check-in [db818430e9] The malloc.test script now passes all tests with no errors. (CVS 4271) (check-in: [db818430e9] user: drh branch: trunk, size: 110031)
2007-08-21
19:33
[2159551184] part of check-in [9287276191] 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) (check-in: [9287276191] user: drh branch: trunk, size: 109960)
2007-08-17
01:14
[add67be992] part of check-in [4c1e9ffebe] Begin adding mutexes. Compiles without SQLITE_OMIT_SHARED_CACHE but we get an assertion fault on the shared cache testing. (CVS 4239) (check-in: [4c1e9ffebe] user: drh branch: trunk, size: 109933)
2007-08-16
10:09
[923d6643c8] part of check-in [77b1671351] More work on refactoring of malloc() interfaces. There are still many errors. (CVS 4233) (check-in: [77b1671351] user: danielk1977 branch: trunk, size: 110071)
04:30
[a25bf9d256] part of check-in [deb7ecd65f] 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) (check-in: [deb7ecd65f] user: drh branch: trunk, size: 110050)
2007-07-02
19:31
[59fd5782a7] part of check-in [25e6df9cdd] Fix a comment typo reported on the mailing list. (CVS 4152) (check-in: [25e6df9cdd] user: drh branch: trunk, size: 108998)
2007-05-15
14:34
[50992d92e1] part of check-in [262a3e6339] Relax the restriction on using bytes 0x80 through 0xbf as the first character of an identifier. Enhancements to ALTER TABLE tests for tables with strange names or stange column names. (CVS 4008) (check-in: [262a3e6339] user: drh branch: trunk, size: 109008)
03:56
[a27a21a23f] part of check-in [9ff382f458] Fix problems in ALTER TABLE that occur when column or table names are invalid UTF encodings. (CVS 4000) (check-in: [9ff382f458] user: drh branch: trunk, size: 109092)
2007-05-12
15:00
[8e744caf66] part of check-in [dbe417745d] Make REINDEX robust in the face of malloc() errors. (CVS 3990) (check-in: [dbe417745d] user: drh branch: trunk, size: 109008)
2007-05-08
20:59
[5789303291] part of check-in [5a0fe98548] Disable tracing pragmas when not in debug mode. This eliminates an external dependency on stdout. (CVS 3959) (check-in: [5a0fe98548] user: drh branch: trunk, size: 108987)
20:37
[83ae5b1f80] part of check-in [e9f56ead05] Fix the amalgamation generator so that all non-API functions have file scope. (CVS 3958) (check-in: [e9f56ead05] user: drh branch: trunk, size: 108960)
13:58
[5a60e2e4a2] part of check-in [c59d436095] Add more code to enforce the limits specified in limits.h. (CVS 3946) (check-in: [c59d436095] user: drh branch: trunk, size: 108960)
01:08
[94022eb081] part of check-in [93b623b232] 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) (check-in: [93b623b232] user: drh branch: trunk, size: 108842)
2007-05-04
18:30
[0dd6f0d0a5] part of check-in [b13e497a32] Change incremental vacuum to be triggered by a pragma rather than a command. We have a lot to learn about this yet and we do not want to paint ourselves into a corner by commiting to specific syntax too early. (CVS 3921) (check-in: [b13e497a32] user: drh branch: trunk, size: 108786)
16:14
[470c3d39ab] part of check-in [ed713f9ccb] Optional parameter in the INCREMENTAL VACUUM statement specifies how many pages to vacuum from the database. (CVS 3919) (check-in: [ed713f9ccb] user: drh branch: trunk, size: 109488)
13:15
[05ef6d80d9] part of check-in [ba4845b32b] Eliminate all uses of sprintf() and strcpy(). These were not being misused. But getting rid of them removes a library dependency. And it avoids warnings from the OpenBSD compiler. Ticket #2336. (CVS 3916) (check-in: [ba4845b32b] user: drh branch: trunk, size: 109271)
2007-04-26
14:42
[02e01ec790] part of check-in [f6a6d2b887] Add largely untested code for the incremental vacuum function. (CVS 3876) (check-in: [f6a6d2b887] user: danielk1977 branch: trunk, size: 109102)
2007-04-18
14:47
[1880da163d] part of check-in [24683f1d29] Fix an assertion failure caused by (3851). (CVS 3852) (check-in: [24683f1d29] user: danielk1977 branch: trunk, size: 108617)
2007-04-16
15:06
[8ad4f8944d] part of check-in [8d6c3bfc4d] Ensure sqlite3_finalize() can be called from within the xDisconnect() method of virtual tables. (CVS 3845) (check-in: [8d6c3bfc4d] user: danielk1977 branch: trunk, size: 108592)
2007-04-05
11:25
[7c2efa468f] part of check-in [38af156da8] Improvements to coverage testing. (CVS 3810) (check-in: [38af156da8] user: drh branch: trunk, size: 108832)
2007-03-29
05:51
[ad3374b540] part of check-in [ad4a6b1a91] Change BtreeMoveto so that it can be biased to the right or to the center. Use a right bias when appending and a center bias when searching. This gives about a 15% reduction in calls to sqlite3VdbeRecordCompare. (CVS 3741) (check-in: [ad4a6b1a91] user: drh branch: trunk, size: 109164)
2007-03-27
13:36
[d178bd7c81] part of check-in [c8a8a189a8] More strict aliasing fixes. The single source file library now runs successfully with -fstrict-alias. (CVS 3725) (check-in: [c8a8a189a8] user: drh branch: trunk, size: 109152)
2007-03-26
22:05
[fe2fcebc92] part of check-in [0b832e218e] Modify sources to that they can be combined into a single sqlite3.c source file. Eliminate all type-pruned pointer warnings. (CVS 3722) (check-in: [0b832e218e] user: drh branch: trunk, size: 108871)
2007-03-17
10:26
[f2edc786b5] part of check-in [c4be8d9949] Modifications to crash-test infrastructure. (CVS 3695) (check-in: [c4be8d9949] user: danielk1977 branch: trunk, size: 108886)
2007-03-13
16:32
[f6b2616b60] part of check-in [48b2a40008] Do not crash when a corrupt database contains two indices with the same name. (CVS 3684) (check-in: [48b2a40008] user: danielk1977 branch: trunk, size: 108898)
2007-02-02
12:44
[6bd68dc730] part of check-in [9740aa95a3] Minor tweaks to collating sequences. We'll hold of making major changes until 3.4.0, since we'll likely end up with some minor technical imcompatibilities. (CVS 3626) (check-in: [9740aa95a3] user: drh branch: trunk, size: 108890)
2006-12-16
16:25
[02aedde724] part of check-in [7393c81b8c] Query optimizer enhancement: In "FROM a,b,c left join d" allow the C table to be reordered with A and B. This used to be the case but the capability was removed by (3203) and (3052) in response to ticket #1652. This change restores the capability. (CVS 3529) (check-in: [7393c81b8c] user: drh branch: trunk, size: 108338)
2006-09-11
23:45
[7199949a6a] part of check-in [e4fe736cfb] Add support for IF EXISTS on CREATE/DROP TRIGGER/VIEW. Ticket #1899. (CVS 3406) (check-in: [e4fe736cfb] user: drh branch: trunk, size: 106014)
2006-08-14
14:23
[4359b34a36] part of check-in [b4d53974c3] Change the table_info pragma to show the text of the default value expression, not the result of evaluating the default value expression. Ticket #1919. (CVS 3353) (check-in: [b4d53974c3] user: drh branch: trunk, size: 105936)
2006-07-26
16:22
[2ea8ad0e2e] part of check-in [e705d23232] Disallow writing to, creating or dropping virtual tables from within xSync() callbacks. (CVS 3339) (check-in: [e705d23232] user: danielk1977 branch: trunk, size: 105836)
2006-07-11
14:17
[b5eb033a66] part of check-in [65b60f05ce] By default, new databases are now created in the legacy file format - the format that ignores DESC on indices. If you want descending indices, you must either recompile with -DSQLITE_DEFAULT_FILE_FORMAT=4 or issue "PRAGMA legacy_file_format=OFF" prior to creating the first table in the database. (CVS 3330) (check-in: [65b60f05ce] user: drh branch: trunk, size: 105533)
2006-06-21
12:36
[ef710ff6b3] part of check-in [6c3e8852ff] Add tests to make sure altering or adding an index to a virtual table is prohibited. (CVS 3280) (check-in: [6c3e8852ff] user: danielk1977 branch: trunk, size: 105545)
07:34
[467944d9b0] part of check-in [bcef48c54d] Test cases for accessing virtual tables when the corresponding module is undefined. (CVS 3279) (check-in: [bcef48c54d] user: danielk1977 branch: trunk, size: 105382)
2006-06-20
11:01
[ef7debea37] part of check-in [c6ea353bd9] Modifications so that compilation and testing with the various OMIT macros defined works. (CVS 3276) (check-in: [c6ea353bd9] user: danielk1977 branch: trunk, size: 105291)
2006-06-19
05:33
[0152e858f9] part of check-in [d9b205acac] Respect default collation sequences assigned to virtual table columns. (CVS 3272) (check-in: [d9b205acac] user: danielk1977 branch: trunk, size: 105231)
2006-06-16
16:08
[3eb63f6124] part of check-in [6125140228] Add code to invoke the virtual table transaction interface. Untested at this point. (CVS 3261) (check-in: [6125140228] user: danielk1977 branch: trunk, size: 105250)
08:01
[28208a9049] part of check-in [9497c66e55] Add some tests (and fixes) for virtual tables and the authorization callback. Still more to come. (CVS 3260) (check-in: [9497c66e55] user: danielk1977 branch: trunk, size: 105051)
2006-06-15
07:29
[a295396a6a] part of check-in [88fa510e4c] Simple tests and fixes for writing to virtual tables. (CVS 3252) (check-in: [88fa510e4c] user: danielk1977 branch: trunk, size: 104771)
2006-06-14
19:00
[076619b2a5] part of check-in [32c97b884b] Added code to INSERT, DELETE and UPDATE virtual tables. The new code is mostly untested. (CVS 3248) (check-in: [32c97b884b] user: drh branch: trunk, size: 104686)
2006-06-12
16:01
[133a046cef] part of check-in [f0c7c8d12c] Add code to invoke the xDestroy method of a virtual table when it is dropped. (CVS 3218) (check-in: [f0c7c8d12c] user: danielk1977 branch: trunk, size: 104734)
12:08
[0781f85451] part of check-in [b63dbc7947] Add a simple test case (and corresponding bugfix) for the virtual table xConnect and xDisconnect methods. (CVS 3214) (check-in: [b63dbc7947] user: danielk1977 branch: trunk, size: 104750)
11:24
[a72a709541] part of check-in [bbeb93b5bb] Add first cut of sqlite3_declare_vtab(). Not at all well tested yet. (CVS 3213) (check-in: [bbeb93b5bb] user: danielk1977 branch: trunk, size: 104525)
2006-06-11
23:41
[f541d3e9af] part of check-in [898ec36b41] Progress toward CREATE VIRTUAL TABLE. Still not even close to working... (CVS 3211) (check-in: [898ec36b41] user: drh branch: trunk, size: 104161)
2006-06-10
13:29
[a64e4765ca] part of check-in [66370cb99b] Basic parsing of CREATE VIRTUAL TABLE statements. (CVS 3210) (check-in: [66370cb99b] user: drh branch: trunk, size: 104229)
2006-05-11
23:14
[eefefdc88c] part of check-in [249b579f83] Adjust the default weights on indices so that an index that matches more terms of the where clause wins (by default) over one that matches fewer. Ticket #1808. (CVS 3186) (check-in: [249b579f83] user: drh branch: trunk, size: 104052)
2006-03-24
03:36
[be0629119d] part of check-in [1c582dd113] Make sure the rootpage values in the symbol table are correctly updated when dropping tables and indices in autocommit mode. Ticket #1728. (CVS 3150) (check-in: [1c582dd113] user: drh branch: trunk, size: 104004)
2006-03-23
23:33
[b8437e81e1] part of check-in [986208a364] Improvements to comments in build.c. (CVS 3149) (check-in: [986208a364] user: drh branch: trunk, size: 103390)
2006-03-13
12:54
[4bd8471e4f] part of check-in [a69f697d50] Additional changes due to Coverity scans. (CVS 3130) (check-in: [a69f697d50] user: drh branch: trunk, size: 102929)
2006-03-06
20:55
[98b458e309] part of check-in [e510e6dd9d] 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) (check-in: [e510e6dd9d] user: drh branch: trunk, size: 102917)
2006-02-24
02:53
[eaf2d4d894] part of check-in [4b22e4b847] Remove unused parameters on internal APIs. Suppress warnings from CodeWarrior. (CVS 3110) (check-in: [4b22e4b847] user: drh branch: trunk, size: 102922)
2006-02-18
16:36
[f96e57e6a0] part of check-in [f8173e6aea] Always generate code, even if it is a no-op, for CREATE and DROP statements that use the IF EXISTS or IF NOT EXISTS clause. (CVS 3106) (check-in: [f8173e6aea] user: drh branch: trunk, size: 103059)
2006-02-17
12:25
[e0cecb858a] part of check-in [1e4644b236] Ensure temp db is open before executing a pragma like "temp.cachesize = xxx". Fix for #1682. (CVS 3104) (check-in: [1e4644b236] user: danielk1977 branch: trunk, size: 103039)
2006-02-10
18:08
[b46cd7d0e2] part of check-in [d20a33ac2a] Make sure pointers are always aligned to 8-bytes when creating internal Index structures. (CVS 3079) (check-in: [d20a33ac2a] user: drh branch: trunk, size: 103038)
07:07
[11798f165c] part of check-in [5e8611e13d] Fix the origin APIs so that they correctly handle views and subqueries that cannot be flattened. (CVS 3072) (check-in: [5e8611e13d] user: danielk1977 branch: trunk, size: 103047)
2006-02-05
18:55
[d959aa9c2a] part of check-in [f5341529d0] Detect circularly defined views and issue an error message. Ticket #1658. (CVS 3055) (check-in: [f5341529d0] user: drh branch: trunk, size: 103013)
2006-01-24
12:09
[feaa61e769] part of check-in [d86f18a427] Rename some variables to avoid hiding others. Also add "static" to two function signatures that were missing it. (CVS 3024) (check-in: [d86f18a427] user: danielk1977 branch: trunk, size: 103034)
2006-01-18
16:51
[15224e2fd3] part of check-in [ac090f2ab3] Use a global variable protected by a mutex instead of thread-specific-data to record malloc() failures. (CVS 2972) (check-in: [ac090f2ab3] user: danielk1977 branch: trunk, size: 103018)
2006-01-16
15:14
[539b5c6e21] part of check-in [0d5d83bcbd] Fix some of the issues raised in #1615. (CVS 2959) (check-in: [0d5d83bcbd] user: danielk1977 branch: trunk, size: 103244)
2006-01-13
18:06
[206c891028] part of check-in [d634f8b28a] Account for multi-byte characters in ALTER TABLE code. Fix for #1609. (CVS 2942) (check-in: [d634f8b28a] user: danielk1977 branch: trunk, size: 103151)
06:33
[6db3dcb70a] part of check-in [dd70595542] Minor modification to restoreOrClearCursorPosition() to improve efficiency. Do not allocate the extra 8-bytes if memory-management is not enabled. (CVS 2936) (check-in: [dd70595542] user: danielk1977 branch: trunk, size: 103084)
2006-01-12
01:56
[a055974683] part of check-in [b2dbd1a5b7] Add the legacy_file_format pragma. (CVS 2922) (check-in: [b2dbd1a5b7] user: drh branch: trunk, size: 103078)
2006-01-11
21:41
[652a393229] part of check-in [5d9c6aa964] 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) (check-in: [5d9c6aa964] user: drh branch: trunk, size: 102967)
14:09
[c7847f299d] part of check-in [3970eb875d] Fix bugs caused by assuming that shared-schemas are initialized. (CVS 2917) (check-in: [3970eb875d] user: danielk1977 branch: trunk, size: 102890)
2006-01-10
17:58
[59c4a6fc0e] part of check-in [0f0213be4d] Store collation sequence names instead of pointers in sharable schema data structures. (CVS 2904) (check-in: [0f0213be4d] user: danielk1977 branch: trunk, size: 103052)
07:14
[97997d435a] part of check-in [bd02a6faef] If compiled with memory-debugging, write garbage to memory when it is freed. Fix for #1594. (CVS 2900) (check-in: [bd02a6faef] user: danielk1977 branch: trunk, size: 101471)
2006-01-09
23:40
[db1d1bd861] part of check-in [ec332d8822] Added database server example code (untested). Fixed serveral bugs including the autovacuum compile problem described by ticket #1593. (CVS 2897) (check-in: [ec332d8822] user: drh branch: trunk, size: 101463)
16:12
[ff75e783aa] part of check-in [3e75d3d5ef] Fix some errors to do with attached databases and text encodings in shared-cache mode. (CVS 2895) (check-in: [3e75d3d5ef] user: danielk1977 branch: trunk, size: 101422)
06:29
[e40a4caaba] part of check-in [82b81f69c7] Rename DbSchema to "Schema" and SqliteTsd to "ThreadData". (CVS 2893) (check-in: [82b81f69c7] user: danielk1977 branch: trunk, size: 101508)
05:36
[8f0b1da79b] part of check-in [cc963f8cfc] Minor changes so that OMIT_SHARED_CACHE works. (CVS 2892) (check-in: [cc963f8cfc] user: danielk1977 branch: trunk, size: 101404)
2006-01-07
13:21
[0cf9f74491] part of check-in [23b587b05b] In shared-cache mode, lock all required tables before beginning to execute the body of the statement program. (CVS 2881) (check-in: [23b587b05b] user: danielk1977 branch: trunk, size: 101465)
2006-01-06
06:33
[715ac7d49b] part of check-in [752a275487] Fix a bug that was emptying shared-schema tables during an ATTACH. (CVS 2867) (check-in: [752a275487] user: danielk1977 branch: trunk, size: 98764)
2006-01-05
11:34
[6b14101f1e] part of check-in [deeda0dc06] Add the shared schema/pager modifications. Very few tests so far. (CVS 2859) (check-in: [deeda0dc06] user: danielk1977 branch: trunk, size: 99629)
2006-01-04
21:40
[7bf6f9ba5b] part of check-in [cb9095ac52] Bug fix in the IF NOT EXISTS logic. (CVS 2858) (check-in: [cb9095ac52] user: drh branch: trunk, size: 98539)
15:54
[6bf007d0da] part of check-in [551cdd6c30] Add support for CREATE INDEX IF NOT EXISTS and DROP INDEX IF EXISTS. (CVS 2855) (check-in: [551cdd6c30] user: drh branch: trunk, size: 98499)
2005-12-29
23:33
[bb4c9df258] part of check-in [0bd9e35fd2] Add support for CREATE TABLE IF NOT EXISTS. (CVS 2847) (check-in: [0bd9e35fd2] user: drh branch: trunk, size: 98352)
19:23
[0982b00aea] part of check-in [ae301db8a6] 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) (check-in: [ae301db8a6] user: drh branch: trunk, size: 98263)
01:11
[88a441416f] part of check-in [a4c547de83] Add support for DROP TABLE IF EXISTS. (CVS 2843) (check-in: [a4c547de83] user: drh branch: trunk, size: 98627)
2005-12-21
18:36
[51f3f46801] part of check-in [5638a11ed5] Bug fixes and additional testing of descending indices. (CVS 2841) (check-in: [5638a11ed5] user: drh branch: trunk, size: 98551)
14:43
[fd4417648d] part of check-in [7064433e5b] Basic functionality for descending indices is in place. Lots more testing needed. (CVS 2840) (check-in: [7064433e5b] user: drh branch: trunk, size: 98551)
03:16
[502479f9b9] part of check-in [112a34b8dc] Progress toward decending indices. (CVS 2839) (check-in: [112a34b8dc] user: drh branch: trunk, size: 98045)
2005-12-16
01:06
[178a5c3636] part of check-in [cd110aa225] 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) (check-in: [cd110aa225] user: drh branch: trunk, size: 98072)
2005-12-09
20:02
[306dde3134] part of check-in [83a5915155] Clean up annoying (and pointless) compiler warnings about differing signedness. (CVS 2810) (check-in: [83a5915155] user: drh branch: trunk, size: 96481)
2005-12-06
12:52
[41350367dc] part of check-in [e1606658f1] 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) (check-in: [e1606658f1] user: danielk1977 branch: trunk, size: 96463)
2005-11-14
22:29
[8c93ae1056] part of check-in [ce06c123d0] Create separate affinities for INTEGER and REAL. (CVS 2766) (check-in: [ce06c123d0] user: drh branch: trunk, size: 96191)
2005-11-03
02:03
[03ccfb2d5a] part of check-in [db27afc4cd] Disallow subqueries in CHECK constraints. (CVS 2756) (check-in: [db27afc4cd] user: drh branch: trunk, size: 95822)
00:41
[5441ae7000] part of check-in [2313d912ba] First cut at supporting CHECK constraints. Everything appears to work, but much more testing is needed as well as documentation. (CVS 2754) (check-in: [2313d912ba] user: drh branch: trunk, size: 95801)
2005-11-01
15:48
[a9dc62b900] part of check-in [e0d6f61c7d] Omit the SQLITE_AFF_INTEGER type affinity. All numeric values are now of type real, though an integer representation is still sometimes used internally for efficiency. (CVS 2753) (check-in: [e0d6f61c7d] user: drh branch: trunk, size: 94564)
2005-09-20
17:42
[aa9591839c] part of check-in [2471957fee] Code cleanup and simplification. Three new Mem opcodes added. The sqlite3VdbeJumpHere function added. (CVS 2730) (check-in: [2471957fee] user: drh branch: trunk, size: 94344)
2005-09-16
02:48
[74653e0455] part of check-in [6017b19625] Undo check-in (2694). (CVS 2697) (check-in: [6017b19625] user: drh branch: trunk, size: 94398)
2005-09-15
21:24
[62a286c8b1] part of check-in [9b60f48de7] The table_info pragma now gives the order of columns in the primary key. (CVS 2694) (check-in: [9b60f48de7] user: drh branch: trunk, size: 94414)
2005-09-10
15:35
[db063dc322] part of check-in [f43427742b] Avoid a memory leak and/or assertion failure when parsing a table declaration that contains a duplicate column name. Ticket #1418. (CVS 2684) (check-in: [f43427742b] user: drh branch: trunk, size: 94381)
2005-09-08
14:17
[86181cbd89] part of check-in [cdfe372a95] Remove a few unused variables detected by Borland C. Ticket #1412. (CVS 2675) (check-in: [cdfe372a95] user: drh branch: trunk, size: 94382)
00:13
[fcedb4baf3] part of check-in [bcc7d722ce] All regression tests now pass. But I am sure there must still be problems. New tests need to be added. (CVS 2666) (check-in: [bcc7d722ce] user: drh branch: trunk, size: 94596)
2005-09-07
21:22
[d9f3c0e65a] part of check-in [17039ec3ff] Rewrite the aggregate handling logic so that it runs in O(1) space. This is the first cut at the code. Many regression tests fail. (CVS 2662) (check-in: [17039ec3ff] user: drh branch: trunk, size: 94554)
2005-08-31
13:13
[d61682e8d0] part of check-in [90712ea727] Explicit typecasts to silence nuisance compiler warnings. Ticket #1398. (CVS 2650) (check-in: [90712ea727] user: drh branch: trunk, size: 93620)
2005-08-29
23:00
[150902037c] part of check-in [ed2ca0873f] Increase resolution of time-of-day on unix. Add an experimental sqlite3_profile() API. (CVS 2639) (check-in: [ed2ca0873f] user: drh branch: trunk, size: 93604)
2005-08-20
03:03
[55e7e915a5] part of check-in [f786f37a5e] Increased test coverage. Some malloc tests now fail though this is believed to be an instrumentation problem not a real error. (CVS 2604) (check-in: [f786f37a5e] user: drh branch: trunk, size: 93547)
2005-08-18
18:15
[bc7b4791f2] part of check-in [b865e243ee] Comment fixes. No changes to the underlying code. (CVS 2598) (check-in: [b865e243ee] user: drh branch: trunk, size: 93666)
2005-08-14
01:34
[6481b72878] part of check-in [94efd79088] Declare local-use functions as static. Ticket #1363. (CVS 2593) (check-in: [94efd79088] user: drh branch: trunk, size: 93957)
2005-08-13
00:56
[bd16c6865a] part of check-in [25cfe9390d] Fix a memory leak that occurs when a CREATE TABLE that contains a DEFAULT VALUE fails due to a name conflict. Tickets #1356 and #1357. (CVS 2584) (check-in: [25cfe9390d] user: drh branch: trunk, size: 93943)
2005-07-28
16:51
[e50f2f4c7b] part of check-in [a212128433] The new optimizer now passes all regression tests. (CVS 2566) (check-in: [a212128433] user: drh branch: trunk, size: 93930)
2005-07-27
20:41
[4b6f9e6115] part of check-in [ee3a08e353] More work on the new optimizer. Fewer tests fail now. (CVS 2565) (check-in: [ee3a08e353] user: drh branch: trunk, size: 94166)
2005-07-23
22:59
[b78e95dcfc] part of check-in [86ce56ccea] A new optimizer that breaks a lot of tests. But none of them critically, I think. Nevertheless, there is a lot of work ahead to stabilize the code. (CVS 2564) (check-in: [86ce56ccea] user: drh branch: trunk, size: 93228)
14:52
[59a3ffe94d] part of check-in [868279c78e] Store the total number of rows as part of the ANALYZE statistics. (CVS 2563) (check-in: [868279c78e] user: drh branch: trunk, size: 92864)
03:18
[6aec7f0cee] part of check-in [1996bacfb9] 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) (check-in: [1996bacfb9] user: drh branch: trunk, size: 92848)
00:41
[50e1197f5f] part of check-in [a4886b114d] First code for the ANALYZE command. Mostly untested. The analysis is not loaded into the symbol tables and is not used by the optimizer. (CVS 2560) (check-in: [a4886b114d] user: drh branch: trunk, size: 92761)
2005-07-21
18:23
[c2b9379e3b] part of check-in [e2f822ac82] Split the OP_Integer opcode into OP_Integer and OP_Int64. This allows comments to be added to OP_Integer. Cleanup in the optimizer. Allow terms of the FROM clause to be reordered automatically. (CVS 2556) (check-in: [e2f822ac82] user: drh branch: trunk, size: 92756)
03:15
[a908365b4f] part of check-in [c30cbba9ea] In where.c, split out the code that selects an index into a separate subroutine. (CVS 2554) (check-in: [c30cbba9ea] user: drh branch: trunk, size: 92918)
2005-06-30
17:04
[1f40c07a11] part of check-in [d273766ef2] Allow the DEFAULT value of a column to be obtained by calling a function that has constant arguments, such as julianday('now'). (CVS 2534) (check-in: [d273766ef2] user: drh branch: trunk, size: 92873)
2005-06-25
18:42
[f2f12fcb44] part of check-in [17631785f9] Remove the blob(), text() and numeric() functions added in (2524) and replace them with the standard CAST operator. Ticket #1287. (CVS 2527) (check-in: [17631785f9] user: drh branch: trunk, size: 92863)
2005-06-24
03:53
[3b64205934] part of check-in [06a71b162b] NULL values in a row of a unique index cause the row to be distinct. Ticket #1301. More testing and optimization needs to be done on this before closing the ticket. (CVS 2526) (check-in: [06a71b162b] user: drh branch: trunk, size: 92930)
2005-06-14
02:12
[b6db069ef2] part of check-in [95256d953c] Do not record existance the sqlite_sequence table until it is actually created. Ticket #1283. (CVS 2513) (check-in: [95256d953c] user: drh branch: trunk, size: 92671)
2005-06-12
21:35
[593d8fda05] part of check-in [36f2da1f8d] Update older opcode names to be more meaningful in light of the latest code design. (CVS 2506) (check-in: [36f2da1f8d] user: drh branch: trunk, size: 92652)
2005-06-06
21:19
[407343b7da] part of check-in [e73d25c741] Reference count Table structures so that they are not deallocated too soon. Ticket #1210. (CVS 2498) (check-in: [e73d25c741] user: drh branch: trunk, size: 92655)
15:32
[bea3107e3b] part of check-in [0d46289f02] Do not allow parameters in VIEW definitions. Ticket #1270. (CVS 2492) (check-in: [0d46289f02] user: drh branch: trunk, size: 92534)
2005-05-25
10:45
[8c6201bcac] part of check-in [ea061d2ed3] Rearrange code so that SSE can invoke the collation factory. (CVS 2482) (check-in: [ea061d2ed3] user: danielk1977 branch: trunk, size: 92400)
2005-05-24
20:19
[b7a5d09791] part of check-in [3e64f1ab41] Remove the config.h file from the build. Ticket #1224. (CVS 2480) (check-in: [3e64f1ab41] user: drh branch: trunk, size: 95754)
12:01
[5d3cee156a] part of check-in [5fadb464eb] Move a few things around to make building without the parser easier. (CVS 2479) (check-in: [5fadb464eb] user: danielk1977 branch: trunk, size: 95786)
2005-05-22
06:49
[6770abc63d] part of check-in [afc8ce42b6] Allow schema objects beginning with sqlite_ to be created if the SQLITE_WriteSchema flag is set. (CVS 2470) (check-in: [afc8ce42b6] user: danielk1977 branch: trunk, size: 98356)
2005-05-03
12:30
[61a0beac45] part of check-in [d9418851ce] Make sure all data structures have 8-byte alignment - necessary for the sparc architecture and helpful on other 64-bit platforms. Ticket #1232. Also update some comments in build.c. (CVS 2452) (check-in: [d9418851ce] user: drh branch: trunk, size: 98291)
2005-03-29
03:10
[8afb06c791] part of check-in [c41d55443c] Add the SQLITE_OMIT_TEMPDB compile time macro. (CVS 2427) (check-in: [c41d55443c] user: danielk1977 branch: trunk, size: 98211)
2005-03-28
03:39
[2589c2ffa2] part of check-in [bcb5d72ef1] Fix some memory leaks that occur after a malloc failure. (CVS 2421) (check-in: [bcb5d72ef1] user: drh branch: trunk, size: 98024)
2005-03-21
03:53
[2dc89aa35a] part of check-in [e7844a01c2] Assorted fixes to the handling of various malloc() failures. (CVS 2413) (check-in: [e7844a01c2] user: danielk1977 branch: trunk, size: 98001)
2005-03-19
01:41
[3c0f4394b0] part of check-in [e53c77268c] Updates to comments and documentation. No changes to code. (CVS 2398) (check-in: [e53c77268c] user: drh branch: trunk, size: 97981)
2005-03-17
05:03
[a5688630ba] part of check-in [94185dd4f7] Add the ALTER TABLE ... ADD COLUMN command. (CVS 2393) (check-in: [94185dd4f7] user: danielk1977 branch: trunk, size: 97989)
2005-03-16
12:15
[66bf13d2d4] part of check-in [9a358fc33d] Fix some memory leaks that can occur if a memory allocation fails. (CVS 2388) (check-in: [9a358fc33d] user: danielk1977 branch: trunk, size: 97554)
2005-02-19
08:18
[a8792b2f86] part of check-in [173aeb256e] Support for a future file format that includes 'short' records. (CVS 2351) (check-in: [173aeb256e] user: danielk1977 branch: trunk, size: 97169)
2005-02-15
20:47
[7db7f59309] part of check-in [90d6573c26] Split the logic for the ALTER TABLE command off into a separate source code file. (CVS 2342) (check-in: [90d6573c26] user: drh branch: trunk, size: 97034)
2005-02-14
20:48
[09333b6006] part of check-in [cbed92f397] Make sure that when a CREATE INDEX fails, it does not leave a residue behind that can corrupt the database. Ticket #1115. (CVS 2330) (check-in: [cbed92f397] user: drh branch: trunk, size: 102447)
2005-02-09
07:05
[9783b4bd23] part of check-in [c33c02d606] Return SQLITE_BUSY if the database is locked reading the schema within sqlite_prepare(). Ticket #1106. (CVS 2322) (check-in: [c33c02d606] user: danielk1977 branch: trunk, size: 102455)
2005-02-01
03:46
[fcb437bcda] part of check-in [22041d5f26] Fix an error introduced with (2299). (CVS 2301) (check-in: [22041d5f26] user: danielk1977 branch: trunk, size: 102427)
03:09
[7b9427a2f9] part of check-in [eaf1866e4d] Avoid allocating a vdbe in sqlite3FinishCoding() if one has not been allocated already. (CVS 2299) (check-in: [eaf1866e4d] user: danielk1977 branch: trunk, size: 102389)
02:13
[321c80debe] part of check-in [d8b4b0ef13] Change to sqlite3AffinityType() to remove hex constants. (CVS 2298) (check-in: [d8b4b0ef13] user: danielk1977 branch: trunk, size: 102357)
01:21
[7e50cb572e] part of check-in [abe9f5e81f] Replace sqlite3AffinityType() with a slightly faster version. (CVS 2296) (check-in: [abe9f5e81f] user: danielk1977 branch: trunk, size: 102236)
2005-01-31
23:45
[c09954ebee] part of check-in [32b926154a] Performance tweaks for sqlite3AffinityType. (CVS 2295) (check-in: [32b926154a] user: drh branch: trunk, size: 101720)
12:56
[34e6ed5c1a] part of check-in [5c10ccd8e9] Move sqlite3HashNoCase to hash.c. (CVS 2294) (check-in: [5c10ccd8e9] user: danielk1977 branch: trunk, size: 101761)
12:42
[3eae8b0eca] part of check-in [dfbd684a91] Assorted minor changes to speed up loading the database schema. (CVS 2293) (check-in: [dfbd684a91] user: danielk1977 branch: trunk, size: 101762)
2005-01-29
08:32
[e35b7f93c4] part of check-in [b1b50f3158] Modify sub-query handling. Tickets #1083 and #1084. (CVS 2286) (check-in: [b1b50f3158] user: danielk1977 branch: trunk, size: 101294)
2005-01-27
00:33
[c894a91251] part of check-in [dc1b8106c4] Fix a warning introduced by (2280). (CVS 2283) (check-in: [dc1b8106c4] user: danielk1977 branch: trunk, size: 101349)
00:22
[7fceb51929] part of check-in [1c1904f443] Have REINDEX handle missing collation sequences correctly. (CVS 2280) (check-in: [1c1904f443] user: danielk1977 branch: trunk, size: 101351)
2005-01-24
10:25
[91e05a3a50] part of check-in [d5233e0747] Modifications and bugfixes so that the test suite passes with the TCL statement cache turned on. (CVS 2271) (check-in: [d5233e0747] user: danielk1977 branch: trunk, size: 100920)
2005-01-21
11:55
[b60b1f1f48] part of check-in [9c4d0e13e8] Improve test coverage for minimum feature builds. (CVS 2254) (check-in: [9c4d0e13e8] user: danielk1977 branch: trunk, size: 100529)
00:44
[9c9e9dbb9d] part of check-in [06887afb32] Change the implementation of ALTER TABLE so that it does not use the IN() operattor. (CVS 2249) (check-in: [06887afb32] user: danielk1977 branch: trunk, size: 100177)
2005-01-19
23:24
[da5ecd9880] part of check-in [d8b2a7e091] Continued refactoring of the name resolution logic and query optimizer. (CVS 2236) (check-in: [d8b2a7e091] user: drh branch: trunk, size: 100140)
2005-01-18
14:45
[608ea54aab] part of check-in [88d4834fec] Continue refactoring name resolution. Fix for ticket #1047. (CVS 2230) (check-in: [88d4834fec] user: drh branch: trunk, size: 100135)
04:00
[4b7a2c3089] part of check-in [0142ae6f00] Refinements to the name resolution logic. Change the name of the keywordhash.c file to keywordhash.h. (CVS 2229) (check-in: [0142ae6f00] user: drh branch: trunk, size: 99871)
2005-01-17
22:08
[4638b87f5e] part of check-in [4a7534396a] Infrastructure changes to handle name resolution differently. This is needed to fix various long-standing problems with column names in joins. It will also make the implementation of correlated subqueries easier. (CVS 2228) (check-in: [4a7534396a] user: drh branch: trunk, size: 99873)
07:53
[07d50fe1b1] part of check-in [6244252915] Fix some memory leak problems with corrupt.test and auto-vacuum databases. (CVS 2226) (check-in: [6244252915] user: danielk1977 branch: trunk, size: 99871)
2004-12-14
03:34
[af1296e8a2] part of check-in [d012628a78] Minor code and comment cleanup. (CVS 2165) (check-in: [d012628a78] user: drh branch: trunk, size: 99838)
2004-12-07
12:29
[306e49e1f6] part of check-in [7b20f2b71f] Remove the unused sqlite3_context.isStep element. (CVS 2156) (check-in: [7b20f2b71f] user: drh branch: trunk, size: 99955)
2004-11-23
16:31
[aa7975d778] part of check-in [ba71716ce2] Fix a memory leak in ALTER TABLE. (CVS 2149) (check-in: [ba71716ce2] user: danielk1977 branch: trunk, size: 99962)
15:41
[cbfb818055] part of check-in [9f0d744ee4] Add authorization callbacks for REINDEX. (CVS 2148) (check-in: [9f0d744ee4] user: danielk1977 branch: trunk, size: 99924)
2004-11-22
11:51
[b62389de59] part of check-in [53894988ac] Ensure tests pass when SQLITE_OMIT_TRIGGER is defined. (CVS 2137) (check-in: [53894988ac] user: danielk1977 branch: trunk, size: 99755)
2004-11-20
18:13
[c7dd57fdbb] part of check-in [368774487e] Fix segfaults that might occur after a malloc failure. (CVS 2119) (check-in: [368774487e] user: drh branch: trunk, size: 99712)
2004-11-19
08:41
[a43f3b8f45] part of check-in [f635b6aae6] Ensure ALTER TABLE respects the system table convention - "sqlite_*". (CVS 2115) (check-in: [f635b6aae6] user: danielk1977 branch: trunk, size: 99434)
08:02
[81422cd1c6] part of check-in [6e97186880] Update the sqlite_sequence table when a table is renamed with ALTER_TABLE. (CVS 2114) (check-in: [6e97186880] user: danielk1977 branch: trunk, size: 99024)
07:07
[27897ee30d] part of check-in [0514107bff] When dropping a table, update the sqlite_sequence table first, as auto-vacuum mode may need to move sqlite_sequence when the btree table is dropped. (CVS 2113) (check-in: [0514107bff] user: danielk1977 branch: trunk, size: 98697)
05:14
[467e940702] part of check-in [1fd8e835a3] Fix bugs in ALTER TABLE related to (a) whitespace in table defn, (b) temp triggers. (CVS 2112) (check-in: [1fd8e835a3] user: danielk1977 branch: trunk, size: 98511)
2004-11-18
15:44
[f295d8326f] part of check-in [c61b7de107] Handle triggers correctly in ALTER TABLE. (CVS 2111) (check-in: [c61b7de107] user: danielk1977 branch: trunk, size: 97186)
2004-11-13
03:48
[a95eb11812] part of check-in [10c712a219] Autoincrement is now working and has regression tests. (CVS 2095) (check-in: [10c712a219] user: drh branch: trunk, size: 96786)
2004-11-12
15:53
[45ba40523a] part of check-in [c4115aa3a1] Add authorization callbacks to ALTER TABLE. (CVS 2093) (check-in: [c4115aa3a1] user: danielk1977 branch: trunk, size: 96964)
13:42
[cbd985e9d0] part of check-in [a1b2cc63e6] Add the "ALTER TABLE xxx RENAME TO yyy" command. (CVS 2092) (check-in: [a1b2cc63e6] user: danielk1977 branch: trunk, size: 96686)
03:56
[6d1687c661] part of check-in [8fde833c81] Autoincrement code installed. Simple smoke-testing only. No regression tests developed yet. (CVS 2091) (check-in: [8fde833c81] user: drh branch: trunk, size: 94098)
2004-11-10
11:55
[27e3cc9e5d] part of check-in [8e5c2e5df8] Ensure tables cannot be created/dropped when btree cursors are open. (CVS 2085) (check-in: [8e5c2e5df8] user: danielk1977 branch: trunk, size: 93081)
2004-11-09
12:44
[d623d84fd7] part of check-in [0d27c8ff48] Port the "DEFAULT CURRENT_TIME" etc. functionality from an earlier fork of sqlite. (CVS 2082) (check-in: [0d27c8ff48] user: danielk1977 branch: trunk, size: 93040)
2004-11-07
13:01
[f01c2f9b3a] part of check-in [ad433ec2b6] Reindex tests added and bugs fixed. (CVS 2075) (check-in: [ad433ec2b6] user: drh branch: trunk, size: 92859)
2004-11-06
00:02
[fba59507d3] part of check-in [89b9026a53] Compile and pass the quick regression tests with autovacuum disabled. (CVS 2073) (check-in: [89b9026a53] user: drh branch: trunk, size: 92806)
2004-11-05
23:46
[154e7a666a] part of check-in [11dba47e61] First cut at a REINDEX command. Basic testing only. No documentation. (CVS 2072) (check-in: [11dba47e61] user: drh branch: trunk, size: 92532)
22:18
[e498f958eb] part of check-in [0f81aa5b05] Use sqlite3NestedParse to implement DROP INDEX. (CVS 2071) (check-in: [0f81aa5b05] user: drh branch: trunk, size: 89180)
20:58
[d1234774c8] part of check-in [47d8ebdaad] Use sqlite3NestedParse to implement CREATE INDEX. (CVS 2070) (check-in: [47d8ebdaad] user: drh branch: trunk, size: 89642)
17:17
[f204aebf58] part of check-in [b0506bdd70] Create table now works with sqlite3NestedParse. This changed uncovered a latent bug in xprintf which is also fixed. (CVS 2069) (check-in: [b0506bdd70] user: drh branch: trunk, size: 89522)
09:19
[dc8b9ab836] part of check-in [fdcc31f0c6] Don't code an OP_Statement within sqlite3NestedParse(). Also a correction to the UPDATE statement used within destroyRootPage(). (CVS 2064) (check-in: [fdcc31f0c6] user: danielk1977 branch: trunk, size: 87430)
05:23
[06a4eb8f29] part of check-in [c46eef2f6d] Another bug fix from two check-ins ago. (CVS 2062) (check-in: [c46eef2f6d] user: drh branch: trunk, size: 87407)
05:20
[c0a293eafc] part of check-in [9d259d48de] Fix a bug in the previous check-in. (CVS 2061) (check-in: [9d259d48de] user: drh branch: trunk, size: 87402)
05:10
[936fb262f2] part of check-in [ac2d5a605c] More use of sqlite3NestedParse. This version of the code does not work. (CVS 2060) (check-in: [ac2d5a605c] user: drh branch: trunk, size: 87397)
03:56
[b18a5c7cc6] part of check-in [2d302931a6] Begin using sqlite3NestedParse() to generate sections of code. (CVS 2059) (check-in: [2d302931a6] user: drh branch: trunk, size: 88577)
01:24
[6e00bcc31c] part of check-in [b0c103340a] Pop the value pushed by OP_Destroy if SQLITE_OMIT_AUTOVACUUM is defined. (CVS 2057) (check-in: [b0c103340a] user: danielk1977 branch: trunk, size: 89250)
00:43
[e72d6f7637] part of check-in [10c3d88305] Incremental check-in of changes that will ultimately lead to a working autoincrement. (CVS 2056) (check-in: [10c3d88305] user: drh branch: trunk, size: 89205)
2004-11-04
14:47
[1bf89a5741] part of check-in [158a2d16a8] All tests pass when SQLITE_OMIT_INTEGRITY_CHECK is defined. (CVS 2055) (check-in: [158a2d16a8] user: drh branch: trunk, size: 87797)
14:30
[89d1ace108] part of check-in [1da361fae8] Support root-page allocation/deallocation in auto-vacuum databases. Still a few problems. (CVS 2054) (check-in: [1da361fae8] user: danielk1977 branch: trunk, size: 87831)
2004-10-31
02:22
[bb896c5f85] part of check-in [be661acfa8] Insert #ifdefs that can optionally remove features at compiletime resulting in a database engine with a smaller footprint. (CVS 2034) (check-in: [be661acfa8] user: drh branch: trunk, size: 83061)
2004-10-06
15:41
[cb0232e0f2] part of check-in [d790c84c5a] Convert many constants to have type "const". (CVS 2006) (check-in: [d790c84c5a] user: drh branch: trunk, size: 82739)
2004-10-05
02:41
[73bd4219c1] part of check-in [81ff8107ad] Add support for DEFERRED, IMMEDIATE, and EXCLUSIVE transactions. (CVS 2000) (check-in: [81ff8107ad] user: drh branch: trunk, size: 82714)
2004-09-30
14:22
[2ed6d9c26a] part of check-in [85ad18712d] Correctly parser column typenames that contain more than one identifier. Ticket #934. (CVS 1990) (check-in: [85ad18712d] user: drh branch: trunk, size: 83275)
2004-09-25
14:39
[86318bdcd2] part of check-in [9ef4c24a9a] Code cleanup: get rid of the sqlite3SetNString utility function. (CVS 1984) (check-in: [9ef4c24a9a] user: drh branch: trunk, size: 83285)
2004-09-15
13:38
[c5ecf114af] part of check-in [0cc2f40e6a] The callback on sqlite3_trace() is invoked the first time sqlite3_step() is called after sqlite3_prepare() or sqlite3_reset(). Ticket #900. (CVS 1960) (check-in: [0cc2f40e6a] user: drh branch: trunk, size: 83373)
2004-09-08
15:09
[662f4e56a6] part of check-in [a1f532520c] Always cast 0 to (char*)0 when it is an argument in a varargs function. (CVS 1948) (check-in: [a1f532520c] user: drh branch: trunk, size: 83361)
2004-09-06
17:24
[c6940e4a66] part of check-in [3ddf5a9d1c] Fix a naming conflict between sqlite versions 2 and 3. An open sqlite3 connection now *must* be called "sqlite3". You cannot call it "sqlite". This might break existing code. (CVS 1941) (check-in: [3ddf5a9d1c] user: drh branch: trunk, size: 83326)
2004-08-31
13:45
[35275654d9] part of check-in [8fd65e7048] Simplifications and optimizations. Also: disable the corrupt.test for now. (CVS 1924) (check-in: [8fd65e7048] user: drh branch: trunk, size: 83300)
2004-08-28
14:53
[ee7905531e] part of check-in [b01d566580] Correct handling of quoted names in CREATE INDEX. Ticket #869. (CVS 1907) (check-in: [b01d566580] user: drh branch: version_2, size: 67168)
2004-08-21
17:54
[7d93b19d03] part of check-in [bd6649c5aa] Optimizations to the code generator. (CVS 1899) (check-in: [bd6649c5aa] user: drh branch: trunk, size: 83302)
2004-08-18
15:58
[bad6652b33] part of check-in [6b2b6b2dbd] Be more agressive about not creating or opening the TEMP database if there are no TEMP tables. (CVS 1891) (check-in: [6b2b6b2dbd] user: drh branch: trunk, size: 83245)
02:10
[2c608a4825] part of check-in [5914a11caa] Avoid creating a TEMP database unless it is absolutely necessary. (CVS 1890) (check-in: [5914a11caa] user: drh branch: trunk, size: 83216)
2004-08-08
23:39
[951a36b246] part of check-in [81d91d14cf] Fix problems in the handling of malloc failures. (CVS 1882) (check-in: [81d91d14cf] user: drh branch: trunk, size: 83098)
20:22
[b6689d0c3b] part of check-in [b065973898] Make sure the argument to ctype.h macros is always an unsigned character. Ticket #839. (CVS 1881) (check-in: [b065973898] user: drh branch: trunk, size: 82881)
2004-07-26
00:31
[d1a2d7a99b] part of check-in [1186e3ce0b] Various size optimizations. (CVS 1867) (check-in: [1186e3ce0b] user: drh branch: trunk, size: 82788)
2004-07-24
17:38
[7d2981666b] part of check-in [ebdb661e0e] Prepared statements now work with CREATE and DROP. All tests pass. No memory leaks. (CVS 1866) (check-in: [ebdb661e0e] user: drh branch: trunk, size: 82807)
14:35
[3075ca2e66] part of check-in [6db3f122aa] Fix more problems with deferred execution of CREATE. Still need to do DROP. There is now a memory leak. (CVS 1865) (check-in: [6db3f122aa] user: drh branch: trunk, size: 83280)
03:30
[d1870caf93] part of check-in [49b9914924] Progress towards getting prepared statements and CREATE and DROP to play nicely together. Work is incomplete. Some tests are known to fail. (CVS 1864) (check-in: [49b9914924] user: drh branch: trunk, size: 83402)
2004-07-22
01:19
[3a13562865] part of check-in [4cf6e9db75] Initial implementation of variable page sizes and the temp_store pragma. (CVS 1843) (check-in: [4cf6e9db75] user: drh branch: trunk, size: 84036)
2004-07-20
12:45
[a4b1e80b13] part of check-in [522ff721cc] Add the '%ifdef' capability to lemon. Other minor changes. (CVS 1836) (check-in: [522ff721cc] user: drh branch: trunk, size: 84008)
00:50
[46760493eb] part of check-in [467309975f] Fix the handling of indices with quoted names. Ticket #695. (CVS 1830) (check-in: [467309975f] user: drh branch: version_2, size: 67170)
2004-07-19
17:25
[1d9a72adb5] part of check-in [c6c13dc460] Store schema cookies on the TEMP database. Ticket #807. (CVS 1817) (check-in: [c6c13dc460] user: drh branch: trunk, size: 84095)
2004-06-29
08:59
[ecc10d4e52] part of check-in [157db33e09] Fix error reporting path for errors that occur while reading the database schema. (CVS 1757) (check-in: [157db33e09] user: danielk1977 branch: trunk, size: 83963)
07:45
[ea8a322057] part of check-in [ffd3312b66] Bug-fixes to get the two threadtest C programs working again. (CVS 1756) (check-in: [ffd3312b66] user: danielk1977 branch: trunk, size: 83742)
2004-06-28
01:11
[574cdd3092] part of check-in [fae7c6e004] Fix a bunch of harmless warnings. (CVS 1749) (check-in: [fae7c6e004] user: danielk1977 branch: trunk, size: 83469)
2004-06-26
14:46
[98466ddf5e] part of check-in [b69b4fe8ad] Fold in a 64-bit change that came from the PHP people. (CVS 1743) (check-in: [b69b4fe8ad] user: drh branch: trunk, size: 83420)
14:40
[cb1ab5ce73] part of check-in [a4a2570822] Fold in changes submitted by the PHP developers. (CVS 1742) (check-in: [a4a2570822] user: drh branch: version_2, size: 67172)
08:38
[ef9fb5bbc9] part of check-in [4e20720984] Remove the 'nMaster' argument from various pager and btree functions. (CVS 1737) (check-in: [4e20720984] user: danielk1977 branch: trunk, size: 83440)
2004-06-22
13:22
[fc0b51748d] part of check-in [80151e7281] Fix some segfaults that could have occurred after a malloc() failure. (CVS 1661) (check-in: [80151e7281] user: drh branch: trunk, size: 83435)
12:18
[baed8f54ea] part of check-in [ecdb93d3c9] Improve the os_test.c module. (CVS 1657) (check-in: [ecdb93d3c9] user: danielk1977 branch: trunk, size: 83421)
2004-06-21
18:14
[ee7548a4df] part of check-in [afc398c2ca] Fix an uninitialized variable. The variable was harmless, but pedantic error checking in MSVC raised an exception on it. (CVS 1651) (check-in: [afc398c2ca] user: drh branch: trunk, size: 83409)
10:45
[ffcd0cd8cd] part of check-in [4d02df6349] Avoid opening a temp table for aggregate queries with no GROUP BY clause. (CVS 1649) (check-in: [4d02df6349] user: danielk1977 branch: trunk, size: 84027)
09:06
[b1180cfc82] part of check-in [bbd3e93348] Add the OP_Concat8 opcode, similar in concept to OP_String8. (CVS 1648) (check-in: [bbd3e93348] user: danielk1977 branch: trunk, size: 83759)
2004-06-19
17:33
[2ed1f14a72] part of check-in [fc3b3a8fe8] Make sure VdbeFunc entries are initialized before trying to destroy them. Also, unrelated comment changes in build.c. (CVS 1643) (check-in: [fc3b3a8fe8] user: drh branch: trunk, size: 83749)
16:06
[09d8863a5d] part of check-in [01f74b420c] Omit the DB_Locked and DB_Cookie flags. Other minor cleanup. (CVS 1642) (check-in: [01f74b420c] user: drh branch: trunk, size: 82638)
14:49
[c843ef3d44] part of check-in [99d0436e0e] Omit the sqlite3VdbeCode() routine. Use sqlite3NameFromToken() more to reduce the amount of code. (CVS 1639) (check-in: [99d0436e0e] user: drh branch: trunk, size: 83028)
09:35
[d782716952] part of check-in [c94a9759ca] Remove the unused 'next_cookie' mechanism. (CVS 1634) (check-in: [c94a9759ca] user: danielk1977 branch: trunk, size: 83398)
02:22
[239bd93949] part of check-in [1f43219a74] Fix for #764. When reloading the schema, load the temp schema last. (CVS 1628) (check-in: [1f43219a74] user: danielk1977 branch: trunk, size: 83444)
2004-06-18
06:02
[44057a0aba] part of check-in [960f55f3ec] Fix a couple of gcc warnings. (CVS 1615) (check-in: [960f55f3ec] user: danielk1977 branch: trunk, size: 83484)
04:24
[f3f7634d21] part of check-in [39a415eaa6] Optimisation for unicode encoding conversion routines. (CVS 1614) (check-in: [39a415eaa6] user: danielk1977 branch: trunk, size: 83478)
2004-06-17
06:13
[ed0bff93bf] part of check-in [12e77e759e] Handle conflicting ON CONFLICT clauses in table definitions. (CVS 1611) (check-in: [12e77e759e] user: danielk1977 branch: trunk, size: 83233)
2004-06-15
16:51
[19fc5d0336] part of check-in [07b90f3690] Assorted memory leak fixes. (CVS 1600) (check-in: [07b90f3690] user: danielk1977 branch: trunk, size: 82800)
2004-06-12
09:25
[916a84fa5f] part of check-in [5903f53828] (1) Modifications to the user-function interface and (2) Internal changes to automatically created indices. (CVS 1575) (check-in: [5903f53828] user: danielk1977 branch: trunk, size: 82678)
00:42
[1943d5910d] part of check-in [9b84f2f488] Use the SQLITE_UTF* symbols instead of the old internal TEXT_Utf* symbols. (CVS 1572) (check-in: [9b84f2f488] user: danielk1977 branch: trunk, size: 80472)
2004-06-10
14:01
[b36b62f49a] part of check-in [49ab4794e1] Correctly handle the situation where a collation sequence is available, but not in the preferred encoding. (CVS 1565) (check-in: [49ab4794e1] user: danielk1977 branch: trunk, size: 80442)
10:50
[4b1a23d919] part of check-in [edf069b9f4] Add the sqlite3_collation_needed() API and fix some error handling cases involving unknown collation sequences. (CVS 1562) (check-in: [edf069b9f4] user: danielk1977 branch: trunk, size: 80442)
02:16
[5d958f480d] part of check-in [b8aaa3a29e] Change the collation sequence interface to allow collation sequences that use UTF-16 in non-native byte order to be registered. (CVS 1559) (check-in: [b8aaa3a29e] user: danielk1977 branch: trunk, size: 77954)
00:29
[9ee417777c] part of check-in [a22283512a] Check for schema updates if the parser fails to find a table. More locking test updates. (CVS 1555) (check-in: [a22283512a] user: drh branch: trunk, size: 74601)
2004-06-09
12:30
[4ea78aba17] part of check-in [beab038c71] Fix error reporting when trying to attach a database with a foriegn text encoding. (CVS 1545) (check-in: [beab038c71] user: danielk1977 branch: trunk, size: 74522)
09:55
[763cb50521] part of check-in [c634e71f19] Some progress on user-defined collation sequences. (CVS 1544) (check-in: [c634e71f19] user: danielk1977 branch: trunk, size: 74516)
00:48
[f720a2538a] part of check-in [1086196460] Start all transactions and verify all schema cookies near the beginning of of each vdbe program. (CVS 1543) (check-in: [1086196460] user: drh branch: trunk, size: 74097)
2004-06-08
00:02
[83303494cc] part of check-in [62e31f396c] Remove the third argument from the sqlite3_open() API. (CVS 1540) (check-in: [62e31f396c] user: danielk1977 branch: trunk, size: 72686)
2004-06-07
10:00
[e804374760] part of check-in [31c1668dbc] Tables created with the CREATE TABLE <tbl> AS SELECT ... syntax now inherit column declaration types from the SELECT statement. (CVS 1538) (check-in: [31c1668dbc] user: danielk1977 branch: trunk, size: 72692)
07:52
[92144f30d3] part of check-in [983221b038] Add pragma to set/get text encoding. Also fix an obscure problem where a temp trigger could be accidently dropped. (CVS 1537) (check-in: [983221b038] user: danielk1977 branch: trunk, size: 71893)
2004-06-03
16:08
[e12e602f06] part of check-in [d57e5252c8] Untested updates to support atomic multi-file transactions (CVS 1526) (check-in: [d57e5252c8] user: danielk1977 branch: trunk, size: 71819)
2004-05-31
18:51
[13985630bf] part of check-in [adf7e29ff6] Change all SQLITE3 preprocessor macros to SQLITE. Documentation updates. (CVS 1511) (check-in: [adf7e29ff6] user: drh branch: trunk, size: 71808)
11:51
[2f791d1d52] part of check-in [6c100887ee] Use read-only transactions. (CVS 1504) (check-in: [6c100887ee] user: danielk1977 branch: trunk, size: 71766)
10:01
[8fd4c1a7df] part of check-in [6b43633a96] Add read-transactions to the btree and vdbe. The compiler doesn't invoke them yet. (CVS 1502) (check-in: [6b43633a96] user: danielk1977 branch: trunk, size: 71520)
08:55
[774193e2fb] part of check-in [9029274b61] Remove the <ON CONFLICT> clause from BEGIN (CVS 1501) (check-in: [9029274b61] user: danielk1977 branch: trunk, size: 71516)
08:26
[df54499bdf] part of check-in [b8ed812c92] Replace OP_Begin, OP_Commit and OP_Rollback with OP_AutoCommit. (CVS 1500) (check-in: [b8ed812c92] user: danielk1977 branch: trunk, size: 71572)
2004-05-29
11:24
[fd36c4a603] part of check-in [3225de8902] Transform OP_HexBlob and OP_String8 to OP_Blob and OP_String the first time they are executed. (CVS 1492) (check-in: [3225de8902] user: danielk1977 branch: trunk, size: 72325)
10:23
[f97826762d] part of check-in [4feb4b9a71] Fix vacuum so that it works with blobs. (CVS 1490) (check-in: [4feb4b9a71] user: danielk1977 branch: trunk, size: 72310)
02:37
[ed09cd54a4] part of check-in [4060a37d0b] Allow CREATE and DROP TRIGGER on attached databases. (CVS 1488) (check-in: [4060a37d0b] user: danielk1977 branch: trunk, size: 72496)
2004-05-28
16:00
[60ec4b38c0] part of check-in [6661bb5f9c] Factor common code for generating index keys into a procedure. Other speed improvements and bug fixes. (CVS 1487) (check-in: [6661bb5f9c] user: drh branch: trunk, size: 72926)
12:33
[3d6fd4a919] part of check-in [ad879a957d] Allow CREATE and DROP VIEW on attached databases. (CVS 1485) (check-in: [ad879a957d] user: danielk1977 branch: trunk, size: 73237)
12:11
[ebb6746232] part of check-in [2fb3708e10] Allow DROP TABLE and DROP INDEX on attached databases. (CVS 1484) (check-in: [2fb3708e10] user: danielk1977 branch: trunk, size: 73093)
11:37
[7ae5b3efeb] part of check-in [4984a130cc] Allow CREATE TABLE and CREATE INDEX on attached databases. (CVS 1483) (check-in: [4984a130cc] user: danielk1977 branch: trunk, size: 72919)
2004-05-22
08:09
[35cbeb439b] part of check-in [7f00ca5801] Store the text encoding in the database (as meta value 4). (CVS 1435) (check-in: [7f00ca5801] user: danielk1977 branch: trunk, size: 69215)
2004-05-21
13:39
[95969f37eb] part of check-in [5524075ec0] Remove the OP_SetFound opcode and its cousins. (CVS 1430) (check-in: [5524075ec0] user: drh branch: trunk, size: 69109)
01:29
[1d71deac55] part of check-in [0736b7e840] Sorting bug fixes. Now only 17 tests fail. (CVS 1422) (check-in: [0736b7e840] user: drh branch: trunk, size: 69114)
2004-05-20
22:16
[ec02b35d54] part of check-in [a6cb09d7af] Add internal support for collating sequences. This breaks 244 tests. (CVS 1420) (check-in: [a6cb09d7af] user: drh branch: trunk, size: 69143)
12:41
[7310eb68de] part of check-in [8411718f0a] Fix problems with types and the recognition of BLOB as having no affinity. (CVS 1418) (check-in: [8411718f0a] user: drh branch: trunk, size: 67875)
12:10
[c3e7b98a5b] part of check-in [948307f07d] Default type affinity is now NUMERIC. The affinity.html file checked into the doc directory. (CVS 1417) (check-in: [948307f07d] user: drh branch: trunk, size: 67869)
2004-05-18
09:58
[84a9b37700] part of check-in [a62872aacd] Fix many problems with manifest types and column affinity. Most things are working now. (CVS 1392) (check-in: [a62872aacd] user: danielk1977 branch: trunk, size: 67749)
01:23
[ddb0384afd] part of check-in [202a470f2c] Omit the '\0' at the end of UTF-8 strings on disk (it is implied). Also don't store the number of rows at the beginning of each table record. (CVS 1390) (check-in: [202a470f2c] user: danielk1977 branch: trunk, size: 67706)
2004-05-16
11:57
[fd37eda710] part of check-in [5cba8a510c] Fix two bugs that were causing lots of tests to fail. (CVS 1386) (check-in: [5cba8a510c] user: danielk1977 branch: trunk, size: 67565)
11:15
[6c0463907b] part of check-in [a4af838f8d] More changes to support the manifest type model. A few things are currently broken. (CVS 1385) (check-in: [a4af838f8d] user: danielk1977 branch: trunk, size: 67565)
2004-05-14
11:00
[e93f443a20] part of check-in [dbfe6e9316] Implement type affinity for table and index records (CVS 1375) (check-in: [dbfe6e9316] user: danielk1977 branch: trunk, size: 67504)
2004-05-12
11:24
[f25e4ac9f1] part of check-in [2f16c9ef3c] Add some more code to support manifest typing in indices. Not activated yet. (CVS 1362) (check-in: [2f16c9ef3c] user: danielk1977 branch: trunk, size: 67442)
2004-05-11
07:11
[97d8b3fc6c] part of check-in [dfde112116] Remove code dealing with old file formats. (CVS 1354) (check-in: [dfde112116] user: danielk1977 branch: trunk, size: 67362)
06:55
[165424adf8] part of check-in [941d0fdc97] More minor changes to accomadate the new btree. All the select* tests pass now. (CVS 1353) (check-in: [941d0fdc97] user: danielk1977 branch: trunk, size: 67429)
2004-05-10
10:34
[8d9965b3ce] part of check-in [ba2ba24263] Change the names of external symbols from sqlite_XXX to sqlite3_XXX. (CVS 1337) (check-in: [ba2ba24263] user: danielk1977 branch: trunk, size: 67517)
01:17
[44ee22de81] part of check-in [37ae528fb8] Change some code that assumes the root-page of sqlite_master is 2 (it is now 1) (CVS 1333) (check-in: [37ae528fb8] user: danielk1977 branch: trunk, size: 67508)
2004-05-08
08:23
[21b6645c96] part of check-in [8af6474c49] Change lots of internal symbols from sqliteXXX to sqlite3XXX so that the library links again. It doesn't work yet, due to changes in the btree layer calling convention. (CVS 1324) (check-in: [8af6474c49] user: danielk1977 branch: trunk, size: 67498)
2004-04-23
17:04
[76fbca3008] part of check-in [7ace576215] Get the temp_store and default_temp_store pragmas working. Update the documentation. Also fix a malloc problem that popped up during the regression testing. (CVS 1302) (check-in: [7ace576215] user: drh branch: trunk, size: 67180)
2004-02-24
01:04
[c8ab8b467d] part of check-in [2af1f065b5] Make sure BEGIN, COMMIT, and ROLLBACK are really no-ops when preceded by EXPLAIN. Ticket #626. (CVS 1267) (check-in: [2af1f065b5] user: drh branch: trunk, size: 67204)
2004-02-22
20:05
[85dee2c7d2] part of check-in [51f1e8f753] Use sqliteVdbeOp3 instead of sqliteVdbeChangeP3 where applicable. (CVS 1266) (check-in: [51f1e8f753] user: drh branch: trunk, size: 67072)
18:56
[dbeef48d1f] part of check-in [9211e14cf8] Code cleanup in build.c. (CVS 1265) (check-in: [9211e14cf8] user: drh branch: trunk, size: 67511)
18:40
[160e623334] part of check-in [69aac043af] Use sqliteErrorMsg instead of sqliteSetString whereever practical. (CVS 1264) (check-in: [69aac043af] user: drh branch: trunk, size: 67838)
2004-02-21
13:31
[f6ef61a2b9] part of check-in [8e3eda2a90] More code cleanup and size reduction. (CVS 1256) (check-in: [8e3eda2a90] user: drh branch: trunk, size: 68735)
2004-02-14
23:59
[e6d71a3bab] part of check-in [2dbc4593ca] Eliminate obsolete code associated with the older callback functionality. (CVS 1243) (check-in: [2dbc4593ca] user: drh branch: trunk, size: 68727)
23:05
[f8cef53c4e] part of check-in [af5c2be4ae] Eliminate the use of callbacks during schema initialization. (CVS 1242) (check-in: [af5c2be4ae] user: drh branch: trunk, size: 69775)
16:31
[94fdf4d8ab] part of check-in [9771ad1e81] The sqlite_exec() function is now implemented using sqlite_compile() and sqlite_step(). This opens up lots of opportunity to remove old code. (CVS 1240) (check-in: [9771ad1e81] user: drh branch: trunk, size: 69796)
2004-02-13
16:22
[f25e983065] part of check-in [aa0490ccd4] Fix a bug in the query flattener when trying to find the datatype of the rowid of a view. Also fix a problem with sqlite_compile() and authorization failures. (CVS 1236) (check-in: [aa0490ccd4] user: drh branch: trunk, size: 69771)
2004-02-12
18:46
[2a02df7931] part of check-in [800c11f4bc] Add hooks on each attached database connection for storing auxiliary information. Add the USING clause to ATTACH. (CVS 1232) (check-in: [800c11f4bc] user: drh branch: trunk, size: 69650)
2004-02-11
09:46
[05ee0d69c7] part of check-in [f2bdccf4bb] Refactor the interface to the randomness generator. (CVS 1224) (check-in: [f2bdccf4bb] user: drh branch: trunk, size: 69453)
2004-01-19
04:55
[0fdb0ce4bd] part of check-in [de35c36ed7] comment typos (CVS 1191) (check-in: [de35c36ed7] user: jplyon branch: trunk, size: 69423)
2004-01-16
20:01
[4b95b20051] part of check-in [6604e5f7d3] Access to free()ed memory problem fixed. Found by electric fence. Only an issue when doing an EXPLAIN of a CREATE INDEX. (CVS 1186) (check-in: [6604e5f7d3] user: drh branch: trunk, size: 69419)
2003-12-06
21:43
[a7493c433d] part of check-in [656c90387a] Always use "(char*)0" to terminate the argument list of sqliteSetString(). This is needed for 64-bit systems that use a 32-bit integer by default. (CVS 1126) (check-in: [656c90387a] user: drh branch: trunk, size: 69407)
2003-11-27
00:48
[fede6bfb79] part of check-in [72bf73b2c1] Disallow temporary indices on persistent tables. (CVS 1122) (check-in: [72bf73b2c1] user: drh branch: trunk, size: 69288)
2003-09-06
22:18
[9def3a3b8f] part of check-in [990bb11898] Update Makefile.in for the new vdbeaux.c file. Remove the experimental "sqlite_instantiate()" routine and replace it with "sqlite_bind()" which is more like ODBC and JDBC. (CVS 1095) (check-in: [990bb11898] user: drh branch: trunk, size: 69392)
2003-08-24
16:38
[7cdc952664] part of check-in [ad7b017a12] Fix a bug in the new "pk" column of the table_info pragma that was added by check-in (1081). (CVS 1082) (check-in: [ad7b017a12] user: drh branch: trunk, size: 69314)
2003-08-23
22:40
[5b379f8b69] part of check-in [5232b0665b] Add a "pk" column to the table_info pragma which is true for each column that is part of the primary key. Add a "foreign_key_list" pragma that gives information about all foreign keys for a table. Both changes are experimental. (CVS 1081) (check-in: [5232b0665b] user: drh branch: trunk, size: 69314)
2003-07-30
12:34
[335a4db960] part of check-in [da62732554] The {quote: SrcList} object was not being expanded correctly by a call to sqliteSrcListAppend() if the {quote: SrcList} had previously been duplicated by a call to sqliteSrcListDup(). Ticket #416. This check-in fixes that problem by keeping a separate nAlloc field on {quote: SrcList}. A similar change is made to {quote: IdList} and {quote: ExprList} to avoid future problems. (CVS 1067) (check-in: [da62732554] user: drh branch: trunk, size: 69156)
2003-07-01
18:13
[13b6ae48ce] part of check-in [eb4582831d] Make sure indices in ATTACH-ed databases are put into the right hash table. Ticket #354. (CVS 1044) (check-in: [eb4582831d] user: drh branch: trunk, size: 69032)
2003-05-31
16:21
[936d10b33b] part of check-in [7202d4f1a8] Tighter binding of views, triggers, and indices to their respective databases. Ticket #323. Much more testing needs to be done to the sqliteFix...() routines in attach.c. (CVS 990) (check-in: [7202d4f1a8] user: drh branch: trunk, size: 69019)
2003-05-17
19:04
[3f5d1798e4] part of check-in [c8c823b068] Prevent an infinite loop when deleting a table that has a TEMP trigger. (CVS 984) (check-in: [c8c823b068] user: drh branch: trunk, size: 68603)
17:35
[95dfb188f4] part of check-in [01398fb78b] Fix problems with TEMP indices that lead to corrupt databases. These problems were discovered while working on ticket #317. No sure yet if that ticket is fixed. (CVS 981) (check-in: [01398fb78b] user: drh branch: trunk, size: 68781)
2003-05-02
14:32
[e24461d423] part of check-in [be7aed2011] VDBE cursors numbers for tables in a join do not have to be consecutive. This is one step on the road to fixing ticket #272. (CVS 947) (check-in: [be7aed2011] user: drh branch: trunk, size: 68027)
2003-05-01
16:56
[d35b7a6595] part of check-in [6d019e0baa] Correctly create an index that uses an INTEGER PRIMARY KEY as one of columns to be indexed. (CVS 946) (check-in: [6d019e0baa] user: drh branch: trunk, size: 68042)
2003-04-29
16:20
[6312904cbf] part of check-in [c6bf62e41c] The sqlite_complete() function should ignore carriage-return characters. (Oops - some unrelated edits also made it into this check-in.) (CVS 942) (check-in: [c6bf62e41c] user: drh branch: trunk, size: 67898)
2003-04-22
20:30
[d5a26baeff] part of check-in [c675a55041] Update the authorizer API so that it reports the database that table and indices belong to and so that it reports when actions are taken in response to a trigger. (CVS 928) (check-in: [c675a55041] user: drh branch: trunk, size: 67614)
2003-04-21
18:48
[90fc1b15d5] part of check-in [58ddd587b0] Add support for TEMPORARY triggers. Such triggers can write temporary or permanent tables. (CVS 926) (check-in: [58ddd587b0] user: drh branch: trunk, size: 67233)
2003-04-20
00:00
[66f8ca2457] part of check-in [7084e05093] Update comments. Remove unused field from the Index structure. (CVS 921) (check-in: [7084e05093] user: drh branch: trunk, size: 67031)
2003-04-17
22:57
[6694013c86] part of check-in [1e5e00fb73] Fix triggers to work in an ATTACHed database. Ticket #295. (CVS 915) (check-in: [1e5e00fb73] user: drh branch: trunk, size: 67050)
2003-04-15
01:19
[daed1dacdb] part of check-in [e76787f877] Change some variable names and comments in the new in-memory database file implementation. Partial (non-working) implementation of the VACUUM command. (CVS 904) (check-in: [e76787f877] user: drh branch: trunk, size: 65460)
2003-04-13
18:26
[77b910f739] part of check-in [96336bffde] Support in-memory databases for temp tables (CVS 903) (check-in: [96336bffde] user: paul branch: trunk, size: 65468)
2003-04-06
21:08
[f0c774c4c4] part of check-in [73359037ea] Split the implementation of COPY, PRAGMA, and ATTACH into separate source code files. (CVS 902) (check-in: [73359037ea] user: drh branch: trunk, size: 65453)
20:52
[da21ffe7da] part of check-in [b123c165fd] Move the implementation of VACUUM into a separate source file. (CVS 901) (check-in: [b123c165fd] user: drh branch: trunk, size: 87388)
2003-04-05
16:56
[8f158c26c8] part of check-in [51f515f28c] More testing of ATTACH and DETACH. (CVS 899) (check-in: [51f515f28c] user: drh branch: trunk, size: 87849)
03:42
[346e93724f] part of check-in [7a0f8024a1] Begin testing the new ATTACH and DETACH commands. (CVS 898) (check-in: [7a0f8024a1] user: drh branch: trunk, size: 86953)
2003-03-31
13:36
[81d31f2e63] part of check-in [e80afe75b3] Minor follow-on changes to the recent ATTACH patch. (CVS 892) (check-in: [e80afe75b3] user: drh branch: trunk, size: 86759)
02:12
[5ea24a62f4] part of check-in [1d3fc97721] Add the sqliteErrorMsg() function and use it to generate error message text during parsing and code generation. This simplifies the code somewhat and makes it easier to handle names with a database prefix. (CVS 891) (check-in: [1d3fc97721] user: drh branch: trunk, size: 86622)
00:30
[e56df7b1cc] part of check-in [c7c5e927a5] The ATTACH and DETACH statements are now coded but are still mostly untested. (CVS 890) (check-in: [c7c5e927a5] user: drh branch: trunk, size: 87051)
2003-03-30
00:19
[afe256e29f] part of check-in [b90d9de32d] Fix a memory leak in triggers and update tests to show the latest error message text. (CVS 886) (check-in: [b90d9de32d] user: drh branch: trunk, size: 83631)
2003-03-27
13:50
[0c14b18192] part of check-in [8a593e9c2d] Regression tests now work - except for some changes in error message text. The library is now safe to use for experimental work. (CVS 885) (check-in: [8a593e9c2d] user: drh branch: trunk, size: 83481)
12:51
[abd5da3892] part of check-in [d2fb2bb50c] Changes to the "sqlite" structure that allow simultaneous operations on multiple database files. Many regession tests pass - but not all of them. Do not use this version except for debugging SQLite itself. (CVS 883) (check-in: [d2fb2bb50c] user: drh branch: trunk, size: 83458)
2003-03-20
01:16
[a965338bee] part of check-in [a5d8fc95ee] Record the database name in addition to the table name for DELETE, INSERT, and UPDATE statements. (CVS 879) (check-in: [a5d8fc95ee] user: drh branch: trunk, size: 82394)
2003-03-19
03:14
[be6db117e9] part of check-in [875da9eed9] Modifications to the VDBE to support more than one database file. (CVS 878) (check-in: [875da9eed9] user: drh branch: trunk, size: 81196)
2003-03-01
19:45
[25d5f901c4] part of check-in [620e1065e9] Get the non-callback API working with the EXPLAIN keyword and for PRAGMAs. Tickets #258 and #257. Update the API documentation on the sqlite_changes() routine to explain how it works with the non-callback API. Ticket #250. (CVS 875) (check-in: [620e1065e9] user: drh branch: trunk, size: 80690)
2003-02-26
13:52
[02a106e40f] part of check-in [66158843df] Fix a memory leak associated with PRIMARY KEY in a CREATE TABLE statement that fails. Ticket #249. (CVS 1730) (check-in: [66158843df] user: drh branch: trunk, size: 81072)
2003-02-12
14:09
[757b1a3743] part of check-in [792a9e157d] Added the new FULL option to the SYNCHRONOUS pragma. Still need to test it. (CVS 863) (check-in: [792a9e157d] user: drh branch: trunk, size: 80969)
2003-02-01
13:53
[f13728865b] part of check-in [65264780c5] When a CREATE TABLE ... AS SELECT statement fails, make sure the table name is removed from the internal hash tables. Ticket #238. (CVS 858) (check-in: [65264780c5] user: drh branch: trunk, size: 79710)
2003-01-29
18:46
[6e0310086b] part of check-in [ccc82f1ab4] Better error messages on constraint violations. Additional tests and bug fixes for the callback-free API. (CVS 854) (check-in: [ccc82f1ab4] user: drh branch: trunk, size: 79691)
2003-01-28
23:13
[1a4c0d7186] part of check-in [065fa818ff] First code for the new callback-free API. All regression tests pass but the new API is mostly untested and is unlikely to work. (CVS 852) (check-in: [065fa818ff] user: drh branch: trunk, size: 79571)
2003-01-25
14:34
[d6716dae74] part of check-in [18f4ffaa2e] Remove an unused variable. (CVS 848) (check-in: [18f4ffaa2e] user: drh branch: trunk, size: 78998)
2003-01-18
20:11
[0454fd02e1] part of check-in [71cc292dce] Fix datatype reporting and collating sequence selection so that it works correctly on views and with the UNION, EXCEPT, and INTERCEPT operators. (CVS 839) (check-in: [71cc292dce] user: drh branch: trunk, size: 79031)
2003-01-14
02:54
[3bf5d10439] part of check-in [ba58979f2f] Fix a memory leak in the PRAGMA authorization code. (CVS 833) (check-in: [ba58979f2f] user: drh branch: trunk, size: 79216)
02:49
[e107e7b837] part of check-in [cc2ae781ac] More tests of the sqlite_set_authorizer() API together with fixes for bugs that the new tests uncovered. (CVS 832) (check-in: [cc2ae781ac] user: drh branch: trunk, size: 79160)
2003-01-13
23:27
[94cd4ed172] part of check-in [45de93f913] Revise the sqlite_set_authorizer API to provide more detailed information about the SQL statement being authorized. Only partially tested so far. (CVS 830) (check-in: [45de93f913] user: drh branch: trunk, size: 78888)
2003-01-12
18:02
[3136d7fc76] part of check-in [52d5007f64] Initial check-in of the code for the new sqlite_set_authorizer() API function. The code is mostly untested at this point. (CVS 827) (check-in: [52d5007f64] user: drh branch: trunk, size: 77308)
2003-01-11
13:30
[f355fa02bb] part of check-in [86deb12d68] Remove the ColumnCount opcode, which had become a no-op. (CVS 821) (check-in: [86deb12d68] user: drh branch: trunk, size: 76504)
2003-01-02
14:43
[8569ac0146] part of check-in [db745e87dc] Code optimizations to help the library run faster. (CVS 808) (check-in: [db745e87dc] user: drh branch: trunk, size: 76883)
2002-12-03
02:22
[415dce8886] part of check-in [dbf7893234] Honor ORDER BY clauses in VIEWs. Ticket #193. (CVS 792) (check-in: [dbf7893234] user: drh branch: trunk, size: 76877)
2002-12-02
04:25
[ede692549c] part of check-in [fa5c042585] Change to the pager to avoid opening journal files unnecessarily. This can sometimes results in a significant speed improvement. (CVS 791) (check-in: [fa5c042585] user: drh branch: trunk, size: 77023)
2002-10-20
16:00
[1559232f68] part of check-in [395ab5fac2] The "table_info" pragma reports unspecified column types as "numeric" instead of "text". Fix for ticket #174. (CVS 767) (check-in: [395ab5fac2] user: drh branch: trunk, size: 77044)
2002-09-25
19:04
[37e1937820] part of check-in [b0d27a377a] Bug fix: When multiple SQL statements were passed into a single sqlite_exec() call, execution speed would decrease for each statement executed because VDBE cursors were not being reused. Now the cursors are reused and execution time is linear. (CVS 754) (check-in: [b0d27a377a] user: drh branch: trunk, size: 77020)
2002-09-21
15:57
[84f397a61b] part of check-in [14ebe30bf5] Make sure memory malloced() for structures is aligned on an even byte boundry. Solaris segfaults otherwise. (CVS 753) (check-in: [14ebe30bf5] user: drh branch: trunk, size: 76940)
2002-09-14
13:47
[d41b8da6b5] part of check-in [3f253afe15] Do not put a write lock on the main database file when writing to a temporary table. (CVS 750) (check-in: [3f253afe15] user: drh branch: trunk, size: 76935)
2002-08-31
18:53
[0116afe4f6] part of check-in [170711ca65] Parse foreign key constraints and populate internal data structures appropriately. Constraints are still not enforced. (CVS 738) (check-in: [170711ca65] user: drh branch: trunk, size: 76524)
2002-08-24
18:24
[b367b4a839] part of check-in [22d8726e61] Change the way token memory is allocated in an effort to fix ticket #136. There is now a memory leak when using views of views. (CVS 725) (check-in: [22d8726e61] user: drh branch: trunk, size: 71199)
2002-08-18
20:28
[d8ce4507c1] part of check-in [df51cb166b] Fix for ticket #110: return an error if trying to start a transaction within a transaction or when attempting to commit or rollback outside of a transaction. (CVS 721) (check-in: [df51cb166b] user: drh branch: trunk, size: 70893)
2002-08-15
01:26
[35d7ec1e3d] part of check-in [66a0f6a8e2] Fixes and test improvements resulting from code coverage testing. (CVS 716) (check-in: [66a0f6a8e2] user: drh branch: trunk, size: 70513)
2002-08-02
10:36
[0d661e653e] part of check-in [bdbdb866f2] Remove the restriction that a transaction cannot be started by one linuxthread and continued by another. Leave in the documentation the warning about not carrying a database connection across fork() but do not test for it any more. Ticket #130. (CVS 701) (check-in: [bdbdb866f2] user: drh branch: trunk, size: 70409)
2002-07-18
00:34
[2f81c83728] part of check-in [20d152fcdd] Fix for ticket #107: Fix a design defect in indices that was causing queries to fail when using an index on a column containing an empty string. This fix is an incompatible file-format change. (CVS 681) (check-in: [20d152fcdd] user: drh branch: trunk, size: 70442)
2002-07-13
17:23
[81d0f42ae5] part of check-in [72a609ec64] Partial fix for ticket #96: Return SQLITE_MISUSE from sqlite_exec() if called from a child process with an active transaction that was started in the parent. (CVS 675) (check-in: [72a609ec64] user: drh branch: trunk, size: 70442)
03:11
[58ce73da93] part of check-in [0603eb74e6] Fix for ticket #95: Do not allow automatically created indices (associated with UNIQUE or PRIMARY KEY constraints) to be dropped. (CVS 671) (check-in: [0603eb74e6] user: drh branch: trunk, size: 70409)
2002-07-11
12:18
[d8318cd8aa] part of check-in [b98727246d] Turn of the reporting of datatypes in the 4th callback argument unless the SHOW_DATATYPES pragma is ON. Eliminate the NULL pointer that used to separate the beginning of datatypes from the end of column names so that the callback can test to see whether or not datatypes are provided. This is an incompatible changes, but since the prior behavior was never documented, we will let it in. (CVS 670) (check-in: [b98727246d] user: drh branch: trunk, size: 70187)
2002-07-08
22:03
[e5a3e6bcd4] part of check-in [87cd10c1f6] Add support for TEMPORARY views. The code is here but it is mostly untested. (CVS 668) (check-in: [87cd10c1f6] user: drh branch: trunk, size: 70001)
2002-07-05
21:42
[ea4a3bc15d] part of check-in [b4737a16c9] All the code is now in place for SQLite to distinguish between NUMERIC and TEXT datatypes. Still need to turn on the new code and test it. (CVS 659) (check-in: [b4737a16c9] user: drh branch: trunk, size: 69943)
2002-06-28
12:18
[0834185cbe] part of check-in [96515b813e] Additional test cases added. The following bug fixed: A segfault was occurring if a VIEW consisted of a join with a USING clause. (CVS 651) (check-in: [96515b813e] user: drh branch: trunk, size: 68577)
2002-06-25
13:16
[c288c2428a] part of check-in [52eba4de30] Enhance the INTEGRITY_CHECK pragma to test the auxiliary database file in addition to the main database file. (CVS 642) (check-in: [52eba4de30] user: drh branch: trunk, size: 68425)
01:09
[846eb3ee0e] part of check-in [9c1432bf74] Added support for the "sqlite_temp_master" table. Increased the version number to 2.5.2. (CVS 640) (check-in: [9c1432bf74] user: drh branch: trunk, size: 68049)
2002-06-20
11:36
[95eac6ce4a] part of check-in [cbbc858d97] This patch contains the beginnings of the data-typing infrastructure. The new build-in TypeOf() function is added. New opcodes for doing pure text comparisons are added. Most changes are disabled pending the 2.6.0 release. (CVS 632) (check-in: [cbbc858d97] user: drh branch: trunk, size: 73330)
2002-06-17
17:07
[f4633493f5] part of check-in [05783a9db5] Add preliminary logic for the eventual move to having separate TEXT and NUMTEXT datatypes. Also change the version number to 2.5.0 in preparation for an interim release. (CVS 625) (check-in: [05783a9db5] user: drh branch: trunk, size: 72684)
2002-05-24
20:31
[36e42718a7] part of check-in [99bd1f5b9a] Initial implementation of LEFT OUTER JOIN including the expanded SQL92 join syntax. The basic functionality is there but there is still a lot of testing to do. (CVS 587) (check-in: [99bd1f5b9a] user: drh branch: trunk, size: 71708)
02:04
[48bb306676] part of check-in [a167b71d8c] Split the IdList structure into IdList and SrcList. SrcList is used to represent a FROM clause and IdList is used for everything else. This change allows SrcList to grow to support outer joins without burdening the other uses of IdList. (CVS 584) (check-in: [a167b71d8c] user: drh branch: trunk, size: 71408)
2002-05-22
21:27
[d88ad651be] part of check-in [ba1953abd0] Fix for ticket #46: Report an error if a CREATE TABLE contains two or more columns with the same name. (CVS 578) (check-in: [ba1953abd0] user: drh branch: trunk, size: 70151)
2002-05-21
11:38
[f5aa02e455] part of check-in [37dbdd551e] Additional code cleanup resulting from a review of the new trigger code. (CVS 572) (check-in: [37dbdd551e] user: drh branch: trunk, size: 69905)
2002-05-19
23:43
[f6d2f42880] part of check-in [8a4195c746] Style fixes to triggers code in various *.c files (partial fix to ticket #39) (CVS 571) (check-in: [8a4195c746] user: danielk1977 branch: trunk, size: 70236)
2002-05-15
12:45
[705ebd993a] part of check-in [b10346818b] Beginning to clean up the trigger code. Still lots of work to do. (CVS 566) (check-in: [b10346818b] user: drh branch: trunk, size: 70228)
11:44
[74f19f9001] part of check-in [690f9a1631] Remove all tabs from the beginning of source code lines. Replace tabs with the appropriate number of spaces. (CVS 565) (check-in: [690f9a1631] user: drh branch: trunk, size: 70198)
08:30
[cbf1b552d3] part of check-in [794bf67b6b] Added FOR EACH ROW triggers functionality (CVS 562) (check-in: [794bf67b6b] user: danielk1977 branch: trunk, size: 70084)
2002-05-08
21:30
[6a50645032] part of check-in [5f22d21571] Fix for ticket #34: VIEWs ignore their ORDER BY clause. (CVS 556) (check-in: [5f22d21571] user: drh branch: trunk, size: 67715)
2002-03-06
22:01
[d01b81f414] part of check-in [161c0c5f5d] Added the default_cache_size and default_synchronous pragmas. Added additional tests for pragmas. Added a new speedtest script. (CVS 421) (check-in: [161c0c5f5d] user: drh branch: trunk, size: 67568)
2002-03-05
01:11
[0f3c6b6482] part of check-in [414da4af1f] Add the ability to turn of calls to fsync() using the "synchronous" pragma. Increased the default cache size from 100 to 2000 and made the "cache_size" pragma persistent. (CVS 418) (check-in: [414da4af1f] user: drh branch: trunk, size: 62598)
2002-03-04
02:26
[e11b0daa79] part of check-in [36a8fe0ad0] Updates to the documentation. Changed version number to 2.4.0-beta1 (CVS 417) (check-in: [36a8fe0ad0] user: drh branch: trunk, size: 60657)
2002-03-03
23:06
[5b91d41cbe] part of check-in [8130776230] More bugs fixed for views. (CVS 416) (check-in: [8130776230] user: drh branch: trunk, size: 60947)
18:59
[7c65eeab96] part of check-in [6121e5ab93] VIEWs are bound to tables when they are used, not when they are first entered. This works around the problem of what to do if a table is deleted that a view refers to. (CVS 415) (check-in: [6121e5ab93] user: drh branch: trunk, size: 60227)
2002-03-02
17:04
[2f6d3136e6] part of check-in [d5d3e79cc5] Subquery flattening is implemented and passes all regression tests. We still need to add addition tests to the suite to further exercise the flattener, however. (CVS 408) (check-in: [d5d3e79cc5] user: drh branch: trunk, size: 57285)
2002-02-27
01:47
[7ada2426ca] part of check-in [668ef6380e] Bug fixes in the VIEW implementation. (CVS 396) (check-in: [668ef6380e] user: drh branch: trunk, size: 57292)
2002-02-23
02:32
[1da051784b] part of check-in [39fed2df11] Code to implement CREATE VIEW is in place. A quick smoke test shows that it works, but there are probably still many bugs. (CVS 387) (check-in: [39fed2df11] user: drh branch: trunk, size: 57511)
2002-02-21
12:01
[4e10d8e619] part of check-in [b2a9807fed] Change the SQLITE_MASTER format to version 2 in preparation for adding views. (CVS 386) (check-in: [b2a9807fed] user: drh branch: trunk, size: 58414)
2002-02-19
13:39
[088acf87a9] part of check-in [c6e9048e66] Change the name of the sanity_check PRAGMA to "integrity_check" and make it available on all compiles. (CVS 381) (check-in: [c6e9048e66] user: drh branch: trunk, size: 57401)
2002-02-18
22:49
[955a0094f4] part of check-in [553579f936] Bug fix: CREATE TABLE, followed by DROP TABLE within the same transaction is working now. (CVS 378) (check-in: [553579f936] user: drh branch: trunk, size: 57420)
18:30
[6643e708b9] part of check-in [78a50971e9] Add support for CREATE TABLE AS. (CVS 377) (check-in: [78a50971e9] user: drh branch: trunk, size: 57428)
2002-02-03
17:37
[29504057ac] part of check-in [7c65029e5b] Put in PRAGMA SANITY_CHECK in place of VACUUM. (CVS 365) (check-in: [7c65029e5b] user: drh branch: trunk, size: 54792)
03:34
[a8851852bd] part of check-in [95d1f8389d] The VACUUM command now does a database sanity check. (CVS 364) (check-in: [95d1f8389d] user: drh branch: trunk, size: 54692)
00:56
[0c7346d052] part of check-in [0115518f8e] Five-algorithm conflict resolution appears to be working. (CVS 363) (check-in: [0115518f8e] user: drh branch: trunk, size: 55063)
2002-02-02
18:49
[397d78ce46] part of check-in [9be4d4c6f1] Get the ABORT conflict resolution algorithm working. (CVS 362) (check-in: [9be4d4c6f1] user: drh branch: trunk, size: 55207)
2002-01-31
15:54
[f725dc396d] part of check-in [d0e7cf4a83] Change to five conflict resolution algorithms: ROLLBACK, ABORT, FAIL, IGNORE, and REPLACE. This checkin is code only. Documentation and tests are still needed. Also, ABORT is not fully implemented. (CVS 360) (check-in: [d0e7cf4a83] user: drh branch: trunk, size: 54438)
2002-01-30
16:17
[78571589a3] part of check-in [cf1538d71c] Added ON CONFLICT support to COPY. Updates to documentation. Bug fixes. (CVS 359) (check-in: [cf1538d71c] user: drh branch: trunk, size: 54759)
2002-01-29
23:07
[c55881f270] part of check-in [ac8a4189e2] The new ON CONFLICT logic is in and passes the legacy tests. But the new capabilities have not been tested and are likely broken. (CVS 356) (check-in: [ac8a4189e2] user: drh branch: trunk, size: 54620)
18:41
[c5023252c4] part of check-in [e00a9ff8f9] Beginning to insert the infrastructure for ON CONFLICT clauses. (CVS 355) (check-in: [e00a9ff8f9] user: drh branch: trunk, size: 54572)
2002-01-28
15:53
[3f40a6e6ce] part of check-in [dbcfe198fb] Bug fix: The IN operator was not working if either side derived from an INTEGER PRIMARY KEY. (CVS 354) (check-in: [dbcfe198fb] user: drh branch: trunk, size: 53835)
2002-01-22
03:13
[bf8456b560] part of check-in [3684beab0f] The right-hand side of an AS in a SELECT can be used within expressions of the WHERE, ORDER BY, GROUP BY, and/or HAVING clauses. (CVS 350) (check-in: [3684beab0f] user: drh branch: trunk, size: 53817)
2002-01-10
14:31
[d44fbcfaf0] part of check-in [ba89da6031] Fix a problem with the way temporary tables mask permanent tables. (CVS 345) (check-in: [ba89da6031] user: drh branch: trunk, size: 54130)
2002-01-09
13:30
[1acab23d8d] part of check-in [0a3aa99e11] Continued work on the DROP/CREATE problem. (CVS 343) (check-in: [0a3aa99e11] user: drh branch: trunk, size: 54070)
03:19
[66195e4535] part of check-in [b3656a5cfe] Working on a bug: Dropping and recreating a table within a transaction causes an assertion failure. (CVS 342) (check-in: [b3656a5cfe] user: drh branch: trunk, size: 53938)
2001-12-22
14:49
[6c01002e98] part of check-in [29cab124b4] Bug fixing in the new integer primary key code. (CVS 334) (check-in: [29cab124b4] user: drh branch: trunk, size: 51625)
2001-12-21
14:30
[36b3bf95bb] part of check-in [236a54d289] Added support for the INTEGER PRIMARY KEY column type. (CVS 333) (check-in: [236a54d289] user: drh branch: trunk, size: 51249)
2001-12-15
02:35
[5127f73783] part of check-in [96f7074136] Fix a critical bug in the creation of temporary tables. (CVS 327) (check-in: [96f7074136] user: drh branch: trunk, size: 49401)
2001-12-05
00:21
[83733f9625] part of check-in [585ed5ebf1] Bug fix: sqlite_exec() would sometimes return SQLITE_PROTOCOL when it should have returned SQLITE_BUSY. There was also a deadlock that the previous bug was masking. (CVS 322) (check-in: [585ed5ebf1] user: drh branch: trunk, size: 49393)
2001-11-22
00:01
[2e21d42532] part of check-in [a9db1c12c5] Fix a bug in the locking protocol. (CVS 315) (check-in: [a9db1c12c5] user: drh branch: trunk, size: 49395)
2001-11-21
02:21
[1610233149] part of check-in [03673adbfe] Attempting to add support for 64-bit platforms. (CVS 314) (check-in: [03673adbfe] user: drh branch: trunk, size: 49201)
2001-11-07
16:48
[40b7d14435] part of check-in [decbeb9151] New Next opcode and indexing style implemented. (CVS 304) (check-in: [decbeb9151] user: drh branch: trunk, size: 49195)
14:22
[b459cbe33e] part of check-in [e6ca23fa45] Incremental update. We are in the middle of modifying the index system to support range queries without doing a complete table scan. (CVS 303) (check-in: [e6ca23fa45] user: drh branch: trunk, size: 49297)
2001-11-06
14:10
[65438f9291] part of check-in [177012249a] Added support for LIMIT. (CVS 302) (check-in: [177012249a] user: drh branch: trunk, size: 49297)
2001-10-22
02:58
[8857c16751] part of check-in [f8328a5f11] More changes for 2.0.7. (CVS 293) (check-in: [f8328a5f11] user: drh branch: trunk, size: 49288)
2001-10-19
16:44
[d18081e69b] part of check-in [8467d84fc6] Version 2.0.6 (CVS 291) (check-in: [8467d84fc6] user: drh branch: trunk, size: 48793)
2001-10-15
00:44
[fe71d51614] part of check-in [747bf1b30b] Added support for the COUNT_CHANGES pragma in order to help out the ODBC driver. Fixed a but on count(*) when applied to empty tables. (CVS 289) (check-in: [747bf1b30b] user: drh branch: trunk, size: 48597)
2001-10-13
02:59
[9c3e3634b2] part of check-in [75e90cf09b] 2.0.3 (CVS 287) (check-in: [75e90cf09b] user: drh branch: trunk, size: 48416)
01:06
[191f9ec9dd] part of check-in [288ef1247b] Remove the P3 and label arguments from the internal sqliteVdbeAddOp() function. This makes the code easier to read and perhaps smaller as well. (CVS 286) (check-in: [288ef1247b] user: drh branch: trunk, size: 48383)
2001-10-12
17:30
[cb3607c86f] part of check-in [0a7848b619] Fix an assertion failure when the disk fills up. Add tests for a full disk situation. (CVS 285) (check-in: [0a7848b619] user: drh branch: trunk, size: 47919)
2001-10-09
04:19
[707f6ef58d] part of check-in [484b82d8a1] Fix the locking protocol. (CVS 280) (check-in: [484b82d8a1] user: drh branch: trunk, size: 47042)
2001-10-08
13:22
[55ca22cd7a] part of check-in [9368c62e40] Support for temporary tables added. Still need more testing. (CVS 279) (check-in: [9368c62e40] user: drh branch: trunk, size: 47042)
2001-10-06
16:33
[7cbac6c3a5] part of check-in [b63b3f3684] Adding table column query capability to support ODBC. (CVS 278) (check-in: [b63b3f3684] user: drh branch: trunk, size: 42818)
2001-09-27
15:11
[64a7325c14] part of check-in [116fdad068] Fixed the support of UNIQUE and PRIMARY KEY. (CVS 268) (check-in: [116fdad068] user: drh branch: trunk, size: 39570)
03:22
[501c96f822] part of check-in [34c42967f3] Added basic support for enforcement of UNIQUE on indices and primary keys. Support for addition constraints is to follow. (CVS 267) (check-in: [34c42967f3] user: drh branch: trunk, size: 40159)
2001-09-24
03:12
[6a27cbfabc] part of check-in [a462c85083] Tests for inserting lots of data (~64K) into a single row of a table. (CVS 264) (check-in: [a462c85083] user: drh branch: trunk, size: 40026)
2001-09-23
19:46
[17ba9b8594] part of check-in [bd7d6a64af] Additional test cases with locking fixes. Also, make the code thread-safe. (CVS 262) (check-in: [bd7d6a64af] user: drh branch: trunk, size: 39938)
02:35
[8dbdcce4b9] part of check-in [337b3d3b2a] Fixes to the locking and rollback behavior. (CVS 261) (check-in: [337b3d3b2a] user: drh branch: trunk, size: 39936)
2001-09-22
18:12
[8af632a802] part of check-in [9114420dd0] Put in a generic hash table system in place of the various ad-hoc hash table scattered everywhere. Except, the page hash table in the pager is unchanged. (CVS 260) (check-in: [9114420dd0] user: drh branch: trunk, size: 39656)
2001-09-17
20:25
[072d6cf5b8] part of check-in [602ea4f9f6] Add a new column in the SQLITE_MASTER table to record the root page number of primary key indices. (CVS 252) (check-in: [602ea4f9f6] user: drh branch: trunk, size: 39723)
2001-09-16
00:13
[c311b8d11b] part of check-in [4e926efe2b] Disclaimed copyright. Preparing for release 2.0. (CVS 250) (check-in: [4e926efe2b] user: drh branch: trunk, size: 38869)
2001-09-15
00:57
[8359e553db] part of check-in [14474fa144] Everything is working on Linux. This is release 2.0-Alpha-1. (CVS 246) (check-in: [14474fa144] user: drh branch: trunk, size: 39344)
2001-09-14
18:54
[b5c682960b] part of check-in [5e3724603e] Added a PRAGMA statement. Took out the special comment parsing. (CVS 245) (check-in: [5e3724603e] user: drh branch: trunk, size: 37274)
03:24
[d639146a7d] part of check-in [e7b65e37fd] All tests now pass. But there are still issues. For example, inserts are way too slow. And additional tests are needed for new features. (CVS 243) (check-in: [e7b65e37fd] user: drh branch: trunk, size: 35556)
2001-09-13
21:53
[ebc3ecd58f] part of check-in [62c7bd11bc] Many problems fixed. Many problems yet to go. (CVS 242) (check-in: [62c7bd11bc] user: drh branch: trunk, size: 35484)
16:18
[5839600c9f] part of check-in [9ac8399c99] It runs. Simple tables can be created. INSERT and SELECT work. Much more testing is needed, however. (CVS 241) (check-in: [9ac8399c99] user: drh branch: trunk, size: 34121)
14:46
[58020177a1] part of check-in [a0a1e701ab] The BTree changes are now integrated and the whole thing compiles and links. I have not yet tried to run it, though. (CVS 239) (check-in: [a0a1e701ab] user: drh branch: trunk, size: 33443)
13:46
[5a990a2954] part of check-in [6ecc8b20d4] The code is in place to replace GDBM with BTree. But I have not yet attempted to compile it. I am sure the code contains bugs. (CVS 238) (check-in: [6ecc8b20d4] user: drh branch: trunk, size: 33496)
2001-04-15
00:37
[4f6a2d551c] part of check-in [f82fa7070a] Pager is working, mostly. (CVS 211) (check-in: [f82fa7070a] user: drh branch: trunk, size: 30672)
2001-04-11
14:28
[6afbb6106c] part of check-in [86b30cd097] better handling of out-of-memory errors (CVS 207) (check-in: [86b30cd097] user: drh branch: trunk, size: 29947)
2001-04-04
11:48
[4c5eede166] part of check-in [35a8feed0d] Added transaction support (CVS 196) (check-in: [35a8feed0d] user: drh branch: trunk, size: 28862)
2001-01-15
22:51
[7aa5879bf5] part of check-in [c6ffb7ec6a] continued progress toward version 2.0 (CVS 177) (check-in: [c6ffb7ec6a] user: drh branch: trunk, size: 27585)
2000-10-16
22:06
[e2ceba852d] part of check-in [f7ea08b931] Added an interrupt capability (CVS 153) (check-in: [f7ea08b931] user: drh branch: trunk, size: 27571)
2000-08-03
15:09
[4d90e9e947] part of check-in [4dabf5e4e6] bug fix (CVS 123) (check-in: [4dabf5e4e6] user: drh branch: trunk, size: 27503)
2000-08-02
13:47
[afdbf21315] part of check-in [b7b9023794] file format change (CVS 122) (check-in: [b7b9023794] user: drh branch: trunk, size: 27510)
2000-07-29
13:06
[ecb8ec7249] part of check-in [3bf434d93a] better column labels in select results (CVS 110) (check-in: [3bf434d93a] user: drh branch: trunk, size: 26883)
2000-07-28
14:32
[ac2e238356] part of check-in [4fe8e51c24] added the sqlite_busy_handler() interface (CVS 109) (check-in: [4fe8e51c24] user: drh branch: trunk, size: 26496)
2000-06-21
13:59
[55edb404bb] part of check-in [e1bf96a467] :-) (CVS 104) (check-in: [e1bf96a467] user: drh branch: trunk, size: 26426)
2000-06-17
13:12
[9ce11eafba] part of check-in [6ed35a1d47] :-) (CVS 101) (check-in: [6ed35a1d47] user: drh branch: trunk, size: 26416)
2000-06-08
13:36
[925a785da2] part of check-in [bf98cf82a7] remove all memory leaks (CVS 80) (check-in: [bf98cf82a7] user: drh branch: trunk, size: 26375)
2000-06-07
23:51
[5e3b6bab56] part of check-in [2ffeb8509c] :-) (CVS 74) (check-in: [2ffeb8509c] user: drh branch: trunk, size: 26365)
2000-06-05
18:54
[6c9454b2e2] part of check-in [c02268bdf4] :-) (CVS 52) (check-in: [c02268bdf4] user: drh branch: trunk, size: 26609)
2000-06-03
18:06
[15c4f38447] part of check-in [27c0678623] added default values (CVS 46) (check-in: [27c0678623] user: drh branch: trunk, size: 26509)
2000-06-02
13:27
[44a99167e5] part of check-in [2b55f9b790] :-) (CVS 37) (check-in: [2b55f9b790] user: drh branch: trunk, size: 25887)
01:17
[f56c47f08c] part of check-in [52338f4ab5] :-) (CVS 34) (check-in: [52338f4ab5] user: drh branch: trunk, size: 25674)
2000-05-31
15:34
[03f83e95d4] part of check-in [dee7a8be88] added aggregate functions like count(*) (CVS 21) (check-in: [dee7a8be88] user: drh branch: trunk, size: 25674)
02:27
[c6b5000779] part of check-in [01d85b35e9] :-) (CVS 20) (check-in: [01d85b35e9] user: drh branch: trunk, size: 47980)
2000-05-30
19:22
[335df4b65f] part of check-in [2d41caec80] :-) (CVS 18) (check-in: [2d41caec80] user: drh branch: trunk, size: 46834)
17:30
[82e7dfdf90] part of check-in [b56d1b9c0f] :-) (CVS 16) (check-in: [b56d1b9c0f] user: drh branch: trunk, size: 46582)
16:27
[971796c068] part of check-in [8d66c7355d] :-) (CVS 15) (check-in: [8d66c7355d] user: drh branch: trunk, size: 46548)
13:44
[bc81ec2f7c] part of check-in [1bb8ee8d9f] :-) (CVS 14) (check-in: [1bb8ee8d9f] user: drh branch: trunk, size: 43659)
03:12
[94d1bda19f] part of check-in [20f2811fc1] :-) (CVS 12) (check-in: [20f2811fc1] user: drh branch: trunk, size: 43656)
00:51
[6c7b4b79ed] part of check-in [9818723ee1] :-) (CVS 11) (check-in: [9818723ee1] user: drh branch: trunk, size: 43796)
2000-05-29
23:30
[56fd0763b1] part of check-in [fdf4b31a18] :-) (CVS 7) (check-in: [fdf4b31a18] user: drh branch: trunk, size: 43807)
17:44
[45dc91016e] part of check-in [53841c66c6] :-) (CVS 2) (check-in: [53841c66c6] user: drh branch: trunk, size: 43828)
14:26
Added: [64016990eb] part of check-in [6f3655f79f] initial check-in of the new version (CVS 1) (check-in: [6f3655f79f] user: drh branch: trunk, size: 43806)