Trait

com.dispalt.vitess

Client

Related Doc: package vitess

Permalink

trait Client extends AnyRef

Handles Client operations, a mix of transaction, execute and streaming.

Linear Supertypes
AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Client
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract val channel: Channel

    Permalink
  2. abstract val keyspace: String

    Permalink

Concrete Value Members

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

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

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

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

    Permalink
    Definition Classes
    Any
  5. def begin()(implicit ctx: VitessCallerCtx, ec: ExecutionContext): Future[Option[Session]]

    Permalink

    Begin returns the session ticket, but also attaches it to the TransactionalExecutionContext if it's available.

    Begin returns the session ticket, but also attaches it to the TransactionalExecutionContext if it's available.

    ctx

    ctx

    ec

    ec

  6. def client(implicit ctx: VitessCallerCtx): VitessStub

    Permalink
  7. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  8. def commit()(implicit ctx: VitessCallerCtx, ec: ExecutionContext): Future[Unit]

    Permalink

    commit finishes out the transaction, and nullifys the session ticket.

    commit finishes out the transaction, and nullifys the session ticket. It will throw a NotInTransaction if you do not have a valid TransactionalExecutionContext.

  9. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  10. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  11. def execute(query: BoundQuery, tabletType: TabletType)(implicit ctx: VitessCallerCtx, ec: ExecutionContext): RpcResponse

    Permalink

    This is a slightly less low-level call that really does two big things.

    This is a slightly less low-level call that really does two big things.

    1) it converts the result into something nice. 2) It handles threading the TxnEc. The way Session works is that every operation needs a session from the previous response of an operation to continue the txn. This uses the TxnEc to achieve that.

  12. def execute(query: String, bind: Map[String, _], tabletType: TabletType)(implicit ctx: VitessCallerCtx, ec: ExecutionContext): RpcResponse

    Permalink
  13. def finalize(): Unit

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

    Permalink
    Definition Classes
    AnyRef → Any
  15. def hashCode(): Int

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

    Permalink
    Definition Classes
    Any
  17. val logger: Logger

    Permalink
  18. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  19. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  20. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  21. def rollback()(implicit ctx: VitessCallerCtx, ec: ExecutionContext): Future[_]

    Permalink

    See commit() but for rollbacks

  22. def streamExecute(query: String, bind: Map[String, _], tabletType: TabletType)(observer: StreamObserver[Row])(implicit ctx: VitessCallerCtx, ec: ExecutionContext): Unit

    Permalink

    Executes the StreamExecuteRequest with vtgate, with some extra help for converting to rows.

    Executes the StreamExecuteRequest with vtgate, with some extra help for converting to rows. Below is some information about how fields vs values work.

    As returned by StreamExecute, the first QueryResult has the fields set, and subsequent QueryResult have rows set. And as Execute, len(QueryResult[0].fields) is always equal to len(row) (for each row in rows for each QueryResult in QueryResult[1:]).

  23. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  24. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  25. def transaction[A](block: (TransactionalExecutionContext) ⇒ Future[A])(implicit ctx: VitessCallerCtx, ec: ExecutionContext): Future[A]

    Permalink

    Transaction takes a TransactionalExecutionContext => Future and handles all the cleanup of failed attempts etc.

  26. final def wait(): Unit

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped