scala.concurrent.stm.Txn

OptimisticFailureCause

case class OptimisticFailureCause(category: Symbol, trigger: Option[Any]) extends TransientRollbackCause with Product with Serializable

The RollbackCause for a NestingLevel whose optimistic execution was invalid, and that should be retried. The specific situations in which an optimistic failure can occur are specific to the STM algorithm, but may include:

(*) - Some STMs perform validation, conflict detection and deadlock cycle breaking using algorithms that are conservative approximations. This means that any particular attempt to execute an atomic block might fail spuriously.

category

an STM-specific label for the reason behind this optimistic failure. The set of possible categories is bounded.

trigger

the specific object that led to the optimistic failure, if it is available, otherwise None.

Linear Supertypes
Serializable, java.io.Serializable, Product, Equals, TransientRollbackCause, RollbackCause, AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. OptimisticFailureCause
  2. Serializable
  3. Serializable
  4. Product
  5. Equals
  6. TransientRollbackCause
  7. RollbackCause
  8. AnyRef
  9. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new OptimisticFailureCause(category: Symbol, trigger: Option[Any])

    category

    an STM-specific label for the reason behind this optimistic failure. The set of possible categories is bounded.

    trigger

    the specific object that led to the optimistic failure, if it is available, otherwise None.

Value Members

  1. final def !=(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  5. val category: Symbol

    an STM-specific label for the reason behind this optimistic failure.

    an STM-specific label for the reason behind this optimistic failure. The set of possible categories is bounded.

  6. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  7. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  8. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  9. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  10. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  11. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  12. final def notify(): Unit

    Definition Classes
    AnyRef
  13. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  14. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  15. val trigger: Option[Any]

    the specific object that led to the optimistic failure, if it is available, otherwise None.

  16. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  17. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  18. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Serializable

Inherited from java.io.Serializable

Inherited from Product

Inherited from Equals

Inherited from TransientRollbackCause

Inherited from RollbackCause

Inherited from AnyRef

Inherited from Any

Ungrouped