Re[2]: RFD, connections, блокировки
От: Avos Беларусь  
Дата: 03.11.05 15:31
Оценка:
Здравствуйте, Merle, Вы писали:

M>Здравствуйте, Avos, Вы писали:


A>>Поясню, что имеется ввиду: в проектируемой мной системе для задач автономного параллелизма будут использоваться пессимистические блокировки, причем на уровне сервера БД (предполагается использовать MSSQL Server 2000), что предусматривает выполнение запроса типа select for update если кто-то хочет забрать данные именно для обновления.

M>Не надо так делать, особенно в SQL 2000... Для таких блокировок надо использовать session wide application lock (парочка процедур sp_GetAppLock/sp_ReleaseApplock), что бы хотя бы транзакцию не удерживать. Но все равно открытый connect придется держать все время работы с заблокированными данными.

Спасибо за ответ!
Буду разбираться подробнее, но уже есть вопрос:
в поиске наткнулся на Ваш пост здесь
Автор: Merle
Дата: 30.05.05
, где утверждается, что при использовании session wide application lock необхоидмо отключить пул коннектов.
А как это сделать?

и еще вопрос, про использование RFD, если Вы можете помочь: получается что экземпляр DbManager необходимо создавать в программе только один раз и использовать только его (используя таким образом единственный коннект к БД).
Но при таком сценарии при закрытии приложения не удается корректно очистить экземпляр DbManager, вываливается exception.

Как в таком случае корректно его использовать?

Заранее спасибо!

Avos
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.