Compartilhar via


Application.ChronicleQuantumLimit Property

Gets or sets an integer that specifies the logical (quantum) clock can fall behind the real-time clock before skipping event chronicle rule firings.

Namespace: Microsoft.SqlServer.Management.Nmo
Assembly: Microsoft.SqlServer.Smo (in microsoft.sqlserver.smo.dll)

Syntax

'Declaration
Public Property ChronicleQuantumLimit As Integer
public int ChronicleQuantumLimit { get; set; }
public:
property int ChronicleQuantumLimit {
    int get ();
    void set (int value);
}
/** @property */
public int get_ChronicleQuantumLimit ()

/** @property */
public void set_ChronicleQuantumLimit (int value)
public function get ChronicleQuantumLimit () : int

public function set ChronicleQuantumLimit (value : int)

Property Value

A Int32 that specifies a number of quantum clock intervals.

Remarks

Notification Services uses a quantum clock to schedule rule firings. If the Notification Services engine that runs the application was down, or if the workload is causing the application to fall behind, the quantum clock can fall behind the real-time clock. This means that Notification Services falls behind on maintaining the chronicle (and any other actions performed by your chronicle rules).

Quantum limits ensure that the application does not fall too far behind the real-time clock, helping to ensure that newer data is processed in a timely manner.

If you use the Application(Instance,String) constructor, the default value is 1440, which is 1,440 minutes or 1 day, assuming a default QuantumDuration value of 1 minute. If you use the default constructor, you must set a value for this property.

0 indicates no chronicle quantum limit. No chronicle rule firings are skipped.

Example

The following example shows how to set all application execution settings, including the chronicle quantum limit:

// Define application execution settings
myApplication.QuantumDuration = new TimeSpan(0, 0, 15);
myApplication.PerformanceQueryInterval = new TimeSpan(0, 0, 5);
myApplication.SubscriptionQuantumLimit = 1;
myApplication.ChronicleQuantumLimit = 1;
myApplication.VacuumRetentionAge = new TimeSpan(0, 0, 1);
myApplication.LogBeforeDeliveryAttempts = false;
myApplication.LogNotificationText = false;
myApplication.LogStatusInfo = false;
myApplication.EventThrottle = 500;
myApplication.NotificationThrottle = 500;
myApplication.SubscriptionThrottle = 500;
myApplication.ProcessEventsInOrder = false;
' Define application execution settings
myApplication.QuantumDuration = New TimeSpan(0, 0, 15)
myApplication.PerformanceQueryInterval = New TimeSpan(0, 0, 5)
myApplication.SubscriptionQuantumLimit = 1
myApplication.ChronicleQuantumLimit = 1
myApplication.VacuumRetentionAge = New TimeSpan(0, 0, 1)
myApplication.LogBeforeDeliveryAttempts = False
myApplication.LogNotificationText = False
myApplication.LogStatusInfo = False
myApplication.EventThrottle = 500
myApplication.NotificationThrottle = 500
myApplication.SubscriptionThrottle = 500
myApplication.ProcessEventsInOrder = False

Thread Safety

Any public static (Shared in Microsoft Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

For a list of the supported platforms, see Hardware and Software Requirements for Installing SQL Server 2005.

Target Platforms

For a list of the supported platforms, see Hardware and Software Requirements for Installing SQL Server 2005.

See Also

Reference

Application Class
Application Members
Microsoft.SqlServer.Management.Nmo Namespace

Other Resources

ChronicleQuantumLimit Element (ADF)