Главная страница
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.061 c
6-1089815439
Amid
2004-07-14 18:30
2004.09.19
отправки файлов при помощи Indy


9-1085321983
_Jenaxx_
2004-05-23 18:19
2004.09.19
Помогите устранить ошибку(столкновение).


14-1093882368
undert
2004-08-30 20:12
2004.09.19
Подскажите пожалуйста


14-1093077816
ASilver
2004-08-21 12:43
2004.09.19
Удалённое администрирование.


14-1093701485
Князь Мышкин
2004-08-28 17:58
2004.09.19
Как вы считаете, были ли американцы?