|
v7: Медленное выполнение запросов через 1sqlite.dll на WinServer 2008. |
☑ |
0
ikea
11.08.14
✎
13:52
|
База 1с 7.7 dbf. Раньше крутилась на winserver 2003. Сервак умер. Поставили новый сервак с Winserver 2008 r2. Обработка с поиском по подстроке с использованием SQLiteBase стала очень медленно работать. Раньше отрабатывала за 0,5-1 секунды. Теперь 20-30 секунд. Где собака порылась?
Код естественно не менялся.
|
|
1
Ёпрст
гуру
11.08.14
✎
13:54
|
всё на одном сервере или по сетке ?
|
|
2
ikea
11.08.14
✎
13:55
|
Сервак терминальный.
|
|
3
ikea
11.08.14
✎
13:59
|
Запрос.ВыполнятьВТранзакции=1; Тоже не прокатывает.
|
|
4
ikea
11.08.14
✎
14:04
|
Пример из мануала тоже долго работает около 10 секунд
// Создаем объект - базу данных
Попытка
база = СоздатьОбъект("SQLiteBase");
Исключение
ЗагрузитьВнешнююКомпоненту("1sqlite.dll");
база = СоздатьОбъект("SQLiteBase");
КонецПопытки;
// Откроем пустую базу данных в памяти
база.Открыть(":memory:");
// Создадим выполнитель запросов.
запрос = база.НовыйЗапрос();
// Так как база в памяти, то журналирование нам ни к чему, только зря будет отнимать время
запрос.ВыполнитьЗапрос("PRAGMA journal_mode = OFF");
// Подключим таблицу справочника товаров к SQLite
запрос.ВыполнитьЗапрос("create virtual table Товары using dbeng(Справочник.Номенклатура)");
// А теперь посчитаем, сколько у нас в справочнике элементов, без учета групп
Сообщить("Кол=" + запрос.ВыполнитьЗапрос("
|select count(*)
|from Товары
|where Товары.isfolder = 2
|").ПолучитьЗначение(1, 1));
|
|
5
Ёпрст
гуру
11.08.14
✎
14:09
|
какой версии 1sqlite ?
в терминале, лучше так:
//запрос.ВыполнитьЗапрос("PRAGMA journal_mode = OFF");
запрос.ВыполнитьЗапрос("PRAGMA journal_mode = WAL");
+ есть автоподключение таблиц, поентому запрос надо писать так:
//запрос.ВыполнитьЗапрос("create virtual table Товары using dbeng(Справочник.Номенклатура)");
Сообщить("Кол=" + запрос.ВыполнитьЗапрос("
|select count(*)
|from [Справочник.Номенклатура] Товары
|where Товары.isfolder = 2
|").ПолучитьЗначение(1, 1));
|
|
6
ikea
11.08.14
✎
14:10
|
И еще очень странный момент на Windows 7 Ultimate(x64) все работает как надо. Еще больше поставило в тупик. Может какие настройки на сервере сделать нужно?
|
|
7
ikea
11.08.14
✎
14:10
|
Версия 1.0.2.6
|
|
8
Ёпрст
гуру
11.08.14
✎
14:12
|
1.0.2.6 в топку, в нем есть ошибки
ставь 1.0.2.4
|
|
9
ikea
11.08.14
✎
15:48
|
Решение как оказалось гораздо проще: админ не поменял BkEnd.dll)))
|
|