drh
9bf755cc44
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.
FossilOrigin-Name: 68ecafa1425a41358c88f41efea3262f1b4490f2
2016-12-23 03:59:31 +00:00
drh
585a59795c
Updates to the tokenizer for EBCDIC. No changes for standard builds.
...
FossilOrigin-Name: 4fc6580ffa7232aaf751f38f90c45edc8863abe5
2016-12-12 01:53:36 +00:00
drh
167fbbe195
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.
FossilOrigin-Name: 25d1d02b3ea126ade22b2a72649ae55509aa1777
2016-08-10 14:40:00 +00:00
drh
f3c57ff54c
Avoid unnecessary calls to object destructors for a small performance gain.
...
FossilOrigin-Name: aec94b6ee68fe50e2cc14388281e2ef531e21d68
2016-04-12 00:16:54 +00:00
dan
a73086dd9e
Fix a problem with handling identifiers that start with "x" if SQLITE_OMIT_BLOB_LITERAL is defined.
...
FossilOrigin-Name: b65217c69c59cbe9cd1494e2eb42ecf22c336399
2016-02-24 16:14:07 +00:00
drh
b2bddbbc2d
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].)
FossilOrigin-Name: 2a8d97e7c8976df0312e1294e8c1da8b15686654
2016-02-18 14:49:28 +00:00
drh
30c14728b4
Minor simplification to the tokenizer. Slightly smaller and faster.
...
FossilOrigin-Name: 9570b6b43df3bc5ce314cded20bca8be9e968efe
2016-02-16 13:04:19 +00:00
mistachkin
fad3039c51
Enhance ability to debug out-of-memory errors.
...
FossilOrigin-Name: 6a9c4a3ebfb7cc0738ef6634440ccab44a21ff28
2016-02-13 23:43:46 +00:00
drh
e96f361995
Changes to help the tokenizer run about 33% faster.
...
FossilOrigin-Name: a050e6f096d40aa5b6275797b96e62c228044f5a
2016-02-08 19:36:46 +00:00
drh
34dcee6544
Add code to get the tokenizer character-class logic working for EBCDIC.
...
FossilOrigin-Name: 04f7da77c13925c1f1e287f4579bb85518297d81
2016-02-08 19:15:48 +00:00
drh
8974331fc3
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.
FossilOrigin-Name: 9115baa1919584dc8ca25bbff54d3b65748a9631
2016-02-08 02:30:50 +00:00
drh
4a642b6060
Improvements to the way that OOM errors are processed.
...
FossilOrigin-Name: c3ef03478a5788c855b3aef385d43ae7f494f440
2016-02-05 01:55:27 +00:00
drh
54bb56d82a
Performance enhancement to the tokenizer.
...
FossilOrigin-Name: 6ea2df86c95c226052f528424e9bee367a2e765a
2015-11-10 03:30:51 +00:00
drh
0739e45bcd
Small size reduction and performance increase in the parser.
...
FossilOrigin-Name: d62cd757a69cc49c2d309e27c948610b5868632f
2015-11-09 02:08:09 +00:00
drh
6e7722669e
Proposed fix for an infinite loop bug in the WITH clause semantic analysis
...
logic.
FossilOrigin-Name: 028475cb17a4b50baf0e9aba9bd3403d0a5d03b0
2015-11-07 17:48:21 +00:00
drh
b02392e6f0
Change sqlite3StatusSet() into sqlite3StatusHighwater() so that only the
...
highwater mark is recorded. This gives a small size reduction and
performance improvement.
FossilOrigin-Name: 6422d223dd10018703c6b083d29a3c35c837fc97
2015-10-15 15:28:56 +00:00
drh
a248a722cf
Change the parser engine so that it (once again) waits for a lookahead token
...
before reducing, even in a SHIFTREDUCE action.
FossilOrigin-Name: 2c17a1358353a0845b039283be79353f033e2491
2015-09-07 19:52:55 +00:00
drh
3bd48ab213
For the Lemon-generated parser, add a new action type SHIFTREDUCE and use it
...
to further compress the parser tables and improve parser performance.
FossilOrigin-Name: 531c3974b3d586c1989cde905b2fb4681239a570
2015-09-07 18:23:37 +00:00
drh
f5ed7ad63e
Fix harmless compiler warnings.
...
FossilOrigin-Name: b0badb99023e23bef0e2064cec58f2b279af0c0b
2015-06-15 14:43:25 +00:00
drh
e726622579
Move two unreachable conditionals inside of NEVER() or assert().
...
FossilOrigin-Name: db4e9728fae5f7b0fad6aa0a5be317a7c9e7c417
2015-05-29 17:51:16 +00:00
dan
584390e8dd
Fix a one-byte buffer overread that may follow a syntax error while preparing an SQL statement.
...
FossilOrigin-Name: 075003930da98419f671b7833a5850693529fb62
2015-05-26 18:58:57 +00:00
drh
22c17b8bf5
Simplifications to error message processing. Fix a possible problem in error
...
message formatting when vacuuming a database with a corrupt schema.
FossilOrigin-Name: 56ef98a04765c34c1c2f3ed7a6f03a732f3b886e
2015-05-15 04:13:15 +00:00
drh
9a9705de5c
Do not send the extra ";" and "\000" tokens to the parser if a prior error
...
has occurred.
FossilOrigin-Name: 9aa70ddf2ca6044634560a801b43df121384eb64
2015-04-25 00:32:30 +00:00
drh
f3151f0a0d
Fix a couple of unreachable branches.
...
FossilOrigin-Name: 8f391dffcfe068d48f854784648610d8a86f6bc8
2015-04-16 20:27:09 +00:00
drh
0be0cf6721
Remove a branch that became unreachable due to one of the earlier check-ins
...
today.
FossilOrigin-Name: fa0956edf866f48f448967836709a3ad822ff917
2015-04-15 08:37:42 +00:00
drh
347bdc39a7
Fix the error message generator for illegal token errors so that it does not
...
leak memory if it immediately follows another erroneous SQL statement.
FossilOrigin-Name: 3576973f8b88b6109fbefdebfa53468ffa137009
2015-04-15 07:57:27 +00:00
drh
af89fe66ea
Add the sqlite3_status64() interface. Make the new interface and the legacy
...
sqlite3_status() both atomic and threadsafe. Check threadsafety using
assert()s.
FossilOrigin-Name: 1ce8e8fa4b866aafa12b1da0eb4d02321af9293e
2015-03-23 17:25:18 +00:00
drh
96c707a3c2
Improvements to SQLITE_ENABLE_API_ARMOR.
...
FossilOrigin-Name: 823ad40ccb5b51aaa0d5a48da63b465df9d0649a
2015-02-13 16:36:14 +00:00
mistachkin
cd54bab6fe
Minor fixes and enhancements to the SQLITE_ENABLE_API_ARMOR functionality.
...
FossilOrigin-Name: cb3e4219ac9560d2773b85453aafda54b7c9346f
2014-12-20 21:14:14 +00:00
drh
97348b37c2
Change that might allow SQLite to build and work using the EBCDIC character
...
set.
FossilOrigin-Name: ef30e0352b3d4a29749cd0872c10e45a6649ec52
2014-09-25 02:44:29 +00:00
drh
fb046e7653
Fix a problem with parser memory allocation on 32-bit systems.
...
FossilOrigin-Name: 2f69a1fa6adc9377149ae7faa586a5d30b6a631b
2014-09-12 04:28:33 +00:00
peter.d.reid
60ec914c74
Fix typos in comments. No code changes.
...
FossilOrigin-Name: e62aab5e9290503869e1f4d5e0fefd2b4dee0a69
2014-09-06 16:39:46 +00:00
drh
28e048c618
Add support for parsing C-style hexadecimal literals.
...
FossilOrigin-Name: 34a1f38b7a23c64f5c6e5b34c19a20480be53961
2014-07-23 01:26:51 +00:00
dan
b290f11775
Fix some problems to do with WITH clauses and name resolution.
...
FossilOrigin-Name: 6a549187ed8b5ed50daefa676ff666ae2ed43346
2014-01-17 14:59:27 +00:00
dan
4e9119d9e8
Add code to handle non-recursive CTEs in the same way as SQL views.
...
FossilOrigin-Name: a26f399ba485e8127c276c5f103ec6c555e11734
2014-01-13 15:12:23 +00:00
drh
f59b12fbc1
Optimizations to the SQL language grammar that result in a small size
...
reduction and speed increase.
FossilOrigin-Name: cb5d1f83e0a33d546d4c0cb817ef1f8440d1f738
2014-01-11 03:54:05 +00:00
drh
c6bd4e4a36
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.
FossilOrigin-Name: b7544bb280f1c1c55135a9b35aeb85604fef94a3
2013-11-02 14:37:18 +00:00
drh
3975974780
Updates to requirements marks. No code changes.
...
FossilOrigin-Name: 213020769f310aec1591d97756b53891d0b64005
2013-08-02 23:40:45 +00:00
drh
4f7d3a5f06
Refactor names of fields in the sqlite3 object: "activeVdbeCnt" becomes
...
"nVdbeActive". Related fields becomes "nVdbeRead", "nVdbeWrite", and
"nVdbeExec".
FossilOrigin-Name: 14f796963474350e7aee8d3757acd3315fe78e4f
2013-06-27 23:54:02 +00:00
drh
2faf5f5e9e
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.
FossilOrigin-Name: f945c41a72519d6bcfb478730ba0254bb24e5331
2011-12-30 15:17:47 +00:00
drh
3a61a5a2b5
Performance enhancement to the blob-literal tokenizer.
...
FossilOrigin-Name: 61aa2031f1c5ae05e31077588a55194a9546262a
2011-06-03 21:34:45 +00:00
drh
124c0b49a1
Refactor the SQL parameter processing so that parameter names for values
...
that are optimized out of the prepare statement are not forgotten.
FossilOrigin-Name: b3aaf715b60b8a338cc6c92dad1ead4a3f7146a3
2011-06-01 18:15:55 +00:00
drh
b975598ea0
Make sure all memory from sqlite3DbMalloc() is freed by sqlite3DbFree() and
...
all memory from sqlite3_malloc() is freed by sqlite3_free().
FossilOrigin-Name: ac1f37a647e9ed1c00a901d26d9956a86c40117a
2010-07-24 16:34:37 +00:00
dan
1feeaed291
Remove the Table.dbMem variable, as it is no longer being used for its original purpose.
...
FossilOrigin-Name: 6eddc6e601cf8f585c6c2cf79f36fcbfe98a307e
2010-07-23 15:41:47 +00:00
drh
413c3d36a2
Continuing improvements to error reporting and the sqlite3_log() routine.
...
FossilOrigin-Name: edea3bb740ddd096a46e00678b59d465bb1e2903
2010-02-23 20:11:56 +00:00
drh
d3479b94e3
Add a few simple evidence comments to the tokenizer. No functional changes.
...
FossilOrigin-Name: 0daec3099d439ce8a8779260b12975f262037bc8
2009-12-14 17:42:12 +00:00
drh
af2b572028
Use the sqlite3CtypeMap[] to improve the speed and reduce the size of the
...
logic in the tokenizer that recognizes identifiers.
FossilOrigin-Name: 1c9243b0760741f48b15efb0da661255177aed8b
2009-11-16 15:11:51 +00:00
drh
c81c11f62c
Remove the obsolete "$Id:$" RCS identifier strings from the source code.
...
FossilOrigin-Name: f6c045f649036958078cb15cd9d5453680c82b0c
2009-11-10 01:30:52 +00:00
drh
e7f3f3eec1
Remove two unused fields from the Parse structure. The TCL interface now
...
removes leading whitespace from SQL statements before parsing them. (CVS 6846)
FossilOrigin-Name: 983cb6924b8a7d3057718b9228c0cb2fbe7f0dc4
2009-07-03 22:54:36 +00:00
drh
0b9f50d8aa
Enhance autoincrement so that it works with triggers that also do
...
autoincrement inserts, even multiple inserts into the same table.
Ticket #3928 (CVS 6807)
FossilOrigin-Name: 1330993de8eae7baeec24100216158063c9bdc19
2009-06-23 20:28:53 +00:00