Correct test from [96a48a15760a] - that journal was indeed corrupt, but not in the intended manner. Add a verification that the bad journal gets replaced after a write.
FossilOrigin-Name: c9171221160f241b450d425f41bb53b42362dccfad4c3fdf64dd5c3562ed4096
This commit is contained in:
@@ -3094,15 +3094,18 @@ globalThis.sqlite3InitModule = sqlite3InitModule;
|
||||
const corruptJrnl = [
|
||||
/* Test that it recovers properly from a bad journal:
|
||||
https://sqlite.org/bugs/forumpost/20e208fe172cae4f */
|
||||
pStorage.keyPrefix+'-jrnl',
|
||||
'd9d505f920a163d7ffffffffdeadbeef000000010000020000001000'
|
||||
pStorage.keyPrefix+'jrnl',
|
||||
'cb d9d505f920a163d7ffffffffdeadbeef000000010000020000001000'
|
||||
];
|
||||
sessionStorage.setItem(...corruptJrnl);
|
||||
//console.debug("sessionStorage",globalThis.sessionStorage);
|
||||
T.assert( corruptJrnl[1] === sessionStorage.getItem(corruptJrnl[0]) );
|
||||
try{
|
||||
db = new JDb(filename);
|
||||
T.assert(6 === db.selectValue('select count(*) from kvvfs'));
|
||||
db.exec('insert into kvvfs(a) values(7),(8),(9)');
|
||||
T.assert(9 === db.selectValue('select count(*) from kvvfs'));
|
||||
T.assert( corruptJrnl[1] !== sessionStorage.getItem(corruptJrnl[0]) );
|
||||
}finally{
|
||||
if( db ) db.close();
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
C Extend\sthe\stest\sfrom\sthe\sprevious\scheck-in\sa\sbit.
|
||||
D 2026-06-21T11:10:17.423
|
||||
C Correct\stest\sfrom\s[96a48a15760a]\s-\sthat\sjournal\swas\sindeed\scorrupt,\sbut\snot\sin\sthe\sintended\smanner.\sAdd\sa\sverification\sthat\sthe\sbad\sjournal\sgets\sreplaced\safter\sa\swrite.
|
||||
D 2026-06-21T11:38:05.728
|
||||
F .fossil-settings/binary-glob 61195414528fb3ea9693577e1980230d78a1f8b0a54c78cf1b9b24d0a409ed6a x
|
||||
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
|
||||
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
|
||||
@@ -649,7 +649,7 @@ F ext/wasm/test-opfs-vfs.html 1f2d672f3f3fce810dfd48a8d56914aba22e45c6834e262555
|
||||
F ext/wasm/test-opfs-vfs.js 1618670e466f424aa289859fe0ec8ded223e42e9e69b5c851f809baaaca1a00c
|
||||
F ext/wasm/tester1-worker.c-pp.html 7171022e7f4da8f46e5f50ea81dd6ce840b9235c47653a5deeb3764ccc2fe472
|
||||
F ext/wasm/tester1.c-pp.html bd927ccf51ddd65e924660a0487add99e1b044afe03950e49d87ccf44efdddb6
|
||||
F ext/wasm/tester1.c-pp.js 5e86d9d42a5f18c13ebcf394f05c9e4d02c448b61218e95990f50378036cea83
|
||||
F ext/wasm/tester1.c-pp.js 273f98ed9423c428e582e741b8097567fb6581c34f3c22427d7e02d400aa5743
|
||||
F ext/wasm/tests/opfs/concurrency/index.html 706eab6308343c04ac2360aba6001af4ffaf46d8f33a0ccd02c64d93e3216a43
|
||||
F ext/wasm/tests/opfs/concurrency/test.js 6919778fceaac1b7cc78caf41d796f545d2c4433b31188aa9689f05b5ad28828
|
||||
F ext/wasm/tests/opfs/concurrency/worker.js 704d82c5e287e47f612349e027765943a58ad967dcf178fb5a1c3a8eaafb09af
|
||||
@@ -2208,8 +2208,8 @@ F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee
|
||||
F tool/warnings.sh a554d13f6e5cf3760f041b87939e3d616ec6961859c3245e8ef701d1eafc2ca2
|
||||
F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
|
||||
F tool/winmain.c 00c8fb88e365c9017db14c73d3c78af62194d9644feaf60e220ab0f411f3604c
|
||||
P 96a48a15760a2eee2642926874e9dfd4082518c6669f930fcc367ffd16669f39
|
||||
R ed02ede3727da0027a89911ebe7f2c37
|
||||
P bd6bbd0e84226c90d864c28ac4d6acd908c4f06bfe63dcfd6fa6b8d17105b338
|
||||
R 2de10755edf1cb1f73f8df94023358e4
|
||||
U stephan
|
||||
Z 34d5e192a56f02029646f4877ed05ffd
|
||||
Z ab5ef0b4ce9e85fe36d53f715231baac
|
||||
# Remove this line to create a well-formed Fossil manifest.
|
||||
|
||||
+1
-1
@@ -1 +1 @@
|
||||
bd6bbd0e84226c90d864c28ac4d6acd908c4f06bfe63dcfd6fa6b8d17105b338
|
||||
c9171221160f241b450d425f41bb53b42362dccfad4c3fdf64dd5c3562ed4096
|
||||
|
||||
Reference in New Issue
Block a user