Re[4]: [FireBird] deadlock; update conflicts with concurrent
От: sushko Россия  
Дата: 17.02.16 09:37
Оценка:
Здравствуйте, LuciferNovoros, Вы писали:

LN>FB — версионник. И клиент В всегда получит некую версию записи, с которой будет работать. Другой вопрос, что запись может измениться, породив новую версию. И тогда клиент В получит отлуп. Если тебяч такое поведение не устраивает, то выставляй некий признак, что запись заблокирована другим пользователем. И давай отлуп клиенту сразу.


Вообще, я не понимаю, о чем мы спорим. А заблокировал запись, В пытается ее изменить в WAIT-транзакции, и эта транзакция В подвисает до тех пор, пока не закончится транзакция А, и это правильно. Но почему-то по завершении транзакции А транзакция В не начинает работать, как можно было бы предположить по смыслу слова WAIT, а завершается с ошибкой. В чем тогда смысл параметра WAIT у транзакции В?
Бесплатный генератор отчетов для программ на C/C++
http://www.oxetta.com
Отредактировано 17.02.2016 9:38 sushko . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.