Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / IBM DB2, WebSphere, IMS, U2, etc Новый топик    Ответить
 DIA8036C. Что это?  [new]
Semen Popov
Member

Откуда: Сыктывкар
Сообщений: 793
Здравствуйте всем!

DB2 WSE 8.1.18. Периодически в db2diag.log выскакивает ообщение:

2012-04-18-15.58.28.788000+240 I32386777F487      LEVEL: Error
PID : 2248 TID : 3932 PROC : db2syscs.exe
INSTANCE: DB2 NODE : 000 DB : WF
APPHDL : 0-392 APPID: GA07006A.EFD7.120418115906
FUNCTION: DB2 UDB, data protection, sqlpxTEntrySwitchIn, probe:300
RETCODE : ZRC=0x80100024=-2146435036=SQLP_NOTA "Transaction was not found"
DIA8036C XA error with request type of "". Transaction was not found.

Точно не утверждаю, но возможно с этим связаны и проблемы в приложении. Специалисты в WEB-приложении выполняют операцию, связанную с добавлением записи в базу и утверждают, что изредка происходит зависание приложения, и изменения не сохраняются. Сегодня примерно в это время (см. лог) произошло очередное зависание.

У меня вопрос. Это:
1. неправильная реализация приложения
2. неправильная настройка WAS
3. неправильная конфигурация БД DB2
4. проблемы самой СУБД DB2?

Где-то в форуме наткнулся на то, что это проблема СУБД DB2, но там говорится о 9.7. А у нас 8.2.

Где подкрутить? Объясните русским языком, в чем может быть проблема.

С уважением, Семен Попов
18 апр 12, 18:03    [12435029]     Ответить | Цитировать Сообщить модератору
 Re: DIA8036C. Что это?  [new]
Semen Popov
Member

Откуда: Сыктывкар
Сообщений: 793
Вот, что нашел ссылка

Я правильно понял, что ошибка связана с выполнением операции commit до закрытия курсора? То есть это приложение делает что-то неправильно?
19 апр 12, 10:29    [12437522]     Ответить | Цитировать Сообщить модератору
 Re: DIA8036C. Что это?  [new]
Mark Barinstein
Member

Откуда: Москва
Сообщений: 4947
Semen Popov,

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

IZ19947: SQLPXTENTRYSWITCHIN REPORTS SQLP_NOTA IN DB2DIAG.LOG
19 апр 12, 11:00    [12437748]     Ответить | Цитировать Сообщить модератору
 Re: DIA8036C. Что это?  [new]
Semen Popov
Member

Откуда: Сыктывкар
Сообщений: 793
Mark Barinstein, спасибо. Так что же получается, клиент (приложение) отправляет неправильный запрос на сервер? А как отследить, какой запрос был отправлен?
19 апр 12, 15:33    [12440225]     Ответить | Цитировать Сообщить модератору
 Re: DIA8036C. Что это?  [new]
Mark Barinstein
Member

Откуда: Москва
Сообщений: 4947
Semen Popov,

Ну, как там написано - если по какой-либо причине транзакция откатывается, а в это время приложением посылается commit, то такая ошибка и возникает.
19 апр 12, 16:29    [12440781]     Ответить | Цитировать Сообщить модератору
 Re: DIA8036C. Что это?  [new]
Semen Popov
Member

Откуда: Сыктывкар
Сообщений: 793
Mark Barinstein
Ну, как там написано - если по какой-либо причине транзакция откатывается, а в это время приложением посылается commit, то такая ошибка и возникает.

Вот. Я бы хотел узнать причину отката транзакции. Я по логу db2diag.log смотрю и не вижу, что предвещало откат. Блокировки или тупиковые ситуации? Но о них ничего в логе не сообщалось. Как отследить? Можно ли что-то подкрутить в конфигурации БД, чтобы избежать таких случаев в дальнейшем?
20 апр 12, 08:38    [12443385]     Ответить | Цитировать Сообщить модератору
 Re: DIA8036C. Что это?  [new]
Mark Barinstein
Member

