powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / После перезагрузки DB2 выдает DuplicateKeyException
7 сообщений из 7, страница 1 из 1
После перезагрузки DB2 выдает DuplicateKeyException
    #36847019
indicatrix
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго времени суток!

На клиенте на AIX сервере после ребута DB2 постоянно выдается сообщение

[9/15/10 10:46:36:869 BDT] 0000011d SystemErr R com.ibm.websphere.ce.cm.DuplicateKeyException: 3;SCM.PT

Версия Db2:
DB21085I Instance "db2inst1" uses "64" bits and DB2 code release "SQL09010"
with level identifier "02010107".
Informational tokens are "DB2 v9.1.0.0", "s060629", "AIX64", and Fix Pack "0".
Product is installed at "/opt/IBM/db2/V9.1".

Лечится после запуска скрипта вида
Код: plaintext
1.
ALTER TABLE SCM.PT ALTER COLUMN ID RESTART WITH  400502 ;

Как избавиться от этой напасти?
Почему db2 после перезагрузки забывает с какого ID начинается инсерт?
Данные были импортированы изначально с помощью процедуры db2move, может это прольет свет на проблему.

Заранее благодарю.
Спасибо!
...
Рейтинг: 0 / 0
После перезагрузки DB2 выдает DuplicateKeyException
    #36847112
Mark Barinstein
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
indicatrix,

Здравствуйте.

db2move с load или import используется?
identity - always или by default?
...
Рейтинг: 0 / 0
После перезагрузки DB2 выдает DuplicateKeyException
    #36847179
indicatrix
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, Mark Barinstein!

Я Вам уже очень многим обязан, большое спасибо за Ваши консультации!

Импорт базы произошел уже год назад.
Она работает, по после перезапуска ДБ2 выходит данная проблема.

Как делался импорт:
Код: plaintext
1.
db2 -tvf tables.sql > log
где таблица декларировалась следующим образом:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
CREATE TABLE "SCM"."PT"  (
		  "ID" BIGINT NOT NULL GENERATED BY DEFAULT AS IDENTITY (  
		    START WITH + 1   
		    INCREMENT BY + 1   
		    MINVALUE + 1   
		    MAXVALUE + 9223372036854775807   
		    NO CYCLE  
		    CACHE  20   
		    NO ORDER ) , 
                   ...)   
		 IN "USERSPACE1" ; 

далее вызывался db2move:

Код: plaintext
1.
db2move D_LNG import -io INSERT > log

Инсерт опцию ставили, т.к. не работал импорт ХМЛ полей, по-моему.

Еще раз благодарю!
...
Рейтинг: 0 / 0
После перезагрузки DB2 выдает DuplicateKeyException
    #36847224
Mark Barinstein
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
indicatrix,

Похоже на баг.
Похожая проблема со сбросом значения identity ( IZ12171 ) была исправлена, но это не ваш случай, похоже.
Советую поставить последний фикс и проверить.
Если будет снова проявляться - открывайте PMR.
...
Рейтинг: 0 / 0
После перезагрузки DB2 выдает DuplicateKeyException
    #36847316
indicatrix
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Клиент отказывается делать апдейт базы.
Фиксы не ставит.
Что делать непонятно.

После нескольких инсертов в таблицы, когда индекс двигается.
Опять начинает работать.
...
Рейтинг: 0 / 0
После перезагрузки DB2 выдает DuplicateKeyException
    #36848234
mustaccio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
indicatrix,

А ваше приложение случаем не кэширует значения ID для вставки? Или оно полагается на DEFAULT?

Перезагружаете ли вы приложение одновременно с ДБ2?
...
Рейтинг: 0 / 0
После перезагрузки DB2 выдает DuplicateKeyException
    #36848796
indicatrix
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
mustaccioindicatrix,

А ваше приложение случаем не кэширует значения ID для вставки? Или оно полагается на DEFAULT?

Перезагружаете ли вы приложение одновременно с ДБ2?

Т.к. мы делали миграцию с Винды на Линукс
(штатный бэкап ресторе в ДБ2 не кроссплатформенный),
пришлость отказаться от "GENERATED ALWAYS AS IDENTITY".
Аппликуха не кэширует айди с нашей стороны это 100%.
Наше приложение работает на IBM WebSphere Portal 6.0 через
штатный коннекшн пул, возможно он там что-то кэширует,
хотя врядли.
Мы нигде не задаем значения ID поля при инсерте.

Сегодня нашли последовательность, после которой
это дело зашевелилось:
рестарт БД,
рестарт всего портала.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / После перезагрузки DB2 выдает DuplicateKeyException
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]