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

IBX deadlock   Найти похожие ветки 

 
REA ©   (2003-01-09 11:19) [0]

Пробую сделать работу с таблицей на IBX в многопользовательском режиме. Возникают Deadlock, т.к. вся работа с таблицей в пределах одной транзакции (назависимо от типа транзакции, хотя поведение меняется если Snapshot или Comitted например). При Transaction.Commmit таблица закрывается и приходится переоткрывать, но зато работает. Сдается мне что я что то не так делаю. Делать запросами лень, поскольку IBX запрос readonly и придется UpdateSQL писать и неизвестно еще что.


 
Alexandr ©   (2003-01-09 11:37) [1]

если лень, то иди в дворники работать.
Увы тут форум бессилен.


 
REA ©   (2003-01-09 11:40) [2]

А зачем тогда table придумали?
Не люблю я SQL - язык в языке. Чуть что поменял - запрос переписывать.
Насчет дворников кстати это ты зря - лень главное качество программиста.


 
Delirium^.Tremens ©   (2003-01-09 11:45) [3]


> А зачем тогда table придумали?
> Не люблю я SQL - язык в языке. Чуть что поменял - запрос
> переписывать.
> Насчет дворников кстати это ты зря - лень главное качество
> программиста.

Что TIBTable, что TIBQuery, что TIBDataSet, все равно придется делать TIBTransaction.Commit (CommitRetaining). Иначе - Deadlock


 
Alexandr ©   (2003-01-09 11:47) [4]

table - наследие далекого прошлого и использовать его с interbase это всеравно что к поршу лошадь спереди приставить и так и ездить.

А тому, кто кебе про лень такое сказал, плюнь в харю.


 
REA ©   (2003-01-09 11:47) [5]

Спасибо. И при Commit оно закрывается обязательно?
А что есть CommitRetaining поясните малограмотному популярно, плз?


 
Alexandr ©   (2003-01-09 11:48) [6]

а малограмотные обычно читают документацию до полного прояснения


 
Delirium^.Tremens ©   (2003-01-09 11:49) [7]

CommitRetaining + F1
http://www.ibase.ru


 
REA ©   (2003-01-09 11:50) [8]

спасибо и на том


 
passm ©   (2003-01-09 11:55) [9]

Использовать тразакцию на уровне приложения, IMHO, нужно как можно меньше и о-о-очень быстро и осторожно.
А дабы избежать Deadlock"ов лучше об этом думать при проектировании БД (стараться избегать пересекающихся транзакций).


 
REA ©   (2003-01-09 12:38) [10]

CommitRetaining работает, но измененная запись все равно блокируется, так что все же надежнее Commit и переоткрыть.

Alexander - будьте вежливы и все у вас получится.


 
Alexandr ©   (2003-01-09 12:44) [11]

у меня и так все получется, в отличие от...



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

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



Память: 0.47 MB
Время: 0.193 c
4-87228
awenger
2002-12-14 06:16
2003.01.27
Как разорвать соединение с интернетом?


3-86675
dkok
2003-01-06 15:17
2003.01.27
Есть ли окраничения на процедуры Interbase?


6-87009
DrOne
2002-11-26 23:50
2003.01.27
О взломе...


1-86894
maxim2
2003-01-16 11:55
2003.01.27
Как можно вставить рисунок в чужое окно, зная дискриптор окна


1-86779
skirdov
2003-01-18 01:11
2003.01.27
DBLookupComboBox




   Наверх