Firebird 2.5 Language ReferenceFirebird 2.5 Language ReferenceMonitoring Tables → MON$CALL_STACK
Firebird Firebird Prev: MON$ATTACHMENTSFirebird 2.5 Language ReferenceUp: Monitoring TablesNext: MON$CONTEXT_VARIABLES

MON$CALL_STACK

MON$CALL_STACK displays calls to the stack from queries executing in stored procedures and triggers.

Column Name Data Type Description
MON$CALL_ID INTEGER Call identifier
MON$STATEMENT_ID INTEGER The identifier of the top-level SQL statement, the one that initiated the chain of calls. Use this identifier to find the records about the active statement in the MON$STATEMENTS table
MON$CALLER_ID INTEGER The identifier of the calling trigger or stored procedure
MON$OBJECT_NAME CHAR(31) PSQL object (module) name
MON$OBJECT_TYPE SMALLINT PSQL object type (trigger or stored procedure):
2 - trigger
5 - stored procedure
MON$TIMESTAMP TIMESTAMP The date and time when the call was started
MON$SOURCE_LINE INTEGER The number of the source line in the SQL statement being executed at the moment of the snapshot
MON$SOURCE_COLUMN INTEGER The number of the source column in the SQL statement being executed at the moment of the snapshot
MON$STAT_ID INTEGER Statistics identifier

EXECUTE STATEMENT Calls: Information about calls during the execution of the EXECUTE STATEMENT statement does not get into the call stack.

Example using MON$CALL_STACK:  Getting the call stack for all connections except own:

WITH RECURSIVE
  HEAD AS (
    SELECT
      CALL.MON$STATEMENT_ID, CALL.MON$CALL_ID,
      CALL.MON$OBJECT_NAME, CALL.MON$OBJECT_TYPE
    FROM MON$CALL_STACK CALL
    WHERE CALL.MON$CALLER_ID IS NULL
    UNION ALL
    SELECT
      CALL.MON$STATEMENT_ID, CALL.MON$CALL_ID,
      CALL.MON$OBJECT_NAME, CALL.MON$OBJECT_TYPE
    FROM MON$CALL_STACK CALL
      JOIN HEAD ON CALL.MON$CALLER_ID = HEAD.MON$CALL_ID
  )
SELECT MON$ATTACHMENT_ID, MON$OBJECT_NAME, MON$OBJECT_TYPE
FROM HEAD
  JOIN MON$STATEMENTS STMT ON STMT.MON$STATEMENT_ID = HEAD.MON$STATEMENT_ID
WHERE STMT.MON$ATTACHMENT_ID <> CURRENT_CONNECTION
        

Prev: MON$ATTACHMENTSFirebird 2.5 Language ReferenceUp: Monitoring TablesNext: MON$CONTEXT_VARIABLES
Firebird 2.5 Language ReferenceFirebird 2.5 Language ReferenceMonitoring Tables → MON$CALL_STACK