Skip to main content

ORA-00031: session marked for kill




SQL> ALTER SYSTEM KILL SESSION '222,18784' immediate;

ALTER SYSTEM KILL SESSION '222,18784' immediate
*
ERROR at line 1:

ORA-00031: session marked for kill

* Here the issue is in what this alter system kill command is doing. 

* Alter System Kill command > It’s not actually killing the target session (like kill -9 would do for OS processes). 

* It just sets a bit in the target sessions state object, which marks that the target session should end. 

* But its entirely with the target session to check this bit and act on it.

* All the kill session command is doing is ASK the target session to clean up and exit – via setting that bit.

* The session trying to issue the kill will hang for 60 seconds and then return this “session marked for kill” message. And the target session does not get killed at all.

* The “ORA-00031: session marked for kill” message you see after 60 seconds just means that:

* Session marked for  “kill” bit in target sessions state object. Session waits the target session to die for 60 seconds and times out after it doesn't happen It returns “session marked for kill” error.

* In this situation we can find out the PID kill and kill it like below

SQL> show user;
USER is "SYS"

SQL> select name from v$database;

NAME
---------------------------
VKRK11

SQL> SELECT P.SPID, S.SID, S.SERIAL# FROM V$PROCESS P, V$SESSION S WHERE P.ADDR = S.PADDR AND S.SID = 222;

SPID                                        SID    SERIAL#
------------------------------------ ---------- ----------
14235                                       222      18784

SQL> ! kill -9 14435

SQL> SELECT P.SPID, S.SID, S.SERIAL# FROM V$PROCESS P, V$SESSION S WHERE P.ADDR = S.PADDR AND S.SID = 222;

no rows selected

Its killed now .. 

Thank You!


Comments

Popular posts from this blog

CHANGING DBID FOR ORACLE DATABASE 11G

C:\Users\computer>sqlplus SQL*Plus: Release 11.1.0.7.0 - Production on Thu Sep 10 21:03:33 2013 Copyright (c) 1982, 2008, Oracle.  All rights reserved. Enter user-name: sys as sysdba Enter password: Connected to: Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - Production With the Partitioning, OLAP, Data Mining and Real Application Testing options SQL> select dbid from v$database;       DBID ---------- 2188161033 SQL> exit Disconnected from Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - Production With the Partitioning, OLAP, Data Mining and Real Application Testing options C:\Users\computer>nid DBNEWID: Release 11.1.0.7.0 - Production on Thu Sep 10 21:04:44 2013 Copyright (c) 1982, 2007, Oracle.  All rights reserved. Keyword     Description                    (Default) ---------------------------------------------------- TARGET ...

Difference between AWR, ADDM and ASH reports

AWR: Automatic Workload Repository gathers, processes and maintains performance stats used for problem detection and self-tuning the databases. Different Components that uses AWR are: Automatic Database Diagnostic Monitor Undo Advisor SQL Tuning Advisor Segment Advisor Different types of AWR Reports for different purposes: For Single Instance Environment: @$ORACLE_HOME/rdbms/admin/awrrpt.sql For Oracle RAC Environment : @$ORACLE_HOME/rdbms/admin/awrgrpt.sql For a particular SQL Statement : @$ORACLE_HOME/rdbms/admin/awrsqrpt.sql For Comparing the reports : @$ORACLE_HOME/rdbms/admin/awrddrpt.sql ADDM: Automatic Database Diagnostic Monitoring Report analyzes the AWR data on a regular basis, to give you overview of the root cause of the problem which is affecting your database’s performance. It also provides suggestions or recommendations for rectifying any problem identified and lists the areas which are having no issues. ADDM recommends multiple solutions for the DBA to choose from which...