Откуда: Москва
Сообщений: 4947
Semen Popov
Как отследить? Можно ли что-то подкрутить в конфигурации БД, чтобы избежать таких случаев в дальнейшем?
Прежде чем что-то подкручивать, надо разобраться в чём дело.
Разберитесь, что конкретно делает приложение в момент зависания, т.е. сделайте протоколирование действий приложения.
Со стороны сервера можете создать event monitor for statements для 1-го или нескольких приложений.
Можете создать event monitor for deadlocks с историей.
20 апр 12, 09:40    [12443547]     Ответить | Цитировать Сообщить модератору
 Re: DIA8036C. Что это?  [new]
Semen Popov
Member

Откуда: Сыктывкар
Сообщений: 793
Mark Barinstein
Прежде чем что-то подкручивать, надо разобраться в чём дело.
...

Спасибо, Mark Barinstein. Обязательно воспользуюсь Вашим советом. А пока я просто увеличил DIAGLEVEL в dbm cfg с 3 до 4 и в db2diag.log стали появляться сообщения:

2012-04-25-07.51.48.280000+240 I33543773F344      LEVEL: Info
PID : 2872 TID : 4728
FUNCTION: DB2 Common, Cryptography, cryptContextRealInit, probe:100
DATA #1 : String, 20 bytes
ICC VERSION: 1.4.5.0
DATA #2 : String, 41 bytes
ICC INSTALL PATH: C:\IBM\SQLLIB\bin\icc64
DATA #3 : String, 18 bytes
ICC FIPS MODE: YES

2012-04-25-07.51.48.295000+240 I33544119F305 LEVEL: Info
PID : 2872 TID : 4728
FUNCTION: DB2 Common, Security, Users and Groups, secLoadClientAuthPlugin, probe:10
DATA #1 : String, 84 bytes
Loaded plugin library C:\IBM\SQLLIB\security\plugin\IBM\client\IBMOSauthclient64.dll

2012-04-25-07.51.48.295000+240 I33544426F248 LEVEL: Info
PID : 2872 TID : 4728
FUNCTION: DB2 Common, Security, Users and Groups, secLogMessage, probe:20
DATA #1 : String, 37 bytes
db2secClientAuthPluginInit successful

2012-04-25-07.51.49.076000+240 I33544676F404 LEVEL: Info
PID : 2872 TID : 4728 PROC : java.exe
INSTANCE: DB2 NODE : 000
APPID : *LOCAL.DB2.120425035148
FUNCTION: DB2 UDB, DRDA Communication Manager, sqljcReceive, probe:30
MESSAGE : CCI Error:
DATA #1 : Hexdump, 8 bytes
0x000000002414E8C0 : 4700 0000 0000 0000 G.......

2012-04-25-07.51.49.077000+240 I33545082F378 LEVEL: Info
PID : 2872 TID : 4728 PROC : java.exe
INSTANCE: DB2 NODE : 000
APPID : *LOCAL.DB2.120425035148
FUNCTION: DB2 UDB, DRDA Communication Manager, sqljcReceive, probe:30
RETCODE : ZRC=0x8136001C=-2127167460=SQLZ_RC_NO_CONNECTION, SQLT_SQLJC
"No connection"

Что могут означать эти ошибки? Я понял, что есть какие-то проблемы со связью.
25 апр 12, 09:41    [12467083]     Ответить | Цитировать Сообщить модератору
 Re: DIA8036C. Что это?  [new]
Mark Barinstein
Member

Откуда: Москва
Сообщений: 4947
Semen Popov
Что могут означать эти ошибки? Я понял, что есть какие-то проблемы со связью.
Это информационное сообщение (LEVEL: Info), а не ошибка.
Видимо, ошибочно генерируется при закрытии соединения приложения.
В 9.1 есть фикс на похожую проблему:
IZ24501: DISCONNECT GENERATING UN-NECESSARY MESSAGES IN DIAGLOG AT DIAGLEVEL 4
25 апр 12, 10:18    [12467238]     Ответить | Цитировать Сообщить модератору
Все форумы / IBM DB2, WebSphere, IMS, U2, etc Ответить