aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
* When compiling with SQLITE_ALLOW_ROWID_IN_VIEW, if the RETURNING clause ofversion-3.44.3drh2024-04-05
| | | | | | an UPDATE of a view specifies a rowid, then return NULL for the value of that rowid. FossilOrigin-Name: d38cfa6067ccd450c4fac183765c05ff247ecb49ccf172a68ef9d381577df84f
* Fix the xBestIndex method of the pragma virtual table so that it correctlydrh2024-03-24
| | | | | | gives a higher cost to plans where the schema hidden parameter is unconstrained. FossilOrigin-Name: d68fb8b5dbb8305e00d2dd14d8fe6b3d9f67e2459102ff160d956a6b75ddc18e
* Do not automatically assume that ROWID is NOT NULL when compiled withdrh2024-03-24
| | | | | | SQLITE_ALLOW_ROWID_IN_VIEW. dbsqlfuzz 31b38eeb63a4e1562de665078f52b7b47a7543cf FossilOrigin-Name: b5d2dce18fcd00749a3efe8386df42fca103f86bd862f2610cfb05651ddb9d59
* Fix a assert() that is incorrect, though harmless. Also add a test case.drh2024-03-21
| | | FossilOrigin-Name: 57b0c984605d0f437b4930f6b994e15b80340c753d46a679b07d356c645856ea
* Back port various minor patchesdrh2024-03-20
| | | FossilOrigin-Name: a1a5c427c2c5cfff1ffeb71b29c9f64121465334c6a3fde8213df1dc2a1228d4
* Automatically disable the DISTINCT optimization during query planning if thedrh2024-03-20
| | | | | | ORDER BY clause exceeds 63 terms. dbsqlfuzz afd1d61fc27d14938a0d78a50970fa1e9fbfee58. FossilOrigin-Name: e8d5caef260b171b4df7f6166e191fc763e25be5b94fc1e097cd5c4ec05604e4
* Ignore COLLATE operators when determining whether the result of a subexpressiondrh2024-03-20
| | | | | should be shallow-copied or deep-copied. FossilOrigin-Name: dd58d1178f840f0249cb3d84f44c9da0335ca6a44f064f6ad6ec68ec621556c5
* If a term of an ORDER BY or GROUP BY contains an aggregate function or column,drh2024-03-20
| | | | | | then it is not an alias that needs to be resolved, so don't try to. This fixes a harmless assertion found by dbsqlfuzz. FossilOrigin-Name: e7ba2af5a1ae5d464ad4d4edfdf551bc237168e04784c07a229ba7b28c4f4695
* Fix the SQLITE_ALLOW_ROWID_IN_VIEW bug-compatibility option so that it worksdrh2024-03-20
| | | | | | | again. Add the SQLITE_CONFIG_ROWID_IN_VIEW sqlite3_config() value to optionally disable the bug-compatibility mode at start-time. Enable testing of SQLITE_ALLOW_ROWID_IN_VIEW. FossilOrigin-Name: acc08353e27a960bf949cfc5f94e874a91e1c42fd7a26617dc24cf549fa9b120
* Fix a problem involving infinities int the Kahan-Babushka-Neumaier summation ↵drh2024-03-19
| | | | | algorithm. FossilOrigin-Name: 0984e5cd2574780dc1952e3daebafba9ddbb3b4937325117b922fdad0652db57
* Silently ignore redundant ON CONFLICT clauses in an UPSERT.drh2024-03-08
| | | FossilOrigin-Name: e546d8c68539920ea7b88932e9553d908d6a1956b85e29518ee4f81035987403
* In os_unix.c and os_win.c, do not allow xFetch() to return a pointer to a ↵drh2024-01-23
| | | | | page buffer that is right at the end of the mapped region - if the database is corrupted in a specific way such a page buffer might be overread by several bytes. FossilOrigin-Name: 198a1daae01dd9308f91eec1087279481ce0ff632bb3e5ab54cbf3738a903811
* Update #ifdef checks in pager.c and util.c to account for [0462a2612d1fc1d0] ↵stephan2023-12-22
| | | | | to resolve the build problem reported in [forum:9819032aac|forum post 9819032aac]. FossilOrigin-Name: 7374c2342e66b352c2098d401e7660b18a0cdf1a69c24386953b1331c2afcbbf
* When unable to resolve an identifier, change the Expr node into TK_NULLdrh2023-12-19
| | | | | | rather than TK_COLUMN, to prevent any downstream misuse of the non-existent column. FossilOrigin-Name: 8f770d14d3dca5eb38faa89c4cba269233aa45cc4a56176fdae22f14974ceeb2
* Avoid invoking sqlite3ExprColUsage() on an unresolve column reference.drh2023-12-13
| | | FossilOrigin-Name: 6e0e2ee7c723582be5ad9126f5cd642c3cecf615c609bc0b87e914a6f5c0c904
* Reference count the Table passed into the OP_VCheck opcode.drh2023-11-29
| | | FossilOrigin-Name: 79e6496bb18246c29970a0da53f2178b6de36c5d1f50da881a6846f188e8c04d
* Another assertion fault fix, similar to [a9443dbfbe25e588].drh2023-11-23
| | | FossilOrigin-Name: f796da626b5c3b099cc246a8b46d92839922e34f398d673b0b03d7ee33a28a60
* Fix harmless compiler warnings in debugging code.drh2023-11-23
| | | FossilOrigin-Name: db40272c36c01d5eeb902daed2670d57ee858caae560785350aed2600b573c2d
* Pickup minor stylistic changes related to console I/O and, for Windows ↵larrybr2023-11-21
| | | | | builds, get fact of UTF-16 translation into the sign-on banner. (a straight cherry-pick) FossilOrigin-Name: d7a59e79467cf7aa13291c58f1cc4c1e2a51494bdd28661039421868f61088bd
* Back out an incorrect change to the sqlite3ExprCompareSkip() function fromdrh2023-11-20
| | | | | long ago. FossilOrigin-Name: 89658abbcd04e6f6d5a2139fa92091df1de72e56bdbb12aacebf9e9178c58e3b
* Convert an assert in OP_VCheck into a branch that aborts the opcode, as thisdrh2023-11-20
| | | | | can happen on some very obscure conditions, as discovered by dbsqlfuzz. FossilOrigin-Name: 0d5f68717c829d4066c6af925c3a71f673ea34f14b1805388d1bdef152864d52
* Cherry pick additional assert() fixes from trunk into the branch-3.44 branch.drh2023-11-20
| | | FossilOrigin-Name: 6d8a8b700237d738e7b16dd844cf2514f0df7e2275bd9eab8de0a780e3687298
* Merge changes to do Windows console I/O with UTF-16.larrybr2023-11-18
|\ | | | | FossilOrigin-Name: f782054e7ccdfb421a73acde6994f5046b99884924a508316a0d4a0dc9b03318
| * Cherrypick changes to simplify and make more rational how console I/O ↵larrybr2023-11-16
| | | | | | | | | | package features are selected. FossilOrigin-Name: b20c9f1785e94af4b81dcbbc63c49a883ab4095ff251b19e814ab6ef7ff06f2b
| * Get Fiddle build to succeed. (It runs, too, but not from changes here.)larrybr2023-11-15
| | | | | | FossilOrigin-Name: 957ebaa2be3056371d679f7a00aeba242db34218fb839ffd1d1197cad0c4a510
| * Changes to console I/O for Fiddle build, to always defer to C library (as ↵larrybr2023-11-15
| | | | | | | | | | before.) A WIP, pending testing with Fiddle build. FossilOrigin-Name: 45b8061e7568ccca164fe000f1f0a0d984b1c28fad530bc9fdea35793a0f40bc
| * Manual merge of branch-3.44 with 3 sources affected/created by ↵larrybr2023-11-13
| | | | | | | | | | console-io-lib changes. FossilOrigin-Name: 18ebcf117aad77fa968ff5c537c9b56c1342dea687377a72a02519412a6aa565
* | Correct conditional compilation issue seen with MSVC in the Win32 mutex ↵drh2023-11-18
|/ | | | | subsystem. FossilOrigin-Name: 6c069c5d664dca7908167e5759f952e407382b2669b25191167ad8d8fb03daa2
* Remove an incorrect ALWAYS() and NEVER().drh2023-11-13
| | | FossilOrigin-Name: 94f62093866823e013f976db8f80390bee2a9140f4cbec50d1ad8ded28f732ae
* Fix another problem with mixed join types and the RIGHT JOIN ↵drh2023-11-10
| | | | | strength-reduction optimization. FossilOrigin-Name: 8f01f8b260bf70f047a720f1e61e578e500b87bdc2e867f8a8a521068a56c70c
* Fix an obscure problem with the join-strength-reduction optimization that ↵drh2023-11-10
| | | | | could occur when mixing LEFT and RIGHT joins in the same query. FossilOrigin-Name: dcf1c1378130538f1820263b4e62d06067d5ab30c07e2584c5c1b5082ede0d56
* Ensure 8-byte alignment of data structues in sqlite3_database_file_object().drh2023-11-09
| | | FossilOrigin-Name: 3cfcaafaff181c7945cc659ff6d58a0d2232d49830a259f0510d833a7a5a824b
* Add the SQLITE_RESULT_SUBTYPE flag for application-defined functions. Adddrh2023-11-09
| | | | | | | | | the -DSQLITE_STRICT_SUBTYPE=1 compile-time option that raises an error if any function invokes sqlite3_result_subtype() without the SQLITE_RESULT_SUBTYPE flag. SQLITE_RESULT_SUBTYPE prevents an indexed value of that function from being used to replace an equivalent expression, since the indexed expression does not carry the subtype. FossilOrigin-Name: 65a9cfc466d3d904af50fa5eba46d29c5a24e7dde06e5c50c03b343723be7441
* JSON5 bug fix: Escape double-quotes that occur inside of single-quoted strings.drh2023-11-09
| | | FossilOrigin-Name: 6cc57bb2ce92f64af59c569696d4fbd08183feffaeee560450d13370d60f96d5
* Update the documentation to the sqlite3_set_auxdata() and sqlite3_get_auxdata()drh2023-11-07
| | | | | | | | routines to make it clear that they do not work as one might expect when they are called during query planning, instead of during query execution. The JSON routines misuse those interfaces, so add a special flag to JSON routines that prevents them from being invoked during query planning. FossilOrigin-Name: 36259009c5b581ea692e8c86f505783336e4615bb5134e3afd5498f10eb36239
* CLI to compile with older MSVC compiler.drh2023-11-02
| | | FossilOrigin-Name: c8bf4f7a6a4c4f0f8cd21de25918f4d96f6831a145af4fb63e4b5984f79613b2
* Fix harmless compiler warnings in test code.drh2023-10-31
| | | FossilOrigin-Name: d1895dd8f5757a339f619f22b29c8a739398ded673bb9c93f1b8eb8a4b38f510
* Remedy CLI non-UTF8 handling detection flaw ↵larrybr2023-10-30
|\ | | | | | | | | [forum:/forumpost/fa0e00d36db5fe0a|noted in a forum post]. FossilOrigin-Name: 2666b80d2cf64a14d0482ee1ce0e8b2ff9e0c5bb21cd626470241a73a6555a3a
| * Dodge a nuisance warning from MSVC in CLI use of Prepared Statement Scan ↵larrybr2023-10-30
| | | | | | | | | | Status. (Yes, C rules are fine.) FossilOrigin-Name: 166c96d91dcc8c500a084d5703db103176ed5ec7d5f1334050cd66b3f1cd0e4f
| * Add a cast to i64 for an integer in an sqlite3OsWrite() offsetdrh2023-10-30
| | | | | | | | | | | | calculation. The cast is not strictly necessary, but it helps human readers see that the code is correct. FossilOrigin-Name: 7564ff1ba2c2fba89106d1aa06cc5379e752f119f22370f2f155f24cc698dec6
| * Fix another comment typo. No code changes.drh2023-10-30
| | | | | | FossilOrigin-Name: 3203256c0285ef2fea810d59978603bfd7e38151cbc42e1baddf84b57c56f638
| * Make the new sqlite3_get_clientdata() and sqlite3_set_clientdata() interfacesdrh2023-10-30
| | | | | | | | | | available to run-time loaded extensions. FossilOrigin-Name: 8fc9aa0f896a2676b73c41cefbff74c822a7106b56324558862dd0a2a1877eaf
| * Fix typo in a comment. No code changes.drh2023-10-30
| | | | | | FossilOrigin-Name: 424ef9550abaab32f745dc955e8996d51836eaed737e24c4b4db811aa118ce5d
| * Predicate Windows CLI UTF-8 console I/O on a runtime capability check rather ↵larrybr2023-10-30
| |\ | |/ |/| | | | | than an OS version check. FossilOrigin-Name: 0058ea6a69103c1442bf5090553ce9bf77e06011a4960df754eb96144ced497d
* | Predicate Windows CLI UTF-8 console I/O on a runtime capability check rather ↵larrybr2023-10-30
| | | | | | | | | | than an OS version check. FossilOrigin-Name: f89d062f8890fffc957a354e966784031d561d0f8f5c174c1ccdcf77e66c32bd
| * With SQLITE_ENABLE_BLOCK_ATOMIC_WRITE enabled, if a transaction is committingdrh2023-10-30
|/ | | | | | | | and there is a new freelist page at the end of the database file which would cause the database file size to grow, ensure that page is written and the file size grows before the block-atomic-write commits. Fix for the problem identified by [forum:/forumpost/3bd8d497b2|forum post 3bd8d497b2] FossilOrigin-Name: c9fdd6805df04f05ef347e5a43506fd37a729c5924abb6e1103e871c4ac2d6dc
* Simplify code slightly. Improve comments on added code and its use.larrybr2023-10-29
| | | FossilOrigin-Name: 046c84296627382ee416f64b02b77a937b368e30b32e6b800de5a854810766f6
* Properly close a handle. Use a putatively effective runtime test for UTF-8 ↵larrybr2023-10-29
| | | | | console I/O capability. (This makes the version test useful mainly for avoiding a warning that UTF-8 console I/O could not be setup.) FossilOrigin-Name: dc91eb91725f3db65c73725f1fbcf18a711cafb65b4fea3277aa0905a24df353
* Condition default UTF-8 console I/O for Windows builds on OS version 10 or ↵larrybr2023-10-29
| | | | | more. This is to accomodate an IsValidCodePage() API which may happily report CP_UTF8 as a valid code page when the stock console cannot, in fact, do UTF-8 I/O. FossilOrigin-Name: 6b9b2a886fd4d239c2e87c3f3809c011f77c0f60e0c279bbe4e1d1b53c609e2d
* Update documentation for sqlite3_errmsg() to try to make it clear that ifdrh2023-10-28
| | | | | | | the schema of a database contains table names or similar with invalid UTF, then the error message generated by SQLite might also contain invalid UTF. No changes to code. FossilOrigin-Name: 33ba13c7c4b6f9c5e64ea30c819718f2caea214afca945c9ed7075864f4aaa40