From: drh Date: Wed, 31 May 2017 17:30:08 +0000 (+0000) Subject: Add the SQLITE_STMTSTATUS_MEMUSED opcode to sqlite3_stmt_status() X-Git-Tag: version-3.20.0~226 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=cdbb126be7335a05a5930b8d0fa775c7d3a86ef0;p=thirdparty%2Fsqlite.git Add the SQLITE_STMTSTATUS_MEMUSED opcode to sqlite3_stmt_status() for finding the heap memory usage by a single prepared statement. FossilOrigin-Name: c26cf978eead1c9d265eddabaa421e7735b472fcf2792cd2bdeb0901bcf3fb44 --- cdbb126be7335a05a5930b8d0fa775c7d3a86ef0 diff --cc manifest index 1824e59f71,a43212c342..b4ca199de4 --- a/manifest +++ b/manifest @@@ -1,5 -1,5 +1,5 @@@ - C Add\sthe\sexperimental\s"stmts"\svirtual\stable\sfor\sintrospection\sof\sprepared\nstatements. - D 2017-05-31T16:09:04.321 -C Add\sthe\sSQLITE_STMTSTATUS_MEMUSED\soption\sfor\ssqlite3_stmt_status()\sthat\sreports\nthe\samount\sof\sheap\smemory\sused\sfor\sa\ssingle\sprepared\sstatement. -D 2017-05-31T16:21:54.984 ++C Add\sthe\sSQLITE_STMTSTATUS_MEMUSED\sopcode\sto\ssqlite3_stmt_status()\nfor\sfinding\sthe\sheap\smemory\susage\sby\sa\ssingle\sprepared\sstatement. ++D 2017-05-31T17:30:08.999 F Makefile.in 1cc758ce3374a32425e4d130c2fe7b026b20de5b8843243de75f087c0a2661fb F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434 F Makefile.msc 8eeb80162074004e906b53d7340a12a14c471a83743aab975947e95ce061efcc @@@ -407,7 -407,7 +407,7 @@@ F src/resolve.c adf3ef9843135b1383321ad F src/rowset.c 7b7e7e479212e65b723bf40128c7b36dc5afdfac F src/select.c d93205e43af302d9eb147fddecc956509ee9d0dde6297ee3f93c591f60f0e295 F src/shell.c 3f761fe604174b31aacd2ea2eacef5e6fe550111d60c0d71532cc008c68cf3f3 - F src/sqlite.h.in 8dd468837a4f6d76713e3a4cc65bea48095009038593d41040ab46c1b351197f -F src/sqlite.h.in 4ceb982f55be38dcfef3940cbd7976905711d632288b57fe3077e101b8ab097c ++F src/sqlite.h.in ad7f4101e3613b1134d1ad6c61ff385424ffac0d542627fd31f26667fdd91c94 F src/sqlite3.rc 5121c9e10c3964d5755191c80dd1180c122fc3a8 F src/sqlite3ext.h 58fd0676d3111d02e62e5a35992a7d3da5d3f88753acc174f2d37b774fbbdd28 F src/sqliteInt.h 82800fc19fbdeb35a0773c5d727da717652f4c421d191d2460219c7aab953462 @@@ -1582,7 -1582,10 +1582,8 @@@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a9 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0 - P df7859435161f3ecf36635ce574bf73573516a1f2c6e75be320619364e7067d1 - R e83d21ac8a8cb0ecc374faa5c17a8e33 -P cb4c5c66aba757356da3b8ec3c66a5c8c40e180b3360638ac634f7787404a5b1 -R 422cbd6dab932a7244e93cdc9b25a6fb -T *branch * stmtstatus-memused -T *sym-stmtstatus-memused * -T -sym-trunk * ++P cb4c5c66aba757356da3b8ec3c66a5c8c40e180b3360638ac634f7787404a5b1 b57d510465458dec5b5fc778fd6e8833392964201f9febebf526e60a543da0c2 ++R 2d6db2eacee6f2353b072863dae9aea8 ++T +closed b57d510465458dec5b5fc778fd6e8833392964201f9febebf526e60a543da0c2 U drh - Z 198046099cee06ee47c4b60aa1796f36 -Z 6715074df5b9df0e13de539e4627d91a ++Z d7c45be9493883b447fc11b2ac5a3511 diff --cc manifest.uuid index 80989cfab9,a30273cc94..141e577741 --- a/manifest.uuid +++ b/manifest.uuid @@@ -1,1 -1,1 +1,1 @@@ - cb4c5c66aba757356da3b8ec3c66a5c8c40e180b3360638ac634f7787404a5b1 -b57d510465458dec5b5fc778fd6e8833392964201f9febebf526e60a543da0c2 ++c26cf978eead1c9d265eddabaa421e7735b472fcf2792cd2bdeb0901bcf3fb44 diff --cc src/sqlite.h.in index d836e97058,f12f8de9b1..06445d4448 --- a/src/sqlite.h.in +++ b/src/sqlite.h.in @@@ -7133,6 -7133,10 +7133,12 @@@ int sqlite3_stmt_status(sqlite3_stmt*, ** used as a proxy for the total work done by the prepared statement. ** If the number of virtual machine operations exceeds 2147483647 ** then the value returned by this statement status code is undefined. + ** + ** [[SQLITE_STMTSTATUS_MEMUSED]]
SQLITE_STMTSTATUS_MEMUSED
+ **
^This is the approximate number of bytes of heap memory -** used to store the prepared statement. ++** used to store the prepared statement. ^This value is not actually ++** a counter, and so the resetFlg parameter to sqlite3_stmt_status() ++** is ignored when the opcode is SQLITE_STMTSTATUS_MEMUSED. **
** */