powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / DB2 все время падает, help, please
25 сообщений из 30, страница 1 из 2
DB2 все время падает, help, please
    #33167837
MagDel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
После 2-10 раз выполнения одного и того же запроса DB2 слетает.

Вот что она пишет в лог. Только кода этой ошибки нет в справке. Что же делать?

2005-07-12-17.57.31.250000 Instance:DB2 Node:000
PID:9874018032(db2syscs.exe) TID:18032 Appid:0AF05C14.9A05.050712135307
relation_data_serv sqlrr_signal_handler Probe:10 Database:REF1
DIA7107I Execution of a component signal handling function has begun.

2005-07-12-17.57.31.656000 Instance:DB2 Node:000
PID:9874018032(db2syscs.exe) TID:18032 Appid:0AF05C14.9A05.050712135307
relation_data_serv sqlrr_dump_ffdc Probe:17 Database:REF1
DIA3816C A severe internal processing error has occurred.

2005-07-12-17.57.31.828000 Instance:DB2 Node:000
PID:9874018032(db2syscs.exe) TID:18032 Appid:0AF05C14.9A05.050712135307
relation_data_serv sqlrr_dump_ffdc Probe:17 Database:REF1
DIA9999E An internal error occurred. Report the following error code :
"0xFFFFF707".

Data Title:SQLCA PID:9874018032 TID:18032 Node:000
sqlcaid : SQLCA sqlcabc: 136 sqlcode: 0 sqlerrml: 0
sqlerrmc:
sqlerrp : SQL07026
sqlerrd : (1) 0x00000000 (2) 0x00000000 (3) 0x00000000
(4) 0x00000000 (5) 0x00000000 (6) 0x00000000
sqlwarn : (1) (2) (3) (4) (5) (6)
(7) (8) (9) (10) (11)
sqlstate: 00000

Еще она дальше пишет запрос, запрос мы попробовали упростить, после этого начинает стабильно работать. Может нужно как-то конфигурацию изменить?
...
Рейтинг: 0 / 0
DB2 все время падает, help, please
    #33168039
gardenman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Запрос наверняка динамический?
Может попробовать подкрутить некоторые параметры SQL компилятора. Типа ему памяти/стека не хватает?
...
Рейтинг: 0 / 0
DB2 все время падает, help, please
    #33168238
