1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-07-30 19:03:16 +03:00

Doc and logging text tweaks in the OPFS async proxy and test app.

FossilOrigin-Name: 7ce8608e221924d2c7067687eb6eef0f3cab181d5b4132e55a67d8514b6ce94b
This commit is contained in:
stephan
2022-11-30 03:08:50 +00:00
parent 72ee096775
commit d0945f4638
4 changed files with 16 additions and 17 deletions

View File

@ -287,11 +287,12 @@ const installAsyncProxy = function(self){
handle object (which must be a valid handle object, as created by
xOpen()), lazily opening it if needed.
In order to help alleviate cross-tab contention for a dabase,
if an exception is thrown while acquiring the handle, this routine
will wait briefly and try again, up to 3 times. If acquisition
still fails at that point it will give up and propagate the
exception.
In order to help alleviate cross-tab contention for a dabase, if
an exception is thrown while acquiring the handle, this routine
will wait briefly and try again, up to some fixed number of
times. If acquisition still fails at that point it will give up
and propagate the exception. Client-level code will see that as
an I/O error.
*/
const getSyncHandle = async (fh,opName)=>{
if(!fh.syncHandle){
@ -323,7 +324,7 @@ const installAsyncProxy = function(self){
'in',performance.now() - t,'ms');
if(!fh.xLock){
__implicitLocks.add(fh.fid);
log("Auto-locked for",opName+"()",fh.fid,fh.filenameAbs);
log("Acquired implicit lock for",opName+"()",fh.fid,fh.filenameAbs);
}
}
return fh.syncHandle;

View File

@ -18,9 +18,7 @@
<h1></h1>
<p>
OPFS concurrency tester using multiple independent Workers.
Disclaimer: concurrency in OPFS is currently a pain point
and timing/concurrency mitigation in this environment is
highly unpredictable!
Disclaimer: concurrency in OPFS is currently a pain point!
</p>
<p>
URL flags: pass a number of workers using