Log Shipping Monitor out-of-synchronization messages are incorrectly raised in an outage period in Microsoft SQL Server 2000 Enterprise Edition (311177)



The information in this article applies to:

  • Microsoft SQL Server 2000 Enterprise Edition

This article was previously published under Q311177

SYMPTOMS

Log Shipping Monitor out-of-synchronization messages are incorrectly raised in an outage period. After you set up log shipping in Microsoft SQL Server 2000 Enterprise Edition, you can specify an outage period in the Suppress Alert Generation pane. The Suppress Alert Generation pane is in the Log Shipping Pair Properties dialog box. When you specify an outage period to suppress Log Shipping Monitor out-of-synchronization messages, out-of-synchronization messages may still be raised in that outage period.

CAUSE

The problem occurs because Log Shipping Monitor incorrectly calculates the outage period.

WORKAROUND

To work around this problem, use one of the following methods:
  • Method 1

    Let Log Shipping Monitor run through the outage period. Then, do not set an outage period for out-of-synchronization messages.
  • Method 2

    Add a SQL Server Agent job to disable out-of-synchronization messages and then to enable out-of-synchronization messages for the outage period. To do this, follow these steps:
    1. Start SQL Server Enterprise Manager.
    2. Connect to the server that is configured as Log Shipping Monitor.
    3. Expand Management, expand SQL Server Agent, and then click Jobs.
    4. Add a SQL Server Agent job to disable out-of-synchronization messages. To do this, follow these steps:
      1. Right-click Jobs, and then click New Job.
      2. In the Name box, type <disableAlertJobName>, and then click the Steps tab.

        Note The placeholder <disableAlertJobName> is the name of the job that disables out-of-synchronization messages.
      3. On the Steps tab, click New, and then type <disableAlertStepName> in the Step name box.

        Note The placeholder <disableAlertStepName> is the name of the step that disables out-of-synchronization messages.
      4. In the Type box, click Transact SQL Script (TSQL).
      5. Put the following Transact SQL code example in the Command box, and then click OK.
        EXEC msdb..sp_update_log_shipping_monitor_info 
          @primary_server_name='<primaryServerName>', 
          @primary_database_name='<primaryDatabaseName>',
          @secondary_server_name='<secondaryServerName>',
          @secondary_database_name='<secondaryDatabaseName>',
          @backup_threshold_alert_enabled=0, 
          @out_of_sync_threshold_alert_enabled=0
      6. Click the Schedules tab, and then click New Schedule.
      7. In the Name box, type <disableAlertScheduleName>, and then click Change.

        Note The placeholder <disableAlertScheduleName> is the name of the schedule that disables out-of-synchronization messages.
      8. In the Edit Recurring Job Schedule dialog box, enter the starting time that you want to disable out-of-synchronization messages, and then click OK.
      9. Click OK two times to close the Job Properties dialog box.
    5. Add a SQL Server Agent job to enable out-of-synchronization messages. To do this, follow these steps:
      1. Right-click Jobs, and then click New Job.
      2. In the Name box, type <enableAlertJobName>, and then click the Steps tab.

        Note The placeholder <enableAlertJobName> is the name of the job that enables out-of-synchronization messages.
      3. On the Steps tab, click New, and then type <enableAlertStepName> in the Step name box.

        Note The placeholder <enableAlertStepName> is the name of the step that enables out-of-synchronization messages.
      4. In the Type box, click Transact SQL Script (TSQL).
      5. Put the following Transact SQL code example in the Command box, and then click OK.
        EXEC msdb..sp_update_log_shipping_monitor_info 
          @primary_server_name='<primaryServerName>', 
          @primary_database_name='<primaryDatabaseName>',
          @secondary_server_name='<secondaryServerName>',
          @secondary_database_name='<secondaryDatabaseName>',
          @backup_threshold_alert_enabled=1, 
          @out_of_sync_threshold_alert_enabled=1
      6. Click the Schedules tab, and then click New Schedule.
      7. In the Name box, type <enableAlertScheduleName>, and then click Change.

        Note The placeholder <enableAlertScheduleName> is the name of the schedule that enables out-of-synchronization messages.
      8. In the Edit Recurring Job Schedule dialog box, enter the starting time that you want to enable out-of-synchronization messages, and then click OK.
      9. Click OK two times to close the Job Properties dialog box.
Note You must follow these steps for every Log shipping database that is configured with an outage period for out-of-synchronization messages.

STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.

MORE INFORMATION

For additional information about log shipping in SQL Server 2000, visit the following Microsoft Developer Network (MSDN) Web sites:

Log shipping in SQL Server 2000Log shipping in SQL Server 2000, part 2

Modification Type:MajorLast Reviewed:12/27/2004
Keywords:kbprb kbtshoot kbbug kbpending KB311177 kbAudDeveloper kbAudITPRO