MagDel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
gardenmanЗапрос наверняка динамический?
Может попробовать подкрутить некоторые параметры SQL компилятора. Типа ему памяти/стека не хватает?
А какие? меняли что-то, но не помогает... :-(
Главное кода ошибок нет в справке. Ни SQL07026, ни F707. Может, кто ближе к IBM спросит у спецов?
...
Рейтинг: 0 / 0
DB2 все время падает, help, please
    #33168258
gardenman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кхы...
Объясните термин "падает"...
Это что значит? сервер приходится перезапускать?
Или просто запрос не работает?

Посмотреть бы на текст этого запростика... поближе...
Мне для коллекции, пожал-ста...
...
Рейтинг: 0 / 0
DB2 все время падает, help, please
    #33168422
MagDel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
gardenmanКхы...
Объясните термин "падает"...
Это что значит? сервер приходится перезапускать?
Или просто запрос не работает?
Посмотреть бы на текст этого запростика... поближе...
Мне для коллекции, пожал-ста...

Падает - DB2 закрывается с ошибкой. и пишет вышеуказанное в db2diag.log

А вот и сам запрос.

select case lastref when 1042 then nomp else '' end nomp,
case lastref when 1042 then nomsost else '' end nomsost,
case when stnaz='00000' then '' when lastref in (1042,5337) then value(snv.stname,stnaz) else '' end stnaz_n,
oper1042 oper,
case when (lastref in (1042,5337,5338) and a.EMPTY<>'Y') then char(integer(a.vesgr)) else '' end vesgr0,
case when lastref in (1042,5337,5338) then codgr else '' end codgr,
case when lastref in (1042,5337) then stnaz else '' end stnaz,
case lastref when 1042 then stnazp else '' end stnazp,

case lastref when 1042 then stformp else '' end stformp,
case when lastref in (1042,5337,5338) then g.name else '' end gruz,
case when (scn.cnt is not null)and(n.codrps='rd') then cast(scn.CNT as char(2)) else '' end sec_size,
a.stcode stop, value(sopn.stname,a.stcode) stop_n,a.inv,a.dttmop,a.lastref,YELEDGE,REDEDGE,
value(rs.numsec,a.secnum) secnum, n.sokrname rps,n.codrps,value(ri.RENTOUT, a.PRSOBSTV) RENTOUT,
ri.carvol, gro.NAME, dpp.DEPNAME

from ref.activecar a
inner join nsi.roads_int sop on a.stcode between sop.lst and sop.hst
inner join nsi.roads_int snz on a.stnaz between snz.lst and snz.hst left
join ref.refinfo ri on ri.inv=a.inv left join asov.stations snv on stnaz=snv.codst
left join asov.stations sopn on a.stcode=sopn.codst
left join nsi.gruz g on a.codgr=g.codgruz and a.EMPTY<>'Y'
left join nsi.rps n on a.inv between n.li and n.hi
left join (ref.refsec rs inner join ref.refinfo rfi on rs.id_refsec=rfi.id_refsec) on rfi.inv=a.inv

left join ( select rs1.INV, CNT-VALUE(CNT1,0) CNT from ref.refinfo rs1
left join (select ID_REFSEC, COUNT(0) CNT from ref.refinfo r group by ID_REFSEC) c on rs1.ID_REFSEC=c.ID_REFSEC
left join (select ID_REFSEC, COUNT(0) CNT1 from ref.refinfo r
inner join nsi.rps n on r.inv between n.li and n.hi where n.codrps='rd' group by ID_REFSEC) c1 on rs1.ID_REFSEC=c1.ID_REFSEC ) scn on scn.inv=a.inv
left join (ref.gruzotp gro inner join ref.refinfo rfi2 on gro.id_gruzotp=rfi2.id_gruzotp) on a.inv=rfi2.inv
left join (ref.depo dpp inner join ref.refinfo rfi3 on dpp.id_depo=rfi3.id_depo) on
a.inv=rfi3.inv where sop.coddor='01' and lastref in(1042,1359,1353,1354,5337,5338)
and a.stcode= $$$ and n.codrps='85' order by secnum,inv



Если мы заменяем

inner join nsi.roads_int sop on a.stcode between sop.lst and sop.hst
inner join nsi.roads_int snz on a.stnaz between snz.lst and snz.hst left

на

inner join asov.stations sop on a.stcode =sop.codst
inner join asov.stations snz on a.stnaz=snz.codst

то все начинает работать. Смысл в том, что нужно взять coddor, и удобнее это делать через
диапазон, так как ключевых значений в asov.stations может не быть.

Структуры таблиц:

CREATE TABLE NSI.ROADS_INT (
CODDOR CHARACTER(2) NOT NULL,
LST CHARACTER(5) NOT NULL,
HST CHARACTER(5) NOT NULL)
IN USERSPACE1;

ALTER TABLE NSI.ROADS_INT ADD CONSTRAINT ROADS_INTPK PRIMARY KEY (LST,HST);


CREATE TABLE ASOV.STATIONS (
ID_ST INTEGER,
ID_DEP INTEGER,
ID_RW INTEGER,
STCODE INTEGER,
CODST CHARACTER(5) NOT NULL,
STNAME VARCHAR(24) NOT NULL,
CODDOR CHARACTER(2) NOT NULL,
CODOTD CHARACTER(4),
CODREG SMALLINT)
IN USERSPACE1;

ALTER TABLE ASOV.STATIONS ADD CONSTRAINT STATIONSPK PRIMARY KEY (CODST);

CREATE INDEX ASOV.STCODDOR ON ASOV.STATIONS (CODST,CODDOR) ALLOW REVERSE SCANS;

CREATE INDEX ASOV.STDORSTI ON ASOV.STATIONS (CODDOR,CODST) ALLOW REVERSE SCANS;
...
Рейтинг: 0 / 0
DB2 все время падает, help, please
    #33169298
gardenman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
на будущее: тут есть такая замечательная кнопка, где написано SRC, когда код оформляете , то пользуйтесь ей, а то --- ну очень тяжело въехать что написано... ща буду посмотреть)))
...
Рейтинг: 0 / 0
DB2 все время падает, help, please
    #33169325
