Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.12.02;
Скачать: CL | DM;

Вниз

Ежесекундное обнавление данных   Найти похожие ветки 

 
jen_bond   (2002-11-13 21:39) [0]

Подскажите в чем может быть моя ошибка.
У меня запущен таймер в нем происходит обновление данных транзакцией(commit).
Когда запущено одна копия приложение все работает нормально, когда
запускается паралельно еще одно вываливается ошибка
"deadlock update conflictd whith concurent update"
Что мне лучше использовать для оперативного обновления в данных(ежесекундно)
вместо transaction.commit


 
Alexandr ©   (2002-11-14 06:13) [1]

у тебя ошибка в 17 строке


 
KSergey ©   (2002-11-14 07:16) [2]

Ежесекундно транзакции коммитить? А это точно необходимо? Что-то сомнения разбирают. А начинаете вы их когда? Тоже ежесекундно?
Есть подозрение, что вы выбрали крутовастую транзакцию на весь набор данных, которая не дает редактировать запрос (начинать транзакции) другим процессам.
Тут что-то с идеей не то, похоже...


 
Leran2002 ©   (2002-11-14 09:45) [3]

А зачем тебе вообще таймер, все ведь совсем просто:
{---------------------------------------------------
TIBTransaction

property IdleTimer: Integer;
property OnIdleTimer: TNotifyEvent;
type TTransactionAction = (taRollback, // выполнить откат и закрыть связанные наборы данных
taCommit, // подтвердить транзакцию и закрыть связанные наборы данных
taRollbackRetaining, // выполнить откат и не закрывать связанные наборы данных
taCommitRetaining); // подтвердить транзакцию и не закрывать связанные наборы данных
property DefaultAction: TTransactionAction;

при IdleTimer>0 каждый раз через IdleTimer милисек. срабатывает обработчик
OnIdleTimer а также происходит действие заданное в DefaultAction, данное
действие применяется ко всем наборам которые используют данный компонент (TIBTransaction).
---------------------------------------------------}



 
Sergey13 ©   (2002-11-14 11:35) [4]

Странное желание комитить по таймеру. ИМХО таймер и транзакции только начинаются на одну букву - больше ничего похожего. Отсюда и проблемы с множеством сессий. Каждый комит надо соотнести с конкретной транзакцией. Интересно, а как ты откаты делаешь - тоже по таймеру? 8-)



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

Текущий архив: 2002.12.02;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.015 c
14-4570
Yakudza
2002-11-11 16:02
2002.12.02
Как трафик посчитать.


1-4336
skirdov
2002-11-20 17:02
2002.12.02
Как выполнить процедуру, имя которой содержится в переменной?


1-4422
Ag2002
2002-11-23 12:21
2002.12.02
ListView1.Items.Delete(i);


14-4628
Николай Быков
2002-11-12 10:21
2002.12.02
Почему вы так грубы?


1-4279
UnDISCOvery
2002-11-19 16:31
2002.12.02
Общий ресурс из dll для 2х процессов. Проблема !!!