Я использую localforage с драйвером indexedDB. Мой indexedDB-хранилище довольно большой, но у меня создалось впечатление, что indexedDB никогда не исчерпывается, он просто заканчивается старым контентом.Может ли индексированный DB пробежать?
Однако большое количество запросов к индексированномуDB не выполняется с ошибкой: «DOMException: транзакция вышла из-за неактивности», после того как она висит на 60 секунд.
Если я просто делаю простой
function testWrite(n) {
localforage.setItem(`test:${n}`, Math.random().toString(16).slice(2))
.then((v) => console.log(x))
.catch((err)=>console.log(err))
}
for (var x = 0; x < 10; x++) {
testWrite(x)
}
в инкогнито указал на моем веб-приложение, он отлично работает. Если я сделаю то же самое в окне non-incognito, я получу таймаут. Важно то, что я получаю такие же проблемы с таймаутом, если я увеличиваю размер петли до чего-то большого, даже в новой сессии. Так что кажется, что где-то есть какой-то порог, это не совсем правильно.
«Сделка, истекающая из-за неактивности», представляет собой специфическую для Chrome вещь, которая срабатывает, когда никакой активности не видно из соединения , что обычно указывает на зависание процесса. Если у вас есть репродукция, это ошибка - напишите файл на crbug.com –