From 2578cf2eb7ed1e625b6606cc54415d559b000ac4 Mon Sep 17 00:00:00 2001 From: drh <> Date: Thu, 25 Aug 2022 13:09:02 +0000 Subject: [PATCH] If a perpared statement runs the Expire opcode, then disqualify it from being cached. FossilOrigin-Name: f27d919f3535f2be6642a02cf03cee82c66ff9d1e727f0c59c137f2a7f1d00c9 --- manifest | 12 ++++++------ manifest.uuid | 2 +- src/vdbe.c | 1 + 3 files changed, 8 insertions(+), 7 deletions(-) diff --git a/manifest b/manifest index 1125980cd0..4f64fc55d8 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Change\ssqlite3_prepare_v3()\sto\srequire\sSQLITE_PREPARE_CACHE\sin\sorder\sfor\sa\nstatement\sto\sbe\sa\scache\scandidate.\s\sBut\sany\sstatement\scan\spull\sfrom\sthe\scache.\nAlso\sadd\sstatement\scache\scontrol\sto\sthe\sCLI. -D 2022-08-24T23:50:45.133 +C If\sa\sperpared\sstatement\sruns\sthe\sExpire\sopcode,\sthen\sdisqualify\sit\sfrom\nbeing\scached. +D 2022-08-25T13:09:02.350 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724 @@ -660,7 +660,7 @@ F src/upsert.c 8789047a8f0a601ea42fa0256d1ba3190c13746b6ba940fe2d25643a7e991937 F src/utf.c ee39565f0843775cc2c81135751ddd93eceb91a673ea2c57f61c76f288b041a0 F src/util.c 602fe229f32a96ceccae4f40824129669582096f7c355f53dbac156c9fecef23 F src/vacuum.c bb346170b0b54c6683bba4a5983aea40485597fdf605c87ec8bc2e199fe88cd8 -F src/vdbe.c 0150d16da21cb96b2b0f2880aad6acd80ddedf93a9f3eb2c5200aef864854fe6 +F src/vdbe.c 635b426bf7752b3b384cf8c07a364ce151cccea2f53c469b1a864b1c25275bb8 F src/vdbe.h c4c9defdf2ad9465f9c9c7f79c3b03555f47aa930ea2744f358d9b27269763c7 F src/vdbeInt.h e332f7d165b2cb984772c425c45f67f1d57e3c032d8dbf74a9ef8f1cebfa4bb2 F src/vdbeapi.c 8087dba84836f59d0d5340a6c554948cf4fef03ace62a8d7dd3c8f310107e3f4 @@ -1999,8 +1999,8 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0 -P c217b763b148e8bece9d1f72525fd5026d3f710b337c010ffd0306fde4f9add8 -R 46f3adc34868ee6f9be56f487a4c1aae +P c9dc536db9d13c0d66e5b84e564d6813c184ae26c889413a64b365781bf8ee50 +R 1950d8ca89c48067202891eae6480415 U drh -Z 42a77517994ced9f374a6cd335be1880 +Z 9eac493533fb2b70551aa5898da68875 # Remove this line to create a well-formed Fossil manifest. diff --git a/manifest.uuid b/manifest.uuid index e5c4112044..cd0a9fa022 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -c9dc536db9d13c0d66e5b84e564d6813c184ae26c889413a64b365781bf8ee50 \ No newline at end of file +f27d919f3535f2be6642a02cf03cee82c66ff9d1e727f0c59c137f2a7f1d00c9 \ No newline at end of file diff --git a/src/vdbe.c b/src/vdbe.c index 4d03320e53..67f56777dc 100644 --- a/src/vdbe.c +++ b/src/vdbe.c @@ -7698,6 +7698,7 @@ case OP_Expire: { }else{ p->expired = pOp->p2+1; } + p->hSql = 0; break; } -- 2.47.2