mirror of
https://github.com/sqlite/sqlite.git
synced 2026-10-23 21:49:02 +03:00
Ensure the internal DBFLAG_SchemaKnownOk flag is always cleared after a database schema is reset. Report [bugs:/info/2026-10-14T01:25:35Z | 2026-10-14T01:25:35Z].
FossilOrigin-Name: e6b9a40732900d0b7f83ec262ddc81bb47d4230de55d6db319689906e2bb3716
This commit is contained in:
16
manifest
16
manifest
@@ -1,5 +1,5 @@
|
||||
C The\sprevious\scheck-in\swas\snot\squite\scorrect.\s\sBoth\srLhsOrig\nand\srLhs\sare\svectors\sand\sso\sneither\sshould\sbe\sfreed\susing\nsqlite3ReleaseTempReg().\s\sIndeed,\sneither\sshould\sbe\sfreed\sat\sall\ssince\nboth\svectors\sremain\sin\suse.
|
||||
D 2026-10-14T11:32:36.641
|
||||
C Ensure\sthe\sinternal\sDBFLAG_SchemaKnownOk\sflag\sis\salways\scleared\safter\sa\sdatabase\sschema\sis\sreset.\sReport\s[bugs:/info/2026-10-14T01:25:35Z\s|\s2026-10-14T01:25:35Z].
|
||||
D 2026-10-14T13:39:28.937
|
||||
F .fossil-settings/binary-glob 61195414528fb3ea9693577e1980230d78a1f8b0a54c78cf1b9b24d0a409ed6a x
|
||||
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
|
||||
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
|
||||
@@ -745,7 +745,7 @@ F src/btmutex.c 30dada73a819a1ef5b7583786370dce1842e12e1ad941e4d05ac29695528daea
|
||||
F src/btree.c 0022d783b0dde6cd4e89c29ab134008e54798077233a4480e40d3620f533f6e2
|
||||
F src/btree.h 2ee0ddfdf4f8530ad1d46afffd7da21a0e243bfab10973011ac6f6b7fb4109a1
|
||||
F src/btreeInt.h df956bca48cd49d2a38886bc3b02045c039e8a16353f86fccd116c6487f79d82
|
||||
F src/build.c 0a160b40ea1f85b5a95e62310bbe2b944b8834a26c36f1f4b7f0f2c7e654f789
|
||||
F src/build.c 1406d252bc5b2c3f2150edd4426e5981eabf1000944be8db8d470b96eb64ee07
|
||||
F src/callback.c 3605bbf02bd7ed46c79cd48346db4a32fc51d67624400539c0532f4eead804ad
|
||||
F src/carray.c 22879bbd9e14fc4868f223b0d49bcdbbda4616c89f1519ec6a5e64b98a4137b1
|
||||
F src/complete.c f68f545b9c6c19e2e848672dc0e4da230072fedc335d8980b55242cc4cfa60da
|
||||
@@ -987,7 +987,7 @@ F test/bestindexC.test f44eb3d77359e9487222a2dde27f8ecf11a8e4932803c0dd9477f75e1
|
||||
F test/bestindexD.test 6a8f6f84990bcf17dfa59652a1f935beddb7afd96f8302830fbc86b0a13df3c3
|
||||
F test/bestindexE.test 297f3ea8500a8f3c17d6f78e55bdfee089064c6144ee84a110bd005a03338f49
|
||||
F test/bestindexF.test 4e53d606cbde40a2254aa016d500c5b71766a4065b8541202d195a3d9fe11b1c
|
||||
F test/bestindexG.test 973d68bb680db9045c8b24bf672f38eb05997eaa65338c64ba8400bdb01aa063
|
||||
F test/bestindexG.test b7e0d84687724c1e0fb9ceca9ff6abb2f51d6797e2bcd2efcd1e7d6e885284e0
|
||||
F test/between.test e7587149796101cbe8d5f8abae8d2a7b87f04d8226610aa1091615005dcf4d54
|
||||
F test/bigfile.test aa74f4e5db51c8e54a1d9de9fa65d01d1eb20b59
|
||||
F test/bigfile2.test 1b489a3a39ae90c7f027b79110d6b4e1dbc71bfc
|
||||
@@ -2287,8 +2287,8 @@ F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee
|
||||
F tool/warnings.sh a554d13f6e5cf3760f041b87939e3d616ec6961859c3245e8ef701d1eafc2ca2
|
||||
F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
|
||||
F tool/winmain.c 00c8fb88e365c9017db14c73d3c78af62194d9644feaf60e220ab0f411f3604c
|
||||
P 930df67b442ed677dbe5b22afe4fb91c907c721592a8090f0a70ebea79f3a854
|
||||
R 83c22231ceefe821863301eb47a25516
|
||||
U drh
|
||||
Z fb0b9d941cdd9cc3a7cb4f99735dbd52
|
||||
P fc7b959f45a55d95c9cb37692e82b811e3ef286a6d826895dfee9a1f2abfdcc8
|
||||
R 3e0f9f85495f0b0cb6ba9c6c348ac543
|
||||
U dan
|
||||
Z 6a44fc1abd844289e15d27bf9a9407c2
|
||||
# Remove this line to create a well-formed Fossil manifest.
|
||||
|
||||
@@ -1 +1 @@
|
||||
fc7b959f45a55d95c9cb37692e82b811e3ef286a6d826895dfee9a1f2abfdcc8
|
||||
e6b9a40732900d0b7f83ec262ddc81bb47d4230de55d6db319689906e2bb3716
|
||||
|
||||
@@ -639,6 +639,7 @@ void sqlite3ResetOneSchema(sqlite3 *db, int iDb){
|
||||
for(i=0; i<db->nDb; i++){
|
||||
if( DbHasProperty(db, i, DB_ResetWanted) ){
|
||||
sqlite3SchemaClear(db->aDb[i].pSchema);
|
||||
db->mDbFlags &= ~DBFLAG_SchemaKnownOk;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
|
||||
set testdir [file dirname $argv0]
|
||||
source $testdir/tester.tcl
|
||||
set testprefix bestindexF
|
||||
set testprefix bestindexG
|
||||
|
||||
ifcapable !vtab {
|
||||
finish_test
|
||||
@@ -97,5 +97,52 @@ do_execsql_test 1.2 {
|
||||
select count(*) from probe join v on v.id = probe.id;
|
||||
} {2}
|
||||
|
||||
#-------------------------------------------------------------------------
|
||||
# Report https://sqlite.org/bugs/forumpost/aec494fd56
|
||||
#
|
||||
reset_db
|
||||
ifcapable fts5 {
|
||||
sqlite3 db ""
|
||||
register_tcl_module db
|
||||
|
||||
proc vtab_command {method args} {
|
||||
switch -- $method {
|
||||
xConnect {
|
||||
return "CREATE TABLE x(a PRIMARY KEY, b) WITHOUT ROWID"
|
||||
}
|
||||
}
|
||||
return {}
|
||||
}
|
||||
|
||||
do_execsql_test 2.0 {
|
||||
CREATE VIRTUAL TABLE v40 USING fts5(c);
|
||||
BEGIN EXCLUSIVE;
|
||||
CREATE VIRTUAL TABLE v115 USING tcl(vtab_command);
|
||||
}
|
||||
|
||||
do_catchsql_test 2.1 {
|
||||
CREATE VIRTUAL TABLE v123 USING fts5;
|
||||
} {1 {vtable constructor failed: v123}}
|
||||
|
||||
do_catchsql_test 2.2 {
|
||||
CREATE TABLE v124 (
|
||||
a AS(a),
|
||||
b INT
|
||||
);
|
||||
} {1 {generated column loop on "a"}}
|
||||
|
||||
do_execsql_test 2.3 {
|
||||
PRAGMA quick_check;
|
||||
} {ok}
|
||||
|
||||
do_execsql_test 2.4 {
|
||||
INSERT INTO v40 VALUES('one two three');
|
||||
SELECT rowid FROM v40('one');
|
||||
COMMIT;
|
||||
SELECT rowid FROM v40('two');
|
||||
} {1 1}
|
||||
}
|
||||
|
||||
|
||||
finish_test
|
||||
|
||||
|
||||
Reference in New Issue
Block a user