Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.09.19;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.032 c
3-1092903581
Denizzz
2004-08-19 12:19
2004.09.19
Математические операции


3-1093323221
kva
2004-08-24 08:53
2004.09.19
InstallShield и BDE


4-1091684841
Santana
2004-08-05 09:47
2004.09.19
FindWindow


11-1080588102
GuAV
2004-03-29 23:21
2004.09.19
KOL + MCK + Frame = ?


4-1091707930
GuAV
2004-08-05 16:12
2004.09.19
Вопрос по OpenThemeData





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский