![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Oracle. Компоненты DOA. Где TimeOut? [D5]
Hiqwer © (2002-11-20 19:43:00)Есть ли возможность в указанных компонентах прервать выполнение длительного запроса по истечению некоторого TimeOut? Все мои попытки приводят к сбою и снятию приложения.
Hiqwer (2002-11-22 17:59:00) [1]Убивать сессии - это немного не то, хотя тоже вариант.
Я вообще продпологал, что таймауты должен отслеживать не Oracle сервер, а то через чего подключались.
Конкретно: у ODBC и ADO connection присутствуют параметры - таймаут на время соединения, и на время выполнения запроса, что собственно можно посмотреть в обычном TADOConnection.
DOA построены на OCI, и почему-то аналогичных параметров не имеют. Хотя реально (на практике) тайаут на время попытки подключения имеется. А выполнение запроса можно прервать в любой момет (TOracleSession.BreakExecute), если запрос делается в отдельном потоке (thread). Это, кстати, используется в Oracle Cancelable Utils Add-on (твоя ссылка, работает вроде нормально). Мне приходиться далать запросы в отдельных потоках и прерывать по таймеру (не очень удобно).
От этого и появилось жучее желание обозначить таймауты как-то попроще. Они просто обязаны быть где-то либо в клиенской части Oracle, либо в Net8.
Sergey13 (2002-11-22 09:21:00) [2]Насколько я знаю такого в Оракле нет, чтобы установить таймаут на запросы. Откуда оракл знает - может ты специально такой здоровый запрос заколбасил. Тестировать надо на тестовом сервере. Можно поставить тайм аут на активность сессии через профили типа нет активности 15 минут - нафиг эту сессию. Но это, ИМХО, не то что ты хочешь.
hiqwer (2002-11-21 20:04:00) [3]Спасибо Sergey13 за ссылку. Попробую разобраться.
Есть мнение, что TimeOut-ы можно установить непосредственно в OraClient или Net8.
Нет ли информации в таком разрезе?
Sergey13 (2002-11-21 09:35:00) [4]http://www.farpost.com/personal/dmitryb/RUS/default.htm
Там есть Oracle Cancelable Utils Add-on для DOA (Direct Oracle Access)которая Содержит набор функций позволяющих открывать запросы с возможностью их прерывания во время выполнения.
Как работает не знаю, не юзал.