Как правильно задать транзакцию

ЧАстые Вопросы и Ответы

Модераторы: kdv, CyberMax

Ответить
digor
Сообщения: 1
Зарегистрирован: 18 мар 2005, 10:37

Как правильно задать транзакцию

Сообщение digor » 18 мар 2005, 10:49

Здраствуйте товарищи Девелоперы!
Во всей нормальной литературе по интербайз (в частности книга "Мир Интербейз" рекомендованная на этом сайте) написано что самыми оптимальными параметрами транзакции есть Read Commited (read_committed+rec_version+nowait). Поставил я эти параметры, вроде бы работает, но при обращении к Transaction.Comited, наша программка не видит подтвержденные версии записей других транзакций (например тех который осуществляются в EMS Interbase Manager), а при запуске копии этой программки и попытке осуществить Commit вообще вылетает по deadlok. Самое интересное (на мой взгляд) что все прекрасно работает когда в Transaction вообще не указано ни одного параметра, тогда все OK. Наша программка при запуске видит записи подтвержденные в другой, никаких ошибок и вообще все просто супер. Это касается как IBX так и FIB. Подскажите пожалуйста как наиболее правильно осуществлять транзакцию (точнее с какими параметрами) а то я уже запутался.
PLEASE!!!!!!!!

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Сообщение kdv » 18 мар 2005, 14:57

читать www.ibase.ru/devinfo/ibtrans.htm. еще раз внимательно читать книгу. делать двойной клик на IBTransaction.
а при запуске копии этой программки и попытке осуществить Commit вообще вылетает по deadlok.
это если оба приложения пытаются одну и ту же запись редактировать. это нормально. но не по commit. то есть, либо ты говоришь неправду, либо...

Код: Выделить всё

Самое интересное (на мой взгляд) что все прекрасно работает когда в Transaction вообще не указано ни одного параметра, тогда все OK.
это если пользоваться FIBPlus. Если речь про ibx, то это опять же неправда.

December
Сообщения: 26
Зарегистрирован: 29 окт 2004, 20:13

Сообщение December » 26 мар 2005, 00:01

to KDV

Когда начал работать с Delhi 6 & InterBase 6.5, то столкнулся с той же проблемой, что и у digor. Но так как времени разбираться с проблемой не было, то оставил все как есть, и работаю без проблем третий сезон.

Ответить