Clase de eventos Plan Guide Unsuccessful
La clase de evento Plan Guide Unsuccessful indica que SQL Server no pudo generar un plan de ejecución para una consulta o lote que contenía una guía de plan. En su lugar, el plan se compiló sin utilizar la guía de plan. El evento se disparará cuando se cumplan las siguientes condiciones:
El lote/módulo de la definición de la guía de plan coincide con el lote que se está ejecutando.
La consulta de la definición de la guía de plan coincide con la consulta que se está ejecutando.
Las sugerencias en la definición de la guía de plan, incluyendo la sugerencia USE PLAN, no se aplicaron correctamente a la consulta o lote. Es decir, el plan de consultas compilado no pudo cumplir con las sugerencias especificadas y el plan se compiló sin utilizar la guía de plan.
Es posible que la causa de este evento sea una guía de plan no válida. Valide la guía de plan que utiliza la consulta o lote mediante la función sys.fn_validate_plan_guide y corrija el error que notificó esta función.
Este evento se incluye en la plantilla de Optimización SQL Server Profiler.
Columnas de datos de la clase de evento Plan Guide Unsuccessful
Nombre de la columna de datos |
Tipo de datos |
Descripción |
Id. de columna |
Filtrable |
---|---|---|---|---|
ApplicationName |
nvarchar |
Nombre de la aplicación cliente que creó la conexión con una instancia de SQL Server. Esta columna se rellena con los valores que pasa la aplicación, en lugar de con el nombre que se muestra del programa. |
10 |
Sí |
ClientProcessID |
int |
Identificador que el equipo host asigna al proceso en el que se ejecuta la aplicación cliente. Esta columna de datos se rellena si el cliente proporciona el Id. del proceso del cliente. |
9 |
Sí |
DatabaseID |
int |
Id. de la base de datos especificada por la instrucción USE database o la base de datos predeterminada si no se emitió ninguna instrucción USE de database para una instancia determinada. El SQL Server Profiler muestra el nombre de la base de datos si se captura la columna de datos ServerName en el seguimiento y el servidor está disponible. El valor para una base de datos se puede determinar mediante la función DB_ID. |
3 |
Sí |
DatabaseName |
nvarchar |
Nombre de la base de datos en la que se ejecuta la instrucción del usuario. |
35 |
Sí |
EventClass |
int |
Tipo de evento = 218. |
27 |
No |
EventSequence |
int |
Secuencia de un evento determinado de la solicitud. |
51 |
No |
HostName |
nvarchar |
Nombre del equipo en el que se está ejecutando el cliente. Esta columna de datos se rellena si el cliente proporciona el nombre del host. Para determinar el nombre del host, utilice la función HOST_NAME. |
8 |
Sí |
IsSystem |
int |
Indica si el evento ha ocurrido en un proceso del sistema o en un proceso de usuario1 = sistema, 0 = usuario. |
60 |
Sí |
LoginName |
nvarchar |
Nombre del inicio de sesión del usuario (inicio de sesión de seguridad de SQL Server o credenciales de inicio de sesión de Microsoft Windows con el formato DOMINIO\nombre de usuario). |
11 |
Sí |
LoginSid |
image |
SID (número de identificación de seguridad) del usuario que ha iniciado la sesión. Puede encontrar esta información en la vista sys.server_principals o en las vistas de catálogo sys.sql_logins. Cada SID es único para cada inicio de sesión en el servidor. |
41 |
Sí |
NTDomainName |
nvarchar |
Dominio de Windows al que pertenece el usuario. |
7 |
Sí |
NTUserName |
nvarchar |
Nombre del usuario de Windows. |
6 |
Sí |
ObjectID |
int |
Id. de objeto del módulo que se estaba compilando cuando se aplicó la guía de plan. Si la guía de plan no se aplicó a un módulo, esta columna estará establecida en NULL. |
22 |
Sí |
RequestID |
int |
Id. de la solicitud que contiene la instrucción. |
49 |
Sí |
ServerName |
nvarchar |
Nombre de la instancia de SQL Server que se va a trazar. |
26 |
No |
SessionLoginName |
nvarchar |
Nombre de inicio de sesión del usuario que originó la sesión. Por ejemplo, si se conecta a SQL Server usando inicioDeSesión1 y ejecuta una instrucción como inicioDeSesión2, SessionLoginName muestra inicioDeSesión1 y LoginName muestra inicioDeSesión2. En esta columna se muestran los inicios de sesión de SQL Server y de Windows. |
64 |
Sí |
SPID |
int |
Id. de la sesión en la que se produjo el evento. |
12 |
Sí |
StartTime |
datetime |
Hora a la que se inició el evento, si está disponible. |
14 |
Sí |
TextData |
ntext |
Nombre de la guía de plan. |
1 |
Sí |
TransactionID |
bigint |
Id. de la transacción asignado por el sistema. |
4 |
Sí |
XactSequence |
bigint |
Símbolo (token) que describe la transacción actual. |
50 |
Sí |