sealed trait RedirectState extends AnyRef

The table redirection feature includes specific states that manage the behavior of Delta clients during various stages of redirection. These states ensure query result consistency and prevent data loss. There are four states: 0. NO-REDIRECT: Indicates that table redirection is not enabled.

  1. ENABLE-REDIRECT-IN-PROGRESS: Table redirection is being enabled. Only read-only queries are allowed on the source table, while all write and metadata transactions are aborted. 2. REDIRECT-READY: The redirection setup is complete, and all queries on the source table are routed to the destination table. 3. DROP-REDIRECT-IN-PROGRESS: Table redirection is being disabled. Only read-only queries are allowed on the destination table, with all write and metadata transactions aborted. The valid procedures of state transition are: 0. NO-REDIRECT -> ENABLE-REDIRECT-IN-PROGRESS: Begins the table redirection process by transitioning the table to 'ENABLE-REDIRECT-IN-PROGRESS.' During this setup phase, all concurrent DML and DDL operations are temporarily blocked..
  2. ENABLE-REDIRECT-IN-PROGRESS -> REDIRECT-READY: Completes the setup for the table redirection feature. The table starts redirecting all queries to the destination location. 2. REDIRECT-READY -> DROP-REDIRECT-IN-PROGRESS: Initiates the process of removing table redirection by setting the table to 'DROP-REDIRECT-IN-PROGRESS.' This ensures that concurrent DML/DDL operations do not interfere with the cancellation process. 3. DROP-REDIRECT-IN-PROGRESS -> NO-REDIRECT: Completes the removal of table redirection. As a result, all DML, DDL, and read-only queries are no longer redirected to the previous destination. 4. ENABLE-REDIRECT-IN-PROGRESS -> NO-REDIRECT: This transition involves canceling table redirection while it is still in the process of being enabled.
Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. RedirectState
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract val name: String

Concrete 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. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  6. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  7. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  8. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  9. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  10. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  11. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  12. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  13. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  14. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  15. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  16. def toString(): String
    Definition Classes
    AnyRef → Any
  17. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  18. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  19. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()

Inherited from AnyRef

Inherited from Any

Ungrouped