Вниз
Скачать: CL | DM;

Deadlock Update   Найти похожие ветки 

 
ss300   (2004-05-26 09:19) [0]

доброе утро мастера!!
на сервере есть ХП

вот основной код:  

UPDATE Global SET LASTREGNUM = :Ret;
UPDATE Global SET Data = :NowDate;

Когда я с одного клиентского приложения вызываю процедуру
spUP.ExecProc;  работает ноормально.

а когда паралельно 2 клиента вызывает процедуру то на одном клиенте ошибка:
Deadlock update with concurrent update

Как устранить эту ошибку ? ..

спасибо


 
Johnmen ©   (2004-05-26 09:26) [1]

Разобраться с конкурирующими транзакциями. см.ibase.ru


 
Sergey13 ©   (2004-05-26 09:27) [2]

Может так.
UPDATE Global SET LASTREGNUM = :Ret, Data = :NowDate;
И потом. У тебя вся таблица должна апдейтится в процедуре?


 
ss300   (2004-05-26 09:39) [3]

Да, вся таблица апдейтится

там всего лишь одна таблица


 
ss300   (2004-05-26 09:47) [4]

может IBTransaction := true сделать ??


 
Sergey13 ©   (2004-05-26 09:48) [5]

2ss300   (26.05.04 09:39) [3]
Ну тогда таблицу надо перед апдейтом блокировать, ИМХО. Странная задача какая то - несколько человек одновременно апдейтят всю таблицу. Может в консерватории что подправить надо?


 
ss300   (2004-05-26 10:12) [6]

таблица блокируется когда первый юзер апдейтит!! и второй юзер не может апйдетит.. как разблокировать таблицу после того как первый юзер заапдетит ??


 
Sergey13 ©   (2004-05-26 10:42) [7]

комит/ролбек снимают блокировку. Но у тебя, ИМХО, несколько другая ситуевина. Желательно блокировать таблицу перед апдейтом. Типа для ФБ1.5 select * from table for update With Lock. Для ИБ6.0 смотри ссылку в [1].
И еще раз повторю - странная задача у тебя. ИМХО, надо структуру править.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.02 c
14-1086169762
t100
2004-06-02 13:49
2004.06.20
Автоматизация почты


3-1085732139
KADAN
2004-05-28 12:15
2004.06.20
PASSWORD() в MSSQL?


1-1086539629
тот же
2004-06-06 20:33
2004.06.20
Дата и INI файл


1-1086448916
jack128
2004-06-05 19:21
2004.06.20
Линия, преследующая курсор


1-1086324302
Andrushk
2004-06-04 08:45
2004.06.20
Задержка, пауза




   Наверх