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

Вниз

Конфликты транзакций   Найти похожие ветки 

 
Desperado ©   (2004-08-23 15:36) [0]

Я разрабатываю распределенную бд в мидасе.
К одной таблице имеют доступ несколько компонентов query с разными транзакциями. Возникает ошибка
Dynamic SQL error. error code = -502. Declared cursor already
exists. Я так понял, что возник конфликт транзакций.
Какие параметры надо поставить у транзакций, чтобы они не конфликтовали? Конфликта как такового быть не должно.


 
s999   (2004-08-23 15:42) [1]

Сервер IB? Компоненты доступа IBX?

Если так, то это не конфликт, а баг в старой версии IBX. Лечение:
обновить версию IBX, если это невозможно, то workaround - добавить где-нибудь при инициализации Randomize;


 
Digitman ©   (2004-08-23 16:26) [2]


> Declared cursor already
> exists. Я так понял, что возник конфликт транзакций


любопытное умозаключение ... буржуйская фраза переводится как "объявленный курсор набора данных уже существует", но в ней нет ни слова про транзакции ...


 
Desperado ©   (2004-08-23 16:54) [3]

To s999
  Я использую Delphi5, компоненты с вкладки Interbase.
  СУБД - Interbase 6.5
  " если это невозможно, то workaround - добавить где-нибудь  
    при инициализации Randomize "  - не понял.

To Digitman
  Большое "спасибо" за перевод. Английский я тоже знаю, так что
  Америку ты не открыл. Как понял, что из-за транзакций - перед вызовом оператора, в котором была ошибка, вызвал commit всех открытых транзакций.
  p.s. Все набоы данных разные с разными транзакциями


 
s999   (2004-08-23 17:05) [4]


> Я использую Delphi5, компоненты с вкладки Interbase.
>   СУБД - Interbase 6.5


Ну вот, оно самое.

> добавить где-нибудь  
>     при инициализации Randomize "  - не понял.


Просто добавь где-нибудь строчку, что непонятного то?
Но лучше обнови IBX(это - "компоненты с вкладки Interbase"), для D5 по-моему последняя версия это 5.04.


 
Digitman ©   (2004-08-23 17:15) [5]


> вызвал commit всех открытых транзакций


при коммите НД закрываются, однако ..


 
Desperado ©   (2004-08-23 17:24) [6]

To s999
 непонятно было что простая строчка randomize
 решит проблемы. Но как ни удивительно - решила.

То Digiman
 Расскажи как ты понимаешь эту ошибку и как предполагаешь с ней
 бороться? Если это, действительно, из-за курсоров,
 как ты говоришь.


 
Digitman ©   (2004-08-24 08:17) [7]


> Desperado ©   (23.08.04 17:24) [6]


те станд.компоненты прямого доступа, которые ты используешь, имеют исх.тексты, ничто не мешает оттрассировать проблемный вызов и понять, кто, где и какой курсор пытается редекларировать


 
s999   (2004-08-24 10:55) [8]


>  непонятно было что простая строчка randomize
>  решит проблемы. Но как ни удивительно - решила.


Да ничего удивительного, просто иллюстрация того, что генератор случайных чисел есть генератор ПСЕВДОслучайных чисел. И использовать его для получения уникального идентификатора надо с осторожностью.

Повторю, для нормальной работы, скачай последнюю версию IBX:
http://codecentral.borland.com/codecentral/ccweb.exe/author?authorid=102


 
Desperado ©   (2004-08-25 08:22) [9]

To digitman & s999
Большое вам спасибо.



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

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

Наверх




Память: 0.49 MB
Время: 0.049 c
3-1092755019
Koala
2004-08-17 19:03
2004.09.19
Функции в базе Firebird


14-1093842147
Vlad Oshin
2004-08-30 09:02
2004.09.19
Не корректная печать отчетов FastReport


14-1093858995
Stany
2004-08-30 13:43
2004.09.19
Учет трафика


1-1094191981
normandia
2004-09-03 10:13
2004.09.19
параллельное перемещение в двух контролах на форме


3-1093124707
Vir
2004-08-22 01:45
2004.09.19
InsertRecord