E.2 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 |
BIGINT |
Call identifier |
MON$STATEMENT_ID |
BIGINT |
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 |
BIGINT |
The identifier of the calling trigger or stored procedure |
MON$OBJECT_NAME |
CHAR(63) |
PSQL object (module) name |
MON$OBJECT_TYPE |
SMALLINT |
PSQL object type (trigger or stored procedure): 2 - trigger 5 - stored procedure 15 - stored function |
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 |
MON$PACKAGE_NAME |
CHAR(63) |
Package name for stored procedures or functions in a package |
Note
Information about calls during the execution of the EXECUTE STATEMENT statement does not get into the call stack.
Get the call stack for all connections except your own
1. WITH RECURSIVE
2. HEAD AS (
3. SELECT
4. CALL.MON$STATEMENT_ID, CALL.MON$CALL_ID,
5. CALL.MON$OBJECT_NAME, CALL.MON$OBJECT_TYPE
6. FROM MON$CALL_STACK CALL
7. WHERE CALL.MON$CALLER_ID IS NULL
8. UNION ALL
9. SELECT
10. CALL.MON$STATEMENT_ID, CALL.MON$CALL_ID,
11. CALL.MON$OBJECT_NAME, CALL.MON$OBJECT_TYPE
12. FROM MON$CALL_STACK CALL
13. JOIN HEAD ON CALL.MON$CALLER_ID = HEAD.MON$CALL_ID
14. )
15. SELECT MON$ATTACHMENT_ID, MON$OBJECT_NAME, MON$OBJECT_TYPE
16. FROM HEAD
17. JOIN MON$STATEMENTS STMT ON STMT.MON$STATEMENT_ID = HEAD.MON$STATEMENT_ID
18. WHERE STMT.MON$ATTACHMENT_ID <> CURRENT_CONNECTION