Victor Metelitsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Полагаю, DB2 не имеет права так себя вести, и имеет место бага, о которой надо сообщить разработчику. Если же DB2 спирачена, то, конечно, вы не сможете это сделать, и остается устраивать танцы с бубнами, подбирая нужную расцветку и диаметр бубна. Тем не менее интересно было бы услышать номер версии и фикспака. А может, вы и фикспаки не ставили? Если так, то почему она у вас вообще работает? ;-) ;-(

Кстати, кто-нибудь пробовал натравливать db2advisor на выражения с MERGE? У меня сервер падает на одном запросе на DB2 8.2.2, но более подробными исследованиями я не занимался.
...
Рейтинг: 0 / 0
DB2 все время падает, help, please
    #33169355
Victor Metelitsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да и структуры таблиц присутствуют не все (чтобы можно запустить скрипт у себя и посмотреть - упадет или нет).
...
Рейтинг: 0 / 0
DB2 все время падает, help, please
    #33169421
gardenman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Victor MetelitsaПолагаю, DB2 не имеет права так себя вести, и имеет место бага, о которой надо сообщить разработчику. Если же DB2 спирачена, то, конечно, вы не сможете это сделать, и остается устраивать танцы с бубнами, подбирая нужную расцветку и диаметр бубна. Тем не менее интересно было бы услышать номер версии и фикспака. А может, вы и фикспаки не ставили? Если так, то почему она у вас вообще работает? ;-) ;-(

Кстати, кто-нибудь пробовал натравливать db2advisor на выражения с MERGE? У меня сервер падает на одном запросе на DB2 8.2.2, но более подробными исследованиями я не занимался.

Честно скажу - Adiser-oм вообще не пользуюсь....
А почему? А потому что знаю что если есть табличка и я обращаюсь к ней чрез where id=?, то по id - ну точно должен быть индекс.
Если есть внешний ключ на пару полей (x,y) то у зависимой таблички обязательно должен быть построен индекс на эту пару колонок. И т.д.

Т.е. 99% производительности - это проектирование....
...
Рейтинг: 0 / 0
DB2 все время падает, help, please
    #33169441
Victor Metelitsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
gardenman
Честно скажу - Adiser-oм вообще не пользуюсь....
А почему? А потому что знаю что если есть табличка и я обращаюсь к ней чрез where id=?, то по id - ну точно должен быть индекс.
Если есть внешний ключ на пару полей (x,y) то у зависимой таблички обязательно должен быть построен индекс на эту пару колонок. И т.д.

Ну здрасьте. А как же index only access? А что лучше - индекс по (x,y) или (y,x)? А как вы будете опимизировать запрос наподобие того, что приведен выше? А если приложение вообще не ваше, исходников нет, или все sql-выражения генерируются динамически?

У меня в запросах нередко бывает таблиц по 15.
...
Рейтинг: 0 / 0
DB2 все время падает, help, please
    #33169447
Victor Metelitsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ради интересу попробуйте перехватить поток SQL-выражений, генерируемый вашим приложением, и спросите у Advisor'а, что он об этом наборе думает. Возможен большой сюрприз.
...
Рейтинг: 0 / 0
DB2 все время падает, help, please
    #33169458
gardenman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Victor MetelitsaРади интересу попробуйте перехватить поток SQL-выражений, генерируемый вашим приложением, и спросите у Advisor'а, что он об этом наборе думает. Возможен большой сюрприз.

Э нет! не получицца... У меня как правило весь SQL - статический. И если где-то может быть INDEXONLY ACCESS, то он у меня уже есть, и я об этом знаю. И более того, если я подозреваю что можно где-то сделать INDEXONLY, то уж будьте уверены - я этого добьюсь...

Вообще считаю что для OLTP приложений - static sql - самое то!...
...
Рейтинг: 0 / 0
DB2 все время падает, help, please
    #33169678
Victor Metelitsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Static SQL? Ха-ха. Реальной пользы - мизер, даже в OLTP. Много ли отнимает prepare в нормально написанной программе? А у меня, к тому же, OLAP, с зачастую заранее неизвестными запросами.
...
Рейтинг: 0 / 0
DB2 все время падает, help, please
    #33170511
ggv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ggv
Гость
если OLTP то Static SQL однозначно рулез
Ну OLAP и прочие многие виды Business Intelligence - там он практически не применим.

А по поводу валится - в newsgroup не так давно один из разработчиков писал, по поводу падания db2 на windows с криками о нехватке стека и с советом увеличить размер его - ну типа если операционка не позволяет, то просто ну никак. И проявлялась ошибка только на винде.
Хотя все равно непонятно.
...
Рейтинг: 0 / 0
DB2 все время падает, help, please
    #33170514
ggv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ggv
Гость
Static SQL это не только ценный мех - тьфу
Это не только сохранение плана выплнения, это и другой подход к безопастности, и другие возможности с уровнем изоляции, и прочее.
Классная вешь. И несмотря на любовь IBM к Java, application server и прочим модным технологиям - Static SQL остается. (хотя есть SQLJ, но что-то мне кажется это не совсем стандартный подход из-за более трудного deployment)
Хочется верить - навсегда :)
...
Рейтинг: 0 / 0
DB2 все время падает, help, please
    #33170701
