Зависла транзакция и dedlock

IBX, FIBPlus, UIB, ADO, .Net и прочее-прочее-прочее, в общем все, что относится к созданию приложений, работающих с InterBase, Firebird и Yaffil - клиент-серверных, трехзвенных, консольных и т.п.

Модератор: kdv

Ответить
Вячеслав
Сообщения: 3
Зарегистрирован: 22 фев 2005, 09:38

Зависла транзакция и dedlock

Сообщение Вячеслав » 22 фев 2005, 09:48

Ситуация такая.
Транзакция ReadCommited.
Изменяется запись в таблице, но commit еще небыло. При попытке изменить запись другими пользователями возникает dedlock, естественно. Далее: отваливается соединение. Получаем зависшую транзакцию. С измененной записью ничего нельзя сделать.
Как же обходить такую ситуацию.

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Сообщение kdv » 22 фев 2005, 09:53

ничего не получаем. это означает что соединение на сервере на самом деле НЕ отвалилось. подожди connection_timeout секунд, и коннект отрубится на сервере.

ты, вообще, про какую версию сервера-то? Не про IB 6, часом?

Вячеслав
Сообщения: 3
Зарегистрирован: 22 фев 2005, 09:38

Сообщение Вячеслав » 22 фев 2005, 10:07

FireBird 1.5.1 Classic.

Соединение не восстановится. Я выдернул шнурок. В реальной жизни могут быть подобные катаклизмы, когда есть физической обрыв линии.

sag
Сообщения: 116
Зарегистрирован: 02 ноя 2004, 11:42

Сообщение sag » 22 фев 2005, 10:22

> Соединение не восстановится.

Имеется в виду не то что оно восстановится, а то что сервер "прикроет" это соединение через некоторое время.

> Я выдернул шнурок. В реальной жизни могут быть
> подобные катаклизмы, когда есть физической обрыв линии.

бывает, в экстренном случае на классике может помочь утилита TCPView, если известно с какого адреса сети была произведена блокировка записи - принудительно делаешь этому процессу Close Connection.

Вячеслав
Сообщения: 3
Зарегистрирован: 22 фев 2005, 09:38

Сообщение Вячеслав » 22 фев 2005, 10:41

connection_timeout где устанавливать? В настройках сервера или в
pFIBDatabase.DBParams или еще где?

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Сообщение kdv » 22 фев 2005, 10:48

а ты дай поиск этого слова на ibase.ru.

Ответить