microsoft/playwright · error · Error
Unable to serialize IndexedDB: ${e.message}
Error message
Unable to serialize IndexedDB: ${e.message} What it means
Error "Unable to serialize IndexedDB: ${e.message}" thrown in microsoft/playwright.
Source
Thrown at packages/injected/src/storageScript.ts:145
}));
return {
name: dbInfo.name,
version: dbInfo.version,
stores,
};
}
async collect(recordIndexedDB: boolean): Promise<SerializedStorage> {
const localStorage = Object.keys(this._global.localStorage).map(name => ({ name, value: this._global.localStorage.getItem(name)! }));
if (!recordIndexedDB)
return { localStorage };
try {
const databases = await this._global.indexedDB.databases();
const indexedDB = await Promise.all(databases.map(db => this._collectDB(db)));
return { localStorage, indexedDB };
} catch (e) {
throw new Error('Unable to serialize IndexedDB: ' + e.message);
}
}
private async _restoreDB(dbInfo: IndexedDBDatabase) {
const openRequest = this._global.indexedDB.open(dbInfo.name, dbInfo.version);
openRequest.addEventListener('upgradeneeded', () => {
const db = openRequest.result;
for (const store of dbInfo.stores) {
const objectStore = db.createObjectStore(store.name, { autoIncrement: store.autoIncrement, keyPath: store.keyPathArray ?? store.keyPath });
for (const index of store.indexes)
objectStore.createIndex(index.name, index.keyPathArray ?? index.keyPath!, { unique: index.unique, multiEntry: index.multiEntry });
}
});
// after `upgradeneeded` finishes, `success` event is fired.
const db = await this._idbRequestToPromise(openRequest);
if (db.objectStoreNames.length === 0)View on GitHub (pinned to c8fc3bf8d3)
When it happens
Trigger: Thrown at packages/injected/src/storageScript.ts:145 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of microsoft/playwright@c8fc3bf8d3 (2026-08-12).
Data as JSON: /api/errors/3db4891d89570e92.
Report an issue: GitHub.