aboutsummaryrefslogtreecommitdiff
path: root/src/vdbeaux.c
Commit message (Collapse)AuthorAge
* Fix the sqlite3VdbeTypeofColumn() function so that it works correctlydrh12 days
| | | | | even when SQLITE_DEBUG is defined. FossilOrigin-Name: 1d5021533ed688d7a815ce75b338c72f577c14554027f88a21419935a9e68239
* KeyInfo is now an indeterminate size, so we cannot declare a variable of thatdrh2025-03-14
| | | | | type, only a pointer to an instance of that type. FossilOrigin-Name: 37b687dc2d3b9dc82ed09a9c5b2c00e576b1eebe358a20d18a3da190347b644e
* Make use of the flexible-array feature of C99, when available, to try todrh2025-03-14
| | | | | | pacify -fsanitize=strict-bounds. This check-in fixes the core. There is more yet to do in FTS3, RTREE, and in FTS5. FossilOrigin-Name: 6fd6b32d06bd6a705e5140cd613af823b8183a6f6a9ceeeedfcf5e8b50821d68
* Code changes that make it easier to prove that no 32-bit integer overflowsdrh2025-02-17
| | | | | | happen during memory allocation. No problems fixed; this change is just to make future maintenance easier. FossilOrigin-Name: 215650a5a1d55bdbca9c92524804a1a54456a17f42a17e53747b21a6507506f5
* Fix comments on the Parse.nMaxArgs field so that they are correct. Adddrh2025-02-07
| | | | | | assert()s to ensure they are correct. Other Parse changes to reduce the amount of memset() needed to initialize it. FossilOrigin-Name: c56092507c96723030589ddd9121bc993d615a7acd453305fc3b1dbb9e30554c
* Performance improvements to the (debug-use only) Mem.pScopyFrom logic, resultingdrh2025-01-21
| | | | | | | in about 8x faster performance under -DSQLITE_DEBUG for the query in from [forum:/forumpost/0025389d0860af82|forum post 0025389d0860af82]. This change only affects builds that use -DSQLITE_DEBUG. FossilOrigin-Name: 7fb1ae25d1572dd7709a0f850c148a5f745a524f01ea231e29a1ebc37c173fb9
* New assert() statements to show that the sqlite3_value.db field is initializeddrh2024-12-30
| | | | | for MemArrays. FossilOrigin-Name: 7cd8ccf57d1ae0f597ec5004201395f61ef4750728f3c1b9c4dd52d28916a4f7
* Add an extra assert() to releaseMemArray() just to prove that thedrh2024-12-30
| | | | | sqlite3_value.db field is never NULL. FossilOrigin-Name: b969ef1def5121c7ff54e3586528274f006ca994b308cf88ccaa9d4f56bf30df
* Avoid loading the entire record into memory for an sqlite3_preupdate_old() ↵dan2024-11-04
| | | | | call that retrieves an IPK value. FossilOrigin-Name: 7f4de43733200beeb3ff0a70d51bbc68f5331895698ea95a82741cfd7bb66834
* Remove all code that makes use of the C-language "long double" datatype.drh2024-10-01
| | | FossilOrigin-Name: f622b52024c8bec1d241b1dc480fbbd839fc1af50b6220f012812503de2c656e
* New #ifdefs to omit code that is unused when SQLITE_USE_LONG DOUBLE is defined.drh2024-10-01
| | | FossilOrigin-Name: 98066e2d226e7d2eceec1931a1432baea956f49bf3c708d8a6d511fa4e864ca3
* Add compile-time option -DSQLITE_USE_LONG_DOUBLE=0 to omit all attempts to usedrh2024-10-01
| | | | | | "long double". Or =1 to omit attempts to use the Dekker algorithms to achieve high-resolution floating point. FossilOrigin-Name: ca5964ef70efad3332e0bf9c158eb5fd5006d3022051d1ac506c097c427735a1
* Fix the preupdate hook so that it works when the "old.*" row has a column ↵dan2024-09-18
| | | | | with a non-NULL default value that was added by ALTER TABLE ADD COLUMN after the current record was created. FossilOrigin-Name: 00a398cf900179aa5a8aab09fe4a671d99e7a31583282848ef39390f2ef246eb
* Update EXPLAIN output to include P4_SUBRTNSIG.dan2024-07-04
| | | FossilOrigin-Name: 61e56923c80d72d6467ec703b4946b251abf591649fa9e8e579667d7cbd25682
* Be more aggressive about reusing subqueries that appear on the RHS of INdrh2024-07-04
| | | | | operators that have been replicated due to the predicate push-down optimization. FossilOrigin-Name: 2accf32b6e45a396503c29eecc14a103bcc7b4c313cde921b26b489704060177
* Fix a couple of assert() statements so that they cannot firedrh2024-05-28
| | | | | | when the SQLITE_TESTCTRL_INTERNAL_FUNCTIONS debugging capability is activated. dbsqlfuzz f5b347cf167a62fbe08062b2feee65cb9306e363. FossilOrigin-Name: 273504b74cb9c3cfa2497a1339e706a1f2d2c3ce81b23a16beb47da9292535e0
* Squelch two OMIT-flag-related warnings reported in ↵stephan2024-05-10
| | | | | [forum:388243d9882067a9|forum post 388243d9882067a9]. No functional changes. FossilOrigin-Name: 1d6716054d7fc50df237996c3db30e5fb8e32acbf48cb8b9af472360515945c4
* One of the assert()s added by the previous check-in was not quite correct.drh2024-03-08
| | | | | This commit fixes it. FossilOrigin-Name: d401358329f5a70f9a0b9b033609a4db2af89b83c6b40242be0c76f3d6474def
* Add new assert() statements, which if they had existed three years ago,drh2024-03-08
| | | | | would have detected the code generator problem fixed by the previous check-in. FossilOrigin-Name: 166d1e5d26ef88e995f44182144891f60bd51c1aa585b4a148f01a920b2a8eea
* Remove a local variable from sqlite3IntFloatCompare() that was being optimizeddrh2024-02-26
| | | | | out anyhow, in order to get back to 100% MC/DC. FossilOrigin-Name: 52b13d6acbb738b9281f7dd44edd6c3c9585d22d98b1951b7059534fbd16fac0
* Make sure key comprisons are done correctly if the index key contains NaNdrh2024-02-25
| | | | | | values that have not been shifted into NULLs. That can only happen due to database corruption, but we need to deal with it nevertheless. FossilOrigin-Name: 7e4c743f9e6ef33500795543e6db9a77c533025bf00c2ee97abd433a3871b5a1
* The assertion change at check-in [7946c79567b0ccd3] is insufficient to fixdrh2023-11-29
| | | | | | the problem of a Table object being deleted out from under the OP_VCheck opcode. We need to reference count the Table, which is accomplished here. FossilOrigin-Name: cad269d5e274443c39203a56603b991accc0399135d436996fc039d1d28ec9db
* Fix harmless compiler warnings in debugging code.drh2023-11-17
| | | FossilOrigin-Name: ce6a75622ea5bca517bc6613e738aa670c9e1dd863596220eded5c2379c616c7
* Changes a no-op call to freeP4() into an assert().drh2023-11-08
| | | FossilOrigin-Name: 32a7b1bd4d88a6839c2c5061a38b4a28f31b22aa8fa08c743633ff96fc4bf88d
* Since SQLite considers NaN to be like NULL and NULL sorts before any integer,drh2023-10-28
| | | | | | make sure the sqlite3IntFloatCompare() routine reports that the integer argument is larger if the floating-point argument is NaN. FossilOrigin-Name: de1cf31a34b0f21288e7e30434a06baf25ee579929107c22e65c57236577fc4a
* Fix an error in a debugging routine used inside of testcase(). Does notdrh2023-10-19
| | | | | appear in production. Problem discovered by scan-build. FossilOrigin-Name: c6c9d7ed6dbc71b998aeaaa1bdeb36b1bb9b902f9d6088ad36db29f8ea8b7ef6
* Fix a false-positive in run-time error checking.drh2023-10-19
| | | FossilOrigin-Name: cd63eec0758960d9ee63d7b964ec62e2bd622f8c94a58bd9556046381ffa18d0
* Changes to sqlite3IntFloatCompare() in an attempt to better measuredrh2023-10-17
| | | | | branch coverage in the face of aggressive compiler optimization. FossilOrigin-Name: 5781d043ffeccda03357ee530564987443dc1deb6111a4028701b4a98fdfe16d
* Improve the sqlite3IntFloatCompare() routine so that it is testable.drh2023-09-14
| | | FossilOrigin-Name: bb221381fa38db5be1222d89c567a9bca0e6c441e26a8c797bd326b263556afb
* Determine at start time whether or not the underlying hardware supportsdrh2023-09-13
| | | | | high-precision long double computations. FossilOrigin-Name: 9a854b919667e0e679a259542b2ee444ee416dbd73ecd9458f6ced35d9d3f264
* Merge the latest trunk enhancements into the wal-shm-exceptions branch.drh2023-07-28
|\ | | | | FossilOrigin-Name: c44fb4d06591ef4872f015aa9e81ce8b93a38bd9143cf20db38cbe5c77a0d71f
| * Add the sqlite3_stmt_explain() API.drh2023-07-28
| |\ | | | | | | FossilOrigin-Name: 0443c0ef85f8f6f3efdee68bf59126c9459f08a58458756f8cbeeaf043d43a86
| | * Enhance the sqlite3_stmt_explain() interface so that avoids unnecessarydrh2023-07-18
| | | | | | | | | | | | | | | reprepare operations. FossilOrigin-Name: 050f773addd605f6690348c98e9000a9a3663bbc26288a71973fd7b40468e8ab
| * | The OP_Column opcode caches large column values coming from overflow pages.drh2023-07-27
| |/ | | | | FossilOrigin-Name: ab1edcc7fedcf27922d5db4bc1bc673b1495ca9c66eb6debdda7b7776c068888
* | Merge all recent trunk enhancements into the wal-shm-exceptions branch.drh2023-07-06
|\| | | | | FossilOrigin-Name: e59cea2d851be68559e7d01a01cb05684c44d151d022ea9790ce99671016ab00
| * Add support for sqlite3_stmt_scanstatus_v2() profiling of GROUP BY clauses ↵dan2023-06-30
| | | | | | | | | | that use a temp b-tree. FossilOrigin-Name: 796eadcc50e7ea9ec348b1f7e2d6a5a3de78c675a07f665078309e6d81479e7d
| * Performance optimization in sqlite3VdbeAddOp4Int().drh2023-06-20
| | | | | | FossilOrigin-Name: 456a24324bd42e1e3384ffa8474b7d0760b27df95be0e92ddce5eb87339f6272
| * Fix an assert that can go bad if STAT4 content is corrupt. This is adrh2023-06-10
| | | | | | | | | | follow-up to the previous check-in. FossilOrigin-Name: ac1d3860af4eb30e4a7444b01d7b5afc91a4b1f5e3fe5414a491c6edc7ff1631
| * Fix straggler misspellings and tidy the custom dictionary. Also include ↵larrybr2023-06-07
| |\ | | | | | | | | | | | | pickups from [forum:/info/c61fb09afd|forum post c61fb09afd]. FossilOrigin-Name: 8c291d99946eb32b20b743921202f9c7cfb716268ff526817b27adbb7942e40b
| * | Add a C-source spell-checking facility. make misspell (on Nix)larrybr2023-06-07
| |/ | | | | FossilOrigin-Name: 26c1bb4bd9e9f56613c3aa87407a7f562fd4ebde5bfd6dece02078001d9a45f8
| * The assertion-fault fix in [53a61f7423a7f057] was not quite complete. Thisdrh2023-04-22
| | | | | | | | | | | | additional change enhances it to deal with WITHOUT ROWID tables. No changes to deliverable code. FossilOrigin-Name: 4d5af42c651bc1655a4f09b743f2a1424f19c1e4248e041b3fd4a042fd1f9799
| * Fix a incorrect assert() statement in the pre-update hook logic. No changesdrh2023-04-22
| | | | | | | | | | | | to production code. Fix for the problem reported by [forum:/info/19b217bfe709a072|forum post 19b217bfe709a072]. FossilOrigin-Name: 53a61f7423a7f057568a1d8a1e63be01a2328997850dc32e3d8c6d51f1c5ab0b
| * Fix a function declaration so that it correctly appears as private indrh2023-04-20
| | | | | | | | | | the amalgamation. [forum:/forumpost/ec8c77516c|Forum post ec8c77516c]. FossilOrigin-Name: 1864569bb9fe28a5e77f34b199f26ac272dbbb1a6642dacd7e50ddd29aa567b6
| * Attempt to suppress harmless compiler warnings reported bydrh2023-04-19
| | | | | | | | | | [forum:/forumpost/fc98845c06|forum post fc98845c06]. FossilOrigin-Name: f6e6c5f94cef83645288568a344a0ff64e4ef17b10fab28996567a94db0a002a
| * New assert() statements to validate the parameters todrh2023-04-10
| | | | | | | | | | | | | | sqlite3BtreeCursorHint(). Fix a problem with the construction of those parameters discovered by [forum:/forumpost/0b53708c95|forum post 0b53708c95]. FossilOrigin-Name: 4c5a3c5fb351cc1c2ce16c33314ce19c53531f09263f87456283d9d756002f9d
| * A prepared statement that aborts due to SQLITE_SCHEMA should not invalidatedrh2023-04-06
| | | | | | | | | | | | | | cursors in other prepared statements that are already running. See [forum:/forumpost/cae4367d9b|forum post cae4367d9b] for the original trouble report. FossilOrigin-Name: 857d0f5e16ba69ac9e5ee581befca2f7ed933edfe6e36396b10dae7979b44a57
| * Fix harmless compiler warnings.drh2023-04-01
| | | | | | FossilOrigin-Name: a4fb2864fe01cce9694242a0750623ca47fcecd68f74c4239d3eb5fbf978770a
| * Add an sqlite3_db_config() option - SQLITE_DBCONFIG_STMT_SCANSTATS - for ↵dan2023-02-28
| | | | | | | | | | enabling and disabling the collection of sqlite3_stmt_scanstats() statistics in SQLITE_ENABLE_STMT_SCANSTATUS builds. Collection of statistics is disabled by default. FossilOrigin-Name: 0f5579bef27b84ee855065cfe87703c51e1f9773906a9e0d4e4dafc90bd0e553
| * Back out the 'txn' enhancement to date/time functions. The duration of adrh2023-02-08
| | | | | | | | | | | | "transaction" is confused and needs to be straightened out prior to moving forward with this change. FossilOrigin-Name: 4a145f07322d768a07619bed27e0390d50f3a01d07787b9296234a5ceb6f1218
| * Add support for the 'txn' argument to date/time functions that works likedrh2023-02-07
| | | | | | | | | | 'now' but keeps the same time for the entire transaction. FossilOrigin-Name: 5e4f45af96247e29910403a63ac148cb313b005f9c014b37a9a49d98f5fef9a6