Oracle internals, debugging and undocumented features

ORA-15655: preliminary connection+oradebug direct_access

ORA-15655: Fixed table \\”%s\\” cannot be accessed safely in prelim connection. 

When  login to oracle using preliminary connection ( wrote about it few days ago )

e.g. sqlplus -prelim / as sysdba and

oradebug direct_access  command e.g.
SQL> oradebug setmypid
Statement processed.
SQL> oradebug direct_access select * from x$ksmmem

ORA-15655: Fixed table “X$KSMMEM” cannot be accessed safely in prelim connection.

 X$KSMMEM has one row for every memory address in the SGA but oracle is not allowing to see it using prelim connection.

but you can access other structures like

oradebug direct_access select * from X$KSLED; ( event wait descriptors )..

Get the list of X$TABLES and play if you have time to burn…

select kqftanam from x$kqfta


One response to “ORA-15655: preliminary connection+oradebug direct_access

  1. Dion Cho August 13, 2009 at 4:02 am

    Thanks for the sharing and the good news is that you can access the fixed table in unsafe mode like following.

     "Fixed table \"%s\" cannot be accessed safely in prelim connection."
    // *Document: NO
    // *Cause:
    // *Action: Run ORADEBUG DIRECT_ACCESS SET MODE=UNSAFE and query again.

    But this does not mean that Oracle always succeeds in doing that.

    SYS@ukja11> oradebug direct_access select * from x$ksmmem;
    ORA-03113: end-of-file on communication channel
    ORA-24323: value not allowed

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: