Inheritance Hierarchy


Can happen when trying to use IndexedDB resource when not in a valid state to do so. For example, calling db.transaction() from within an upgrade callback (when current transaction is an upgrade transaction.)

Sample using Promise.catch()

doSomeDatabaseWork().then(result => {
    // Success
}).catch('InvalidStateError', e => {
    // Failed with InvalidStateError
    console.error ("InvalidState error: " + e.message);
}).catch(Error, e => {
    // Any other error derived from standard Error
    console.error ("Error: " + e.message);
}).catch(e => {
    // Other error such as a string was thrown
    console.error (e);

Sample: switch(

db.on('error', function (error) {
    switch ( {
        // errnames.InvalidState ==="InvalidStateError"
        case Dexie.errnames.InvalidState:
            console.error ("InvalidState error");
            console.error ("error: " + e);


nameWill always be Dexie.errnames.InvalidState === "InvalidStateError"
messageDetailed message
inner?Inner exception instance (if any)
stackCan be present if the error was thown. If signaled, there wont be any call stack.

Table of Contents