Вниз
Скачать: CL | DM;

Timeout BDE   Найти похожие ветки 

← →
neXt ©   (2003-03-12 16:57) [0]

бд: MSSQL; клиент на BDE
Выполняется запрос, TQuery, в нём вызывается дерево процедур. В них открываются и закрываются транзакции.
В случае если запрос обрывается по таймауту (BDE, а не серверный) запрос обрывается на полуслове и генерится соответствующий Exception. Коннектион не обрывается и в нём остаются незакрытые транзакции. Пользователь повторяет попытку (10 раз) и сервер падает из-за блокировок в повисших транзакциях.
Кто-нибудь сталкивался с такой проблемой?
ЗЫ: Рецепт - увеличь таймаут я знаю.


← →
Delirium ©   (2003-03-12 17:04) [1]

Стандартные рекомендации:
1) Запусти 10 раз из Query Analyser, если ошибок нет - поблема в проге (или в BDE)
2) Смотри что предаётся MSSQL в Profiler-е, всё-ли правильно
3) Смотри заблокированные объекты в Enterprise Manager-е и сопоставь их с о своими транзакциями


← →
neXt ©   (2003-03-12 17:15) [2]

Повторяю:
Я знаю в чём ошибка. Это ошибка генерируемая BDE ( BDE code за номером 13059) - вылет по таймауту.
Я знаю какой запрос шлётся на сервер. Там процедуры работают! в том числе используют транзакции.
Проблема в том что при вылете BDE не закрывает транзакции.


← →
neXt ©   (2003-03-12 17:16) [3]

ЗЫ: разумеется Query Analyser не причём - вопрос по работе с BDE



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.009 c
14-100413
vendoor
2003-03-13 20:34
2003.03.31
!!!!!!!!!!!!!!!!!!!!! Стиль ХР для ДЕЛЬФИ !!!!!!!!!!!!!!!!!!!!!!!


7-100478
Yrtimd
2003-02-02 18:26
2003.03.31
Своя панель задач - это возможно?


4-100519
Skolt
2003-01-31 00:15
2003.03.31
Запуск программы после Internet Explorer


1-100291
ZeroDivide
2003-03-19 09:08
2003.03.31
.Net ругается на Unsafe (type, code...)


1-100268
EagleOwl
2003-03-16 22:09
2003.03.31
Как запустить какую-нибудь программу из своей?




   Наверх