From: drh <> Date: Tue, 18 Apr 2023 11:35:09 +0000 (+0000) Subject: Add the --fullsync option to speedtest1. X-Git-Tag: version-3.42.0~132 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=053a29c29124334f8664d77efef3b1b27c854dab;p=thirdparty%2Fsqlite.git Add the --fullsync option to speedtest1. FossilOrigin-Name: 960fe54c8227a376c97bb2a3ba604d97e79e27e51a9798be9d318cf56c04fa99 --- diff --git a/manifest b/manifest index dc94a74a86..c6fee5bf84 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Fix\san\sassert()\sin\sfts5\sthat\scould\sfail\sfollowing\san\sOOM\sor\sIO\serror. -D 2023-04-18T11:33:35.337 +C Add\sthe\s--fullsync\soption\sto\sspeedtest1. +D 2023-04-18T11:35:09.601 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724 @@ -1531,7 +1531,7 @@ F test/speed3.test 694affeb9100526007436334cf7d08f3d74b85ef F test/speed4.test abc0ad3399dcf9703abed2fff8705e4f8e416715 F test/speed4p.explain 6b5f104ebeb34a038b2f714150f51d01143e59aa F test/speed4p.test 377a0c48e5a92e0b11c1c5ebb1bc9d83a7312c922bc0cb05970ef5d6a96d1f0c -F test/speedtest1.c 4a883fe277c289161f84f8c805a38f78bfbd9515eb417071f9bce817c2ca8756 +F test/speedtest1.c 9703465daf778dd90bad7adadc1d2ee205ec90a79437cababab0a4111190f0c8 F test/spellfix.test 951a6405d49d1a23d6b78027d3877b4a33eeb8221dcab5704b499755bb4f552e F test/spellfix2.test dfc8f519a3fc204cb2dfa8b4f29821ae90f6f8c3 F test/spellfix3.test 0f9efaaa502a0e0a09848028518a6fb096c8ad33 @@ -2058,8 +2058,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 25edf6089724bf9f97c796e5abf838ec508ebc132895d8325620c16d63996fef -R 2bb451a8ca6c1fc68e0f9e87de9c4cb2 -U dan -Z 766d0802e43dc7bbd454875eec831ea6 +P 49595083ba58e13d404b6a11c28f53768a257c59f3f36be3591438127df7e875 +R cc728f1caef69a29ba8fe0bb9cbdc7a1 +U drh +Z a2caae4ae9157cd4de2a01e274c37a8f # Remove this line to create a well-formed Fossil manifest. diff --git a/manifest.uuid b/manifest.uuid index dc2048f98b..4bc144f09b 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -49595083ba58e13d404b6a11c28f53768a257c59f3f36be3591438127df7e875 \ No newline at end of file +960fe54c8227a376c97bb2a3ba604d97e79e27e51a9798be9d318cf56c04fa99 \ No newline at end of file diff --git a/test/speedtest1.c b/test/speedtest1.c index 1dd3bd5fb3..6aff89b376 100644 --- a/test/speedtest1.c +++ b/test/speedtest1.c @@ -12,6 +12,7 @@ static const char zHelp[] = " --checkpoint Run PRAGMA wal_checkpoint after each test case\n" " --exclusive Enable locking_mode=EXCLUSIVE\n" " --explain Like --sqlonly but with added EXPLAIN keywords\n" + " --fullfsync Enable fullfsync=TRUE\n" " --heap SZ MIN Memory allocator uses SZ bytes & min allocation MIN\n" " --incrvacuum Enable incremenatal vacuum mode\n" " --journal M Set the journal_mode to M\n" @@ -2203,6 +2204,7 @@ int main(int argc, char **argv){ int doAutovac = 0; /* True for --autovacuum */ int cacheSize = 0; /* Desired cache size. 0 means default */ int doExclusive = 0; /* True for --exclusive */ + int doFullFSync = 0; /* True for --fullfsync */ int nHeap = 0, mnHeap = 0; /* Heap size from --heap */ int doIncrvac = 0; /* True for --incrvacuum */ const char *zJMode = 0; /* Journal mode */ @@ -2267,6 +2269,8 @@ int main(int argc, char **argv){ cacheSize = integerValue(argv[++i]); }else if( strcmp(z,"exclusive")==0 ){ doExclusive = 1; + }else if( strcmp(z,"fullfsync")==0 ){ + doFullFSync = 1; }else if( strcmp(z,"checkpoint")==0 ){ g.doCheckpoint = 1; }else if( strcmp(z,"explain")==0 ){ @@ -2511,7 +2515,11 @@ int main(int argc, char **argv){ if( cacheSize ){ speedtest1_exec("PRAGMA cache_size=%d", cacheSize); } - if( noSync ) speedtest1_exec("PRAGMA synchronous=OFF"); + if( noSync ){ + speedtest1_exec("PRAGMA synchronous=OFF"); + }else if( doFullFSync ){ + speedtest1_exec("PRAGMA fullfsync=ON"); + } if( doExclusive ){ speedtest1_exec("PRAGMA locking_mode=EXCLUSIVE"); }