aboutsummaryrefslogtreecommitdiff
path: root/ext/wasm/api/sqlite3-vfs-opfs-sahpool.c-pp.js
Commit message (Collapse)AuthorAge
* Fix a long-standing filename digest computation bug in the OPFS SAHPool VFS ↵stephan2025-03-16
|\ | | | | | | | | which caused all VFS-stored filenames to have a digest value of 0. See [/forumpost/042d53c928382021] and for full details. FossilOrigin-Name: 493cbe74504e8eb1ca8f2edf49fdab6bebc7fe36ffab06932a4b8c5a4eea86cd
| * Minor doc corrections for the sahpool-digest fix and merge in current trunk.stephan2025-03-14
| |\ | |/ |/| FossilOrigin-Name: 500f2e6ec74b4c0e4ac0365ba4e0d81ed6df8dd09dc0f8af65d294c3453f8865
| * Merge trunk into the sahpool-digest branch.stephan2025-02-26
| |\ | | | | | | FossilOrigin-Name: fc1eeb7d1f2880907b0fe71a8c572dd7cd74a5d65ec0177332976ad2f8c2b216
| * | More work on the sahpool digest fix. New/fixed versions can read legacy (no ↵stephan2025-02-26
| | | | | | | | | | | | | | | digest) files but the reverse is only possible in limited circumstances (when files originated from a legacy version). The burning question is whether the real fix would be to remove this digest check altogether, as it only applies in a very limited context, and the fact that it was broken for some 18 months unnoticed suggests that its value might not be worth the CPU cycles. FossilOrigin-Name: 0df62b776c68bebb0e187b353b6f29b0a41a29f0a1c8d6728fa6b9f7ce0d13f7
| * | Add a test app to assist in validating the SAHPool digest calculation fix.stephan2025-02-03
| | | | | | | | | FossilOrigin-Name: a1e304b8020025cc73a658bd8c7697d59b4f3ad96cac0a3e36553a3207d13dc6
| * | Initial work on a fix for the SAHPool VFS's effectively-no-op digest ↵stephan2025-02-03
| | | | | | | | | | | | | | | calculation, as reported in [https://github.com/sqlite/sqlite-wasm/issues/97|ticket #97 of the downstream npm subproject]. This requires more testing alongside databases created before this version to ensure that it's backwards-compatible. FossilOrigin-Name: 9234c33f92d92bfddc6211c9c587f1072e70837c0ffe1416ef7d84d59bacd364
* | | Approximately 100 typo corrections spanning the whole tree, submitted via ↵stephan2025-02-27
| |/ |/| | | | | | | [forum:0db9827f0464bc33|forum post 0db9827f0464bc33] and individually audited and verified. Affects only code comments, innocuous test strings, error message text in tool (not library) code, and configure-level help text. FossilOrigin-Name: f50c21484d3cac73589da0376c423de39ae8b842218105786c5aa3726e4dcaed
* | Add the pause/unpause capability to the opfs-sahpool VFS, as discussed in ↵stephan2025-02-20
|\ \ | |/ |/| | | | | [forum:fe8cdb8431c|forum thread fe8cdb8431c]. Summary: this gives clients a way to eke some degree of multi-page/tab/Worker concurrency out of this VFS but requires that coordination to be implemented client-side, e.g. via a SharedWorker or WebLocks. FossilOrigin-Name: b5dbd521951e129b4dec69f191a872500dbf387b34a8479ad58b053ffcccbab9
| * Cleanups in the opfs-sahpool VFS pause/unpause feature and its tests.stephan2025-01-31
| | | | | | FossilOrigin-Name: 184ba37702f63196deca91d273e798ca895fbb301938e6264bc82815a4e33149
| * Simplify how OpfsSAHPoolUtil.unpauseVfs()'s returned promise is handled.stephan2025-01-29
| | | | | | FossilOrigin-Name: d651b8da5a84cd54d71f15bd34e4db685674ef73f26f5cc26b7af5321a2ec05e
| * Add experimental support to pause/unpause an SAHPool OPFS VFS, as discussed ↵stephan2025-01-29
|/ | | | | in [forum:fe8cdb8431c32455|forum post fe8cdb8431c32455], the intent being enable a page to relinquish, perhaps temporarily, the VFS such that the VFS's storage can be accessed by another page/tab. FossilOrigin-Name: 1d2683fe9e4be01c3137e750900f54d287e7d96185e66924d24b50f4647e7ef1
* When calling OpfsSAHPoolUtil.removeVfs(), ensure that the cached result the ↵stephan2024-10-17
| | | | | VFS init is also removed so that the VFS may later be registered again with the same name. Set up test code for the regression reported in [forum:cf37d5ff11 | forum post cf37d5ff11] (which uncovered the removeVfs() shortcoming) but that test is currently only known to fail with the "opfs" VFS and is not currently set up to fail. FossilOrigin-Name: b7f7a5deeae61920dbfec7606cf9014de711f959a285b29e12673abfd2f88646
* OPFS VFSes: remove the on-open() pragma calls, as those (A) already ↵stephan2024-07-22
| | | | | reflected the build-time default settings and (B) they made it illegal to run locking_mode=exclusive, which is a requirement for WAL mode without shared memory. Modify part of the test suite to demonstrate that the SAHPool VFS can run in WAL mode so long as locking_mode=exclusive is used. FossilOrigin-Name: 19cd8e2b056d7842ee39afb7160c901c9dc55a5bac8049cb0b5246210f6b920d
* Rename the new opfs-sahpool init-retry flag to the suitably descriptive, and ↵stephan2024-07-13
| | | | | suitably onerous, forceReinitIfPreviouslyFailed, based on feedback. FossilOrigin-Name: c9f0a6090258534a3d81066df5610229183a8457fc60d5034b4b94d9a29796e4
* Reformulate the forceReinitIfFailed handling based on feedback, to correct ↵stephan2024-07-11
| | | | | the type-checking and resolve a potential race condition. FossilOrigin-Name: c4f468309158f9b951137461213fb269d96d15c331256cf392a56c9bed231460
* Add an option to force the opfs-sahpool VFS init to re-run after it fails on ↵stephan2024-07-11
| | | | | a first attempt, as a workaround for flaky environments where initial access to OPFS sync access handles is rejected but then permitted on a second attempt. Reported and discussed in [https://github.com/sqlite/sqlite-wasm/issues/79|issue #79 of the npm distribution]. FossilOrigin-Name: 5286e0f654d91a4ebee51fcabaab696e17ff07bb18990b401a31bd3d1213e695
* Fix exception propagation when the opfs-sahpool VFS fails to initialize to ↵stephan2024-04-04
| | | | | address report in [forum:be0141c639|forum post be0141c639]. FossilOrigin-Name: cdb3a90055afe371962ec6c0931f1b08797aaeaab0358ef64b1cabda0a855b33
* Make explicit that using the importDb() methods of the OPFS VFSes has ↵stephan2024-02-06
| | | | | undefined results if the being-imported db is currently open. Doc changes only. FossilOrigin-Name: f28b9924b401b359e59a73918a34b29cde719164a6b4ac5a9d23da6294b701bd
* Correct the opfs-sahpool VFS's xGetLastError() method to return the previous ↵stephan2023-10-20
| | | | | error code, not 0, on success. FossilOrigin-Name: 95a1dde63117d696323c775580b9c04f044a5b8d609e9174b739ac03ecc1336c
* Do not squelch exceptions from SAHPool VFS importDb() - rethrow them. ↵stephan2023-10-05
| | | | | Problem reported in [forum:c80fc578809b80a3|forum post c80fc578809b80a3]. FossilOrigin-Name: 325bcdea4a436e514d83095d3893caf07a714b718e1b643507179b101c108e3b
* Second half of [1c532e80].stephan2023-09-01
| | | FossilOrigin-Name: 8ca1d815a57be1fade59fb8ea5705c27b10294e4959c8a9c624f1623df6a5f63
* In the OPFS VFS' importDb() methods, overwrite the header bytes 18 and 19 ↵stephan2023-09-01
| | | | | with 1 instead of 0. Both seem to work, but 1 is correct. FossilOrigin-Name: 1c532e807bf8466b67d9600ab9630a6736de77259e9a71ac435641715ee0e04b
* Extend the importDb() method of both OPFS VFSes to (A) support reading in an ↵stephan2023-08-18
| | | | | async streaming fashion via a callback and (B) automatically disable WAL mode in the imported db. FossilOrigin-Name: 9b1398c96a4fd0b59e65faa8d5c98de4129f0f0357732f12cb2f5c53a08acdc2
* In the opfs-sahpool VFS's importDb() and exportFile() methods, throw if the ↵stephan2023-08-04
| | | | | actually-wrote/read amounts differ from the expected-to-write/read amounts, per feedback in [forum:a4122e986f|forum post a4122e986f]. FossilOrigin-Name: a617ebf4e5d1af1b5b15e9782ad111399caaa3ea7b99bb0c8691c8b4283b6d6e
* SAHPoolUtil.importDb() now accepts either a byte array or ArrayBuffer.stephan2023-07-29
| | | FossilOrigin-Name: 3848f04e542e2f0f8975e82632af598aac3b60312bd244b0472f7ddf1dda77df
* Add SAHPoolUtil.getFileNames() method, and tests for it, per ↵stephan2023-07-26
| | | | | [forum:a3da1e34d8|forum feedback]. Add a test to demonstrate that two SAH pools can coexist so long as they have different names. FossilOrigin-Name: 72dc3f8c3255186ec412412b685b0b51ddcd08240f2353ac742fc7da8c23568e
* When writing the filename header in a opfs-sahpool file, ensure that all ↵stephan2023-07-23
| | | | | remaining bytes in that part of the header are zeroed out to avoid the downstream problems reported in [forum:d50ec48a293988a5|forum post d50ec48a293988a5]. FossilOrigin-Name: c1b080e39397c983c13a5e79303223827de7b4946c18a79396851ec1814782f3
* Minor internal cleanups in the opfs-sahpool VFS.stephan2023-07-21
| | | FossilOrigin-Name: 74ad31e2908af8225b7aa527dbcd1877423d58163e365317a78453b31e322ea3
* Filter the OPFS VFSes out of the sqlite3-node.mjs build. Add another level ↵stephan2023-07-20
of subdirectory to the sahpool to later enable transparent support of client-provided files under the VFS's root dir. Rework the awkward sahpool-via-oo1 mapping. FossilOrigin-Name: 080a4d0aba30d8f3802b49be4a113205f069b3bdea8cebf525d654055642ff62