Applies to:
Oracle Server - Enterprise Edition - Version: 11.2.0.1 and later [Release: 11.2 and later ]Information in this document applies to any platform.
Symptoms
While running catupgd.sql to upgrade a database from 10.2.0.4.0 to 11.2.0.1, an error was encountered.SQL>@?/rdbms/admin/catupgrd.sql
...
...
SQL>@@xdbuud
SQL>Rem
SQL>Rem $Header: xdbuud.sql 12-nov-2007.16:03:02 yifeng Exp $
SQL>Rem
SQL>Rem xdbuud.sql
...
...
SQL>Rem TODO - We should do the XDBCONFIG Upgrade here
SQL>
SQL>Rem Add new servlets
SQL>declare
2 cfg_data XMLTYPE;
3 begin
4 cfg_data := dbms_xdb.cfg_get();
...
...
54
55 dbms_xdb.cfg_update(cfg_data);
56 end;
57 /
ERROR:
ORA-03114: not connected to ORACLE
ERROR:
ORA-03114: not connected to ORACLE
An internal error is logged in the alert<sid>.log:
Mon Jun 14 10:57:46 2010
Archived Log entry 2274 added for thread 1 sequence 2332 ID 0x2c15a752 dest 1:
Mon Jun 14 11:01:24 2010
Exception [type: SIGSEGV, Address not mapped to object] [ADDR:0x18] [PC:0x103FFEC34, qmkmgetConfig()+52] [flags: 0x0, count: 1]
Errors in file /apps/dbms/database/trace/diag/rdbms/mydb/MYDB/trace/MYDB_ora_4114.trc (incident=145):
ORA-07445: exception encountered: core dump [qmkmgetConfig()+52] [SIGSEGV] [ADDR:0x18] [PC:0x103FFEC34] [Address not mapped to object] []
Incident details in: /apps/dbms/database/trace/diag/rdbms/mydb/MYDB/incident/incdir_145/MYDB_ora_4114_i145.trc
Archived Log entry 2274 added for thread 1 sequence 2332 ID 0x2c15a752 dest 1:
Mon Jun 14 11:01:24 2010
Exception [type: SIGSEGV, Address not mapped to object] [ADDR:0x18] [PC:0x103FFEC34, qmkmgetConfig()+52] [flags: 0x0, count: 1]
Errors in file /apps/dbms/database/trace/diag/rdbms/mydb/MYDB/trace/MYDB_ora_4114.trc (incident=145):
ORA-07445: exception encountered: core dump [qmkmgetConfig()+52] [SIGSEGV] [ADDR:0x18] [PC:0x103FFEC34] [Address not mapped to object] []
Incident details in: /apps/dbms/database/trace/diag/rdbms/mydb/MYDB/incident/incdir_145/MYDB_ora_4114_i145.trc
The incident trace file shows the current sql is
declare
cfg_data XMLTYPE;
begin
cfg_data := dbms_xdb.cfg_get();
-- Report framework servlet
SELECT appendchildxml(
cfg_data,
'/xdbconfig/sysconfig/protocolconfig/httpconfig/webappconfig' ||
'/servletconfig/servlet-mappings',
xmltype(
'<servlet-mapping xmlns="http://xmlns.oracle.com/xdb/xdbconfig.xsd">
<servlet-pattern>/orarep/*</servlet-pattern>
<servlet-name>ReportFmwkServlet</servlet-name>
</servlet-mapping>'))
INTO cfg_data
FROM dual;
SELECT appendchildxml(
cfg_data,
'/xdbconfig/sysconfig/protocolconfig/httpconfig/webappconfig' ||
'/servletconfig/servlet-list',
xmltype(
'<servlet xmlns="http://xmlns.oracle.com/xdb/xdbconfig.xsd">
<servlet-name>ReportFmwkServlet</servlet-name>
<servlet-language>C</servlet-language>
<display-name>REPT</display-name>
<description>Servlet for accessing reports</description>
<security-role-ref>
<role-name>authenticatedUser</role-name>
<role-link>authenticatedUser</role-link>
</security-role-ref>
</servlet>'))
INTO cfg_data
FROM dual;
-- Set anonymousServletRole security-role-ref for PL/SQL servlets using
-- static or anonymous authentication, which have database-username set.
SELECT appendchildxml(
deletexml(
cfg_data,
'/xdbconfig/sysconfig/protocolconfig/httpconfig/webappconfig' ||
'/servletconfig/servlet-list/servlet[plsql/database-username]'||
'/security-role-ref'),
'/xdbconfig/sysconfig/protocolconfig/httpconfig/webappconfig' ||
'/servletconfig/servlet-list/servlet[plsql/database-username]',
xmltype(
'<security-role-ref xmlns="http://xmlns.oracle.com/xdb/xdbconfig.xsd">
<role-name>anonymousServletRole</role-name>
<role-link>anonymousServletRole</role-link>
</security-role-ref>'))
INTO cfg_data
FROM dual;
dbms_xdb.cfg_update(cfg_data);
end;
And the stack trace
ssexhd <- sighndlr <- call_user_handler <- qmkmgetConfig <- qmpxCfgGet
<- spefcpfa <- spefmccallstd <- peftrusted <- psdexsp <- rpiswu2 <- psdextp
<- spefcpfa <- spefmccallstd <- peftrusted <- psdexsp <- rpiswu2 <- psdextp
Cause
shared_pool_size and java_pool_size were configured too small during the upgrade.Solution
- Restore a backup of the 10.2.0.4.0 database.
- Set SHARED_POOL_SIZE = 250M and JAVA_POOL_SIZE = 250M.
- Do the upgrade.
Niciun comentariu:
Trimiteți un comentariu