gardenman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
To ggv - полностью согласен.

Victor MetelitsaStatic SQL? Ха-ха. Реальной пользы - мизер, даже в OLTP. Много ли отнимает prepare в нормально написанной программе? А у меня, к тому же, OLAP, с зачастую заранее неизвестными запросами.
Вот интересно было бы знать откуда такое мнение?

Буквально недавно - делали программку на ASE Sybase. Задачка - так себе - просто контекстный поиск по ФИО. Да и табличка - фигня.. каких-то 400 тыс записей. Прикол в том, что несмотря на собранную статистику, построенные индексы, и то что все сделано на ХП - план запроса не всегда один и тот же)) в результате на экране иногда имеем совсем не то что просили. Пришлось хинтами править. А оно все равно не всегда так как надо. Не занаю чем там кончилось - я ушел оттуда.
А у DB2 таких проблем в статическом SQL - ну ваще нету...

На счет OLAP запросов - соглашусь. User maintained MQT тока через динамический SQL и работают. Прикольная штука.
...
Рейтинг: 0 / 0
DB2 все время падает, help, please
    #33171143
Victor Metelitsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну, пусть для prepare тратится 1 сек, для выполнения запроса 1 сек, а однотипных запросов - 100. Со static SQL вы потратите 100 сек, с dynamic 101. Подставьте свои цифры - что выйдет? Насколько я понимаю OLTP, однотипных запросов должно быть _очень_ много.

Ценности удержания плана запроса не вижу (не Oracle, чай).

Другой подход к security - быть может, и удобен, но неужто необходим?

И что за проблемы с уровнем изоляции? CLI ведь позволяет задавать нужный, и ... WITH уровень-изоляции работает.
...
Рейтинг: 0 / 0
DB2 все время падает, help, please
    #33171159
Victor Metelitsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
gardenmanTo ggv - полностью согласен.

Буквально недавно - делали программку на ASE Sybase. Задачка - так себе - просто контекстный поиск по ФИО. Да и табличка - фигня.. каких-то 400 тыс записей. Прикол в том, что несмотря на собранную статистику, построенные индексы, и то что все сделано на ХП - план запроса не всегда один и тот же)) в результате на экране иногда имеем совсем не то что просили.

Выдавал неправильные результаты? Какой ужас

