sys.dm_exec_xml_handles (Transact-SQL)

Applies to: SQL Server Azure SQL Managed Instance

Returns information about active handles that have been opened by sp_xml_preparedocument.

Syntax

  
dm_exec_xml_handles (session_id | 0 )  

Arguments

session_id | 0,
ID of the session. If session_id is specified, this function returns information about XML handles in the specified session.

If 0 is specified, the function returns information about all XML handles for all sessions.

Table Returned

Column name Data type Description
session_id int Session ID of the session that holds this XML document handle.
document_id int XML document handle ID returned by sp_xml_preparedocument.
namespace_document_id int Internal handle ID used for the associated namespace document that has been passed as the third parameter to sp_xml_preparedocument. NULL if there is no namespace document.
sql_handle varbinary(64) Handle to the text of the SQL code where the handle has been defined.
statement_start_offset int Number of characters into the currently executing batch or stored procedure at which the sp_xml_preparedocument call occurs. Can be used together with the sql_handle, the statement_end_offset, and the sys.dm_exec_sql_text dynamic management function to retrieve the currently executing statement for the request.
statement_end_offset int Number of characters into the currently executing batch or stored procedure at which the sp_xml_preparedocument call occurs. Can be used together with the sql_handle, the statement_start_offset, and the sys.dm_exec_sql_text dynamic management function to retrieve the currently executing statement for the request.
creation_time datetime Timestamp when sp_xml_preparedocument was called.
original_document_size_bytes bigint Size of the unparsed XML document in bytes.
original_namespace_document_size_bytes bigint Size of the unparsed XML namespace document, in bytes. NULL if there is no namespace document.
num_openxml_calls bigint Number of OPENXML calls with this document handle.
row_count bigint Number of rows returned by all previous OPENXML calls for this document handle.
dormant_duration_ms bigint Milliseconds since the last OPENXML call. If OPENXML has not been called, returns milliseconds since the sp_xml_preparedocument call.

Remarks

The lifetime of sql_handles used to retrieve the SQL text that executed a call to sp_xml_preparedocument outlives the cached plan used to execute the query. If the query text is not available in the cache, the data cannot be retrieved using the information provided in the function result. This can occur if you are running many large batches.

Permissions

Requires VIEW SERVER STATE permission on the server to see all sessions or session IDs that are not owned by the caller. A caller can always see the data for their own current session ID.

Permissions for SQL Server 2022 and later

Requires VIEW SERVER PERFORMANCE STATE permission on the server.

Examples

The following example selects all active handles.

SELECT * FROM sys.dm_exec_xml_handles(0);  

See Also


Dynamic Management Views and Functions (Transact-SQL)
Execution Related Dynamic Management Views and Functions (Transact-SQL)
sp_xml_preparedocument (Transact-SQL)
sp_xml_removedocument (Transact-SQL)