Bug 207997 - Not possible to launch IndexedDB queries in parallel
Summary: Not possible to launch IndexedDB queries in parallel
Status: NEW
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebCore Misc. (show other bugs)
Version: Safari Technology Preview
Hardware: All All
: P2 Major
Assignee: Nobody
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2020-02-20 01:35 PST by Carlos
Modified: 2020-02-22 17:54 PST (History)
3 users (show)

See Also:


Attachments
Reproducer (3.59 KB, text/html)
2020-02-20 01:35 PST, Carlos
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Carlos 2020-02-20 01:35:52 PST
Created attachment 391268 [details]
Reproducer

It is not possible to launch two IndexedDB queries in parallel, i.e., if a first query is launched and next a second one, the second query is not executed until the first one is completed.

Note that using Google Chrome in other OS like Linux, this is not the behavior and the two queries can be executed in parallel.

Tested with Safari Technology preview release 101 (Safari 13.2, WebKit 15610.1.2.1) on Mac, and with Safari 13 on iOS.

Steps to reproduce: 

1- Open the attached reproducer, twoQueries.html. An IndexedDB database with two objectStores (testStore and testStore2) is created.
2- Click in “Populate database” and wait until it finishes. It will populate “testStore” with 250000 records and testStore2 with 10 records.
3- Click in "Launch Queries", it launches a query for testStore1 (query1) and another query for testStore2 (query2) right at the same time. Note that until the query1 is not finished, query2 is not launched. As commented above, this is not the behavior using Chrome in Linux. In that case, the two queries are executed in parallel and as query2 is faster its result is printed before the result of query1.
Comment 1 Radar WebKit Bug Importer 2020-02-22 17:54:32 PST
<rdar://problem/59702302>