drh
bdb00225ab
Omit NOT NULL checks on unchanging columns in an UPDATE.
...
FossilOrigin-Name: 6a3aaedfb41735996470abbae6d3cd1be1f508b3
2016-02-10 16:03:20 +00:00
drh
1a606f8246
Merge enhancements and fixes from trunk.
...
FossilOrigin-Name: f040a5bb62f3473fba6450c97c68f538d1df21ef
2016-02-09 15:44:18 +00:00
drh
2fade2f791
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].
FossilOrigin-Name: ca72be8618e5d466d6f35819ca8bbd2b84269959
2016-02-09 02:12:20 +00:00
drh
0ac7cfaf99
Merge enhancements from trunk.
...
FossilOrigin-Name: a533608cb0de3cbc1e28a794aab99864b8c249f4
2016-02-05 14:15:34 +00:00
drh
575fad6500
Add the slightly faster sqlite3DbMallocRawNN(db,n) routine for the majority
...
cases where db is guaranteed to be not NULL.
FossilOrigin-Name: 0a802e96ab06e2643834b83671fa8353da1a348d
2016-02-05 13:38:36 +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
1b32554b80
Enhance the internal sqlite3VdbeAddOpList() interface to automatically update
...
jump destinations. Use this feature to simplify the AUTOINCREMENT code
generator.
FossilOrigin-Name: ae8b9d2edf1b5aef6108e729754911db7682b6a3
2016-02-03 01:55:44 +00:00
drh
33c1eb6477
Merge all recent enhancements from trunk.
...
FossilOrigin-Name: f3f9200115caf4b356f90ec97c351d1afbcb9bf6
2016-02-02 02:22:30 +00:00
drh
b89aeb6aa2
Add assert() statements on the nExtraDelete variable in vdbe.c to try to verify
...
that the FORDELETE and IDXDELETE flags are being generated correctly. Those
flags are not currently generated correctly, and so the assert()s trip on this
check-in.
FossilOrigin-Name: dde1db0dd2e2cf04706117629756c352b178ebb8
2016-01-27 15:49:32 +00:00
drh
20f272c96f
Merge recent enhancements from trunk.
...
FossilOrigin-Name: 327af5f644a49b2f41d5456958f9d61a2b704e1c
2016-01-20 11:33:37 +00:00
drh
9b34abee30
Use sqlite3VdbeAddOp4() rather than a separate sqlite3VdbeChangeP4() call, for
...
a slightly smaller and faster binary.
FossilOrigin-Name: a4258cd4613c55acacb5c7b61faa3de7eb0759d2
2016-01-16 15:12:35 +00:00
drh
8de1d77c60
Merge the latest enhancements from trunk.
...
FossilOrigin-Name: c0be246a740c8f33a7c07e1414688364dee56ece
2016-01-01 13:25:06 +00:00
drh
f19aa5fa6f
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.
FossilOrigin-Name: 2081d75767dc590b4c8457e5f8e5f18ba5f8eaa7
2015-12-30 16:51:20 +00:00
drh
0472af91ec
Simplification to the xfer-optimization logic.
...
FossilOrigin-Name: f35ba018da843897acca58f70541b940598bc271
2015-12-30 15:18:16 +00:00
drh
1c75c9d7f1
Ensure that the Expr objects that describe indexed expressions are not modified
...
by code generation. Fix for an assert() problem found by Jon Metzman using AFL.
FossilOrigin-Name: 34073ce87d88a02313217023ae92e15939192cd9
2015-12-21 15:22:13 +00:00
drh
769dc6e2a2
Merge the latest enhancements from trunk.
...
FossilOrigin-Name: 7d6cfc79e7e5534ebacd980479917bc528a638f7
2015-11-19 19:40:40 +00:00
dan
aaea31439d
Fix a problem with VACUUM and __hidden__ columns.
...
FossilOrigin-Name: 13995756ad8b80568aa2f74387788a8cab1123ef
2015-11-19 18:09:05 +00:00
dan
ba68f8f3f5
Fix problems with INSERT INTO ... SELECT ... statements that write to tables with __hidden__ columns.
...
FossilOrigin-Name: 59bd0ec7d4327852ee8c0206b2c59d0a12484db8
2015-11-19 16:46:46 +00:00
drh
1a1d3cd2f3
Create the new TK_ASTERISK token to represent the "*" in "SELECT *". Formerly
...
that operator was TK_ALL, which was also used for UNION ALL. Less confusion if
they operator symbols are distinct.
FossilOrigin-Name: 201ac6d449431dadc6b29faecd68b559bd64bc9f
2015-11-19 16:33:31 +00:00
drh
03d69a6826
Only support the magic "__hidden__" column name prefix interpretation when
...
compiled with SQLITE_ENABLE_HIDDEN_COLUMNS.
FossilOrigin-Name: 5490646b2eb74ea8bd5ab2690f69b9c707a0165f
2015-11-19 13:53:57 +00:00
drh
b1daa3f469
Get the __hidden__ column mechanism working on views with INSTEAD OF triggers.
...
FossilOrigin-Name: 20c1e9ce75cc0b5f7456379f35a4fe24edd98088
2015-11-18 21:22:02 +00:00
drh
f0c9145a36
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. <b>This branch is a
proof-of-concept only and is not intended to ever be merged into trunk.</b>
FossilOrigin-Name: 2dbffb3a3b20dba7d7d86c8ad2e34633f616c78a
2015-11-18 18:43:15 +00:00
drh
d286b9fb7d
Merge all the latest enhancements from trunk.
...
FossilOrigin-Name: 395a153ff7b3c7a72f3d02b6fe76d72383f4e480
2015-10-30 16:50:00 +00:00
dan
fd261ec67e
Modifications to pass a flag to internal routine sqlite3BtreeCursor() when a cursor that is used solely for deleting b-tree entries, or for obtaining the components of keys to delete from other b-trees, is opened.
...
FossilOrigin-Name: cdc92919e600007cae5eb61223684f48a65babc0
2015-10-22 20:54:33 +00:00
drh
fed7ac6f04
Add the OP_IntCopy opcode - an optimized version of OP_SCopy that only works
...
for integer values.
FossilOrigin-Name: 3a2f73a4924860fde8ee41ad646e7a02d29ad9d5
2015-10-15 18:04:59 +00:00
drh
4918480252
Pull in the latest 3.9.0 tweaks from trunk.
...
FossilOrigin-Name: ed174ccf0ae615647ba026fed649d26dc9a98640
2015-10-10 20:35:10 +00:00
drh
728e0f91bb
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.
FossilOrigin-Name: 9ddef84d432813f3ece8012047d08441caa3315d
2015-10-10 14:41:28 +00:00
drh
32af5eda6a
Merge recent enhancements from trunk, and especially the fix for
...
ticket [1b266395d6bc10].
FossilOrigin-Name: b2face9aa95ade96a5666c70b6b31064c1ad0977
2015-09-30 14:50:39 +00:00
drh
4b92f98ccc
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.
FossilOrigin-Name: 7d272aa62cd4cbbf4b5d04e3b918de27671e8301
2015-09-29 17:20:14 +00:00
drh
c149f18f4d
Create the sqlite3IsToplevel(Parse*) interface to check to see if a top-level
...
VDBE is being coded (versus a trigger) and use that interface.
FossilOrigin-Name: 59662cd2b65255a30e1a420331c07c51b644621a
2015-09-29 13:25:15 +00:00
dan
438b881540
Merge the latest trunk enhancements with this branch.
...
FossilOrigin-Name: b7469c44be77358e02892a3abc696f7caa0dcd3b
2015-09-15 15:55:15 +00:00
drh
b77ebd828b
Reformat some code to make it easier to merge with sessions. No logic changes.
...
FossilOrigin-Name: eade355fafec558fc13dc4b08ca0b07713a2cd84
2015-09-15 13:42:16 +00:00
drh
b0264eeca1
Use symbolic names ONEPASS_OFF, ONEPASS_SINGLE, and ONEPASS_MULTI for the
...
various modes of the one-pass optimization.
FossilOrigin-Name: 16e56bdadef903c6439a487f2683388aeeb0c625
2015-09-14 14:45:50 +00:00
drh
91762f2d18
Merge the latest trunk enhancements.
...
FossilOrigin-Name: 22ce9218fb2bb56cc5dd4e32077a16f669250d5f
2015-09-14 10:47:29 +00:00
dan
f0ee1d3c12
Experimental change to use a single-pass approach for DELETE statements on non-virtual tables that do not fire triggers or require foriegn-key processing.
...
FossilOrigin-Name: eaeb2b80f6f8f83679c8323a81bb39570ec946fe
2015-09-12 19:26:11 +00:00
drh
6b86881788
Merge recent trunk enhancements.
...
FossilOrigin-Name: 6a513c05850949900f396c7a61accb97cc6d2af5
2015-09-03 14:48:25 +00:00
drh
34de0c8c5e
Merge enhancements from trunk.
...
FossilOrigin-Name: 1ab10cbf27245961b40eda1ce70f35646f0a9966
2015-09-03 14:18:12 +00:00
drh
076e85f59c
Add the sqlite3VdbeLoadString() and sqlite3VdbeMultiLoad() routines to help
...
with code generation, especially on PRAGMAs. Rename sqlite3VdbeAddGoto()
to just sqlite3VdbeGoto().
FossilOrigin-Name: 847387ec8e6fef283899578fb232b2c23b00ee5b
2015-09-03 13:46:12 +00:00
drh
2991ba050b
Add the sqlite3VdbeAddGoto(v,i) routine as a shorthand for
...
sqlite3VdbeAddOp2(v,OP_Goto,0,i).
FossilOrigin-Name: be78f413df1b0d874b44a866ef6bf17543d7e8a2
2015-09-02 18:19:00 +00:00
drh
5969c657ae
Merge recent enhancements from trunk.
...
FossilOrigin-Name: cb77236673e30af1e8749d984dedecc8f901b255
2015-09-01 18:52:35 +00:00
drh
6860e6fa6f
Activate the ability to use expressions in indexes in a query. There are some
...
test failures, but mostly this seems to work.
FossilOrigin-Name: 42f93f582eccd8a778189aa6c113874f995ab751
2015-08-27 18:24:02 +00:00
drh
e14796085a
Merge enhancements from trunk.
...
FossilOrigin-Name: ec6ddb3d481d005c304a26c948c9c808586750e9
2015-08-26 18:04:23 +00:00
drh
567cc1e407
Move sqlite3IndexColumnAffinity() inside of SQLITE_ENABLE_STAT3_OR_STAT4.
...
FossilOrigin-Name: b3732a4e1b42a86675d89766cb8089914e2fab9a
2015-08-25 19:42:28 +00:00
drh
760b32dff2
Merge trunk enhancements.
...
FossilOrigin-Name: e8b02902c48f3668dcff7b1767347ac7ef3c971e
2015-08-25 19:24:11 +00:00
drh
e910769817
Use the sqlite3IndexColumnAffinity() routine to quickly and correctly find the
...
affinity of an index column.
FossilOrigin-Name: 1ee089a72d789002a0a377347fc51e08ab32fb14
2015-08-25 19:20:04 +00:00
drh
1f9ca2c84c
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.
FossilOrigin-Name: efaabdb71626bdc03768e87e186c72f6f3da75b2
2015-08-25 16:57:52 +00:00
drh
fea870be38
Remove some redundant code: Call sqlite3ResolveExprListNames() rather than
...
calling sqlite3ResolveExprNames() in a loop - in two places.
FossilOrigin-Name: bdaf66465b6b1bdad10c08d9527b98e7000a41e4
2015-08-24 20:54:06 +00:00
drh
89a10b2d53
Merge recent trunk enhancements, include table-valued functions.
...
FossilOrigin-Name: e9196d566690de0e9815f8cd85be7844322b5a79
2015-08-20 23:54:25 +00:00
drh
41b9ca2519
Fix the xfer optimization for WITHOUT ROWID tables so that it correctly
...
updates the change count returned by sqlite3_changes().
FossilOrigin-Name: eff43715d1a3a9ce3fe5da194dbb76ec0c06e13c
2015-07-28 18:53:37 +00:00
drh
60c97e6aa8
Merge recent trunk enhancements and fixes.
...
FossilOrigin-Name: c39cb0e2571f58c87053de009e2c135d71b2c3af
2015-06-11 18:01:29 +00:00