Cause and Resolution of Notification Services Events
Notification Services events are divided into four categories: error, warning, information, and verbose. You use these categories to configure which types of events Notification Services writes to the Application log. For more information about how to configure event logging, see Configuring Notification Services Event Logging.
Event Types
The following table shows the event ID ranges, the description of events in each range, and the event type as shown in Event Viewer.
Event ID range | Description | Event type |
---|---|---|
0 - 9999 |
Errors from all sources except extended stored procedures |
Error |
10000 - 19999 |
Warnings from all sources |
Warning |
20000 - 29999 |
Information from all sources |
Information |
30000 - 39999 |
Verbose information from all sources |
Information |
If you are using a log monitoring application, you should monitor for errors and warnings in the 0 - 19999 range. Monitoring information events is less critical, and is usually done to track specific activities, such as starting and stopping services.
Note
Monitor for events using the unique event IDs. Do not parse event descriptions for specific text because the text might change based on locale settings or in future versions of Notification Services.
Cause and Resolution of Events
The following list includes the events most frequently encounter by users of Notification Services, and possible resolutions for those events.
Event Number | Message, Cause, and Resolution |
---|---|
1006 |
An attempt to open the requested database failed. Cause This error maps to SQL Server error 4060. This error indicates that the current user has insufficient permissions to log in to the specified database. The event log entry for this error includes the description of the SQL Server error that caused it. This description resembles the following: Cannot open database requested in login 'database_name'. Login fails. Resolution Check that the account that is used by Notification Services has a SQL Server login account and permissions in the database noted in the error message. For more information, see Configuring SQL Server Permissions for an Instance of Notification Services. |
1008 |
The specified collation name is not valid. See SQL Server Books Online for valid names. Cause This error maps to SQL Server error 448. This error indicates that the specified collation name (generally in the application definition) is not valid. The event log entry for this error includes the description of the SQL Server error that caused it. This description resembles the following: Invalid collation 'collation_name'. Resolution There are several places in the application definition where collations can be specified. Search for the collation_name information noted in the event log entry and replace it with a valid collation name. For more information about sorting collations, see COLLATE (Transact-SQL). |
1009 |
The timeout period elapsed prior to the completion of a Transact-SQL statement. Cause This error occurs when a query or stored procedure does not finish within the specified time out. It typically indicates that SQL Server is too busy. A different error message is returned if the execution of an event rule or a subscription rule exceeds the time out that is specified in the application definition. The event log entry for this error includes the description of the actual error that caused it. Resolution Examine the event log entry for more information about the action that timed out. If vacuuming was the cause of the failure, you might have to remove expired events and notifications. For more information, see Removing Obsolete Application Data. Notification Services uses a time out value of 30 seconds for many operations. If it is possible, reduce the processing of the affected action so that it can complete within 30 seconds. |
1010 |
There is a collation mismatch between the main instance database and the application database. Cause This error maps to SQL Server error 446. This error that the specified operation was given objects with mismatched collations. The event log entry for this error includes the description of the actual error that caused it. This description resembles the following: Cannot resolve collation conflict for operation_name operation. Resolution Determine the operation that failed from the event log entry and make sure that the arguments to the specified operation have matching collations. For example, if you have two columns in the same table with Greek and Latin collations, respectively, a WHERE clause such as the following will cause this error: WHERE GreekCol = LatinCol The resulting error will have the following additional description: Cannot resolve collation conflict for equal to operation. The problem noted in this error must be resolved for the system to function correctly. For more information, see COLLATE (Transact-SQL). |
1011 |
An attempt to log in to SQL Server failed. Cause This error maps to SQL Server error 18456. This error indicates that a given user does not have the appropriate permissions to log in. The event log entry for this error includes the description of the SQL Server error that triggered it. This description resembles the following: Login failed for user user_name. Resolution Check that the user name noted in the error message has the appropriate permissions. For more information, see Resolving Common Notification Services Issues. |
2009 |
Notification Services failed to instantiate the event provider. Cause Notification Services could not create an instance of the event provider. This error can occur if a custom event provider was not built with version 2.0.50727 of the .NET Framework. When Notification Services and a custom component use different versions of the .NET Framework, differences in the class libraries can cause application errors. Resolution When it is possible, build custom components with version 2.0.50727 of the .NET Framework. If you must build custom components with other builds of the .NET Framework, you can force Notification Services to use the same version. To do this, add a <startup> node to the NSService.exe.config file. This is in the vN.N.N.N\Bin folder of Notification Services. The following example shows the <startup> node:
The <supportedRuntime> elements restrict the versions of the .NET Framework that Notification Services can use. The order of the listed versions determines the order in which Notification Services tries to load the .NET Framework versions. In the previous example, Notification Services will first try to load version 2.1 of the .NET Framework. If it is not available, Notification Services will try to load version 2.0.50727 of the .NET Framework. Be aware that version 2.1 is not a real version number. It is just an example used for illustration. You must restart the instance of Notification Services to apply changes made to NSService.exe.config. |
2023 |
The specified event provider class name could not be found in the given assembly. Make sure that the class name and assembly name in the application definition are correct. Cause This error occurs when the provider host does not start an event provider because the assembly specified in the Providers setting of the application definition does not contain the specified event provider class. The event provider will not be running if this error occurs. Notification Services creates an instance of the event provider by loading the assembly that is specified by the AssemblyName property of the application definition, and then creating an object of the type specified in the ClassName property. This error indicates that Notification Services could not create an instance of the class name from the given DLL. Most often, the wrong DLL is specified by the AssemblyName property, or the wrong class is specified by the ClassName property. The event log entry for this error contains a description of the exception that was thrown. Resolution First, make sure that the ClassName and AssemblyName properties are specified correctly. If you make changes, update the Notification Services application, and then enable events. The provider host will then try to restart the event provider. If the service has been stopped during the update, the provider host will try to restart the event provider when the service is restarted. |
4012 |
There is a completed quantum which includes the current real time. Cause In normal operation, the time interval that Notification Services processes should occur in the past. This error is most likely to occur if the system clock on the server hosting the database has been changed. Resolution Reset the clock on the database system to the correct time. |
6007 |
The assembly containing the delivery protocol could not be loaded. Cause This error occurs when the distributor cannot load the assembly that is specified for a custom delivery protocol. Resolution In your instance configuration, check the Protocols property to make sure that the assembly name specified for your custom protocol is correct. The assembly name must contain a full path. For example, if the assembly is called myprotocol.dll and is located in the C:\bin\CustomComponents directory, you must specify the assembly name as C:\bin\CustomComponents\myprotocol.dll. The assembly name that you specify must point to a valid managed code assembly. You can verify whether the file is a managed code assembly by trying to open it in the ildasm.exe tool that is available in the Microsoft .NET Framework SDK. |
9028 |
The assembly version does not match the database version. Cause This event occurs when the version of Notification Services does not match the version stored in the instance database. Notification Services requires that the version of the service executable file (NSService.exe) match the version of the database that was last modified (created, updated, or upgraded). The event log entry contains the AssemblyVersion, which is the version of the service executable, and the DatabaseVersion. Resolution There are three possible resolutions to this situation:
|
9041 |
The database was created with or upgraded to a different edition of Notification Services. Use the Notification Services edition that the database expects. Cause This event occurs when the edition of Notification Services, such as Standard or Enterprise, does not match the edition stored in the instance database. Notification Services requires that the edition of the service executable file (NSService.exe) match the edition in the instance database. The body of the event log entry contains the Notification Services edition, which is the edition of the service executable file, and the database edition. These values must be identical. Resolution There are three possible resolutions to this situation:
|
16001 |
The processing of a work item was aborted due to too many consecutive failures on the delivery channel. Cause This warning occurs when the distributor abandons the processing of a work item because too many consecutive delivery failures have occurred. It usually indicates some kind of prolonged failure condition on the delivery channel. Resolution Examine the delivery status of the individual notifications to determine the nature of the failures and what action to take to correct the condition. You can control the number of consecutive delivery failures that must occur before the distributor abandons the work item. You do this by specifying a value for the FailuresBeforeAbort setting in the ProtocolExecutionSettings section of the application definition, for each protocol supported by your notification class. If you do not supply a value for this property, the default value of 20 is used. |
4093 - 4099 |
A performance counter could not be updated. Cause Notification Services could not update performance counters. Notification Services will try to update the counters at the next quantum interval. If this error occurs several times, it is likely that the Notification Services performance counters are corrupted and will not be updated until the corruption is resolved. There are several possible reasons for the corruption, including a corrupted entry in the registry and problems in other performance monitor DLLs. Resolution If you do not need the Windows Performance counters to be updated, you can safely ignore this warning. For the recommended resolution and additional information, see the "Resolve Corrupted Notification Services Performance Counters" Knowledge Base article. |
See Also
Tasks
Viewing Notification Services Events
Concepts
Notification Services Event Format
Other Resources
Notification Services Errors and Events
Using Event Messages
Help and Information
Getting SQL Server 2005 Assistance
Change History
Release | History |
---|---|
17 July 2006 |
|