1) Настройка Windows 7 Ultimate, базы данных PostgreSQL, веб-сервера Apache. Для тестирования база данных, веб-сервер и приложение работают на одном компьютере.
Mozilla Firefox ver 62.0.X
Google Chrome ver 69.xx
2) Я запускаю следующий код для заполнения хранилища данных IndexedDB.Функция вызывается из синхронного вызова XMLHttpRequest в PHP.
Каждая страница извлекает данные из PostgreSQL из таблицы, уникальной для нее, по мере необходимости.Для тестирования извлекается от 10 до 150 записей из PostgreSQL.Когда веб-эпоха закрыта, база данных IndexedDB удаляется, поэтому каждая загрузка страницы начинается с нуля.
function jIDBUpload(vdbdata,vlib)
{
vIDBrequest = window.indexedDB.open('MyIDB');
vIDBrequest.onupgradeneeded = function() {
vIDBdbase = vIDBrequest.result;
vIDBobjstore = vIDBdbase.createObjectStore(vlib, { keyPath: "id"});
vIDBobjstore.createIndex('vInx','id',{unique: true});
vlength =vdbdata.length;
for(l=0;l<=vlength-1;l++)
{
vIDBobjstore.put(vdbdata[l]);
}
};
}
Я также попытался использовать вторую и третью строку кода как (но не повезло).
vIDBrequest.onupgradeneeded = function(e) {
vIDBdbase = e.target.result;
3) Проблема
В Chrome,приведенный выше код выполняется успешно 100% времени.Никаких проблем.
В Firefox это случай попадания и промаха, иногда он работает, иногда нет.Такое поведение случайное.Перезагрузка страницы также не гарантирует успеха.
4) Есть идеи, предложения и / или решения?