SQLite

All files named ”src/tokenize.c”
Login

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

History for src/tokenize.c

2025-03-05
18:18
[3e37ac2b6c] part of check-in [373ae3f4de] Always ignore comments in the schema of a database, even if SQLITE_DBCONFIG_ENABLE_COMMENTS is turned off. (check-in: [373ae3f4de] user: drh branch: trunk, size: 29459)
2025-02-01
20:53
[375a772e23] part of check-in [79d287a394] Fix an issue with sqlite3_normalized_sql() caused by changes needed to support SQLITE_DBCONFIG_ENABLE_COMMENT. (check-in: [79d287a394] user: drh branch: trunk, size: 29267)
2025-01-31
01:34
[cedfe799fc] part of check-in [393749a2e2] Add the SQLITE_DBCONFIG_ENABLE_COMMENTS setting (default on) to enable or disable the ability to include comments in SQL input text. (check-in: [393749a2e2] user: drh branch: extra-security, size: 29244)
2024-12-06
18:35
[fe17e03175] part of check-in [8704034254] Add the SQLITE_PREPARE_DONT_LOG option for sqlite3_prepare_v3(), that prevents errors in the compilation of the SQL from being sent to sqlite3_log(). (check-in: [8704034254] user: drh branch: trunk, size: 29131)
2024-08-26
12:26
[6fac7f14dd] part of check-in [3c7a5cc6d0] Reduce rules added to the grammar. Kinda works, but there are still bugs. (check-in: [3c7a5cc6d0] user: drh branch: sql-pipes, size: 29162)
2024-01-23
11:20
[3f703cacda] part of check-in [d57407ef59] Add extra checks for the validity of a numeric literal to sqlite3DequoteNumber(). (check-in: [d57407ef59] user: dan branch: digit-separators, size: 29063)
2024-01-22
19:38
[3ea60fcd98] part of check-in [81a5622946] Allow underscores to occur in hex literals. (check-in: [81a5622946] user: dan branch: digit-separators, size: 29437)
19:00
[f283d8017b] part of check-in [b15bbb201a] Add extra tests for the code on this branch. (check-in: [b15bbb201a] user: dan branch: digit-separators, size: 29065)
17:18
[1664cd0d92] part of check-in [5bbc378a30] Do not allow digit separators that are not surrounded on both sides by digits. (check-in: [5bbc378a30] user: drh branch: digit-separators, size: 28936)
2024-01-20
16:46
[e0cdd971eb] part of check-in [49f29a7b4f] Add test cases for the new code on this branch. (check-in: [49f29a7b4f] user: dan branch: digit-separators, size: 28690)
16:18
[b3ab5ee644] part of check-in [401650aacc] Allow "_" characters to appear following any digit in an integer or real SQL literal. (check-in: [401650aacc] user: dan branch: digit-separators, size: 28582)
2023-08-10
18:50
[23d9f45398] part of check-in [b2fdac0b15] New testcase() macro in the tokenizer, to better document its behavior. (check-in: [b2fdac0b15] user: drh branch: trunk, size: 28127)
2023-06-19
20:54
[0fb405f9ad] part of check-in [6b3d25b798] Small performance improvement and size reduction by recognizing that no SQL keywords have less than 2 characters. (check-in: [6b3d25b798] user: drh branch: trunk, size: 28103)
2022-08-22
02:00
[1305797eab] 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: 28051)
2022-07-11
14:36
[36eb0799e4] 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: 28049)
2022-03-28
14:18
[a38f52058b] part of check-in [b12de0ecc7] Use sqlite3DbFreeNN() instead of sqlite3DbFree() in a few hot spots for better performance. (check-in: [b12de0ecc7] user: drh branch: trunk, size: 28027)
2022-02-08
13:41
[6661a9fa66] part of check-in [1269206db8] Provide sqlite3_error_offset() data for some new errors. (check-in: [1269206db8] user: drh branch: trunk, size: 28004)
2022-01-07
14:58
[b74d878aa7] part of check-in [c4e4e3a3fc] Add new binary operators "->" and "->>" to the parser that evaluate to 2-argument SQL functions by the same name. Add new "->" and "->>" functions to the JSON extension that are aliases for json_extract(). (check-in: [c4e4e3a3fc] user: drh branch: json-enhancements, size: 27957)
2021-12-31
19:20
[dc5367c6d4] 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: 27867)
17:54
[3c30e91482] part of check-in [41ee2bac57] Performance optimization and size reduction in sqlite3RunParser(). (check-in: [41ee2bac57] user: drh branch: trunk, size: 28233)
2021-11-16
13:36
[865911afa0] part of check-in [a33f5e93ec] Fix a problem causing an OOM within an ALTER TABLE ADD COLUMN command that adds a column with a CHECK constraint to go unreported. (check-in: [a33f5e93ec] user: dan branch: trunk, size: 28478)
2021-05-07
14:16
[9495a8272c] 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: 28417)
2021-04-24
12:24
[bae853ad12] part of check-in [3d55c21c16] Treat byte-order marks (BOMs) at the start of a token as whitespace. This enhancement is inspired by forum post ed8f696a20. (check-in: [3d55c21c16] user: drh branch: trunk, size: 28454)
2021-03-26
13:16
[8cf83b4b95] part of check-in [76f19f4bcf] Merge in changes for 3.35.3 (check-in: [76f19f4bcf] user: drh branch: reuse-schema, size: 28198)
2021-03-19
15:02
[0b9c82fa62] part of check-in [8680f6a8fb] Fix tokenizer's classification of EBCDIC newline. (check-in: [8680f6a8fb] user: larrybr branch: trunk, size: 28235)
2021-02-10
20:20
[382c5be731] part of check-in [d29c41bd26] Merge latest trunk changes into this branch. (check-in: [d29c41bd26] user: dan branch: reuse-schema, size: 28198)
2021-01-11
20:37
[c64c49d7c2] part of check-in [affa2b7b31] Add a linked list of ParseCleanup objects to the end of a Parse object and use that list as a place to put other sub-objects that need to be deallocated. Have a single such list for infrequently used sub-objects is more efficient than doing an a separate check for each kind of sub-object. Edit: Now possible to have use-after-free following an OOM. (check-in: [affa2b7b31] user: drh branch: parse-cleanup, size: 28235)
2020-12-04
18:47
[369a8ef43e] part of check-in [846e8444f7] Update this branch with latest trunk changes. (check-in: [846e8444f7] user: dan branch: reuse-schema, size: 28537)
2020-11-27
20:56
[01dba30236] part of check-in [16e281ed62] Improve the speed of the tokenizer by recognizing that tokens starting with letters "_", "Y", or "Z" can never be SQL keywords and must be ordinary identifiers. (check-in: [16e281ed62] user: drh branch: faster-tokenizer, size: 28574)
2020-08-11
14:55
[cc9b7b311e] 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: 28459)
2020-08-10
14:18
[4dc01b2675] part of check-in [9d670a3183] Fix harmless compiler warnings that surface in newer versions of GCC. (check-in: [9d670a3183] user: drh branch: trunk, size: 28496)
2020-05-16
19:00
[194677eb6d] 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: 28369)
2020-03-30
13:35
[eee7bae3ec] part of check-in [a49f8ec552] Use __atomic_load_n() and __atomic_store_n() for a few more things where they are available. (check-in: [a49f8ec552] user: dan branch: trunk, size: 28406)
2020-01-15
14:26
[1f2627ae84] part of check-in [f783917800] Merge all recent enhancements and fixes from trunk. (check-in: [f783917800] user: drh branch: reuse-schema, size: 28343)
2019-10-16
17:46
[7b17f6e2f2] part of check-in [bba975c7af] Enhancements to SQL query normalization for UPDATE statements. (check-in: [bba975c7af] user: mistachkin branch: trunk, size: 28380)
2019-08-08
15:47
[3e08eadda7] part of check-in [edf45cd7c6] Fix spurious "no such table: x1" errors in shared-schema mode that could occur when a query that is a join across two or more databases needs to call the xConnect() methods of a virtual table. (check-in: [edf45cd7c6] user: dan branch: reuse-schema, size: 28338)
2019-02-26
16:11
[d3615f0cbe] part of check-in [848869ced9] Fix a harmless compiler warning that only comes up during debug builds. (check-in: [848869ced9] user: drh branch: trunk, size: 28375)
2019-02-08
14:55
[e61ead283d] part of check-in [5c6638040b] Give the sqlite3 object a pointer to the current Parse so that if an OOM occurs, it can automatically set the Parse.rc value to SQLITE_NOMEM. This avoids a frequent extra test of db.mallocFailed in the innermost parser loop. (check-in: [5c6638040b] user: drh branch: trunk, size: 28375)
2019-02-02
01:27
[0a065eaa31] part of check-in [dddda685f3] Fix harmless compiler warning. (check-in: [dddda685f3] user: mistachkin branch: trunk, size: 28140)
2019-01-31
01:39
[a9a474205b] part of check-in [507c43537f] Improvements to "PRAGMA parser_trace=ON": Make it a flag pragma, and then use the flag to show the complete SQL text at the beginning of the parse. (check-in: [507c43537f] user: drh branch: trunk, size: 28140)
2018-12-10
20:01
[c8af4feebd] part of check-in [c96bf6cca2] Further refinements to the sqlite3_normalized_sql() interface. TH3 now gives 100% MC/DC on that interface. (check-in: [c96bf6cca2] user: drh branch: trunk, size: 27994)
16:49
[8ae201c2e6] part of check-in [057d7d40c5] Fix issues with the new normalizer. (check-in: [057d7d40c5] user: drh branch: normalize-refactor, size: 28026)
16:00
[a43ecbafef] part of check-in [a4c890b0af] Refactor the sqlite3_normalized_sql() implementation. This is a work-in-progress. There are still issues. (check-in: [a4c890b0af] user: drh branch: normalize-refactor, size: 27862)
2018-10-29
17:53
[9e781e1ca8] part of check-in [592b66e805] Add the sqlite3_normalized_sql() API. (check-in: [592b66e805] user: mistachkin branch: normalized_sql, size: 26172)
2018-08-29
21:00
[9f55961518] 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: 23897)
2018-08-18
18:27
[6449902efa] part of check-in [9d8e73bf71] Additional fixes for harmless compiler warnings that are specific to this branch. (check-in: [9d8e73bf71] user: drh branch: alter-table-rename-column, size: 23897)
2018-08-13
17:14
[fe35cb947e] 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: 23932)
2018-08-09
20:47
[3177575b58] 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: 23899)
2018-07-09
22:49
[01e96d1b63] part of check-in [5023b1b85b] Fixes for various harmless compiler warnings. (check-in: [5023b1b85b] user: drh branch: trunk, size: 23898)
2018-06-30
20:00
[e0a90f3d59] part of check-in [763e6c9e2b] Fix a minor problem in the code for determining whether or not an SQL statement is SQLITE_TOOBIG. (check-in: [763e6c9e2b] user: dan branch: exp-window-functions, size: 23889)
18:54
[0e3e0462f7] part of check-in [12d819e1c1] Have the tokenizer handle fallback for tokens "OVER" and "FILTER" in the same way as it does for "WINDOW". (check-in: [12d819e1c1] user: dan branch: weak-fallback, size: 23779)
2018-06-29
20:43
[a9b97ce736] part of check-in [5eb4776598] Further performance related tweaks for sqlite3RunParser(). (check-in: [5eb4776598] user: dan branch: weak-fallback, size: 22787)
20:21
[1a774b6a57] part of check-in [eef61ffab7] Further tweaks to sqlite3RunParser(). (check-in: [eef61ffab7] user: dan branch: weak-fallback, size: 22389)
19:54
[c747c0bd91] part of check-in [c1fb41aa7b] Improve on the previous checkin. Still a bit slow. (check-in: [c1fb41aa7b] user: dan branch: weak-fallback, size: 22381)
17:44
[e25caaeb2a] part of check-in [022079cb0d] Instead of using a lemon %fallback directive, have the tokenizer try to figure out whether an instance of "WINDOW" should be TK_WINDOW or TK_ID. (check-in: [022079cb0d] user: dan branch: weak-fallback, size: 22429)
2018-06-21
23:43
[b42aa952b0] part of check-in [64df1189b3] Improved context for error_log message coming from sqlite3_prepare(). (check-in: [64df1189b3] user: drh branch: ieee754, size: 20809)
2018-04-21
13:51
[bbde32eac9] part of check-in [be47a6f526] Add the %extra_context directive to lemon, as an alternative to %extra_argument. Use this to improve the performance of the parser. (check-in: [be47a6f526] user: drh branch: trunk, size: 20767)
2018-01-10
00:40
[5b0c661a85] 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: 20759)
2017-07-07
14:54
[d0700eb561] part of check-in [f4229857a1] Fix an obsolete comment on the sqlite3_namelist() function implementation. (check-in: [f4229857a1] user: drh branch: experimental-namelist, size: 25860)
2017-07-06
19:26
[a20086f022] part of check-in [5cc7b0e2ca] Use the sqlite3_namelist() interface to implement simple tab-completion using linenoise. (check-in: [5cc7b0e2ca] user: drh branch: experimental-namelist, size: 25868)
18:52
[3ab044b75a] part of check-in [7029111044] Change the sqlite3_namelist() interface to return a pointer to an array of pointers to strings, and to avoid duplicates. (check-in: [7029111044] user: drh branch: experimental-namelist, size: 25870)
18:25
[81b384fcc8] part of check-in [e41d62175b] The sqlite3_namelist() routine now works for all name types. (check-in: [e41d62175b] user: drh branch: experimental-namelist, size: 24722)
17:36
[939ad705dc] part of check-in [04ef6783a5] Initial implementation of a highly experimental interface for listing all keywords and symbolic names for an SQLite database connection. (check-in: [04ef6783a5] user: drh branch: experimental-namelist, size: 22572)
2017-04-05
12:39
[1003d6d90c] 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: 20763)
2017-03-30
17:13
[de2ec4fed5] part of check-in [c8000e94cc] Declare the Lemon-generated parser object as itself. (Duh) (check-in: [c8000e94cc] user: drh branch: trunk, size: 20761)
16:37
[d62a8f8798] part of check-in [1279de0b70] Ensure that the stack space used to hold the Lemon-generated parser object is always 8-byte aligned. (check-in: [1279de0b70] user: drh branch: trunk, size: 20807)
2017-03-07
14:38
[dc748c5afc] part of check-in [2cb71583d6] Performance optimization in the tokenizer/parser loop. (check-in: [2cb71583d6] user: drh branch: trunk, size: 20762)
2017-01-28
20:46
[25ccc63ae2] part of check-in [4fe879d4b5] In the amalgamation, allocate the parser engine object from stack rather than from heap, for improved performance. This only happens in the amalgamation, since otherwise the sqlite3RunParser() routine does not know the object size. (check-in: [4fe879d4b5] user: drh branch: trunk, size: 20766)
2016-12-23
03:59
[5c2f516876] part of check-in [68ecafa142] Use the VList object to replace Parse.azVar for tracking the mapping between SQL parameter names and parameter numbers. There is a performance improvement, though there are still a few hiccups in the current code. (check-in: [68ecafa142] user: drh branch: VList, size: 20446)
2016-12-12
01:53
[6eb0752c4f] part of check-in [4fc6580ffa] Updates to the tokenizer for EBCDIC. No changes for standard builds. (check-in: [4fc6580ffa] user: drh branch: trunk, size: 20547)
2016-08-10
14:40
[78c8085bc7] part of check-in [25d1d02b3e] Rearrange the code inside sqlite3RunParser() routine so that sqlite3Parser() is only called from a single place. This allows sqlite3Parser() to be in-lined, which results in a 0.25% overall performance gain. (check-in: [25d1d02b3e] user: drh branch: trunk, size: 20547)
2016-04-12
00:16
[3b29883b0c] part of check-in [aec94b6ee6] Avoid unnecessary calls to object destructors for a small performance gain. (check-in: [aec94b6ee6] user: drh branch: trunk, size: 20540)
2016-02-24
16:14
[3d338cdd00] part of check-in [b65217c69c] Fix a problem with handling identifiers that start with "x" if SQLITE_OMIT_BLOB_LITERAL is defined. (check-in: [b65217c69c] user: dan branch: trunk, size: 20514)
2016-02-18
14:49
[c4c1d360fa] part of check-in [2a8d97e7c8] Avoid a potential buffer overrun if an SQL statement being parsed ends with an illegal "!" token. (This problem was detected by fuzzcheck running under valgrind. The problem was introduced by check-in [9570b6b43df3], two days ago and has not appeared in a release.) (check-in: [2a8d97e7c8] user: drh branch: trunk, size: 20514)
2016-02-16
13:04
[32aeca12f0] part of check-in [9570b6b43d] Minor simplification to the tokenizer. Slightly smaller and faster. (check-in: [9570b6b43d] user: drh branch: trunk, size: 20514)
2016-02-13
23:43
[2a234093ff] part of check-in [6a9c4a3ebf] Enhance ability to debug out-of-memory errors. (check-in: [6a9c4a3ebf] user: mistachkin branch: noMemBkpt, size: 20575)
2016-02-08
19:36
[813934be70] part of check-in [a050e6f096] Changes to help the tokenizer run about 33% faster. (check-in: [a050e6f096] user: drh branch: trunk, size: 20565)
19:15
[5019666f87] part of check-in [04f7da77c1] Add code to get the tokenizer character-class logic working for EBCDIC. (check-in: [04f7da77c1] user: drh branch: tokenizer-char-class, size: 20061)
02:30
[b3cfc123d6] part of check-in [9115baa191] Demonstrate a much faster sqlite3GetToken() routine by using a lookup table to map initial token characters into a character class. This check-in does not work for EBCDIC. More optimization needed. (check-in: [9115baa191] user: drh branch: tokenizer-char-class, size: 18317)
2016-02-05
01:55
[214b783d61] part of check-in [c3ef03478a] Improvements to the way that OOM errors are processed. (check-in: [c3ef03478a] user: drh branch: oom-handling, size: 15523)
2015-11-10
03:30
[5606871a37] part of check-in [6ea2df86c9] Performance enhancement to the tokenizer. (check-in: [6ea2df86c9] user: drh branch: parser-enhancements, size: 15793)
2015-11-09
02:08
[c1006aa773] part of check-in [d62cd757a6] Small size reduction and performance increase in the parser. (check-in: [d62cd757a6] user: drh branch: trunk, size: 15778)
2015-11-07
17:48
[b05b63e224] part of check-in [028475cb17] Proposed fix for an infinite loop bug in the WITH clause semantic analysis logic. (check-in: [028475cb17] user: drh branch: infinite-with-loop-bug, size: 15912)
2015-10-15
15:28
[338bc8f7c9] part of check-in [6422d223dd] Change sqlite3StatusSet() into sqlite3StatusHighwater() so that only the highwater mark is recorded. This gives a small size reduction and performance improvement. (check-in: [6422d223dd] user: drh branch: trunk, size: 15930)
2015-09-07
19:52
[83c6ed5694] part of check-in [2c17a13583] Change the parser engine so that it (once again) waits for a lookahead token before reducing, even in a SHIFTREDUCE action. (check-in: [2c17a13583] user: drh branch: lemon-update, size: 15924)
18:23
[9655e20ade] part of check-in [531c3974b3] For the Lemon-generated parser, add a new action type SHIFTREDUCE and use it to further compress the parser tables and improve parser performance. (check-in: [531c3974b3] user: drh branch: lemon-update, size: 15920)
2015-06-15
14:43
[57cb3720f5] part of check-in [b0badb9902] Fix harmless compiler warnings. (check-in: [b0badb9902] user: drh branch: trunk, size: 15876)
2015-05-29
17:51
[baa0e550df] part of check-in [db4e9728fa] Move two unreachable conditionals inside of NEVER() or assert(). (check-in: [db4e9728fa] user: drh branch: trunk, size: 15773)
2015-05-26
18:58
[27d60b6bf4] part of check-in [075003930d] Fix a one-byte buffer overread that may follow a syntax error while preparing an SQL statement. (check-in: [075003930d] user: dan branch: test-using-fuzzcheck, size: 15761)
2015-05-15
04:13
[af8cbbca6d] part of check-in [56ef98a047] Simplifications to error message processing. Fix a possible problem in error message formatting when vacuuming a database with a corrupt schema. (check-in: [56ef98a047] user: drh branch: trunk, size: 15761)
2015-04-25
00:32
[b15511a239] part of check-in [9aa70ddf2c] Do not send the extra ";" and "\000" tokens to the parser if a prior error has occurred. (check-in: [9aa70ddf2c] user: drh branch: trunk, size: 15763)
2015-04-22
14:41
[8fa8a62632] part of check-in [658e20f554] Prototype for an sqlite3_db_log() interface. (check-in: [658e20f554] user: drh branch: sqlite3_db_log, size: 15683)
2015-04-16
20:27
[b7fb584c2b] part of check-in [8f391dffcf] Fix a couple of unreachable branches. (check-in: [8f391dffcf] user: drh branch: trunk, size: 15676)
2015-04-15
08:37
[a8234a6757] part of check-in [fa0956edf8] Remove a branch that became unreachable due to one of the earlier check-ins today. (check-in: [fa0956edf8] user: drh branch: trunk, size: 15706)
07:57
[2b93d33883] part of check-in [3576973f8b] Fix the error message generator for illegal token errors so that it does not leak memory if it immediately follows another erroneous SQL statement. (check-in: [3576973f8b] user: drh branch: trunk, size: 15696)
2015-03-23
17:25
[a8d270b06e] part of check-in [1ce8e8fa4b] Add the sqlite3_status64() interface. Make the new interface and the legacy sqlite3_status() both atomic and threadsafe. Check threadsafety using assert()s. (check-in: [1ce8e8fa4b] user: drh branch: status64, size: 15757)
2015-02-13
16:36
[05e52378c4] part of check-in [823ad40ccb] Improvements to SQLITE_ENABLE_API_ARMOR. (check-in: [823ad40ccb] user: drh branch: trunk, size: 15667)
2014-12-20
21:14
[e00458c993] part of check-in [cb3e4219ac] Minor fixes and enhancements to the SQLITE_ENABLE_API_ARMOR functionality. (check-in: [cb3e4219ac] user: mistachkin branch: trunk, size: 15743)
2014-09-25
02:44
[cc9016e500] part of check-in [ef30e0352b] Change that might allow SQLite to build and work using the EBCDIC character set. (check-in: [ef30e0352b] user: drh branch: trunk, size: 15647)
2014-09-12
04:28
[3df6304199] part of check-in [2f69a1fa6a] Fix a problem with parser memory allocation on 32-bit systems. (check-in: [2f69a1fa6a] user: drh branch: trunk, size: 15600)
2014-09-06
16:39
[722872c816] part of check-in [e62aab5e92] Fix typos in comments. No code changes. (check-in: [e62aab5e92] user: peter.d.reid branch: trunk, size: 15618)
2014-07-23
01:26
[ae45399d62] part of check-in [34a1f38b7a] Add support for parsing C-style hexadecimal literals. (check-in: [34a1f38b7a] user: drh branch: hex-literal, size: 15617)
2014-01-17
14:59
[6da2de6e12] part of check-in [6a549187ed] Fix some problems to do with WITH clauses and name resolution. (check-in: [6a549187ed] user: dan branch: common-table-expr, size: 15429)
2014-01-13
15:12
[7dc42e9beb] 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: 15463)
2014-01-11
03:54
[5d04a1b7d1] part of check-in [cb5d1f83e0] Optimizations to the SQL language grammar that result in a small size reduction and speed increase. (check-in: [cb5d1f83e0] user: drh branch: trunk, size: 15365)
2013-11-02
14:37
[ec4c1a62b8] 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: 15729)
2013-08-02
23:40
[70061085a5] part of check-in [213020769f] Updates to requirements marks. No code changes. (check-in: [213020769f] user: drh branch: trunk, size: 15766)
2013-06-27
23:54
[e0e8fd3cb9] part of check-in [14f7969634] Refactor names of fields in the sqlite3 object: "activeVdbeCnt" becomes "nVdbeActive". Related fields becomes "nVdbeRead", "nVdbeWrite", and "nVdbeExec". (check-in: [14f7969634] user: drh branch: trunk, size: 15892)
2012-07-18
16:07
[a054f58de6] part of check-in [defd828e90] Remove another branch from the DbMalloc() paths. (check-in: [defd828e90] user: dan branch: calloc, size: 15893)
2012-02-13
13:44
[6fe44d7af3] part of check-in [922bcbb423] Generalize the interrupt mechanism so that individual statements can be interrupted and so that codes other than just SQLITE_INTERRUPT can be returned as a consequence of an interrupt. (check-in: [922bcbb423] user: drh branch: generalize-interrupt, size: 15844)
2011-12-30
15:17
[1e86210d39] part of check-in [f945c41a72] Update the text of requirements associated with sqlite3_pcache_methods2. Update requirements marks embedded in code. All of the above are comment changes only; there are no changes to code in this check-in. (check-in: [f945c41a72] user: drh branch: trunk, size: 15894)
2011-06-03
21:34
[c819d9f721] part of check-in [61aa2031f1] Performance enhancement to the blob-literal tokenizer. (check-in: [61aa2031f1] user: drh branch: trunk, size: 15894)
2011-06-01
18:15
[7b0c9281b2] 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: 15912)
2010-07-24
16:34
[604607d681] 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: 15888)
2010-07-23
15:41
[eb58d4eabb] 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: 15893)
2010-02-23
20:11
[25ceb0f0a7] part of check-in [edea3bb740] Continuing improvements to error reporting and the sqlite3_log() routine. (check-in: [edea3bb740] user: drh branch: trunk, size: 15885)
2009-12-14
17:42
[e7f3606cc1] part of check-in [0daec3099d] Add a few simple evidence comments to the tokenizer. No functional changes. (check-in: [0daec3099d] user: drh branch: trunk, size: 15839)
2009-11-16
15:11
[9f7d39da1a] part of check-in [1c9243b076] Use the sqlite3CtypeMap to improve the speed and reduce the size of the logic in the tokenizer that recognizes identifiers. (check-in: [1c9243b076] user: drh branch: trunk, size: 15659)
2009-11-10
01:30
[2166457505] part of check-in [f6c045f649] Remove the obsolete "$Id:$" RCS identifier strings from the source code. (check-in: [f6c045f649] user: drh branch: trunk, size: 16142)
2009-10-15
23:03
[83eab05024] part of check-in [f256bc0796] When a forced rollback occurs, cause all active statements on the same database connection to halt immediately with an SQLITE_ABORT error code. This is a partial fix to ticket [f777251dc7]. (check-in: [f256bc0796] user: drh branch: trunk, size: 16397)
2009-07-03
22:54
[af8a56e6a5] part of check-in [983cb6924b] Remove two unused fields from the Parse structure. The TCL interface now removes leading whitespace from SQL statements before parsing them. (CVS 6846) (check-in: [983cb6924b] user: drh branch: trunk, size: 16202)
2009-06-23
20:28
[eadd396fa8] 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: 16217)
2009-06-17
01:17
[3743be86c3] part of check-in [18f2076ac2] A minor simplification to the tokenizer. (CVS 6771) (check-in: [18f2076ac2] user: drh branch: trunk, size: 16095)
2009-06-12
11:42
[c0d3e8e953] part of check-in [bc729bc3e6] Remove a C++-ism from the code. Ticket #3912. (CVS 6752) (check-in: [bc729bc3e6] user: drh branch: trunk, size: 16124)
2009-06-09
18:01
[d8c6b39a60] part of check-in [5e8c48cff7] Changes to tokenize.c to facilitate full coverage testing. (CVS 6738) (check-in: [5e8c48cff7] user: drh branch: trunk, size: 16124)
2009-05-28
01:00
[75367c7e4d] 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: 15562)
2009-05-27
10:31
[ef5e56bae2] 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: 15562)
2009-05-01
21:13
[286ce8a4bf] 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: 15721)
2009-03-31
03:41
[7bd3b6dd56] 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: 15649)
2009-03-24
15:08
[fff72a9bc0] 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: 15647)
2009-01-20
16:53
[6987fb7f0d] 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: 15091)
2008-09-01
15:52
[aaa5fa6a45] part of check-in [d04d703367] Defer deleting Table objects associated with flattened subqueries until all code has been generated, in case some expression node still references the Table object. Ticket #3346. (CVS 5650) (check-in: [d04d703367] user: drh branch: trunk, size: 15025)
2008-08-29
02:14
[76fe4cb8a6] part of check-in [ab0292caa5] Avoid reevaluating WHERE and ORDER BY expressions that alias terms in the result set. Ticket #3343. Note that aliased GROUP BY expressions are still evaluated twice. (CVS 5637) (check-in: [ab0292caa5] user: drh branch: trunk, size: 14887)
2008-08-08
14:19
[d16ca0e994] part of check-in [4cedc641ed] Disallow the ON CONFLICT clause on CHECK constraints. The syntax used to be allowed but never worked, so this should not present compatibility problems. Other internal grammar simplifications. (CVS 5546) (check-in: [4cedc641ed] user: drh branch: trunk, size: 14850)
2008-08-07
13:05
[0b8f3e1dc9] part of check-in [732657c6a6] Improved clarity of presentation in the tokenizer. (CVS 5545) (check-in: [732657c6a6] user: drh branch: trunk, size: 14877)
2008-07-28
19:34
[bfdc945527] 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: 14799)
2008-07-25
15:39
[70c6b5c394] part of check-in [ef0250f3dc] Add the capability to track the maximum depth of the LALR(1) parser stack so that critical applications can check to see if they are getting close to limits. (CVS 5481) (check-in: [ef0250f3dc] user: drh branch: trunk, size: 14770)
2008-07-08
19:34
[b5fdc79fb7] 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: 14631)
00:06
[36484c7774] part of check-in [fe80aa58a4] Testing coverage enhancements. (CVS 5358) (check-in: [fe80aa58a4] user: drh branch: trunk, size: 14637)
2008-06-15
02:51
[d39f0d6ce7] 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: 14723)
2008-06-02
13:00
[d07c7482a5] part of check-in [03b5e4581a] Avoid passing a null pointer to sqlite3SetString in sqlite3RunParser. Fix for #3155. (CVS 5183) (check-in: [03b5e4581a] user: danielk1977 branch: trunk, size: 14732)
2008-04-28
18:46
[8d77af8584] 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: 14684)
2008-04-05
18:41
[a96abe15a8] part of check-in [b2517a7d8f] Add the sqlite3PutVarint32 routine as an alternative to sqlite3PutVarint. Gives 0.5% speed increase. (CVS 4968) (check-in: [b2517a7d8f] user: drh branch: trunk, size: 14608)
2008-04-03
21:42
[d642f36a07] part of check-in [040cffe272] Make sure the zTail return from sqlite3_prepare() is initialized even if there is a malloc failure. (CVS 4963) (check-in: [040cffe272] user: drh branch: trunk, size: 14697)
2008-03-20
14:03
[13113f94bd] 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: 14697)
2008-01-22
23:37
[c4b79fd48d] part of check-in [c82033faf8] Improved test coverage for the tokenizer and sqlite3_complete() interface. Fix bugs in parsing blob literals and SQL variables beginning with $. (CVS 4743) (check-in: [c82033faf8] user: drh branch: trunk, size: 14683)
2007-12-17
16:20
[a4e04438c1] part of check-in [07aeca3b9c] When SQLITE_MAX_SQL_LENGTH is 0, disable the limit. Make the default 0. Once again build the sqlite3 CLI from individual source files so that it can be built on systems that lack tclsh. Tickets #2845 and #2846. (CVS 4636) (check-in: [07aeca3b9c] user: drh branch: trunk, size: 14776)
2007-08-27
23:26
[67e42600ab] part of check-in [dc80b2e1f4] Work around problem with forward declarations of constants in MSVC in the amalgamation. Ticket #2574. (CVS 4304) (check-in: [dc80b2e1f4] user: drh branch: trunk, size: 14749)
2007-08-22
20:18
[fda6edc179] 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: 14727)
2007-08-21
10:44
[e39527c9c8] part of check-in [fbbd5bda54] Remove unnecessary #includes of "os.h". New mutex implementations. (CVS 4255) (check-in: [fbbd5bda54] user: drh branch: trunk, size: 14701)
2007-08-16
10:09
[3a3fd71cfb] 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: 14725)
04:30
[4188420484] 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: 14713)
2007-07-23
19:31
[e959754c67] part of check-in [bc02c7f162] Move prototypes for LEMON-generated parser functions into sqliteInt.h. Ticket #2521. (CVS 4177) (check-in: [bc02c7f162] user: drh branch: trunk, size: 14707)
2007-07-13
10:26
[0f0955ef7b] part of check-in [f35fbf8070] "extern" prototypes cause problems for the Digital Mars compiler. So remove them. Ticket #2502. (CVS 4156) (check-in: [f35fbf8070] user: drh branch: trunk, size: 14899)
2007-05-15
14:34
[6cef9e6fc4] 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: 14872)
09:00
[9aa8e3f06f] part of check-in [252810424d] Do not allow bytes 0x80 through 0xBF to be the first character of an identifer because no valid UTF-8 character can begin with those bytes. If we allowed an identifier to begin with one of those bytes, then the substr() function in ALTER TABLE will not work correctly. (CVS 4003) (check-in: [252810424d] user: drh branch: trunk, size: 14893)
2007-05-08
13:58
[be3524e7f6] 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: 14872)
2007-04-16
15:06
[7d611fc942] 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: 14792)
2007-01-26
19:31
[bb1732ef2b] part of check-in [02990fabd1] Fix prototypes for the parser. Syntactic change only - no effect on object code. Ticket #2193. (CVS 3607) (check-in: [02990fabd1] user: drh branch: trunk, size: 14796)
2006-08-12
12:33
[dfdff21768] part of check-in [0f667c4abd] Require whitespace or punctuation between a numeric literal and an identifier or keyword. Ticket #1912. (CVS 3345) (check-in: [0f667c4abd] user: drh branch: trunk, size: 14789)
2006-07-26
13:43
[3454200eee] part of check-in [e431131d47] More work toward getting sqlite3_interrupt() to work from separate threads. Ticket #1897. (CVS 3336) (check-in: [e431131d47] user: drh branch: trunk, size: 14706)
01:39
[288e860be4] part of check-in [35fd67d7a0] Initial attempt at making sqlite3_interrupt() work even when called from a separate thread. (CVS 3335) (check-in: [35fd67d7a0] user: drh branch: trunk, size: 14670)
2006-06-24
08:51
[7b448440df] part of check-in [4630e11d9a] Ensure whitespace specified as part of a virtual table constructor argument is correctly passed to the constructor function. (CVS 3290) (check-in: [4630e11d9a] user: danielk1977 branch: trunk, size: 14697)
2006-06-12
11:24
[6ebcafa662] 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: 14766)
2006-06-11
23:41
[279c627922] 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: 14501)
2006-04-04
01:54
[91dc520980] part of check-in [4342b49971] Changes to get SQLite running on machines that use the EBCDIC character set. (CVS 3161) (check-in: [4342b49971] user: drh branch: trunk, size: 14433)
2006-02-09
22:24
[382b3bb0ca] part of check-in [0738ef818d] Allow '@' to introduce host parameter names for compatibility with MS SQL Server. Ticket #1671. (CVS 3067) (check-in: [0738ef818d] user: drh branch: trunk, size: 12033)
2006-01-20
17:56
[9ae9a59238] part of check-in [b7bdac0afd] Fix some compiler warnings. (CVS 2983) (check-in: [b7bdac0afd] user: drh branch: trunk, size: 11975)
2006-01-18
16:51
[1ac078540c] 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: 12018)
2006-01-12
12:43
[8b694d42b4] part of check-in [0caa199477] About a 2.5% speed improvement by reducing the number of sqlite3ThreadData calls in the parser. (CVS 2924) (check-in: [0caa199477] user: drh branch: trunk, size: 12006)
2006-01-11
21:41
[b75d24cbb4] 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: 12017)
2006-01-09
06:29
[196486012c] part of check-in [82b81f69c7] Rename DbSchema to "Schema" and SqliteTsd to "ThreadData". (CVS 2893) (check-in: [82b81f69c7] user: danielk1977 branch: trunk, size: 12009)
2006-01-07
13:21
[10c32e980e] 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: 11995)
2005-12-09
20:02
[7a3a3d3cc7] 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: 11824)
2005-12-06
12:52
[a189d74665] 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: 11827)
2005-10-23
11:29
[bdb7970221] part of check-in [c9c476dd83] Report an error if the input SQL contains an unterminated string. Ticket #1497. (CVS 2751) (check-in: [c9c476dd83] user: drh branch: trunk, size: 11888)
2005-08-23
11:31
[e1faf5637f] part of check-in [a715e70012] Allow floating point literals to being or end with a decimal point. Ticket #1371. (CVS 2616) (check-in: [a715e70012] user: drh branch: trunk, size: 11814)
2005-08-14
17:53
[aa02aa217d] part of check-in [62b87751de] Split the sqlite3_complete() API out into a separate source file so that in static links where it is not used it will not take up space in the resulting binary. (CVS 2594) (check-in: [62b87751de] user: drh branch: trunk, size: 11608)
2005-08-13
18:15
[0ea99e6d02] part of check-in [6b7a4e9752] Provide grave accent quoting of identifiers for MySQL compatibility. Ticket #1337. (CVS 2591) (check-in: [6b7a4e9752] user: drh branch: trunk, size: 19314)
2005-06-22
08:48
[57ec992661] part of check-in [f3427a139c] Allow parameters to be introduced by characters ':', '$' and '#'. This is an experimental change. (CVS 2523) (check-in: [f3427a139c] user: drh branch: trunk, size: 19228)
2005-06-06
14:45
[d89743f2c0] part of check-in [fafaa18eea] Fix a bug in the malloc2 tests introduced by checkin (2473). (CVS 2489) (check-in: [fafaa18eea] user: drh branch: trunk, size: 19360)
2005-05-22
20:12
[fbe48ad208] part of check-in [a39c446726] Never user a pointer to standard library routines malloc() and free(). This rule is to work around limitations of MSVC and the _fastcall calling convention. Ticket #1256. (CVS 2473) (check-in: [a39c446726] user: drh branch: trunk, size: 19349)
2005-02-26
17:31
[103cbaa932] part of check-in [bb0e7e3857] Fix an assertion fault that can occur while autovacuuming a corrupt database file. Add the SQLITE_OMIT_COMPLETE compile-time parameter. (CVS 2361) (check-in: [bb0e7e3857] user: drh branch: trunk, size: 19333)
2005-01-31
12:42
[bbeee5e300] 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: 19171)
2005-01-18
04:00
[88bef43fe3] 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: 19080)
2005-01-11
17:59
[c1d124ec41] part of check-in [00a352ea79] Allow '$' in the middle of identifiers. Ticket #1066. This is an experimental change. It might be backed out at a later date. (CVS 2197) (check-in: [00a352ea79] user: drh branch: trunk, size: 19080)
2004-11-12
13:42
[2ad3d1ae1a] part of check-in [a1b2cc63e6] Add the "ALTER TABLE xxx RENAME TO yyy" command. (CVS 2092) (check-in: [a1b2cc63e6] user: danielk1977 branch: trunk, size: 18807)
03:56
[4dc14256d8] 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: 18805)
2004-11-05
05:10
[c48221284e] 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: 18761)
2004-11-03
03:59
[bf9de9689b] part of check-in [007aec1133] The makefile now runs mkkeywordhash.c. Keywords that are unused are omitted from the keyword hash table. (CVS 2045) (check-in: [007aec1133] user: drh branch: trunk, size: 18654)
2004-10-31
02:22
[a0a999bf48] 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: 23892)
2004-10-23
05:10
[f073bbf85f] part of check-in [7b9886f8d4] Tighter encoding of the keyword hash table in the tokenizer. (CVS 2028) (check-in: [7b9886f8d4] user: drh branch: trunk, size: 22961)
2004-10-07
19:03
[a235e9a38c] part of check-in [e5540ce047] Optimizations to the tokenizer. (CVS 2011) (check-in: [e5540ce047] user: drh branch: trunk, size: 23050)
2004-10-05
02:41
[449843c85c] part of check-in [81ff8107ad] Add support for DEFERRED, IMMEDIATE, and EXCLUSIVE transactions. (CVS 2000) (check-in: [81ff8107ad] user: drh branch: trunk, size: 23220)
2004-09-25
15:25
[d4619367d9] part of check-in [26898c57cb] Optimizations in the tokenizer. (CVS 1985) (check-in: [26898c57cb] user: drh branch: trunk, size: 23175)
14:39
[85a5b0de46] part of check-in [9ef4c24a9a] Code cleanup: get rid of the sqlite3SetNString utility function. (CVS 1984) (check-in: [9ef4c24a9a] user: drh branch: trunk, size: 23402)
2004-09-08
15:09
[418ef7ba11] 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: 23362)
2004-09-07
16:19
[60525d9966] part of check-in [435b3f301f] Wildcards with the same name map into the same variable number. New api sqlite3_bind_parameter_index() added to map wildcard names into wildcard index numbers. Support for "?nnn" wildcards. (CVS 1945) (check-in: [435b3f301f] user: drh branch: trunk, size: 23355)
2004-09-06
17:24
[566ca7d135] 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: 23196)
2004-08-25
04:07
[32171c3d57] part of check-in [fd584d1ccf] Host parameter names conform to SQL-2003. (CVS 1902) (check-in: [fd584d1ccf] user: drh branch: trunk, size: 23195)
2004-08-24
15:23
[d8ea315961] part of check-in [054dd8901d] Fix a bug in the parsing of wildcards that begin with '$'. (CVS 1901) (check-in: [054dd8901d] user: drh branch: trunk, size: 23265)
2004-08-20
16:02
[b96043fdf6] part of check-in [d3be0b7c5a] Add support for named wildcards in SQL statements. (CVS 1897) (check-in: [d3be0b7c5a] user: drh branch: trunk, size: 23297)
2004-08-08
23:39
[174d24d241] part of check-in [81d91d14cf] Fix problems in the handling of malloc failures. (CVS 1882) (check-in: [81d91d14cf] user: drh branch: trunk, size: 22146)
2004-07-24
14:35
[bc7a80e4cf] 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: 22080)
03:30
[368c1c6eb1] 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: 22182)
2004-06-18
06:02
[900374b6b3] part of check-in [960f55f3ec] Fix a couple of gcc warnings. (CVS 1615) (check-in: [960f55f3ec] user: danielk1977 branch: trunk, size: 22074)
04:24
[ec8d990bd2] part of check-in [39a415eaa6] Optimisation for unicode encoding conversion routines. (CVS 1614) (check-in: [39a415eaa6] user: danielk1977 branch: trunk, size: 22091)
2004-05-31
23:56
[183c5d7da1] part of check-in [af8e2006d8] Remove the sqlite3_error_string() API. (CVS 1514) (check-in: [af8e2006d8] user: danielk1977 branch: trunk, size: 21936)
18:51
[b68758abac] part of check-in [adf7e29ff6] Change all SQLITE3 preprocessor macros to SQLITE. Documentation updates. (CVS 1511) (check-in: [adf7e29ff6] user: drh branch: trunk, size: 21935)
2004-05-27
23:56
[50a87c7414] part of check-in [203af2b2e3] Add API functions sqlite3_open_varargs(), sqlite3_open16_varargs() and sqlite3_complete16(). (CVS 1479) (check-in: [203af2b2e3] user: danielk1977 branch: trunk, size: 21945)
17:22
[76eebcab0f] part of check-in [287f86731c] Remove the COPY command. (CVS 1477) (check-in: [287f86731c] user: drh branch: trunk, size: 21566)
13:35
[d40f901191] part of check-in [6d552af67c] A couple of test cases and fixes for blob literals. (CVS 1474) (check-in: [6d552af67c] user: danielk1977 branch: trunk, size: 21667)
09:28
[28ece63a10] part of check-in [67a140cf78] Various bugfixes. 68 Test cases still fail. (CVS 1471) (check-in: [67a140cf78] user: danielk1977 branch: trunk, size: 21516)
2004-05-10
10:34
[e7536dd312] part of check-in [2242423e31] Change the names of external symbols from sqlite_XXX to sqlite3_XXX. (CVS 1338) (check-in: [2242423e31] user: danielk1977 branch: trunk, size: 21190)
2004-05-08
08:23
[256a3cf0ff] 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: 21186)
2004-02-14
23:59
[6676b946fd] part of check-in [2dbc4593ca] Eliminate obsolete code associated with the older callback functionality. (CVS 1243) (check-in: [2dbc4593ca] user: drh branch: trunk, size: 21146)
2004-01-08
02:17
[8c95dcd262] part of check-in [34a6b7416c] Remove unused code and tighten existing code to make the library a little smaller. (CVS 1168) (check-in: [34a6b7416c] user: drh branch: trunk, size: 21171)
2003-12-23
02:17
[5597df1fd7] part of check-in [4d9edbc50f] Use a built-in atof() function instead of the one from the library to avoid problems with locale. Ticket #305. (CVS 1144) (check-in: [4d9edbc50f] user: drh branch: trunk, size: 22297)
2003-12-06
21:43
[d10e7f0b4d] 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: 22279)
2003-09-27
13:39
[e14db6bfa9] part of check-in [824430b3ce] Remove support for the Oracle8 outer join syntax. (CVS 1106) (check-in: [824430b3ce] user: drh branch: trunk, size: 22238)
2003-09-12
02:08
[8df640021c] part of check-in [4fbca3ab09] The tokenizer should never return a negative size of the next token. Ticket #453. (CVS 1098) (check-in: [4fbca3ab09] user: drh branch: trunk, size: 22360)
2003-09-06
22:18
[74152bde07] 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: 22452)
01:10
[ea4e89b37d] part of check-in [912f47c72d] The beginnings of changes to support pre-compiled SQL. Mostly untested, though all regression tests to pass. (CVS 1093) (check-in: [912f47c72d] user: drh branch: trunk, size: 22531)
2003-05-04
18:30
[2ba93fe10d] part of check-in [5656fe48b1] Shell command-line parsing enhancements suggested by Mike Hall. (CVS 956) (check-in: [5656fe48b1] user: drh branch: trunk, size: 22382)
17:58
[65b99ca0c4] part of check-in [54b33a5ed9] Fix deficiencies in sqlite_complete() pointed out by R. Dennis Cote. (CVS 955) (check-in: [54b33a5ed9] user: drh branch: trunk, size: 22324)
2003-04-21
18:48
[067d1a477a] 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: 16224)
2003-04-16
02:17
[a88cfb6f69] part of check-in [4326b52a39] Simplify the number processing code. Fix for ticket #281. (CVS 910) (check-in: [4326b52a39] user: drh branch: trunk, size: 16116)
2003-03-20
01:16
[675b4718d1] 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: 16235)
2003-01-29
14:06
[bc40937d66] part of check-in [162b259188] The callback-free API is now working, though much more testing is need. (CVS 853) (check-in: [162b259188] user: drh branch: trunk, size: 16073)
2003-01-28
23:13
[0ba74091f4] 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: 15907)
2003-01-07
02:47
[7ac1c33e01] part of check-in [a362981b20] More optimizations. (CVS 816) (check-in: [a362981b20] user: drh branch: trunk, size: 16287)
01:44
[8eaa8f878a] part of check-in [032b3daa1d] Optimizations to the tokenizer. (CVS 815) (check-in: [032b3daa1d] user: drh branch: trunk, size: 16290)
2002-10-27
19:35
[75e3bb3730] part of check-in [31df3690d0] Minimal support for oracle8 outer join syntax. (CVS 771) (check-in: [31df3690d0] user: drh branch: trunk, size: 16239)
2002-10-22
23:38
[0000d3555a] part of check-in [3b68aa25c4] Correctly handle column names and string constants in parentheses. Fix for ticket #179. (CVS 770) (check-in: [3b68aa25c4] user: drh branch: trunk, size: 16117)
2002-08-27
14:28
[62c9884244] part of check-in [f153448948] Change the tokenizer to ignore C-style comments /*...*/ in accordance with SQL99. (CVS 731) (check-in: [f153448948] user: drh branch: trunk, size: 16150)
2002-08-24
18:24
[8bd6251e52] 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: 15977)
2002-07-01
12:27
[b5500e193a] part of check-in [1f8a73b1c3] Fix for tickets #90 and #89: Make the AS keyword optional again. (CVS 654) (check-in: [1f8a73b1c3] user: drh branch: trunk, size: 15912)
2002-06-17
17:07
[ac4c46f190] 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: 15642)
2002-06-11
02:25
[890ca022d4] part of check-in [d4a2fb1006] Add RAISE() function, which allows more advanced flow-control in trigger programs (ticket #55) (CVS 614) (check-in: [d4a2fb1006] user: danielk1977 branch: trunk, size: 15596)
2002-06-02
18:19
[35c63867d0] part of check-in [6fdcee3c99] Add the ability to parse FOREIGN KEYs. Foreign keys are still ignored, but at least they now do not cause a syntax error. (CVS 603) (check-in: [6fdcee3c99] user: drh branch: trunk, size: 15534)
2002-05-24
16:14
[facec7dc0b] part of check-in [e238643efd] Add support for the full SQL join syntax. This is just a parser enhancement. We now recognize all kinds of joins, but we don't actually do anything with them yet. (CVS 586) (check-in: [e238643efd] user: drh branch: trunk, size: 14940)
2002-05-23
00:30
[5892a8eb8f] part of check-in [275ba356f3] Do not allow triggers on the SQLITE_MASTER table. (CVS 579) (check-in: [275ba356f3] user: drh branch: trunk, size: 14886)
2002-05-15
08:30
[f12f78c58b] part of check-in [794bf67b6b] Added FOR EACH ROW triggers functionality (CVS 562) (check-in: [794bf67b6b] user: danielk1977 branch: trunk, size: 14840)
2002-03-24
13:13
[5624d34260] part of check-in [836b59d057] Added support for CASE expressions - patches from Dan Kennedy. (CVS 437) (check-in: [836b59d057] user: drh branch: trunk, size: 14400)
2002-03-13
18:54
[5015a5d4e6] part of check-in [c0e3f1c592] Fix bug in anonymous subquery in a join. Parser requires a semicolon or end-of-input before executing. (CVS 429) (check-in: [c0e3f1c592] user: drh branch: trunk, size: 14184)
2002-02-23
02:32
[4b5d30590a] 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: 14120)
2002-02-21
12:01
[777b734f9d] 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: 14100)
2002-02-17
00:30
[9e98f94469] part of check-in [2336b1eada] Make the sqliteParseInfoReset() function locale to the select.c file. (CVS 371) (check-in: [2336b1eada] user: drh branch: trunk, size: 14107)
2002-02-14
21:42
[0cbf765ef4] part of check-in [e17a858c9e] All identifiers to be quoted in square brackets, for compatibility with MS-Access. (CVS 370) (check-in: [e17a858c9e] user: drh branch: trunk, size: 14171)
2002-01-31
15:54
[01a09db6ad] 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: 14064)
2002-01-29
18:41
[1199b96a82] part of check-in [e00a9ff8f9] Beginning to insert the infrastructure for ON CONFLICT clauses. (CVS 355) (check-in: [e00a9ff8f9] user: drh branch: trunk, size: 14010)
2001-11-06
04:00
[830e9ef684] part of check-in [eb07768ae9] Implement indices that occur in sort order and the LIMIT...OFFSET clause of SELECT statements. (CVS 301) (check-in: [eb07768ae9] user: drh branch: trunk, size: 13794)
2001-11-04
18:32
[9ede24b176] part of check-in [7dd58fad39] Increase maximum row size to 1MB. (CVS 300) (check-in: [7dd58fad39] user: drh branch: trunk, size: 13686)
2001-10-22
02:58
[8f4c2b5e7f] part of check-in [f8328a5f11] More changes for 2.0.7. (CVS 293) (check-in: [f8328a5f11] user: drh branch: trunk, size: 13680)
2001-10-19
16:44
[59ddae1501] part of check-in [8467d84fc6] Version 2.0.6 (CVS 291) (check-in: [8467d84fc6] user: drh branch: trunk, size: 13670)
2001-10-18
12:34
[2b95e67bcb] part of check-in [22948fc685] Support for UTF-8 and ISO8859 characters in identifiers. Bug fix in the column name generator for selects (was coreing). (CVS 290) (check-in: [22948fc685] user: drh branch: trunk, size: 13663)
2001-10-13
02:59
[c3fcb76a41] part of check-in [75e90cf09b] 2.0.3 (CVS 287) (check-in: [75e90cf09b] user: drh branch: trunk, size: 12675)
2001-10-09
04:19
[15d349b68d] part of check-in [484b82d8a1] Fix the locking protocol. (CVS 280) (check-in: [484b82d8a1] user: drh branch: trunk, size: 12318)
2001-10-08
13:22
[5bd2dd048d] part of check-in [9368c62e40] Support for temporary tables added. Still need more testing. (CVS 279) (check-in: [9368c62e40] user: drh branch: trunk, size: 12189)
2001-10-06
16:33
[8a2aa0443f] part of check-in [b63b3f3684] Adding table column query capability to support ODBC. (CVS 278) (check-in: [b63b3f3684] user: drh branch: trunk, size: 12081)
2001-09-23
02:35
[2ab07b85fd] part of check-in [337b3d3b2a] Fixes to the locking and rollback behavior. (CVS 261) (check-in: [337b3d3b2a] user: drh branch: trunk, size: 12096)
2001-09-16
00:13
[2adf0568ed] part of check-in [4e926efe2b] Disclaimed copyright. Preparing for release 2.0. (CVS 250) (check-in: [4e926efe2b] user: drh branch: trunk, size: 11969)
2001-09-14
18:54
[2d4d1534b3] 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: 12323)
03:24
[00c8ab42ee] 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: 13122)
2001-04-11
14:28
[0118b57702] part of check-in [86b30cd097] better handling of out-of-memory errors (CVS 207) (check-in: [86b30cd097] user: drh branch: trunk, size: 13122)
2001-04-04
11:48
[8fc3936eef] part of check-in [35a8feed0d] Added transaction support (CVS 196) (check-in: [35a8feed0d] user: drh branch: trunk, size: 13841)
2001-02-11
16:56
[c7ad428f38] part of check-in [6adb607887] Perpare to fork SQLite2.0 develop into a separate tree (CVS 183) (check-in: [6adb607887] user: drh branch: trunk, size: 13571)
2000-12-10
18:23
[6843f1d7a5] part of check-in [ced90c3f93] speed tweaks and documentation updates (CVS 167) (check-in: [ced90c3f93] user: drh branch: trunk, size: 13561)
2000-10-22
20:39
[95bf7baa7d] part of check-in [f0a5255d26] fix a debugging issue (CVS 162) (check-in: [f0a5255d26] user: drh branch: trunk, size: 13561)
2000-10-16
22:06
[b0f5c12598] part of check-in [f7ea08b931] Added an interrupt capability (CVS 153) (check-in: [f7ea08b931] user: drh branch: trunk, size: 13539)
2000-08-09
17:17
[097bec5843] part of check-in [e8882dac23] bug fix (CVS 130) (check-in: [e8882dac23] user: drh branch: trunk, size: 13167)
2000-06-16
20:51
[77ff8164a8] part of check-in [1d4fe5599e] :-) (CVS 100) (check-in: [1d4fe5599e] user: drh branch: trunk, size: 13156)
2000-06-08
16:26
[344754f81b] part of check-in [33355b2d8d] :-) (CVS 82) (check-in: [33355b2d8d] user: drh branch: trunk, size: 12989)
13:36
[cb9eacd125] part of check-in [bf98cf82a7] remove all memory leaks (CVS 80) (check-in: [bf98cf82a7] user: drh branch: trunk, size: 12969)
2000-06-07
02:04
[900af9479d] part of check-in [fc8d25ea1f] :-) (CVS 68) (check-in: [fc8d25ea1f] user: drh branch: trunk, size: 12021)
2000-06-06
21:56
[09373590cc] part of check-in [f4d9089c5d] :-) (CVS 62) (check-in: [f4d9089c5d] user: drh branch: trunk, size: 12021)
17:27
[32f0579d4a] part of check-in [db88a0c2d4] GROUP BY and HAVING installed (CVS 58) (check-in: [db88a0c2d4] user: drh branch: trunk, size: 11859)
01:50
[f190e16ebb] part of check-in [bd8b2645cc] :-) (CVS 55) (check-in: [bd8b2645cc] user: drh branch: trunk, size: 11687)
2000-05-31
20:00
[15c229fee7] part of check-in [1f0c4ffd98] added DISTINCT on select (CVS 27) (check-in: [1f0c4ffd98] user: drh branch: trunk, size: 11525)
02:27
[5b066f3146] part of check-in [01d85b35e9] :-) (CVS 20) (check-in: [01d85b35e9] user: drh branch: trunk, size: 11471)
2000-05-30
16:27
[e176b2c1c3] part of check-in [8d66c7355d] :-) (CVS 15) (check-in: [8d66c7355d] user: drh branch: trunk, size: 11309)
13:44
[948b8897ba] part of check-in [1bb8ee8d9f] :-) (CVS 14) (check-in: [1bb8ee8d9f] user: drh branch: trunk, size: 11143)
2000-05-29
14:26
Added: [ab578d90ec] part of check-in [6f3655f79f] initial check-in of the new version (CVS 1) (check-in: [6f3655f79f] user: drh branch: trunk, size: 11124)