dan
bb40727857
Allow real values to be used in PRECEDING and FOLLOWING expressions for RANGE window frames.
...
FossilOrigin-Name: 25ff7091cb12c63b1864ce68a9151f8432af5804b5ae905a2175761ab4b9fdd8
2019-03-12 18:28:51 +00:00
dan
935d9d8260
Expand on header comment for sqlite3WindowCodeStep(). Further simplify the implementation of the same.
...
FossilOrigin-Name: 5129bcc996b3c9f78ab6b674a4364787e7b353b90f15f027cad4431012022c30
2019-03-12 15:21:51 +00:00
dan
9e24439c2f
Fix a crash that could occur if the RHS of an IN expression is a correlated sub-query that refers to the outer query from within a window frame definition only.
...
FossilOrigin-Name: 0524aaaf45681437c2dca3d31ff26a65bee7bd2074730277c29136635ee0be0f
2019-03-12 09:49:10 +00:00
dan
cc7a850f2e
Remove "cache mode" from the window frame code generator. Handle the same cases by editing the window frame specification itself.
...
FossilOrigin-Name: 081263538332bb9c07e62630629007ccbba31bef5dc890f60b4ba58a355f70ac
2019-03-11 19:50:54 +00:00
dan
a786e453a4
Simplify the windows frame code some. Add a comment explaining some of the VM code generated by sqlite3WindowCodeStep().
...
FossilOrigin-Name: 6bd1a07949ff3d394056bfcc813444401ef00806e3f0e0423ff6962541e84bdb
2019-03-11 18:17:04 +00:00
dan
71fddaf195
Fix problems with "RANGE ... ORDER BY <expr> DESC" window frames.
...
FossilOrigin-Name: e7bced731aa071c95bc398cdecd53c939841bf0c52fbcd06e47ba68f8c5cc35a
2019-03-11 11:12:34 +00:00
dan
72b9fdcf20
Add support for RANGE window frames. Some cases still do not work.
...
FossilOrigin-Name: ffc32b246d92d53c66094afe11950b53ffab6a1c230c602eebbfedafb2eb57f4
2019-03-09 20:49:17 +00:00
dan
f7b846e4ed
Merge latest trunk changes into this branch.
...
FossilOrigin-Name: 53ea550ce759ae4683bcf0ae3af655bfe04f85db70f74edee6bcab56d83bb041
2019-03-09 07:38:16 +00:00
dan
0d86a9bd54
Add simple tests for GROUPS window frames.
...
FossilOrigin-Name: 2872702dacadad11f4fd7c437b77ef82763e840c9c92eefe87eac2491c38f963
2019-03-08 20:57:05 +00:00
drh
37f6ffb887
Fix a harmless bug in the Makefile.
...
FossilOrigin-Name: 62ac9cb07f5f2d14e716cd0f99f3f2fd34f6c9b4303619be8dfbca2eecf5b727
2019-03-08 20:26:12 +00:00
dan
6c75b39614
Finish consolidation of window frame code. Add untested support for GROUPS frames.
...
FossilOrigin-Name: 954bf369935083c188c3b14e77ed89fc5ec4323cc5b0c67e4a2e48fcc278df45
2019-03-08 20:02:52 +00:00
drh
bcf1f41a62
Add new test cases in test/fuzzdata8.db
...
FossilOrigin-Name: 97bdc090f30610cc5dd29101452d1647550387f9c6f742e50f1e07c3cf68a147
2019-03-08 14:07:15 +00:00
drh
4b986b2a47
Patch makes balance_nonroot() slightly smaller and faster and more robust
...
against corrupt databases.
FossilOrigin-Name: 174da3c32c9caebd642c31cb594597ccd5bb2a7fc501b1f49aef0b7b4765bfca
2019-03-08 14:02:11 +00:00
dan
66b8457c7c
Fix another segfault in fts3 that could occur with corrupt records.
...
FossilOrigin-Name: fcc24edde471c2214add2dbc3a27da8890a7148105c5ffa024faf72457964a5f
2019-03-08 13:27:27 +00:00
drh
9a518843f5
Detect an attempt to drop a btree that is not within the bounds of the
...
database file and abort early with an SQLITE_CORRUPT error, to avoid
problems later on in the process.
FossilOrigin-Name: 235a9698f5e9b3c21dc51c9c5042becfb82fc1762a7519a46b9f9fdafe9b0f13
2019-03-08 01:52:30 +00:00
dan
54975cdff9
Fix other "ROWS BETWEEN" cases on this branch.
...
FossilOrigin-Name: a5f68f66472610b5beb4fe28669fbbfe83a32742be73cecad9b2ae28f8a17b30
2019-03-07 20:47:46 +00:00
dan
c813750b7b
Modify new window functions function so that cursors are stepped immediately after each operation, instead of immediately before.
...
FossilOrigin-Name: 093d2b25f1b656bba57d665aac68109436861b157a5769432b612176dae3f6eb
2019-03-07 19:26:17 +00:00
dan
00267b8a7b
Simplify the window function code generator some more.
...
FossilOrigin-Name: 45cbd3b4498cea8856f189e9d0a192556d4f15212055b8328a1beca6083fc47a
2019-03-06 21:04:11 +00:00
dan
b33487b0b6
Improvements to the way built-in window functions are handled.
...
FossilOrigin-Name: e8eee566dfca6f4c8af074731dfe91f7fbcd9ca72f0303235b52e4e2e80d5b71
2019-03-06 17:12:32 +00:00
drh
39c5c4ae06
Add the sqlite3_stmt_isexplain() interface.
...
FossilOrigin-Name: ee642d3e2775ba4c73627ac71d0abf7a0f7a4ab3151d88e0076e9992f4814983
2019-03-06 14:53:27 +00:00
drh
aff0fd483c
Add an "|| CORRUPT_DB" term to an assert() that might be false if the database
...
is corrupt. Also add a branch to have sqlite3PagerMovepage() return
SQLITE_CORRUPT in that case.
FossilOrigin-Name: b0d5cf40bba34e459caa7480bc84a1d75496c2ab52029f4bb0a31f2d9369a8ee
2019-03-06 14:08:41 +00:00
drh
aaad696141
Fix a potential 32-bit integer overflow in the "showdb" utility program when
...
it is trying to interpret a corrupt database file.
FossilOrigin-Name: 3803e750384ec37091b0a6c350f8ef67720e316fd6f74c95e3c5f231c4a01ceb
2019-03-05 23:49:17 +00:00
dan
b25a214dec
Extend windowCodeStep() to handle any ROWS PRECEDING/FOLLOWING frame specification.
...
FossilOrigin-Name: af0ea1363548461b2aad8fd54ee3f2f616111dcae2d6480f5294da44c87a0a5d
2019-03-05 19:29:36 +00:00
drh
91ed9ce0dd
Add a script to tool/ that will extract the sqlite3.h header file from an
...
sqlite3.c amalgamation.
FossilOrigin-Name: 38d2e510cdedf38153466b161c0842b1604aef7b5589c51f628ae7cbb6a8722a
2019-03-05 16:53:16 +00:00
drh
7bf3133fef
New dbfuzz2 test cases added to test/fuzzdata7.db
...
FossilOrigin-Name: 25975e1fb2be0c011542c0a6b001385cec8113662df93dc618f725f2a4692bc2
2019-03-05 14:47:53 +00:00
drh
0a31dc201e
If the initial byte of a record is a large value, then always used the
...
generalized record comparison routine sqlite3VdbeRecordCompare() rather than
one of the specialized versions that are optimized for shorter records.
FossilOrigin-Name: c1ac00706bae45fe9735061ada025880606cdfb8ecfdaa36b4e2d04275820861
2019-03-05 14:39:00 +00:00
dan
4e72e62f3b
Merge trunk changes into this branch.
...
FossilOrigin-Name: 9b4d561f68febdab6624d8c567fb4357bf67dda500664cf708d16a76f37b8ec1
2019-03-04 21:08:53 +00:00
dan
680f6e8e2e
Support some "ROWS BETWEEN N PRECEDING AND M FOLLOWING" window functions without caching entire partitions.
...
FossilOrigin-Name: e7a91f12282afb5d5d7d78397a11d18e0268ee0c931d85e21fce00d13929494e
2019-03-04 21:07:11 +00:00
dan
4474e869fe
Fix a problem preventing compilation with SQLITE_OMIT_UTF16.
...
FossilOrigin-Name: 906d1fd8650874236e0bf5734d5347dcc45ec036164a56570fec37da4ffeaf8f
2019-03-04 07:15:57 +00:00
drh
75db74fdae
Improved comments on the fossildelta.c extension.
...
FossilOrigin-Name: d7d23f0450d659b2c7df34e4df8623ca7b6fe3bd19422e3e9234515214ae8510
2019-03-02 20:09:35 +00:00
drh
e22976c535
Fix the SQLITE_DIRECT_OVERFLOW_READ compile-time option so that it works
...
with SQLITE_HAS_CODEC.
FossilOrigin-Name: fd085e9260bec18f968704abb2dd324d954baa121d13b67c3f5b801e9e3834aa
2019-03-02 15:25:24 +00:00
drh
8f46f34e2d
Remove a redundant parameter extraction call from the percentile.c extension.
...
FossilOrigin-Name: d49c32e6e7cc341b5961d2c7b7c68d1649c6542eeec201660e3f82a55aea9e3b
2019-03-02 12:17:35 +00:00
drh
f10c535fa5
The fts3_tokenizer() function returns NULL if the
...
SQLITE_DBCONFIG_ENABLE_FTS_TOKENIZER setting is disabled, which is is
by default.
FossilOrigin-Name: f5732f4caf7a37a6445c61ae0d0ac14cc9deb897376e73aa36a1ead025b92c69
2019-03-01 21:33:29 +00:00
drh
10cc16c954
Fix a minor comment typo. No code changes.
...
FossilOrigin-Name: 9a0a93c89d3fdd0f9000a9226388e2e53f299165e043913f40b83bf597bfea04
2019-03-01 21:12:40 +00:00
drh
b531aa8fd9
In a query that uses a partial index, the expression that is the WHERE clause
...
of the partial index must always be true. Use this fact to avoid evaluating
identical terms in the WHERE clause of the query.
FossilOrigin-Name: 9b2879629c34fc0a8e99d94648903eb93aabbc7a3682c80cb7382f9a9ca5ffb7
2019-03-01 18:07:05 +00:00
drh
9cb0264041
Add the ".parameter" command to the CLI.
...
FossilOrigin-Name: 1f9fa58541dc974989eee9c9a5d453956f7dbcf42965ece2db2cb5dee3f3f5e2
2019-02-28 20:10:52 +00:00
drh
c06ede105d
Add the new "bind_fallback" method to the "sqlite3" object in the TCL
...
interface.
FossilOrigin-Name: c7f70b6d96338dba201e005104e7f7148c1a8cd767ab05e35b44617c4c797bc5
2019-02-28 17:29:19 +00:00
drh
4ddf7f4211
New test case loaded into test/fuzzdata8.db.
...
FossilOrigin-Name: 00ae0c6c4815366bd2f36bc054b13bc7b568dd0a3caceddf0eba4db33f010ee4
2019-02-28 14:09:14 +00:00
dan
95fdb63b7f
Avoid an assert() failure and an undefined left-shift operation in the fts3 snippet() function that could occur if the database was corrupt.
...
FossilOrigin-Name: d5250db6322103326f0d5782ba049996d9ce8784f9e53a3112fb6f09f888f1c3
2019-02-28 13:41:35 +00:00
drh
45616c7f75
Add an "|| CORRUPT_DB" term to an assert() statement in the btree defragmenter.
...
FossilOrigin-Name: 6bfd8655f006e031c0d4c988356c4b9206efa6bfdb034fde8ffa3361521a4844
2019-02-28 13:21:36 +00:00
drh
8e0f794d17
Enable the LIKE optimization when the ESCAPE keyword is present and the
...
PRAGMA case_sensitive_like pragma is ON.
FossilOrigin-Name: 6ae4b8c525f446ddb0e0bdd5e4e01e06e2ab975e3effa42fce6a1102b3a39830
2019-02-27 23:05:14 +00:00
drh
0319934322
Fix the readfile() UDF so that it returns an empty BLOB, not an OOM error,
...
when reading an empty file.
FossilOrigin-Name: 0edad5339e36d69aed9289bb3e60d35f9930386d76a62bb0194c4fdf420d16fb
2019-02-27 19:59:56 +00:00
dan
89d249364e
Add the "-returntype" option to the "db function" Tcl method.
...
FossilOrigin-Name: 789a492b68c353e2b763d67d399722b7ab61bfe09b472466df2821f65cab1be9
2019-02-27 16:38:19 +00:00
dan
f26b145385
Verify that fts5 auxiliary functions cannot be used in aggregate queries.
...
FossilOrigin-Name: 122330dba3eb2492875bd02a46442306f73e251408447af5e5914ee0c8d6a110
2019-02-27 15:26:03 +00:00
dan
69e224f88a
Reformat the white-space in a few test cases so that the tests work with Tcl 8.6.9.
...
FossilOrigin-Name: 29d02bf2fa9ecacbcc3e862ca70382f5875da8c1dc7fd27366190045fcc42b15
2019-02-26 19:16:49 +00:00
drh
ddc28c23d5
Minor change to dbfuzz2 that allows it to be compiled against older versions
...
of SQLite.
FossilOrigin-Name: 6d39d6a68bf09e0b4f6706218373e74fc03148fd8bdba5031c3de2f750d87cf2
2019-02-26 18:21:08 +00:00
drh
bfa70de117
New test cases added to test/fuzzdata8.db.
...
FossilOrigin-Name: 61fdfc57b9539cb6da5fc24653da2c8fb7c041a7409df911df11b987ed479a3a
2019-02-26 17:52:44 +00:00
drh
5cb1ffc1bd
Allocate a few extra bytes for the pager temp page as an overrun buffer while
...
processing corrupt database files.
FossilOrigin-Name: e7aca0714bc475e04b16e9db78722ce025d2a1382f80cfc0a49cff2af904eae5
2019-02-26 17:49:07 +00:00
drh
eaac9996ed
Use unsigned integers to count the number of pages in a freelist during
...
an integrity_check, to avoid any possibility of a signed integer overflow.
FossilOrigin-Name: 05b87e0755638d31f6d8918f8758362f8c3981661449b5171180a8498f66bd9d
2019-02-26 16:17:06 +00:00
drh
2b454e0335
Fix a harmless compiler warning that only comes up during debug builds.
...
FossilOrigin-Name: 848869ced988ca4d0ac76d43f984360fd11997a580719cccf8d55becea4e8fb1
2019-02-26 16:11:46 +00:00