From 14af0ee6b3b6df6e26c033226fb1a47dc0695562 Mon Sep 17 00:00:00 2001 From: dan Date: Thu, 9 Jan 2025 20:41:18 +0000 Subject: [PATCH] Run tests with SQLITE_TESTCTRL_SCHEMACOPY for mdevtest and sdevtest on this branch. FossilOrigin-Name: c25dd2dec58f92c4c6686ed374facc64a6847232b47ecc95bc602babeb08f4e8 --- ext/fts5/fts5_index.c | 1 - manifest | 20 ++++++++++---------- manifest.uuid | 2 +- src/build.c | 2 +- test/permutations.test | 11 +++++++++++ test/tester.tcl | 2 -- test/testrunner.tcl | 1 + 7 files changed, 24 insertions(+), 15 deletions(-) diff --git a/ext/fts5/fts5_index.c b/ext/fts5/fts5_index.c index 4363305a56..1bcb9f9803 100644 --- a/ext/fts5/fts5_index.c +++ b/ext/fts5/fts5_index.c @@ -4881,7 +4881,6 @@ static int fts5IndexFindDeleteMerge(Fts5Index *p, Fts5Structure *pStruct){ nEntry += pLvl->aSeg[iSeg].nEntry; nTomb += pLvl->aSeg[iSeg].nEntryTombstone; } - assert_nc( nEntry>0 || pLvl->nSeg==0 ); if( nEntry>0 ){ int nPercent = (nTomb * 100) / nEntry; if( nPercent>=pConfig->nDeleteMerge && nPercent>nBest ){ diff --git a/manifest b/manifest index e6ab80d138..8259aa985f 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Rationalize\sand\sadd\scomments\sto\snew\scode\son\sthis\sbranch. -D 2025-01-09T19:18:51.763 +C Run\stests\swith\sSQLITE_TESTCTRL_SCHEMACOPY\sfor\smdevtest\sand\ssdevtest\son\sthis\sbranch. +D 2025-01-09T20:41:18.825 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724 @@ -101,7 +101,7 @@ F ext/fts5/fts5_buffer.c 0eec58bff585f1a44ea9147eae5da2447292080ea435957f7488c70 F ext/fts5/fts5_config.c 353d2a0d12678cae6ab5b9ce54aed8dac0825667b69248b5a4ed81cbefc109ea F ext/fts5/fts5_expr.c 9a56f53700d1860f0ee2f373c2b9074eaf2a7aa0637d0e27a6476de26a3fee33 F ext/fts5/fts5_hash.c adda4272be401566a6e0ba1acbe70ee5cb97fce944bc2e04dc707152a0ec91b1 -F ext/fts5/fts5_index.c 571483823193f09439356741669aa8c81da838ae6f5e1bfa7517f7ee2fb3addd +F ext/fts5/fts5_index.c db0bf9954d89ea4db6bb18fbb2358702c9de989d8ab413cc6ff6f92bb1c8e0c1 F ext/fts5/fts5_main.c 43990841e0221e0da1bf7ec687196683692b9e8783c372b8d58dea3e9866a5e4 F ext/fts5/fts5_storage.c 9a9b880be12901f1962ae2a5a7e1b74348b3099a1e728764e419f75d98e3e612 F ext/fts5/fts5_tcl.c 4db9258a7882c5eac0da4433042132aaf15b87dd1e1636c7a6ca203abd2c8bfe @@ -716,7 +716,7 @@ F src/btmutex.c 79a43670447eacc651519a429f6ece9fd638563cf95b469d6891185ddae2b522 F src/btree.c 2664c81f217a42afadc7c010bb4a175057d5e53b99e9512234eb74817f2ad59c F src/btree.h bdeeb35614caa33526b603138f04c8d07a3f90a1300b5ade76848b755edf2027 F src/btreeInt.h caa893e74d2261fb0ff1681fce998533c0552858e882bd04fc6805075f5f6e75 -F src/build.c 0bbe47ec72107ff9c7cee6039e504c685740ddf6db6f2e26cdafbc7a9ccf02e1 +F src/build.c 5255fc726c9efb395a5c268ead0286fff6bc985d09555b714a9b6ac86e9cbd6c F src/callback.c 43c8ca52b1ecbdec43522f121126fd4e3ee10bc9ca01cdd3ae207cfa419780b6 F src/complete.c a3634ab1e687055cd002e11b8f43eb75c17da23e F src/ctime.c 193f6f9a75204274b7e7f45ac6d6517c12c70b55a5dfb39312dfc3a52e2a8138 @@ -1539,7 +1539,7 @@ F test/pcache.test c8acbedd3b6fd0f9a7ca887a83b11d24a007972b F test/pcache2.test af7f3deb1a819f77a6d0d81534e97d1cf62cd442 F test/pendingrace.test e99efc5ab3584da3dfc8cd6a0ec4e5a42214820574f5ea24ee93f1d84655f463 F test/percentile.test 52ba89d6ee6b65f770972b67dace358bab7cdbd532803d3db157845268e789cd -F test/permutations.test 3ed69d571619ab452d06f995c7c1d3f100588b20c1d47595819d9289adedabfb +F test/permutations.test 3da85848731f5c7de4c1d6db7609d98dd1dbf1a07dd8894a3ca0ebdf32d9c8c2 F test/pg_common.tcl 3b27542224db1e713ae387459b5d117c836a5f6e328846922993b6d2b7640d9f F test/pragma.test 11cb9310c42f921918f7f563e3c0b6e70f9f9c3a6a1cf12af8fccb6c574f3882 F test/pragma2.test e5d5c176360c321344249354c0c16aec46214c9f @@ -1735,8 +1735,8 @@ F test/temptable.test d2c9b87a54147161bcd1822e30c1d1cd891e5b30 F test/temptable2.test 76821347810ecc88203e6ef0dd6897b6036ac788e9dd3e6b04fd4d1631311a16 F test/temptable3.test d11a0974e52b347e45ee54ef1923c91ed91e4637 F test/temptrigger.test 38f0ca479b1822d3117069e014daabcaacefffcc -F test/tester.tcl 34201a37a5b657438d5f84914fdab7477ce14ba6b8e629f089f238b75dafecd1 -F test/testrunner.tcl 982939f0f1835007298b92e52694c207d16ef79143993b35e5cbc9f0c585938b x +F test/tester.tcl 5d22f213be7489be92bb303171b506739035336a9352084da07f8258bb7aa257 +F test/testrunner.tcl c99bdf41a1c97254eda9d7bd18c79d12158f01761172d7a3dfced9d9a77df8a0 x F test/testrunner_data.tcl dbc0bb1c5b912dfd1e32b25d544318e412edd6085bd5fc9e6619cb93a739b786 F test/thread001.test a0985c117eab62c0c65526e9fa5d1360dd1cac5b03bde223902763274ce21899 F test/thread002.test c24c83408e35ba5a952a3638b7ac03ccdf1ce4409289c54a050ac4c5f1de7502 @@ -2251,8 +2251,8 @@ F vsixtest/vsixtest.tcl 6195aba1f12a5e10efc2b8c0009532167be5e301abe5b31385638080 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0 -P c2610bb4becf5b5c58016947e07f5c7a330210370f0d2531ab9ecb1ce8658c1a -R 3cce328d5df5fb5869ced3b1727dda7c +P e1603c9cda7cef88152cba5085541b419cee08cf58f917eecb15c4a30322fe2b +R 6a35e3e18118647f393470d767a880ef U dan -Z 7b82e6f302472f161af8163c0726a6b1 +Z ed318b27e31f9dee5b976b3e3579988a # Remove this line to create a well-formed Fossil manifest. diff --git a/manifest.uuid b/manifest.uuid index 96cd963b20..a89d3c1340 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -e1603c9cda7cef88152cba5085541b419cee08cf58f917eecb15c4a30322fe2b +c25dd2dec58f92c4c6686ed374facc64a6847232b47ecc95bc602babeb08f4e8 diff --git a/src/build.c b/src/build.c index 59195b61a0..1949bb8bfa 100644 --- a/src/build.c +++ b/src/build.c @@ -6180,7 +6180,7 @@ static void schemaCopyTable(sqlite3 *db, Schema *pTo, Table *pTab){ if( db->mallocFailed==0 ){ if( sqlite3HashInsert(&pTo->tblHash, pNew->zName, pNew) ){ - db->mallocFailed = 1; + sqlite3OomFault(db); } #ifndef SQLITE_OMIT_AUTOINCREMENT if( pTab->pSchema->pSeqTab==pTab ){ diff --git a/test/permutations.test b/test/permutations.test index 79fe27daea..7badfa999e 100644 --- a/test/permutations.test +++ b/test/permutations.test @@ -197,6 +197,17 @@ test_suite "veryquick" -prefix "" -description { *fts5corrupt* *fts5big* *fts5aj* *rbucrash* ] +test_suite "schemacopytest" -prefix "schemacopytest-" -description { + "Very" quick test suite. Runs in minutes on a workstation. + This test suite is the same as the "quick" tests, except that some files + that test malloc and IO errors are omitted. +} -files [ + test_set $allquicktests -exclude *malloc* *ioerr* *fault* *bigfile* *_err* \ + *fts5corrupt* *fts5big* *fts5aj* *rbucrash* +] -initialize { + sqlite3_test_control SQLITE_TESTCTRL_SCHEMACOPY 1 +} + test_suite "shell" -prefix "" -description { Run tests of the command-line shell } -files [ diff --git a/test/tester.tcl b/test/tester.tcl index bb9c632843..c8ea13a791 100644 --- a/test/tester.tcl +++ b/test/tester.tcl @@ -101,8 +101,6 @@ if {[info exists ::tester_tcl_has_run]} return set tcl_precision 15 sqlite3_test_control_pending_byte 0x0010000 -sqlite3_test_control SQLITE_TESTCTRL_SCHEMACOPY 1 - # If the pager codec is available, create a wrapper for the [sqlite3] # command that appends "-key {xyzzy}" to the command line. i.e. this: # diff --git a/test/testrunner.tcl b/test/testrunner.tcl index a63a22d2fc..41d77b3a0f 100755 --- a/test/testrunner.tcl +++ b/test/testrunner.tcl @@ -1130,6 +1130,7 @@ proc add_devtest_jobs {lBld patternlist} { foreach b $lBld { set bld [add_build_job $b $TRG(testfixture)] add_tcl_jobs $bld veryquick $patternlist SHELL + add_tcl_jobs $bld schemacopytest $patternlist if {$patternlist==""} { add_fuzztest_jobs $b } -- 2.47.2