A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://github.com/w3c/IndexedDB/issues/436 below:

Wait loop questions · Issue #436 · w3c/IndexedDB · GitHub

In Upgrading a database step 11 is supposed to wait for the transaction to finish.

A transaction is finished once it enters the finished state (after commit or abort)

Calling indexedDB.open("test", 1) will cause an upgrade, and then step 10.5 could change the state (via autocommit, or user action), but then we instantly set it back to inactive in step 10.6

Given the following snippet:

let db;
const open_rq = indexedDB.open(undefined, 9);

open_rq.onupgradeneeded = function (e) {
    db = e.target.result;
};
    
open_rq.onsuccess = function (e) {
    db.close();
    let open_rq2 = indexedDB.open(db.name, 10);
};

Once we get to close a database connection step 3. we will be stuck in an infinite loop, because at no point has the transaction gone to the finished state. (The onupgradeneeded callback does nothing that would cause an abort or commit)


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.3