Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
31.10.2013, 15:36
|
|||
---|---|---|---|
|
|||
Помогите программно определить, заблокирована ли запись в таблице (FireBird 2.5, .Net) |
|||
#18+
Есть одна база FireBird 2.5 и две программы с ней взаимодействующие. При работе первая програма делает lock на все данные с которыми в текущий момент работает пользователь. Программа сторонняя, написана давно, исходников нет. Вторая программа(наша) работает с выборками из этой же базы. Задача: если при работе во второй программе в выборку попали данные, которые в текущий момент редактируются в первой программе, то необходимо превать работу и вывести сообщение(именно прервать, а не считать назакоммиченые данные). Не нашел чего-то полезного на эту тему в интернете. (Буду рад ссылке) Пытался проверять lock на запись в таблице фэйковым апдейтом(update table set value = value where id = @id) с таймаутом команды выставленным на пару секунд. Не помогло, транзакция "залипает" пока запись в таблице залочена. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
31.10.2013, 16:41
|
|||
---|---|---|---|
|
|||
Помогите программно определить, заблокирована ли запись в таблице (FireBird 2.5, .Net) |
|||
#18+
Может кому будет полезно. Проблема решилась следующим образом. Для транзакции нужно было выствавить опцию NO_wait. Похоже что для всех "уровней изоляции" она была определена как Wait. В моем случае выставлялось так : FbTransaction tran = cnn.BeginTransaction(FbTransactionOptions.NoWait); (на самом деле не сразу приходи в голову что в конструктор можно передать не только IsolationLevel) Попытка выполнить команду апдейта на залоченую запись в таблице сразу возвращает ошибку update conflict, таймаут ставить не нужно. Впринципе это то, о чем я спрашивал. Тему можно закрывать. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=20&mobile=1&tid=1403764]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
69ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
32ms |
get tp. blocked users: |
2ms |
others: | 327ms |
total: | 471ms |
0 / 0 |