Chrome没有完全删除indexedDB数据库

时间:2014-08-07 02:28:42

标签: javascript google-chrome indexeddb

我一直在尝试关闭并删除一个indexedDB数据库,但我会说大约有10%的时间它被卡在一个不太理想的状态。它会删除所有对象存储,但保留数据库条目,如下面的屏幕截图所示。

enter image description here

目标是在用户注销然后重新加载页面时一举完全删除indexedDB数据库。当数据库没有被完全删除时,它可能会导致用户登录时出现问题,因为未调用onupgradeneeded并且未重新创建对象存储。

this.db.close();

var request = indexedDB.deleteDatabase("mcfarljwtest2");

request.onsuccess = function() {
    setTimeout(function() {
        location.reload(true);
    }, 1000);
};

request.onerror = function(error) {
    console.log(error);
};

是否有一些我遗漏或忽略的东西让它完全删除100%的时间?

1 个答案:

答案 0 :(得分:2)

您在Chrome中发现了一个错误!

我将此作为https://crbug.com/539931提交,然后就找到了解决办法。除非出现任何意外的副作用,修复程序应该在Chrome 48中。

如上所述,它特别针对让devtools打开并主动检查数据库资源,因此它不太可能影响最终用户,只会影响开发人员。