Verify that that requests weakly hold script value properties On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". indexedDB = self.indexedDB || self.webkitIndexedDB || self.mozIndexedDB || self.msIndexedDB || self.OIndexedDB; indexedDB.deleteDatabase(dbname) indexedDB.open(dbname) prepareDatabase(): db = event.target.result store = db.createObjectStore('store') store.put({value: 'value'}, 'key') onOpen(): db = event.target.result tx = db.transaction('store') store = tx.objectStore('store') request = store.get('key') onTransactionComplete(): db.close() PASS typeof request.result is "object" request.result.x = 123 PASS request.result.x is 123 request.result.leak = request observer = internals.observeGC(request) request = null gc() PASS observer.wasCollected is true PASS successfullyParsed is true TEST COMPLETE