Table of Contents

Class PreferredNodeTransition

Namespace
Quartz.Impl.AdoJobStore
Assembly
Quartz.dll

The compare-and-swap UpdateTriggerPreferredNodeConditional(ConnectionAndTransactionHolder, TriggerKey, PreferredNodeTransition, CancellationToken) attempts: the pin the caller observed, and the pin it wants to put in its place.

public sealed record PreferredNodeTransition : IEquatable<PreferredNodeTransition>
Inheritance
PreferredNodeTransition
Implements
Inherited Members

Remarks

Keeping the two pins as one value is what makes the operation readable as a CAS — the alternative, four loose parameters in expected/new pairs, is trivial to transpose and the compiler cannot tell.

Properties

Expected

The pin the row must still hold for the swap to happen. Read at acquisition time; if anything re-pinned the trigger since, no row matches and the swap reports zero rows updated.

public required PreferredNode Expected { get; init; }

Property Value

PreferredNode

New

The pin to write when the row still holds Expected.

public required PreferredNode New { get; init; }

Property Value

PreferredNode