Re: tmon

From: Yong Huang <"Yong>
Date: Mon, 18 Sep 2017 20:35:14 +0000 (UTC)
Message-ID: <1950754980.4582890.1505766914911_at_mail.yahoo.com>


Hi Noveljic,

TMON ('Transport Monitor') and TT* ('Redo Transport') sound like background processes meaningful only if you have a standby. But according to x$ksbtabact (as Stefan showed), they seem to perform some actions other than those specific to a data guard.

As to killing tmon killing the instance, I doubt it. You can test by sending a kill signal to it, with or without -9. TMON is a non-fatal background process, as shown in its environment variable SKGP_HIDDEN_ARGS:

$ ps eww 14903

  PID TTY      STAT   TIME COMMAND
14903 ?        Ss     0:00 ora_tmon_sand12r2 PATH= ORACLE_SID=...SKGP_HIDDEN_ARGS=<BG/S/TMON/x0/x7/x32238/x923A472E/59813/59848/x157826/x8/x27/x97DEC923/1505765816/1505765816/196609/0/(nil)>...

The first field of the value for this variable is BG. If it were FATAL, killing the process would crash the instance. (By the way, the 9th field indicates its spawning process. You can use that to construct an Oracle background process creation tree, which shows PMAN -> TMON -> TT* processes.)

The message

TMON (ospid: 14954): terminating the instance due to error 472

just means TMON killed the instance. It doesn't mean killing TMON would bring down the instance. As to why TMON did that in your case, I don't know. Is there a function call stack in a trace file during the time? If you do, search for the top function below those error-handling ones and see if there's a document on MOS.

Yong Huang

--
http://www.freelists.org/webpage/oracle-l
Received on Mon Sep 18 2017 - 22:35:14 CEST

Original text of this message