drh
5f419b3bba
Update requirement marks due to changes in documentation wording.
...
FossilOrigin-Name: 326cdc16f4db23c1d17596e4ef8d9d7abc672d48665950029ba53fd40c1b2d99
2019-09-27 17:36:37 +00:00
dan
7971b7fe92
More minor test file fixes.
...
FossilOrigin-Name: 352878fe1cbcf7b6803624544bba5a95565d1638d4dd09e91764ddad17889301
2019-09-26 20:57:53 +00:00
dan
9d30c8ff8f
Minor fix for test file indexexpr1.test.
...
FossilOrigin-Name: 0ceab26f15c4c7039647cbccf8939dd5c36a60b70ffeefcd3b415c8d4d8351cd
2019-09-26 19:53:26 +00:00
drh
ec39707fe6
New dbsqlfuzz cases added to test/fuzzdata8.db.
...
FossilOrigin-Name: 49073b7003330027303c4c776e9f85112f8b99b89f848fec3f953eba501d7505
2019-09-26 16:57:42 +00:00
dan
a51ddb1ed7
Fix a window-functions problem that could occur if an ORDER BY clause contains an alias for a window-function that is not a top-level expression.
...
FossilOrigin-Name: 1cc6cf6407c6e25aeafeca379a93d0ad2614839c07fb3644e46926fce5f1cfab
2019-09-26 15:53:37 +00:00
dan
e7579a53fb
Further simplifications to window-function code.
...
FossilOrigin-Name: 5fe15c1d8383989257e11d1806e6b035acacd1b504ae385ba58d20db10f26eee
2019-09-25 16:41:44 +00:00
dan
37d296a717
Bug fixes for window frames of the form (... RANGE BETWEEN b PRECEDING AND a PRECEDING) or (... RANGE a FOLLOWING AND b FOLLOWING) where (a > b).
...
FossilOrigin-Name: 040e196a8be3ca41b9365310ab88c2a3cc84b918a6511c77a6d95d4b4e0da3ed
2019-09-24 20:20:05 +00:00
dan
8c9bcb2328
Allow SQLite to omit redundant ORDER BY sorts in the case where a SELECT statement has GROUP BY and ORDER BY clauses that use the same expressions, even when the ORDER BY expressions are marked "DESC".
...
FossilOrigin-Name: 20f7951bb238ddc0b8932a55145df426b6fdf7b8631e069345902c853c90f191
2019-09-21 15:44:12 +00:00
dan
ed09dddece
Fix a problem with queries containing a min() or max() function for which the FILTER clause excludes all rows.
...
FossilOrigin-Name: b1d7e104e034655fe41bc55c562d91e8074a2973d538b8b29301458db45afc57
2019-09-20 20:52:16 +00:00
dan
14e3e22773
Fix an assert() in fts3 that could fail when accessing a corrupt database.
...
FossilOrigin-Name: 601ce9532d34f97a5faa170b6d8a272e5c54f2eabff84660201a1840e0fd9929
2019-09-19 13:51:52 +00:00
drh
6d2566dfc2
Always clear the temporary register cache after coding a subroutine.
...
FossilOrigin-Name: b6f2a7f9cdb547c925f08306df82519e41a7a0dd2cabd9861a48917bb6eef845
2019-09-18 20:34:54 +00:00
dan
572b0dddee
Add extra tests for the handling of corrupt records in fts3.
...
FossilOrigin-Name: 40e29a47d1266c16a4992e43579a51addcc632503099c4cd128f77dd4e67da3c
2019-09-18 17:22:00 +00:00
drh
e691dcb506
Test cases for ticket [587791f92620090e]
...
FossilOrigin-Name: ca0e3a83a1c015b346a791e6de03904d17a769c52dad0e3d71316c6e2e3f43c7
2019-09-17 13:30:30 +00:00
drh
91f473b5cc
Do not attempt the LIKE optimization for non-text columns and a pattern
...
prefix of "-". Ticket [0f0428096f17252a]
FossilOrigin-Name: 6fe0367f9a337b7c62886b7771f3ce0642faa13f4e4f3d9a0c848abbab514cd0
2019-09-16 18:19:41 +00:00
drh
130dbc3d96
Add recent interesting cases from dbsqlfuzz.
...
FossilOrigin-Name: f06ef3d75d85545dd58c6dda10f7ad04fafbb7ae8706b3821be21f86a94795f1
2019-09-16 15:15:38 +00:00
dan
b42eb3571c
Fix a problem with processing CTEs that use a WINDOW clause.
...
FossilOrigin-Name: ca564d4b5b19fe56842a04f31bb61352e6ae9d72a7e7634eb27ebcf5f670545a
2019-09-16 05:34:08 +00:00
drh
fab5b07395
Fix the windows inverse function on the JSON aggregates.
...
FossilOrigin-Name: f464d847af490dd3ec45565dcc4c2e6ff4ed1ebb65036f30ca0b3ce2e73080e6
2019-09-14 00:21:34 +00:00
dan
51a75aaa76
Fix a problem with using json1 window functions with an EXCLUDE clause.
...
FossilOrigin-Name: 4a1978814da41608a16f6953bd575c97d587a34bd80b7ac0e619d62bfdc903d2
2019-09-13 20:42:46 +00:00
drh
e087a7c35b
Fix the windowB test module so that it works even if SQLite is built without
...
JSON support.
FossilOrigin-Name: 807975c76b36347f02aa0ce9661d608adbffe1f7e77c15f8da677e47e1187153
2019-09-13 18:59:04 +00:00
dan
945a3527d5
Merge latest trunk changes with this branch.
...
FossilOrigin-Name: 14ef7543465dd14d8fa141fcceb1950b5c2d265a3e862323969d747b39c0cd8c
2019-09-13 16:19:53 +00:00
dan
fa50834914
Ensure the columns of views and sub-queries maintain their implicit collation sequences when the "push-down" optimization is applied. Fix for [18458b1a].
...
FossilOrigin-Name: 36997c4ade2ef3a274cd1ac52b44118fb3a05325adb650b7b338ecb43d060575
2019-09-10 15:33:52 +00:00
dan
d5deb6b3c4
Ensure the columns of views and sub-selects in the FROM clause of a select are always assigned implicit collation sequences, just as table columns are. Fix for [a7debbe0].
...
FossilOrigin-Name: b9ec72203c19c2b95e648ac1dfad74eec98d4ff82581cdc10dc4221ba551728f
2019-09-09 20:17:24 +00:00
dan
e08663946e
Ensure the columns of views and sub-selects in the FROM clause of a select are always assigned implicit collation sequences, just as table columns are. Possible fix for [a7debbe0].
...
FossilOrigin-Name: 1863b7bf12521bdd2b51c5b8d3a4634bff3e15d3713e0b5343952df7da02f794
2019-09-09 19:49:42 +00:00
dan
e2ba6df9f0
Add the SQLITE_SUBTYPE flag, which can be passed to sqlite3_create_function() and similar to indicate to the core that a user function is likely to use sqlite3_result_subtype().
...
FossilOrigin-Name: 6aa438ce41d460a6782ae63503128b9140c28ff59c2b2eed48b004acf83e0560
2019-09-07 18:20:43 +00:00
dan
1a97c413f8
Fix handling of NULL, text and blob values in window queries that use "RANGE BETWEEN A FOLLOWING AND B FOLLOWING", or "B PRECEDING AND A PRECEDING", where A>B.
...
FossilOrigin-Name: cb3e2be674316e1d39968eb6567f1fe1b72f9d89af49640a9e83f944979c4cf0
2019-09-04 06:56:43 +00:00
drh
c7d12f4ad4
When we play games with COLLATE in order to commute an operator in the
...
WHERE clause processing, be sure not to use the commuted operator to qualify
a partial index, as insufficient COLLATE information is preserved to verify
that the expression will correctly qualify the index.
Ticket [767a8cbc6d20bd68]
FossilOrigin-Name: 5351e920f489562f959ab8a376ff720f845ea165e0cdc7c3a271aac53c2aa64a
2019-09-03 14:27:25 +00:00
drh
4fc836546e
Fix a bug introduced earlier today by check-in [88833a9c2849c959].
...
Ticket [29f635e0af71234b]
FossilOrigin-Name: 6e7b4527d32cc1be0294614b9d7363d4b59cf654a954b86515b3f6888975ce73
2019-09-02 22:13:06 +00:00
drh
dd668c26b5
When applying the IN_INDEX_NOOP optimization and the LHS has REAL affinity,
...
also apply REAL affinity to each element of the RHS.
Ticket [2841e99d104c6436].
FossilOrigin-Name: 88833a9c2849c959a37a80e0e4d2b211ce3c83a48319724c89b172b060c876b4
2019-09-02 02:21:58 +00:00
drh
bffdd63633
When computing an expression value for an index-on-expression or a CHECK
...
constraint and the expressions uses a REAL table column, but the value of
that column is an integer (in other words, when it is using the
store-real-as-integer optimization) be sure to promote the value to real
before evaluating the expression. Ticket [57af00b6642ecd68].
FossilOrigin-Name: 0658c16e311393c8a347b1bd41fa5dbfd2e184aa75d84c011aa8dbac79b632e9
2019-09-02 00:58:44 +00:00
drh
80f6bfc064
Improvements to the algorithm that determines which SELECT in a sequence
...
of nested SELECT statements that an aggregate function belongs to. This
resolves an issue identified by dbsqlfuzz.
FossilOrigin-Name: d768007473f4ed40abbdf2c7e501b580b1cc37c1620c7cb90af1f208a8c35145
2019-08-31 20:13:30 +00:00
dan
f66bfcb740
If a DELETE trigger fired by an UPDATE OR REPLACE statement deletes the row being updated, do not attempt to proceed with the original UPDATE operation. Fix for [d6a0fbc1].
...
FossilOrigin-Name: 4145b3e05051ba6729105157a876793ad14a05d895fc10fe704f437eab16ea93
2019-08-31 17:14:35 +00:00
drh
7314495ff8
When the affinity of a table column is INT or REAL, make the affinity of
...
corresponding index columns NUMERIC. This increases the precision of
index lookups for large numbers so that it matches the precision of
ordinary comparison operators. Ticket [40812aea1fde9594]
FossilOrigin-Name: e0d909c740b774d8a46731696e33342be83206cc4a95d07f42fdb3d8cc2d7a8e
2019-08-30 23:56:34 +00:00
drh
a7ce167e5b
Make sure OP_RealAffinity has been applied to all columns of type REAL
...
in the excluded.* pseudo-table of an UPSERT.
Ticket [5a3dba8104421320]
FossilOrigin-Name: 67381dadede98a55d8d9e085d021e6fa6473071978967b6302e03b28cf2245e1
2019-08-30 23:15:00 +00:00
dan
9889ede28d
Add test case to window8.test. Also fix an error in a comment in window.c.
...
FossilOrigin-Name: 2925bfa5971c8557ecaa6ac18df0825ebbbd1622017509e83451d90640146fa8
2019-08-30 19:45:03 +00:00
drh
db3a32ed1c
Back out the change at [47cd634c98b502d4] which was incorrect. Add a test
...
case so that we don't accidently back out that change again.
FossilOrigin-Name: 596ac2a4eab28b74f4050fb4eb71883f2a1421fdbccf302413e4653391bb52c9
2019-08-30 18:02:49 +00:00
drh
ac6627327c
New test cases for window functions with RANGE BETWEEN and DESC NULLS FIRST.
...
FossilOrigin-Name: f7002f86c780e279c9f8a6268f317586519c059c9de2115ff6f1cad272570c29
2019-08-30 16:46:12 +00:00
dan
8b47f52082
Fix a bug in RANGE window functions that use "ORDER BY <expr> DESC NULLS FIRST" as the window-frame ORDER BY clause.
...
FossilOrigin-Name: 39b4cad4a51bb5116d62ffb16ac36d96a9280321b049eb2d008605392f52a459
2019-08-30 16:14:58 +00:00
drh
ae144a1c9f
The expression "(X IS FALSE) IN (FALSE)" does not imply that X is NOT NULL.
...
Ticket [f8f472cbc77ba9c9]
FossilOrigin-Name: dd66134817ecbda01c59a05ad0d6ac44bee700ab10cd2119c869dd69af293fe2
2019-08-30 16:00:58 +00:00
drh
7a231b4973
The expression "(X IS FALSE) BETWEEN FALSE AND TRUE" does not implie that
...
X is not NULL. Ticket [fba33c8b1df6a915]
FossilOrigin-Name: 057fb8b1809b8b9c8fff0fd0804153b9644f0545c23c6ddc4758bda3381094b9
2019-08-30 15:11:08 +00:00
drh
38cefc83c8
The expression "(x IS FALSE) IS FALSE" does not imply that X is not NULL.
...
Ticket [a6408d42b9f44462]
FossilOrigin-Name: 45ff2b1f2693bb0231a864a511bb82cf2a5945ab3d806a5bbaf1517ecb287883
2019-08-30 13:07:06 +00:00
dan
bd717a4d2e
Improve vdbe branch coverage of NULLS LAST code.
...
FossilOrigin-Name: e8e9f77d52974f6ba0a536d05837b280a996745deb3a2169bb29379f10e49df4
2019-08-29 21:16:46 +00:00
dan
9d23ea74d4
Fix other problems similar to ticket [c0390363].
...
FossilOrigin-Name: 96ff2ba9c4bb71d5f7c6f359986a76a5364b7ac3e1a612441543a9eabecf31df
2019-08-29 19:34:29 +00:00
dan
b6a9121bb3
Fix another case where SQLite assumes that if "~(? AND FALSE)" is true, "?" must be non-null.
...
FossilOrigin-Name: 616f5663b3dbd0929128c0990fc6d8bba1513c7ae196b87c450ac0b3b3203ecd
2019-08-29 15:50:16 +00:00
dan
1cd382e350
Avoid assuming that for "~ (? OR TRUE)" to be true, "?" must not be NULL, just as we do for "NOT (? OR TRUE)". Fix for ticket [c0390363].
...
FossilOrigin-Name: 84ae41fd2f50cb7c0c3f6522d0f94817e1bbf96eae5316279e3e32cee4e46e91
2019-08-29 15:06:35 +00:00
dan
8085d53d3c
Add support for "ORDER BY ... NULLS FIRST" and "ORDER BY ... NULLS LAST". Use this to fix ticket [f8a7060e].
...
FossilOrigin-Name: 94085fb3e756bc984237b74b6e29c68462ad860870c64dcb5124feaeec387660
2019-08-27 19:59:21 +00:00
drh
7ec796d002
Add ALWAYS() to an always true conditional that results from the
...
previous check-in. Add a test case for ticket [dbaf8a6820be1ece] to
supplement those already checked into TH3.
FossilOrigin-Name: aff209804722ac902c7abfde80ad2677e0f51beb2c7f28f65d51105d984a1640
2019-08-27 17:28:05 +00:00
drh
790b37a240
Omit the "x IN (y)" to "x==y" optimization of check-in [e68b427afbc82e20]
...
(and ticket [e39d032577df6942]) as it causes difficult affinity problems
as demonstrated by ticket [dbaf8a6820be1ece] and the original assertion fault
is no longer a factor due to countless other changes of the previous 5 years.
FossilOrigin-Name: 7f5168a76a400fc2e1e40c6950470b1bfb38a0be54fc5518c17c29fdae7d8f1f
2019-08-27 17:01:07 +00:00
drh
6397a78b2b
If a TEMP TRIGGER references an auxiliary schema, and that auxiliary schema
...
is detached, move the trigger to reference the TEMP schema before completing
the detach, so that the trigger does not hold a dangling schema pointer.
FossilOrigin-Name: 069c2f4c61f06211a8981abc412afcc1536ece13380b13a70aa99123f8f527cd
2019-08-27 10:05:45 +00:00
drh
512e46a74c
Merge in recent fixes from trunk.
...
FossilOrigin-Name: ad816d01d4bd3908ff2c574d79d1a29b6d732df308f2f1b1cdf7c0bc7c1bd7cf
2019-08-26 20:41:33 +00:00
drh
554a9dc78a
Improved detection of number of column mismatch for vector assignment
...
in UPDATE statements. Ticket [78acc9d40f0786e8]
FossilOrigin-Name: bd4bda73df3794eef424eb13e08fc7cc54347d1ac69febaeec41f6b6cb4a42bc
2019-08-26 14:18:28 +00:00
drh
a677eecad3
Merge fixes from trunk. Also fix a reference to the KeyInfo.aSortOrder field,
...
which should now be KeyInfo.aSortFlags
FossilOrigin-Name: 63e625c8eb06720eef30573aa562e38c90d228a9cf493f8bb59f09e50f0e3168
2019-08-22 19:35:24 +00:00
drh
0d950af311
Fix the likely(), unlikely(), and likelihood() functions so that they have
...
no affinity, just like any other function.
Ticket [7e07a3dbf5a8cd26]
FossilOrigin-Name: 44578865fa7baf9760e355691ca9ce753295aaba7a4ee0bba29d4f85d9335bab
2019-08-22 16:38:42 +00:00
drh
af8664020a
Fix a false-positive in sqlite3ExprNeedsNoAffinityChange().
...
Ticket [ac184eb571d5e6e0]
FossilOrigin-Name: e62eddbb048cbc2c15cb8eeb5b7a907e7cb08c21a27ebba96a069f62dbcb0f30
2019-08-22 11:11:28 +00:00
drh
3e36480232
Fix the OP_SeekGE, OP_SeekGT, OP_SeekLE, and OP_SeekLT opcodes so that they
...
preserve the datatype of the value in the register used as the key.
Ticket [d9f584e936c7a8d0]
FossilOrigin-Name: 81b9f0f55042777b37de78069f7089041a9ee21dd0a0c86b879053fb46e140b4
2019-08-22 00:53:16 +00:00
dan
2ebb550824
Update this branch with latest trunk changes.
...
FossilOrigin-Name: 6153bcf41a9aa0497f8210311c99ac23846223068f2b6a3a1c2d9dec7673c7e1
2019-08-21 15:41:50 +00:00
dan
f7c92e82d2
Avoid assuming that "column IS ?", where column is declared UNIQUE, matches only a single row (as "?" might be NULL). Fix for [b8689402].
...
FossilOrigin-Name: d02490a2f0cae047087130b4ad8f55f265845c2ffb3bde3b7d507edb54acea6d
2019-08-21 14:54:50 +00:00
dan
6fcb9f3ad9
Fix a broken assert() in the fts3 snippet code that was failing for queries containging more than 64 phrases.
...
FossilOrigin-Name: 4c01e0170e113ad052b6c3980beb4be9f1dc03fb3cf34132b90e8b82b23f654e
2019-08-21 11:31:48 +00:00
dan
546738f855
Further tests for the special null-handling on this branch.
...
FossilOrigin-Name: 0dbbb51f4d39cafb01d625d65c12dcb232a9c1da7ed5a9397bf55cfea1b980d2
2019-08-20 20:09:51 +00:00
dan
2a0c16f276
Add tests for sort-by-index cases that use IN() and non-default NULL handling.
...
FossilOrigin-Name: 09d660ecde723fb30f3bb3684bbb7f95825d78da6a6f33ddf57846054cd563e0
2019-08-20 17:51:13 +00:00
dan
4fcb9caa60
Do not pass ORDER BY clauses with non-standard NULL handling to virtual table implementations.
...
FossilOrigin-Name: a9a82ee88d2d12209a674bd19167277aa91a6912e7a8bbf3714f90d559307fee
2019-08-20 15:47:28 +00:00
dan
4780b9ad46
Fix a segfault that could occur following an OOM while processing a SELECT statement for which one or more of the expressions in the window frame declaration are themselves sub-selects that use window functions.
...
FossilOrigin-Name: 75aec4fc886c04fe098828cc03bc72c197cbf40f0a1890fe5bbb98d4fd5c3c7e
2019-08-20 14:43:01 +00:00
dan
b6ce71bd26
Retain the affinity of an expression in a WHERE clause when it is transformed to a reference to an index column on the same expression. Fix for [f043b113].
...
FossilOrigin-Name: 511da0815673ca4a176aa61dc23a8231b2ab77e8363fc184a78b6e17dba64d49
2019-08-20 11:43:44 +00:00
dan
ae8e45cb0c
Fix problems with window frames that use ORDER BY ... NULLS LAST etc.
...
FossilOrigin-Name: 75d665a494dd7d6e77d5a80af386ee5accc0a53416d5493424dc0fef6c7b01a0
2019-08-19 19:59:50 +00:00
dan
9105fd5189
Prevent NULLS FIRST/LAST from being used in CREATE INDEX and other statements.
...
FossilOrigin-Name: bb9767a287097a615aeb4abdba689b10e1a1c36c016c8e55905b508075e62c86
2019-08-19 17:26:32 +00:00
dan
c324d44690
When populating an ephemeral b-tree for the RHS of an IN(...) clause, avoid applying an affinity to a value that may be used later on for some other purpose. Fix for [c7a117190].
...
FossilOrigin-Name: 43e8b14314d876178d487c3b519296ac1de065fdcaa70768e40d684015bceb9d
2019-08-17 19:13:49 +00:00
dan
8328369740
Add tests to ensure that this branch really does fix ticket [f8a7060ece].
...
FossilOrigin-Name: f892066425671a8a0ac923e3ad4744677f6434a66f97b91afa8141f11f179975
2019-08-17 18:16:59 +00:00
drh
9e9a67adb0
Ensure the functions that appear to be constant are not factored out of
...
expression that originate on the right-hand side of a LEFT JOIN.
Ticket [6710d2f7a13a2997]
FossilOrigin-Name: 500c9152daaf11cf69d778aa8592175f6088337c6667c59af6df3a24cd81eb0e
2019-08-17 17:07:15 +00:00
dan
5b32bdff80
Merge trunk changes into this branch.
...
FossilOrigin-Name: db1e60800bc260cdcd604739daaba72c6b486158123fc62a3898aca4ead33cd3
2019-08-17 15:47:32 +00:00
drh
cc3f3d1f05
Activate introspection pragmas by default. The new option
...
SQLITE_OMIT_INTROSPECTION_PRAGMAS must be provided to keep them out.
FossilOrigin-Name: 9c4bca64fb5f635296a8d7d7c1bf2808e02ca734a9983e5cee9132f5352a9a6d
2019-08-17 15:27:58 +00:00
drh
217ca657d8
The SQLITE_DIRECTONLY flag, when added to sqlite3_create_function() prevents
...
the function from being used inside a trigger or view.
FossilOrigin-Name: de767376987f7668b0770c4920f1532e341b5a27f797d69c0f5e92b87d036170
2019-08-17 00:53:29 +00:00
drh
cc5979dbd3
Add the ability to unregister a virtual table module by invoking
...
sqlite3_create_module() with a NULL sqlite3_module pointer.
FossilOrigin-Name: 31e34fa3390196cdc3178bf120224b08df5ec58fa2c77079ede6e9461a430dad
2019-08-16 22:58:29 +00:00
dan
15750a26fa
Add support for using indexes for some ORDER BY clauses that use non-default NULL handling. Still some problems on this branch.
...
FossilOrigin-Name: 81069d7196857e909c94195d67388f71bc9f832eafd9156d8c5cdddb63513b4a
2019-08-16 21:07:19 +00:00
drh
11d88e68ab
Add the SQLITE_DBCONFIG_ENABLE_VIEW option, together with a "db config"
...
command in the TCL interface that can access that option as well as all the
other sqlite3_db_config() boolean options.
FossilOrigin-Name: 61b4bccd2984f4c2cf50f58ef08677588e57aa7e079af07473b2e188d9ce4f52
2019-08-15 21:27:20 +00:00
drh
42d2fce7f5
Provide the SQLITE_DIRECTONLY flag for app-defined functions that prohibits
...
the use of those functions within triggers or views.
FossilOrigin-Name: fc745845d8d76adc165575e2192f4176e3c28e614c72571d56f4011560499fe1
2019-08-15 20:04:09 +00:00
drh
725dd72400
Ensure that the optional "sz=N" parameter that can be manually added to the
...
end of an sqlite_stat1 entry does not have an N value that is too small.
Ticket [e4598ecbdd18bd82]
FossilOrigin-Name: 98357d8c1263920b33a3648ef9214a63c99728bafa7a8d3dd6a1241b2303fd42
2019-08-15 14:35:45 +00:00
dan
a3fcc000cb
Ensure that SQLite does not attempt to process incompatible window functions in a single scan. Fix for [256741a1].
...
FossilOrigin-Name: 4f5b2d938194fab7627486e2ced633def2c90d9d3328e3700612feb9dbfa3d9a
2019-08-15 13:53:22 +00:00
drh
27e80a3b68
Ensure that the cell overwrite optimization does not overwrite the header
...
of the b-tree page.
FossilOrigin-Name: 4cc5694cbd69749c146679c367860952fdf3f5356426ddfd1dce470569702bc1
2019-08-15 13:17:49 +00:00
dan
7c2321fdf3
Update test cases so that they work with ICU enabled.
...
FossilOrigin-Name: 408144a1832569ced8e04840f0dd36a3867405f36b13631b0f13c0f7b8a0fb01
2019-08-13 17:56:56 +00:00
dan
3c1970fcee
Update some corruption test cases to take [724f4df9c] into account.
...
FossilOrigin-Name: 927cd7b4c52fae665e57fb6039c6829e339cff5ad5c405800cac3ee149ef5be1
2019-08-13 17:27:43 +00:00
drh
554a19dbee
Make sure the btree cursor overflow cache is cleared when overwriting
...
a cell in sqlite3BtreeInsert(). Ticket [3cf9bb227e9a5d32]
FossilOrigin-Name: 7dae7b969ed314605a3a2da2cfdce4d81152740f5d3bfbc2a6e311b13ee325a7
2019-08-12 18:26:46 +00:00
dan
6e11892db8
Experimental implementation of NULLS FIRST/LAST. This branch still has problems - the most significant of which is that ORDER BY clauses with a non-default NULLS FIRST/LAST qualifier can never use an index.
...
FossilOrigin-Name: 07babb0f897fc8c9cb5b30481899c32fdd743f3f3ca508d8d957826252107dd5
2019-08-12 16:36:38 +00:00
drh
c5a93d4c85
Validate the type, name, and tbl_name fields of the sqlite_master table when
...
loading the schema, unless writable_schema is engaged.
FossilOrigin-Name: 724f4df9ccc2b683f7091a3f7a8c20ee210f44d7a610cd1b4c49da1c274add08
2019-08-12 00:08:07 +00:00
drh
14c865e859
Fix the sqliteExprImpliesExpr() routine so that it recognizes that
...
"(NULL IS FALSE) IS FALSE" doe not implie "NULL NOT NULL".
Ticket [9080b6227fabb466]
FossilOrigin-Name: da01ba4fa47c6508b31533ccd769e637af04bd37f51463372fbc6c848d892a4d
2019-08-10 15:06:03 +00:00
dan
b6299681c6
Add extra test cases related to the previous commit.
...
FossilOrigin-Name: 3c690b2b05b7338f3325c50a0750c6023e1173afa4388e836ecb2cc49f19a0ac
2019-08-10 14:35:06 +00:00
drh
3251a2031b
Remove two incorrect assert() statements from the logic used to derive
...
column names and types from subqueries.
FossilOrigin-Name: 712e47714863a8ed7ff73324d9fec569633e8b901c436c633b0220d16a7a9302
2019-08-10 14:16:17 +00:00
drh
cb99c57a66
Allow the RHS of a row-value IN operator to use a compound query with
...
an ORDER BY clause.
FossilOrigin-Name: eaf15d9bae6773058341d6219241f44ce728ad1cb9cf649f2efd4dddd81ec461
2019-08-09 20:26:01 +00:00
drh
175b8f06f7
Remove support for STAT3. The sqlite_stat3 tables are ignored, if they
...
exist. STAT4 continues to work as it always has, and as it is a superset of
STAT3 is the recommended replacement.
FossilOrigin-Name: 1e17ea2fd1df4ad49138c787c8fe3207dd0c25c93f9001d52a9b69f8c12e841c
2019-08-08 15:24:17 +00:00
dan
679c9613f6
Remove use of the affinity() function from view.test, as it is only available in SQLITE_DEBUG builds.
...
FossilOrigin-Name: 7f2246a17be9915b3492624a3d8deff56694bdc372f7627e3f16c1869415b1a3
2019-08-07 19:57:21 +00:00
dan
e7e48dc629
Add "set TMP=%CD%" to the start of each msvc script output by releasetest_data.tcl. Otherwise, since binaries compiled with SQLITE_TEST all choose the same sequence of pseudo-random numbers, collisions between temp file names cause errors when running multiple tests in parallel.
...
FossilOrigin-Name: f5d0436d8dc650cadb61a5fe76fd1a0d68dabba54ff0c2a8c138f9dfbdab1c3f
2019-08-07 18:34:21 +00:00
dan
0e3c50c5dc
Eliminate some more cases of redundant sorting in window-function queries.
...
FossilOrigin-Name: 8158d2aca68c5a253054376fdf1b8eaab2db874f4b93524742be7340e9c50dd5
2019-08-07 17:45:37 +00:00
dan
2712b022ab
Ensure that when the col in an operator like "val IN(col)" is a column of a view, its affinity is not used to coerce val. Fix for [0a5e2c1d].
...
FossilOrigin-Name: 17b3d2218c02a4005d4c96471c452105b54abb25901ae62990b01f0c955135fe
2019-08-06 21:16:28 +00:00
dan
0a8d06a93f
Add test cases to this branch.
...
FossilOrigin-Name: f37317d81cc2864ed57c76a7347351310d61c8056a2a0179218530ba60a44986
2019-08-05 20:45:53 +00:00
dan
72d1eac673
Fix a problem with renaming a table when a view or trigger within the schema uses a FILTER with an aggregate function that is not currently registered with the database.
...
FossilOrigin-Name: 2ac0e42f8ab7a9184c2a2efd13bd50ab51bc01f9f34e9e63591fd18db02dff54
2019-08-05 13:19:25 +00:00
dan
192418bd49
Fix a problem with queries of the form "SELECT min(<expr>) ... WHERE <expr>=?" where there is an index on <expr>. Fix for [71e183ca].
...
FossilOrigin-Name: d465c3eef458c851d97eea6e4117247d9c69386b276168080dbff7bb64070c93
2019-08-03 16:37:40 +00:00
drh
2e6d83bc49
Give the SQLITE_TESTCTRL_PRNG_SEED two arguments. The second argument if not
...
NULL is a pointer to a database connection which seeds the connection from
its schema cookie. In this way, fuzzers can control the PRNG seed.
FossilOrigin-Name: 49aa34480622cce4d7a72c59d9cfa8336886387acec8ee15b72f295ea1a52d8c
2019-08-03 01:39:20 +00:00
drh
e6e96b1b45
Fixes to the PRNG_SEED pragma idea.
...
FossilOrigin-Name: c71098409c98af8360f8f28b9238a12ec764018a5782e8ff03fdf5db54031d6e
2019-08-02 21:03:24 +00:00
dan
ddd7421c91
If a query like "SELECT min(a), b FROM t1" visits no rows where "a" is not null, extract a value for "b" from one of the rows where "a" is null. Possible fix for ticket [41866dc37].
...
FossilOrigin-Name: a7277ed0623dccdbf775ae6127611d6bc6e150f6942a048ab4281e5136c0e98d
2019-08-02 18:43:59 +00:00
drh
d744ee0b50
The sqlite3_set_authorizer() interface should only expire prepared statements
...
when it is setting a new authorizer, not when clearing the authorizer. And
statements that are running when sqlite3_set_authorizer() is invoked should be
allowed to continue running to completion.
FossilOrigin-Name: 961e2f08c35238bcb1d32430d16451a96807b2c4bbb194ee621128dd09cd3981
2019-08-01 22:48:45 +00:00
dan
401593e348
Add new release tests for windows to releasetest_data.tcl.
...
FossilOrigin-Name: 1b330ec24c350c59f6d3779f6c0819fe95b89f4dfca5a1f2c22f22b5fe9cd087
2019-08-01 15:18:51 +00:00
dan
71f059c880
Fix a problem in ALTER TABLE triggered by views or triggers that include the construction "ORDER BY true" or "ORDER BY false".
...
FossilOrigin-Name: 8168021f9ab5fb8b4888257963c9ec68fd1dfeedaf6bba4b8e07438001d0be0f
2019-08-01 10:58:46 +00:00