drh
3c8fb6fb84
Performance optimization: avoid unnecessary calls to computeLimitRegisters().
...
FossilOrigin-Name: f48bd8f85d86fd93329dda7ba57f468854a732b89e4126e9c5beec3495d24b31
2022-07-26 01:20:18 +00:00
drh
fe888bcf11
Fix an assert() that was made out-of-date by [b52393ac28debe98].
...
FossilOrigin-Name: db8230e80ed894fc2801cdbb53c2cd9de00192d7f4d8328c29cc214e2e0adde9
2022-07-25 23:34:14 +00:00
drh
509a6303d1
Performance optimization by only invoking sqlite3FkCheck() when it is actually
...
needed.
FossilOrigin-Name: 98b0e830bc7effa3c9cbb77aebe7c128afc3b210af336b7516108d6435705ba0
2022-07-25 23:01:41 +00:00
drh
ef69d2b277
Performance optimization in sqlite3ViewGetColumnNames().
...
FossilOrigin-Name: 390717e68800af9b71acd635cf6cb123f9a591276df511f11462b42960f9a70c
2022-07-25 22:31:04 +00:00
drh
f89812fe52
Fix a harmless compiler warning.
...
FossilOrigin-Name: 9aba7417c60b30b44c051580f0f997a4d2fc86bc811b532d175305ad4c181fc6
2022-07-25 22:02:35 +00:00
drh
2d2e528e1f
In-line a call to sqlite3ExprCode() in insert.c, for a size reduction and
...
performance increase.
FossilOrigin-Name: 35066b1446228bf030795e7868509c7b54a5681984ac28bf43123f8fac2e361e
2022-07-25 21:37:13 +00:00
drh
47e2fe3ce7
Performance optimization in computing the Expr.nHeight field.
...
FossilOrigin-Name: 1798ce97c8763d75315e1716d10f6c5be301042c174f41ee8c1fb8d9db99d52b
2022-07-25 20:21:57 +00:00
drh
058e99502a
Small performance increase and size reduction by splitting out the
...
sqlite3VdbeGetLastOp() from sqlite3VdbeGetOp().
FossilOrigin-Name: 92ac01d41d46ab73e189b1e5596ea63e5edb5b15639c5d7bdb981b95366c069b
2022-07-25 19:05:24 +00:00
drh
ee37302095
Allow subqueries on the right-hand side of a LEFT JOIN to be flattened even
...
if they contain a GROUP BY clause.
FossilOrigin-Name: 816da9a893ae97a21463562479edb419a8b511ae731d86eccee3fa6e3e7dc96e
2022-07-25 15:54:23 +00:00
drh
6b6d6c6bd2
TK_IF_NULL_ROW expressions must be accumulated in the same way as TK_COLUMN
...
expressions in an aggregate query. Proposed fix for the problem identifyed by
dbsqlfuzz 8e17857db2c5a9294c975123ac807156a6559f13.
FossilOrigin-Name: 40d08807209638aad728be2cedbc904e342e76c8e486c364bd571b55dd2e1e87
2022-07-25 14:05:11 +00:00
drh
7bace9e9bb
Simplifications to sqlite3FinishCoding() for a small size reduction and
...
performance increase.
FossilOrigin-Name: a995614b9aedf4492e6d7b777293770f268837f8246e1678ef0523738c8a8339
2022-07-23 12:51:48 +00:00
drh
3dedb87bd7
Remove a branch that is no longer reachable due to the previous check-in.
...
FossilOrigin-Name: 8b4d1b9317624f443fe526858bfe3da5281ba83de1828c62935f48b3e7cf2a88
2022-07-23 00:53:48 +00:00
drh
ee6b80c3b5
Use sqlite3ParserAddCleanup() rather than pParse->pConstExpr to implement
...
sqlite3ExprDeferredDelete(). This is a better solution than check-in
[c538d07535092722].
FossilOrigin-Name: 2a6f6971fa010219323b976ff53b2606e39fb43fd36c394837c3a8528bf3c425
2022-07-23 00:44:44 +00:00
drh
825fa17b1f
Omit the EP_MemToken flag that was made obsolete by [e1f1cfe7f4387b60], for
...
a size reduction and performance increase.
FossilOrigin-Name: 28934a9d92d5e5ac862a0dc7169f071f39047f98dc79441db697cf353a4b9433
2022-07-22 19:28:04 +00:00
drh
034d111807
In a TK_BLOB Expr node, the Expr.zToken might not be a well-formed
...
BLOB literal if there has been a prior OOM.
dbsqlfuzz 23871e5805d6c45b392f9b7aa1e8a2b98f3c27cd.
FossilOrigin-Name: c538d075350927222ab0a6598b844f7b15153c5dc008d71b921a2b73c4f4a7a4
2022-07-22 18:25:04 +00:00
drh
d00505dc97
Update the documentation for SQLITE_OPEN_NOFOLLOW to state more clearly that
...
nothing in the database path is allowed to be a symbolic link.
FossilOrigin-Name: de9222697b2ca8cae2cc7aa9082cca3910038ebbab1e8ee15270b06711711a0b
2022-07-22 14:52:29 +00:00
drh
9553016377
Make use of the sqlite3ExprDeferredDelete() interface in the previous
...
check-in, and in another place where it might be helpful.
FossilOrigin-Name: 22f90e9683d5cd6619ccdb06a02e9dde9f4b7457391c0dbb4c3216c22fc0db47
2022-07-20 20:36:26 +00:00
drh
3245f3be67
Simplify the logic that converts the "1" expression in "ORDER BY 1" into a
...
copy of the expression that defines the first output column.
FossilOrigin-Name: e1f1cfe7f4387b60443bd31742e2f49db1a2d0443200318a898ba0da216619be
2022-07-20 16:42:40 +00:00
larrybr
a5cc692422
Improve accuracy of julian day milliseconds calculation.
...
FossilOrigin-Name: e5e9311863544ef30dccd3bd0b3a048a864a650e69cdf9aab13dbe32a4777b51
2022-07-19 21:12:54 +00:00
drh
077e17b59a
Increase the size of loop variables in the printf() implementation to avoid
...
harmless compiler warnings.
FossilOrigin-Name: aab790a16e1bdff78759f9c9ae87a2559ba82dd34ef3dedfb66035a0db7067a7
2022-07-18 15:02:00 +00:00
drh
02cb3ff004
In the query planner, restore the former aggressiveness in reordering of
...
FROM clause terms that existed prior to version 3.39.0 for queries that
contain no RIGHT or FULL JOINs.
FossilOrigin-Name: 92d60b64ebfc2d1f0a9cabaa88e7bf0d11737ed01a77b627af10dd1b96a5321c
2022-07-15 20:39:39 +00:00
drh
b3623e0af7
Fix the whereKeyStats() routine (part of STAT4 processing only) so that it
...
is able to cope with row-value comparisons against the primary key index
of a WITHOUT ROWID table.
[forum:/forumpost/3607259d3c|Forum post 3607259d3c].
FossilOrigin-Name: 0620e419a927a3da6ebe921aaa3471686f0fdc2e485f4c2d5c88f32092228724
2022-07-15 12:16:11 +00:00
drh
e834484d89
When applying the omit-ORDER-BY optimization, defer deleting the AST of
...
the deleted ORDER BY clause until after code generation ends.
FossilOrigin-Name: f22f95b838873f1d2a320afe3d0f4e4847948fcd343097b93a9f684a6f66d6ba
2022-07-14 01:48:27 +00:00
drh
b88bf865c3
The query flattener should not run if the subquery is a compound that contains
...
a RIGHT JOIN in any arm and the subquery is not the first element of the
outer query. Otherwise, prior elements of the outer query will not have
the JT_LTORJ flag set. Fix for the problem reported in
[forum:/forumpost/174afeae5734d42d|forum post 174afeae5734d42d].
FossilOrigin-Name: 274e244c85935084b2f0f85176283f018bf9b74e7703f985bd5a2f6f8bdcff5d
2022-07-13 15:52:15 +00:00
stephan
4413ec7255
Renamed the SQLITE_SHELL_WASM_WEB_MODE to SQLITE_SHELL_FIDDLE, which seems to be more in line with project convensions and indicates that that flag is only intended for /fiddle mode, as opposed to arbitrary wasm-on-the-web use.
...
FossilOrigin-Name: d1d019bfa2f62b0dc39bba42e17786ca2e4362b6d11d206e5445a051a0f93ae0
2022-07-12 15:53:02 +00:00
stephan
ea1e3b4251
Renamed SQLITE_SHELL_WASM_MODE to SQLITE_SHELL_WASM_WEB_MODE and no longer automatically enable it if __EMSCRIPTEN__ is defined, in order to facilitate using Emscripten to build the shell for CLI-based WASM runtimes (which cannot make use of the web-specific user input changes). The fiddle build now explicitly passes the new flag on at compile-time.
...
FossilOrigin-Name: ee059ad5a811a1511e37158f041a7bf9070529d530410d2f1c4395cdd25c6d33
2022-07-12 09:40:27 +00:00
drh
b2d7137154
Back out the pager performance enhancement at [a1c090e08139f99d3], because it
...
turns out we should never allow a zero key into the pcache interface according
to the design specs, even if that page is immediately released without ever
being used.
FossilOrigin-Name: ec96293ead83603ebe5d7f250d6fdc11f22172f05a9513f175331437c3eaa4c8
2022-07-12 07:13:38 +00:00
drh
f1ab642cde
Fix harmless compiler warnings about unused debugging functions in treeview.c.
...
FossilOrigin-Name: 4d6f907712e35eddf6af36eb823c3ccdfcdff1c63b2c224b3bcf34ffec95d511
2022-07-11 18:26:14 +00:00
drh
fc7f8f81da
Back out the optimization at [1a8c2e54375ee2cf7] because there are some
...
cases where it does not work.
FossilOrigin-Name: fe39c8d5fd813308fb27a05ce257ff003d3c09c0372f500e8def5a528a2558b7
2022-07-11 18:11:51 +00:00
drh
cd9e863079
Ensure that the Parse.nErr flag is set following an SQLITE_TOOBIG error on
...
a nested parse. Fix for the problem identified by
[forum/forumpost/d5a82ba9eedee30c | forum post d5a82ba9eedee30c].
Also, remove unnecessary clearing of the Parse.zErrMsg field
following a nested parse.
FossilOrigin-Name: 44d77a7f807f5dc3e94e6cd88a27bea79257f0f2ccf332891bdaa4668d0bb987
2022-07-11 14:36:03 +00:00
drh
25bb72a7a8
When an OOM occurs and sets the Parse.nErr value, also set the Parse.nErr
...
value for all outer Parse objects.
dbsqlfuzz d33f60aaa67733aa700cd69dacf8e0e23a327a29
FossilOrigin-Name: 9a494d25944f4f640026e7a7ae2948e555d7af31487c55ed2ec2818a0789b887
2022-07-10 21:12:54 +00:00
drh
74879e137d
Performance optimizations in the WHERE clause processing of the query planner.
...
FossilOrigin-Name: 50c8e8de52a6ba328bc9eb38e1a67033b643ddf41ff507d2240e97e0072b6db3
2022-07-08 20:03:41 +00:00
drh
5f289e8400
Omit an unnecessary structure initialization in whereLoopAddAll(), replacing
...
it with an assert() to show that the initialization has already occurred, for
a small performance increase and size reduction.
FossilOrigin-Name: 27be9e963459ca0b20c339264125e175550debf50fdbec7d78412768a6326b42
2022-07-08 18:23:04 +00:00
drh
4efa360f89
Size reduction and performance optimization in whereLoopAddBtreeIndex().
...
FossilOrigin-Name: 64d2312c121e3dabbc1f86effe9dfc57915395466ea2c3746821848f743b8d8f
2022-07-08 17:57:10 +00:00
drh
72f38795b4
In wherePathSolver(), defer initializing variables until they are actually
...
needed, in case they are not needed. This gives a small performance increase.
FossilOrigin-Name: 6f28a9652a3f1e5354afb76314db8f33f92f5e888e336d025f34881c0a8d64ae
2022-07-08 16:56:47 +00:00
drh
0e400f4e7d
Remove an obsolete statement from a comment. No changes to code.
...
FossilOrigin-Name: 99afb3f41b923f06211d655d46c902da13c8f7aadf2421d6e93c048f5b49e660
2022-07-08 11:55:54 +00:00
drh
e6aec72312
Very small size reduction and performance increase in btree.c.
...
FossilOrigin-Name: 9a7c031a822246ee36bc440c7492e9c8ebeec6bc7066e56f114756b1881b2eb8
2022-07-07 22:59:35 +00:00
drh
f15b77b7cf
Size reduction and performance increase in defragementPage() of btree.c.
...
FossilOrigin-Name: 1b03f197b5572084177012a58990f8dba7ff10382ff5657fda62867a4d0b1af9
2022-07-07 21:04:03 +00:00
drh
ebaa9477d7
Size reduction and performance increase in the pageFindSlot() routine of
...
btree.c.
FossilOrigin-Name: 5d247e38560b97975568e8a48324acaca1002ec2ef7fa3efc9c8aa7d83412aad
2022-07-07 20:29:49 +00:00
drh
dce232a298
Size reduction and performance increase in the freeSpace() routine of btree.c.
...
FossilOrigin-Name: 7d7aed053f600659c63d8bac6d5da77879936c3fc57bfd058a4943b3bc530575
2022-07-07 20:11:35 +00:00
mistachkin
07fae32db0
Fix harmless compiler warnings seen with MSVC.
...
FossilOrigin-Name: 61e2094afbbcbd5fdf5c3ec06b96134fafb7b854dc9bfa7d0619bed6d35efbe4
2022-07-06 23:50:01 +00:00
dan
e36281fc31
Avoid dropping error codes in the xBegin() method of virtual table sqlite_dbpage.
...
FossilOrigin-Name: 570e2bce595d3a48977dca0bb573dd3fe745a0d13b7122b3ad8ab4745c0700d0
2022-07-06 13:59:45 +00:00
dan
f53487a42d
Fix for builds with both SQLITE_DEBUG and SQLITE_OMIT_WINDOWFUNC defined.
...
FossilOrigin-Name: 77916947ce3f0828e1c50bcb8a6438c951ab9e74d83ec4324e82e90e100b9a98
2022-07-05 19:53:59 +00:00
drh
48cae1320b
Fix an assert() in btree to be more precise, as the previous form of that
...
asser might fail due to recent performance optimizations.
FossilOrigin-Name: 4774938134d0105423720bdc1b4e82164a1e28d993c5cd81c1b03f1f0878427e
2022-07-05 10:40:30 +00:00
drh
3325a5c497
Size reduction and performance optimization in sqlite3WalFindFrame().
...
FossilOrigin-Name: 1a8c2e54375ee2cf73773b798fed0ae07b42f5e068fddc513c093de5c1f46615
2022-07-04 15:14:25 +00:00
drh
16316f1b68
In the getNormalPage() routine of pager.c, consolidate pgno error checking
...
into a single spot for small size reduction and performance increase.
FossilOrigin-Name: a1c090e08139f99d30aa89db0756dc59fe8990ce15b3db4d4b726cc6acdab46f
2022-07-04 09:41:44 +00:00
drh
a57ac0a827
Improved comment on sqlite3VdbeSwap(). No changes to code.
...
FossilOrigin-Name: 6a8e4fb72a9e3dea9e5752c3d54fddba8878b355bd43f3c879f042f247a6610f
2022-07-03 11:16:03 +00:00
drh
20e9cbe0ff
Remove debugging code that has always been commented out. Cosmetic change.
...
FossilOrigin-Name: b54064170c51a2c905f98737c224e19c06dc728342ca2224e32ebeb47f803bcd
2022-07-03 11:12:59 +00:00
dan
2c1b1ddc55
Do not attempt the OP_Count optimization on queries with HAVING clauses.
...
FossilOrigin-Name: 566b7842ee286ed8620a87b06de65bc173ad0d208df4157292238fcb059cb484
2022-07-01 21:03:19 +00:00
drh
064390b2b1
Performance improvement in resolveP2Values(). Save over 1 million CPU
...
cycles by omitting the loop termination condition and exiting when the
OP_Init (always the first opcode in any VDBE program) is encountered.
FossilOrigin-Name: bb179140c8abfd9d05d62380daba027bdeabbbafc720b7e36b99a36af806017e
2022-07-01 19:42:12 +00:00