Пришлось хинтами править. А оно все равно не всегда так как надо. Не занаю чем там кончилось - я ушел оттуда.
А у DB2 таких проблем в статическом SQL - ну ваще нету....
А в динамическом разве есть?
...
Рейтинг: 0 / 0
DB2 все время падает, help, please
    #33171177
ggv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ggv
Гость
Не хочу вступать в дискуссию, отвечу только по последнему вопросу.
Там проблем никаких.
Просто можно выставив разные значения DB2_SKIPDELETED/DB2_SKIPINSERTED/DB2_EVALUNCOMMITED во время BIND можно получить разное поведение в разных транзакциях в одно и то же время. Это как пример.
...
Рейтинг: 0 / 0
DB2 все время падает, help, please
    #33171187
ggv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ggv
Гость
хотя, как раз gardenman писал, что стоило бы эти переменные было сделать по образу и подобию "WITH UR"
Это вот как раз бы для Dinamic SQL помогло бы.
...
Рейтинг: 0 / 0
DB2 все время падает, help, please
    #33171291
Victor Metelitsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ggvНе хочу вступать в дискуссию, отвечу только по последнему вопросу.
Там проблем никаких.
Просто можно выставив разные значения DB2_SKIPDELETED/DB2_SKIPINSERTED/DB2_EVALUNCOMMITED во время BIND можно получить разное поведение в разных транзакциях в одно и то же время. Это как пример.

И как вы же выставите нужное значение?

http://publib.boulder.ibm.com/infocenter/db2help/topic/com.ibm.db2.udb.doc/core/r0001935.htm

в упор не вижу.
...
Рейтинг: 0 / 0
DB2 все время падает, help, please
    #33171304
Victor Metelitsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ggvхотя, как раз gardenman писал, что стоило бы эти переменные было сделать по образу и подобию "WITH UR"
Это вот как раз бы для Dinamic SQL помогло бы.
Многие переменные хотелось бы видеть на уровне сеанса, а не базы или экземпляра (в этом Oracle превосходит), но...
...
Рейтинг: 0 / 0
DB2 все время падает, help, please
    #33171329
ggv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ggv
Гость
Victor Metelitsa
И как вы же выставите нужное значение?

http://publib.boulder.ibm.com/infocenter/db2help/topic/com.ibm.db2.udb.doc/core/r0001935.htm

в упор не вижу.

Ну
db2set DB2_SKIPINSERTED=on
db2 BIND someting1
db2set DB2_SKIPINSERTED=off
db2 BIND something2

ну потом запуская something1 и something2 имеем разное поведение.
...
Рейтинг: 0 / 0
DB2 все время падает, help, please
    #33171345
ggv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ggv
Гость
может, это вопрос личных предпочтений (что-то там на подсознательном уровне)
но я CLI использовал только до момента появления context в Static SQL.
Как появилось - сразу начал переписывать старый код.

Как говорит мой друг, у каждого в голове свои тараканы.
...
Рейтинг: 0 / 0
DB2 все время падает, help, please
    #33171362
gardenman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Victor Metelitsa
вообще на самом деле мой путь был таким. Сначала я попробовал юзать CLI. И понял как это долго и нудно. Конешно можно написать свои классы-обёртки, но все равно мне не понравилось. Потом попробовал вложенный SQL. И - пошло.
С динамическим SQL - каждое подключающееся приложение должно перекомпилить кучу кода. Причем одного и того же. При большом количестве соединений - это блокировки каталога, и снижение производительности. Опять же требуется чтобы статистика была собрана. И кто его знает что за план доступа в результате получится? А в статическом - таких проблем просто нет. А на статистику иногда вообще можно забить.))
Единственное для меня неудобство - не очень то Visual Studio любит препроцессоры. Еслиб не эта сволочь MS - все б наверно давно на ESQL писали. И, главное, в 7 версии IBM делало свой Add-Ins, который позволял работать с sqx файлами в DB2. Меня более-менее устраивало. Только вот куда это все делось?
...
Рейтинг: 0 / 0
25 сообщений из 30, страница 1 из 2
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / DB2 все время падает, help, please
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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