Clase de eventos Plan Guide Unsuccessful

Se aplica a:SQL Server

La clase de eventos 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, incluida la sugerencia USE PLAN, no se aplicaron correctamente a la consulta o lote. Es decir, el plan de consulta 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 usa 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 .

Nota

Esta clase de eventos no está disponible en Azure SQL Database.

Columnas de datos de la clase de eventos Plan Guide Unsuccessful

Nombre de columna de datos Tipo de datos Descripción Identificador de columna Filtrable
ApplicationName nvarchar Nombre de la aplicación cliente que ha creado la conexión a 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
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 identificador de proceso del cliente. 9
DatabaseID int Identificador de la base de datos especificada mediante la instrucción USE database o la base de datos predeterminada si no se emite la instrucción USE database para una determinada instancia. 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. Determina el valor de una base de datos mediante la función DB_ID. 3
DatabaseName nvarchar Nombre de la base de datos en la que se ejecuta la instrucción del usuario. 35
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
IsSystem int Indica si el evento ha ocurrido en un proceso del sistema o en un proceso de usuario1 = sistema, 0 = usuario. 60
LoginName nvarchar Nombre del inicio de sesión del usuario (ya sea SQL Server inicio de sesión de seguridad o las credenciales de inicio de sesión de Microsoft Windows en forma de DOMINIO\nombre de usuario). 11
LoginSid image SID (número de identificación de seguridad) del usuario que ha iniciado la sesión. 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
NTDomainName nvarchar Dominio de Windows al que pertenece el usuario. 7
NTUserName nvarchar Nombre del usuario de Windows. 6
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
RequestID int Id. de la solicitud que contiene la instrucción. 49
nombreDeServidor nvarchar Nombre de la instancia de SQL Server cuyo seguimiento se realiza. 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
SPID int Identificador de la sesión en la que se produjo el evento. 12
StartTime datetime Hora a la que se inició el evento, si está disponible. 14
TextData ntext Nombre de la guía de plan. 1
TransactionID bigint Id. de la transacción asignado por el sistema. 4
XactSequence bigint Token que describe la transacción actual. 50

Consulte también

Clase de evento Guía de plan correcta
Eventos extendidos
sp_trace_setevent (Transact-SQL)
sys.fn_validate_plan_guide (Transact-SQL)
sp_create_plan_guide (Transact-SQL)
sp_create_plan_guide_from_handle (Transact-SQL)