You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Codex correctly flagged that the diagnostic would miss the actual #418 stall:
1. (P2) The trace stopped at initializeDatabase, but the loading screen then
awaits ping -> fetchSchema -> fetchTableCount/fetchTableData (viewer.js). A
hang in any of those would show 'establishConnection complete' then nothing,
with no unmatched 'start'. Now the browser facade wraps ping, fetchSchema,
fetchTableCount, fetchTableData, getTableInfo, getPragmas in diagStep too.
2. (P2) loadDatabaseFiles was a single wrapper hiding three awaits (stat, main
readFile, optional -wal readFile via Promise.all). A never-settling -wal read
over vscode-vfs would hang the open with no specific marker. loadDatabaseFiles
now takes an optional diag callback and logs each fs op independently.
tsc clean; build worker-free; workerFactory_browser.test.ts passes.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
diag?.(` ✓ fs.stat(db) ok (size=${fileStat.size})`);
558
571
if(maxSize!==0&&fileStat.size>maxSize){
559
572
thrownewError(`File size (${(fileStat.size/(1024*1024)).toFixed(2)} MB) exceeds the maximum allowed size (${(maxSize/(1024*1024)).toFixed(2)} MB). Configure 'sqliteExplorer.maxFileSize' to increase the limit.`);
560
573
}
561
574
562
575
// Construct WAL file URI
563
576
constwalUri=uri.with({path: uri.path+'-wal'});
564
577
565
-
// Read both files concurrently
578
+
// Read both files concurrently. Log each independently so a hang in the main
579
+
// DB read vs. the optional -wal read is distinguishable in the #418 trace.
0 commit comments