'ORA-07445'에 해당되는 글 2건

  1. 2010.06.30 ORA-07445 _ignore_desc_in_index
  2. 2008.04.16 Oracle RAC patch 후 startup 안될때.

ORA-07445: exception encountered: core dump [qkacol()+3148] [SIGSEGV] [Address not mapped to object] [72] [] []

index의 descending order에서 memory violation (sigsegv) 또는 wrong result를 야기하는 bug입니다
-------------------------------------------------------------
call stack

qkacol()+3148 PTR_CALL 00000000 B ? FFBE9C50 ? FFBE9998 ?
FFFFFFFF ? FFFFFFF8 ?
FFBEB0DE ?
qkadrv()+1420 CALL qkacol()+0 AA61C99C ? 0 ? D0 ? 800000 ?
0 ? 0 ?
qkadrv()+200 CALL qkadrv()+0 AA61D428 ? AA61C99C ? 0 ?
FFBEB198 ? AA61C6AC ? 0 ?
opitca()+3672 CALL qkadrv()+0 AA61D104 ? AA61D428 ?
AA61C6AC ? FFBEB260 ?
AA61C6AC ? 0 ?
kkssbt()+1336 CALL opitca()+0 AA61C6AC ? 8000 ? AA61C6AC ?
34 ? A874E7F8 ? A874E7D4 ?
kksscl()+4920 CALL kkssbt()+0 AFC1410C ? FFBEBA7C ?
18B2000 ? 18B2000 ? 18AF800 ?
AA61C6AC ?
kksfbc()+2460 CALL kksscl()+0 0 ? 1 ? 18ACDC4 ? 2 ? 0 ?
24 ?
opiexe()+1548 CALL kksfbc()+0 B72B848C ? FFBEBB18 ?
18ACDC4 ? 0 ? 0 ? 0 ?
opiall0()+5116 CALL opiexe()+0 49 ? 190C8A8 ? FFBED0F8 ?
18B0C00 ? 0 ? 190E584 ?
opial7()+324 CALL opiall0()+0 190C8A8 ? 15A16AC ? 190E584 ?
---------------------------------------------------------------

- workaround
1) 해당 index를 사용하지 않음
2) index를 사용하되, descending ordering 하지 않도록 아래와 같이 조치
Set _ignore_desc_in_index=true at instance level and ensure any
indexes containing a DESC keyword are re-created.
즉, _ignore_desc_in_index=true 를 oracle init parameter로 설정하고 db restart --> 이 상태에서, 해당 INDEX  재생성해서 사용 (이렇게 하시면, index는 asc order로 생성됩니다)

주의! 해당 index가 descending ordering이 아닐 경우, 해당 업무쿼리의 특성에 따라, performance가 떨어지는 상황이 될 수 있으므로 테스트/검증 필요

Bug:1190578 INSERTING INTO A TABLE BASED ON A QUERY USING A FUNCTION BASED INDEX FAILS
Details of
Bug:1190578:
Fixed Version: 8.1.7.1+ and 9.0.1.0+           
  insert ..select  using a functional index may crash in evaopn2()
  while inserting a row.  Other variations of this may occur.
  Workaround:
    For indexes with DESC clauses set
      _ignore_desc_in_index=TRUE
    in the init.ora file and rebuild the indexes.

Bug:1388458 ORA-7445 [EVAOPN2()+156] WHEN USING A VALUE COMPARISON VS A STRING
Posted by pat98



RAC 환경에서 patch 후 한쪽 노드가 올라오지 않을때.
alert.log 나 udump, cdump 등에도 특별한 로그는 남지 않음. 올리면 아래와 같이 나오기만 하고 난감함.

ORA-00469: CKPT process terminated with error
ORA-07445: exception encountered: core dump [] [] [] [] [] []

9i or 10g 상관없이 에러 발생함.

잘 찾아보면 1번 노드에는 $ORACLE_HOME/rdbms/lib/libknlopt.a 화일이 있으나 2번에는 없음.

수동으로 동일한 위치에 copy 해주고 (DB 내리고 할것) 다시 relink 해주면 한방에 올라옴.

요로코롬 해결하면 됨. 자세한 방법은 아래의 metalink 문서 참조.

==================================================================================================

Oracle Server - Enterprise Edition - Version: 10.2.0.1 to 10.2.0.2
This problem can occur on any platform.
After installing any One-off patch in RAC nodes, one of those nodes may fail to start the instance.


NOTE: We did observe the similar problem on 10.2.0.2 RAC installations where certain libraries are not copied from the installing node to other RAC nodes. For such type of problem while performing installation, please refer to the following note.

Note 363840.1 - 10.2.0.2 RAC: ORA-7445 in KKXSYN or KKXCMS ON ALL NODES BUT INSTALL NODE

Symptoms

Oracle Instance does not startup on one of RAC the nodes after installing any One-off Patch.

If you see the alert and trace log files, you may see the following errors:

ORA-00469: CKPT process terminated with error

ORA-07445: exception encountered: core dump [] [] [] [] [] []

Cause

It was noted that the resulting 'Oracle' binaries on different nodes were not the same. Running a cksum on all involved libraries in lib/ and rdbms/lib/, it was evident that libknlopt.a was different across nodes. The object modules that get into libknlopt.a however are identical, so it clearly appears that libknlopt.a isn't relinked on nodes other than the installation one.

Solution

Copy the good library in the faulty node and manually re-link the Oracle again.

Ensure all instances are shut down !

Manually copy good $ORACLE_HOME/rdbms/lib/libknlopt.a from the local node to all remote faulty nodes and relink Oracle again on all faulty nodes.

eg: cd $ORACLE_HOME/rdbms/lib
make -f ins_rdbms.mk ioracle

Posted by pat98
이전버튼 1 이전버튼

05-09 18:52
Flag Counter
Yesterday
Today
Total

글 보관함

최근에 올라온 글

달력

 « |  » 2024.5
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31

최근에 달린 댓글