drh
a7d6db6ac0
The affinity of the unlikely() function and its cousins should be "none".
...
Ticket [0c620df60bffd9ef]
FossilOrigin-Name: 614ecb0af47038848e8ba2aed6b92db6f33ddc4aea6361795dbde440380f5a35
2019-06-11 21:02:15 +00:00
drh
42be2ad30b
Make sure the affinity of the RHS of an IN operator does not affect the
...
outcome even if the RHS expression contains a COLLATE clause.
Ticket [57353f8243c637c0]
FossilOrigin-Name: 0f748fe58bbbb7ce3f30303da25ec811b2bbce249549aa9c7927979ac5b38013
2019-06-11 18:07:53 +00:00
drh
66cc2ca83a
New test case in fuzzdata8.db.
...
FossilOrigin-Name: e96641f0be7d4454215459b0a95cf1c46ba0133e46d0bae22269741c8f4e5b44
2019-06-11 16:07:39 +00:00
dan
0b277a980a
Have the ALTER TABLE code handle the case where an entire expression that includes a sub-select is excluded from a view, trigger or index.
...
FossilOrigin-Name: f2c8179f3c0b77f10da3f9b0771db4dec30d0bbf0b7f4751ce439bfb08da8f6f
2019-06-11 12:03:10 +00:00
drh
8e34e4061b
Add the new sqlite3ExprUnmapAndDelete() function and use it in place of
...
separate calls to sqlite3RenameExprUnmap() and sqlite3ExprDelete().
FossilOrigin-Name: 36ea13e0a851a749c9ef292377ecd82dbd4797d38df907b362487fa234c98ca5
2019-06-11 10:43:56 +00:00
drh
b854b76733
The ALTER TABLE command should not attempt to rename objects that are
...
contained within an expression tree that has been optimized out because
it is the other branch of an "AND false" expression.
Ticket [533010b8cacebe82]
FossilOrigin-Name: 04bd5cb73287f926f1ecf578998fa6ce1379474e86918c692eae5778d0817cef
2019-06-11 02:43:22 +00:00
drh
a753d40039
Fix repeated test numbers in the altertab2.test file.
...
FossilOrigin-Name: e82f235e7201a420149847cda630ac6f2fce5e3a4577b0ea4793f430d3dc1611
2019-06-11 01:56:42 +00:00
drh
378a7d356b
A string consisting of a single '.' is not a floating point literal with extra
...
text at the end. Fix for ticket [412bba9b22c677da]
FossilOrigin-Name: 57050162294efec90caa5cc3c2f8c1a85215526adcf57b284ce2d2e799286b78
2019-06-10 23:45:10 +00:00
dan
e4a9e4d0e5
Have ALTER TABLE commands ignore the lhs of "expr IN ()" and "expr NOT IN ()" expressions, just as other queries do. Fix for [533010b8ca].
...
FossilOrigin-Name: 71643deb6bbad4b4a511bfd43b32245b50a555b508b90f33adf0656ae53292c6
2019-06-10 19:17:37 +00:00
drh
c285ded26c
Make sure a CAST to "NUMERIC" results in an integer if the value can be
...
losslessly expressed as an integer, as the documentation requires.
Ticket [dd6bffbfb6e61db9].
FossilOrigin-Name: c0c90961b4fa1c1185772d04fe1915bc1a1af27ed8ddb8db1c524bf90d68ccbf
2019-06-10 18:33:16 +00:00
dan
e20a894a34
Handle renaming a column or table when the schema contains a (meaningless) index on the constant expression ('text' IN ()) or ('text' NOT IN()).
...
FossilOrigin-Name: 567b13093956185b5d5e971b81ba4788fd9d26c03688f643b380f0f1c1a94da0
2019-06-10 15:34:16 +00:00
dan
32d0f64e8d
Do not attempt the LIKE optimization on a column with numeric affinity if the rhs of the operator begins with whitespace. Fix for ticket [fd76310a5e].
...
FossilOrigin-Name: 94b58ab059cba9771e75f16d1460f313104a8fb879f9f8805725d362aa58cbcd
2019-06-10 13:46:42 +00:00
drh
9a2782293c
When casting string values into numeric and the string has a prefix that looks
...
like a number but total string is not a well-formed number, then take extra
care that the result is either integer or real depending on what the prefix
looks like. Fix for tickets [e8bedb2a184001] and [4c2d7639f076aa].
FossilOrigin-Name: 67a68af5578f08d2be2e48cf4fd12a6cf35a09c47d259deda81950f7ee1f02f7
2019-06-07 22:26:08 +00:00
dan
48646e497b
Add a test case for the unix SQLITE_FCNTL_CHUNK_SIZE file-control.
...
FossilOrigin-Name: 3a477fd0c944440be03d23c667053b346c769c6a4f6ba1ef094b7581a08d7bd4
2019-06-05 13:14:19 +00:00
drh
9b2ec0efa1
New dbsqlfuzz test cases add to test/fuzzdata8.db.
...
FossilOrigin-Name: 873aa46da3d0f97784cad94828fc367bb2ceb13d5ece2e105320f404b3971c85
2019-06-04 15:47:37 +00:00
dan
471e88f732
Fix a segfault in fts3 that could occur when processing corrupt fts records.
...
FossilOrigin-Name: dff24c6c7a4e7623984b5bb24c2ff14fe079dc49a0ad048cbfc66f84c08875b0
2019-06-04 13:11:37 +00:00
drh
7cd5e856e5
Fix the query flattener optimization so that it preserve the "SF_Compound"
...
bit when flattening a compound subquery into a non-compound outer query.
Failure to preserve that bit could allow subsequent flattenings which are
not valid. Fix for ticket [c41afac34f15781fe09cd].
FossilOrigin-Name: 523b42371122d9e1b3185425745f1490138bff7f7cc941ee26ee81df7ade5bf4
2019-05-29 17:22:38 +00:00
dan
efdb371a1d
Fix an assert() in fts3 that could fail when processing corrupt records. Also some minor sanitizer warnings.
...
FossilOrigin-Name: c736c40aab071a69bd5c5347b7c116d87ea3954019e967ca8ff7bdb4b518e5bf
2019-05-28 14:42:32 +00:00
drh
ef7d5187a7
Improved rounding even on systems with an 8-byte "long double" type.
...
FossilOrigin-Name: 15202aee150fa8e15fb90e90e5765c5e19a1eaf4896da2996a747636b76da8e6
2019-05-27 00:29:15 +00:00
drh
4413265d4e
Add new cases to speedtest1 for measuring performance of binary to/from decimal
...
conversions of floating point values.
FossilOrigin-Name: b84e7057c05338347b4267f7ccc1d7b9b6d4e9a941ce8b76bf2c27c26772000c
2019-05-25 13:14:19 +00:00
drh
aa81cae485
Disable the new rounding tests on systems without long double support.
...
FossilOrigin-Name: ed250b4e18ea042d681bbe8d7ed00895564f4525c22928a003a84585b4756ec3
2019-05-25 00:17:26 +00:00
drh
a0ed86bc37
Improvements to rounding behavior in the round() and printf() functions.
...
FossilOrigin-Name: 641b2d210541b4d5a1a9e57d7dcf5ce5dfd7ff4d2dc6277ba0582869f48fc946
2019-05-24 22:58:16 +00:00
dan
c542fa8573
Add test cases for the fix in the previous commit.
...
FossilOrigin-Name: c1057b2a60add08e5c80ef2a53932a690b096f2eb03c7de863844deaa8fc9d53
2019-05-23 16:40:45 +00:00
drh
53e8709b75
New test case for check-in [74ef97bf51dd531a] that takes the fix in the
...
previous check-in into account.
FossilOrigin-Name: cb1d06521de5918a2324a41e207b48c5e5149c23b927b9e3e1f3c3b38b82658e
2019-05-22 23:12:10 +00:00
drh
59145813d2
Renumber the Select.selId values in the copies of SELECT statements that
...
implement VIEWs when the VIEW is expanded, so that when the same VIEW is
used twice in the same join, each expansion as a distinct selId.
This fixes ticket [ce823231949d3abf42453c8].
FossilOrigin-Name: 3cacc4b940fd69776d930deec9512df47a2f22cb04fb955e354a0b25bdec287c
2019-05-22 22:49:23 +00:00
drh
90c21df233
New dbsqlfuzz find added to test/fuzzdata8.db.
...
FossilOrigin-Name: 42af7c819bc52ccb6953a58b1c05d3bd47cc438c5119a9555b1b796764eb9f20
2019-05-22 14:35:10 +00:00
dan
29fa6b6642
Fix a buffer overread that could in fts3 when dealing with corrupt records.
...
FossilOrigin-Name: 1660d7733eb443ab085ddef7666b998a1c75ac81cc54a9620960a8d3b377e28e
2019-05-22 14:22:44 +00:00
dan
7ed6c068f5
Fix a problem in [b5ca442a] causing an assert() to fail in REINDEX commands.
...
FossilOrigin-Name: a3e77c7776ab01dadb9d30d6067ac97e9d4b09ec54834558a5fa1ffed7b52c72
2019-05-21 16:32:41 +00:00
dan
ef14abbf8d
Use a statement journal for all CREATE INDEX statements in case an indexed exprsesion throws an exception when it is evaluated. Fix for [b5ca442a].
...
FossilOrigin-Name: b8071d10cba8f6c19fb8d5df3877f72567dc6d6a94744a39cbc1f58b2e2f343b
2019-05-21 14:42:24 +00:00
dan
0d92571d65
Disallow string constants enclosed in double-quotes within new CREATE TABLE and CREATE INDEX statements. It is still possible to enclose column names in double-quotes, and existing database schemas that use double-quotes for strings can still be loaded. This addresses ticket [9b78184b].
...
FossilOrigin-Name: 1685610ef8e0dc9218b02461ceab14dc6114f4f5ef7fcda0da395094aff443e1
2019-05-20 17:14:25 +00:00
dan
8ac02a94ab
Update the sqlite3ExprCompare() routine so that it does not think "? IS NOT TRUE" is the same as "? IS TRUE". Fix for [d3e7f2ba5b3].
...
FossilOrigin-Name: 99eba69b3a64741c69d167bf7a05dbe138c9e7faecc54a1b8d8220cb23902830
2019-05-20 10:36:15 +00:00
dan
7ac0e562a3
Fix an assert() failure that could occur in a join query if the RHS of an IN() operator is a list containing correlated expressions. This problem was introduced by checkin [e130319317e7611938] which was part of the fix for ticket [787fa716be3a7f650c] - so this commit is part of that ticket's fix too.
...
FossilOrigin-Name: 778b1224a318d0137c7dab8361128f593506d3677267898119b934b4d66dfe38
2019-05-18 21:22:25 +00:00
dan
4db4b5b4fe
Avoid including the comment in the output of "PRAGMA table_info" in situations where there is a comment following a DEFAULT value within a CREATE TABLE statement.
...
FossilOrigin-Name: d91095ba7130e974f0c95334760c679a31479b07a3d458e15994a24eee474752
2019-05-18 19:49:08 +00:00
drh
6c35b3065c
Disable PRAGMA journal_mode=OFF when SQLITE_DBCONFIG_DEFENSIVE is turned on.
...
Ticket [f4ec250930342e0c].
FossilOrigin-Name: a0f5eb5c79cc33b7224f3421d2baa02a2a19eb9d6eaa8117dda4a1878b229cb5
2019-05-17 20:37:17 +00:00
dan
be81262400
Always store a REAL value in a column with REAL affinity if the integer equivalent would require 8 bytes of storage. Fix for [3c27b97e3].
...
FossilOrigin-Name: 14c00b1016ba53ab2dc177c59a27b6b9209202973685f0f274112d296ba7dfcb
2019-05-17 15:59:11 +00:00
drh
829d4253ff
Add test cases to test/fuzzdata7.db for (harmless) dbfuzz2 finds.
...
FossilOrigin-Name: 1eb2a628e4bfae51fea43e8f40fedfe23f2118024d9cce35828c3cbe92a9b392
2019-05-16 20:40:08 +00:00
dan
0971ef45ab
Fix an assert() in the OP_Delete opcode that could fail with a corrupt database.
...
FossilOrigin-Name: 915388ab39ba3ca8681cd2613b91314aa965967f23a5bface90f54a3d6423300
2019-05-16 20:13:32 +00:00
drh
73c53b39c9
Fix the count-of-view optimization so that it is (correctly) disabled for
...
a query that includes a WHERE clause or a GROUP BY clause.
FossilOrigin-Name: 05897ca48a40c6771ff83ba8ecc3a5c60dafddf58651c222dd8cf89b9fc7b077
2019-05-15 18:42:15 +00:00
dan
a40cb96a4c
Fix a problem with the fix for [9cf6c9bb51] (commit [658b84d7]) that could cause a cursor to be left in an invalid state following a (rowid < text-value) search.
...
FossilOrigin-Name: bc7d2c1656396bb4f5f1f814e60dbf816cc91c5a521b54ad593cd3da0fe8dcb4
2019-05-14 20:25:22 +00:00
drh
9252966b3c
New test cases in test/fuzzdata8.db.
...
FossilOrigin-Name: 228e1087c0602470e450586499de5a3e87e266c688bc828f20e3bad2fdc65ff1
2019-05-14 19:20:52 +00:00
dan
c12655df87
Fix an assert() and potential buffer overrun in fts5 that could occur if the database was corrupt.
...
FossilOrigin-Name: 8be8bd0d562e571b73a93f4ed18258ebd114bbab67ee3cdcd66a4c8f2987f8dc
2019-05-14 11:33:09 +00:00
drh
bf9ff256fe
Disable index seek optimizations on REINDEX when the order of primary keys
...
in the index differs from the main table.
Fix for ticket [bba7b69f9849b5bf11b4].
FossilOrigin-Name: f7aadfab3bb8eb8eb2cd62dc8a6823538387b3329f1efc23ef75482488109478
2019-05-14 00:43:13 +00:00
dan
c6824c8d6c
When considering partial indexes, do not assume that a "CASE x ..." expression implies "x IS NOT NULL".
...
FossilOrigin-Name: 1b24303220b7b4f59520176a0150fc619c668865450b4fdaa9ce4113a56e9687
2019-05-11 16:14:42 +00:00
dan
8f2b1e4c90
Do not assume that "x IS NOT ?" implies "x NOT NULL" when considering partial indexes. Fix for ticket [8025674847].
...
FossilOrigin-Name: 0ba6d709b50d92db1542f2ff30535a80184b00dadf759d51e5cae7a6e37b1764
2019-05-11 13:04:33 +00:00
drh
4142265645
Ensure that the BtShared.nPage value is reset correctly on a SAVEPOINT
...
ROLLBACK.
FossilOrigin-Name: e6d5fee8cdbdce8515957e8288e4d1e7b06f417fd3f9deeeb636fbf5b995af51
2019-05-10 14:34:18 +00:00
dan
08f6de7f31
Treat integer values in window definition ORDER BY clauses as constants, not as references to another expression.
...
FossilOrigin-Name: 7e4809eadfe99ebfd797a7c63501421021a720bbeed9fba81bebf630c58bb791
2019-05-10 14:26:32 +00:00
drh
05d7bfd0bb
Fix the round() SQL function so that it handles infinities correctly.
...
FossilOrigin-Name: db9acef14d49212108c8082cc15a9b9b4a56b8afe4fe1104ddf62783739c1fbe
2019-05-10 12:06:47 +00:00
drh
6bab6f2b4d
Disable the optimization where a REAL value with no fractional part
...
is stored as an INTEGER when the integer uses as much space as the real
value it proposes to stand in for (8 bytes). This avoids corner cases
of comparing integers against real values that are beyond the resolution
of an IEEE 754 double. Fix for ticket [6c1d3febc00b22d457c78c2]
FossilOrigin-Name: 9b0915272f4d4052aa31e9297424a7db9a0234b676e8e2a44c3f2dc54236705a
2019-05-09 17:10:30 +00:00
dan
13b876773c
Fix a problem with running the ".recover" command on a database that is zero pages in size.
...
FossilOrigin-Name: 47fa65343e46c7782a173174952c637c5621e16229ece258dc7e7a556683ca0c
2019-05-09 11:45:21 +00:00
dan
873b019826
Fix a problem in the new code introduced by [658b84d7] causing corruption and other errors to be ignored.
...
FossilOrigin-Name: 7ccf2e7d413adb109c61456a5f46e87d38884801dbaab93297a17e3050014b59
2019-05-09 11:19:27 +00:00