![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Глюк уникального ключа в FireBird 1.03 [D5, IB6.x]
vv_fran © (2004-05-14 17:31:00)Кому пожаловаться на Глюк уникального ключа в FireBird 1.03?
Ситуация: есть ключ на поля типа Integer,Integer,Char(1),Integer,Integer. Пользователь периодически вводит в форме ошибочные данные, они запоминаются через параметры хранимой процедуры IBX 5.02 IBStoredProc, на ХП своя транзакция, сначала стартуем, затем - коммит, если ексепшен - роллбак. Ругани нет, но в БД запоминается не правильная запись с дубликатом уникального ключа. После этого все отказывается работать. Лечится удалением через SQL DELETE FROM...этих записей. Программа работает на более чем 300 серверах (Win98, XP, Win2000 Server), локальные и сетевые варианты. И это происходит 2 раза в месяц. Уже устал по телефону общаться с бедными Юзерами. А было и такое. В пустой таблице ввели 240 запись - по первому полю ключа. Затем удалили ее и начали вводить с 1. Дошли до 239 - все нормально, а 240 - не сохраняет - пишет "нарушение уникального ключа" - мрак одним словом. Вылечилось Бекап-Ресторе.
Что делать? В IB 6.0 такого не было.
Desdechado (2004-05-15 14:50:00) [1]Описанная чрезвычайка вряд ли поддается намеренному повторению, слишком много воздействующих факторов. У моих интенсивно работающих клиентов, например, на 25 серверах с 1-10 БД на каждом такое случилось, как мне известно, дважды за 2 года (может, и больше, но без меня обошлись при лечении). Вполне допускаю, что было это результатом каких-то жестких действий с сервером (типа резета) или аппаратных проблем, - это достаточно часто наблюдаю.
Думаю, чтобы смоделировать ситуацию на 1.5 понадобится не один сервер и не один человеко-месяц.
kaif (2004-05-15 00:58:00) [2]Есть вещи, которые лечатся только новой версией сервера. Поставь Firebird 1.5 хотя бы на 10 компах и посмотри, что будет.
Petr V. Abramov (2004-05-14 22:01:00) [3]Я так думаю, разработчики ограничатся советом использовать FB 1.5
Desdechado (2004-05-14 20:56:00) [4]я сталкивался с подобным, правда ключ состоял в одном случае из 4 штук INTEGER, в другом из двух INTEGER
было за 2 года всего 2 раза, насколько мне известно
бекап при этом проходит, рестор, естественно нет, т.к. уникальный индекс вдруг начинает противиться...
почитай в конце \Program Files\FireBird\readme.txt, там написано куда жаловаться
jack128 (2004-05-14 19:52:00) [5]Если у тя на эти поля наложен уникальный ключ, и тем не менее в базу сохраняются дубликаты , то это к разработчикам.