Переключение на Главную Страницу Страницы: 1 ОтправитьПечать
Обычная тема OLEDBData - таймаут переинициализации (число прочтений - 1202 )
Dmitry The Wing
God Member
*****
Отсутствует


1C++ rocks!

Сообщений: 839
Местоположение: Где-то в Сибири
Зарегистрирован: 18. Августа 2009
Пол: Мужской
OLEDBData - таймаут переинициализации
25. Января 2011 :: 05:37
Печать  
Обнаружил такую проблему при работе с БД FireBird через Firebird ODBC/JDBC Driver: Если пропал доступ до сервера, была попытка выполнить запрос, сервер вернулся - то переинициализация соединения невозможна еще довольно продолжительное время (точно не знаю, но не менее 5 минут).
Много экспериментировал, но причину пока не понял.
Специально гасил сервер и сразу поднимал. Если перезапустить 1С - все сразу работает, а если не перезапускать - 1С еще долго получает специфические ошибки доступа, не смотря на то, что сам объект OLEDBData пересоздается заново, как и OLEDBCommand.
Вопроса возникает два:
1. Где причина? в OLEDBData или в драйвере?
2. Как можно правильно переинициализировать объект?

P.S.: Читал про метод УстановитьТаймаутВыполнения / SetExecTimeOut, однако запросы бывают большими - их время ограничивать нельзя.
  
Наверх
 
IP записан
 
spock
1c++ developer
1c++ moderator
Отсутствует



Сообщений: 822
Местоположение: Новосибирск
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: OLEDBData - таймаут переинициализации
Ответ #1 - 12. Февраля 2011 :: 16:02
Печать  
Если у меня были какие-то сомнения в адекватности поведения oledb, то я собирал маленький тестик, который через adodb с тем же провайдером повторял тоже поведение.
Если adodb вело себя так же, я успокаивался и шел спать Улыбка
  
Наверх
ICQ  
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать