SP:CacheMiss Event Class
The SP:CacheMiss event class indicates that the procedure is not found in the cache. If the SP:CacheMiss event class occurs frequently, it can indicate that more memory should be made available to Microsoft SQL Server, thereby increasing the size of the procedure cache.
Note
In SQL Server 2000, the majority of cases that produced an SP:CacheMiss event in the trace were followed by an SP:CacheInsert event, which contained similar or duplicate trace information. In SQL Server 2005, when there is no cache insert after a cache miss, only an SP:CacheMiss event is written to the trace. SP:CacheInsert is written to the trace as before when a cache entry is inserted. This change significantly reduces the number of events that will be generated. Consequently, users can expect to see a reduced number of events reported for multiple cache miss events that occur for a single stored procedure or function.
SP:CacheMiss Event Class Data Columns
Data column name | Data type | Description | Column ID | Filterable |
---|---|---|---|---|
ApplicationName |
nvarchar |
Name of the client application that created the connection to an instance of SQL Server. This column is populated with the values passed by the application rather than the displayed name of the program. |
10 |
Yes |
ClientProcessID |
int |
ID assigned by the host computer to the process where the client application is running. This data column is populated if the client provides the client process ID. |
9 |
Yes |
DatabaseID |
int |
ID of the database in which the stored procedure is running. Determine the value for a database by using the DB_ID function. |
3 |
Yes |
EventClass |
int |
Type of event = 34. |
27 |
No |
EventSequence |
int |
Sequence of a given event within the request. |
51 |
No |
HostName |
nvarchar |
Name of the computer on which the client is running. This data column is populated if the client provides the host name. To determine the host name, use the HOST_NAME function. |
8 |
Yes |
IsSystem |
int |
Indicates whether the event occurred on a system process or a user process. 1 = system, 0 = user. |
60 |
Yes |
LoginName |
nvarchar |
Name of the login of the user (either SQL Server security login or the Microsoft Windows login credentials in the form of DOMAIN\username). |
11 |
Yes |
LoginSid |
image |
Security identification number (SID) of the logged-in user. You can find this information in the syslogins table of the master database. Each SID is unique for each login in the server. |
41 |
Yes |
NTDomainName |
nvarchar |
Windows domain to which the user belongs. |
7 |
Yes |
NTUserName |
nvarchar |
Windows user name. |
6 |
Yes |
ObjectID |
int |
System-assigned ID of the object. |
22 |
Yes |
ObjectName |
nvarchar |
Name of the stored procedure. If ObjectName is populated, then TextData will not be populated. |
34 |
Yes |
ObjectType |
int |
Value representing the type of the object involved in the event. This value corresponds to the type column in the sysobjects table. For values, see ObjectType Trace Event Column. |
28 |
Yes |
RequestID |
int |
ID of the request containing the statement. |
49 |
Yes |
ServerName |
nvarchar |
Name of the instance of SQL Server being traced. |
26 |
No |
SessionLoginName |
nvarchar |
Login name of the user who originated the session. For example, if you connect to SQL Server using Login1 and execute a statement as Login2, SessionLoginName shows Login1 and LoginName shows Login2. This column displays both SQL Server and Windows logins. |
64 |
Yes |
SPID |
int |
ID of the session on which the event occurred. |
12 |
Yes |
StartTime |
datetime |
Time at which the event started, if available. |
14 |
Yes |
TextData |
ntext |
Text of the SQL code that is being cached. If TextData is populated, ObjectName is not populated. |
1 |
Yes |
TransactionID |
bigint |
System-assigned ID of the transaction. |
4 |
Yes |
XactSequence |
bigint |
Token that describes the current transaction. |
50 |
Yes |
See Also
Reference
Other Resources
Monitoring Events
sp_trace_setevent (Transact-SQL)