Class Options

java.lang.Object
com.google.cloud.spanner.Options
All Implemented Interfaces:
Serializable

public final class Options extends Object implements Serializable
Specifies options for various spanner operations
See Also:
  • Method Details

    • commitStats

      public static Options.TransactionOption commitStats()
      Specifying this instructs the transaction to request CommitStats from the backend.
    • optimisticLock

      public static Options.TransactionOption optimisticLock()
      Specifying this instructs the transaction to request Optimistic Lock from the backend. In this concurrency mode, operations during the execution phase, i.e., reads and queries, are performed without acquiring locks, and transactional consistency is ensured by running a validation process in the commit phase (when any needed locks are acquired). The validation process succeeds only if there are no conflicting committed transactions (that committed mutations to the read data at a commit timestamp after the read timestamp).
    • excludeTxnFromChangeStreams

      public static Options.UpdateTransactionOption excludeTxnFromChangeStreams()
      Specifying this instructs the transaction to be excluded from being recorded in change streams with the DDL option `allow_txn_exclusion=true`. This does not exclude the transaction from being recorded in the change streams with the DDL option `allow_txn_exclusion` being false or unset.
    • limit

      public static Options.ReadOption limit(long limit)
      Specifying this will cause the read to yield at most this many rows. This should be greater than 0.
    • orderBy

      public static Options.ReadOption orderBy(Options.RpcOrderBy orderBy)
      Specifies the order_by to use for the RPC.
    • lockHint

      public static Options.ReadOption lockHint(Options.RpcLockHint orderBy)
    • prefetchChunks

      public static Options.ReadAndQueryOption prefetchChunks(int prefetchChunks)
      Specifying this will allow the client to prefetch up to prefetchChunks PartialResultSet chunks for read and query. The data size of each chunk depends on the server implementation but a good rule of thumb is that each chunk will be up to 1 MiB. Larger values reduce the likelihood of blocking while consuming results at the cost of greater memory consumption. prefetchChunks should be greater than 0. To get good performance choose a value that is large enough to allow buffering of chunks for an entire row. Apart from the buffered chunks, there can be at most one more row buffered in the client.
    • bufferRows

      public static Options.ReadAndQueryOption bufferRows(int bufferRows)
    • priority

      Specifies the priority to use for the RPC.
    • maxCommitDelay

      public static Options.TransactionOption maxCommitDelay(Duration maxCommitDelay)
    • tag

      Specifying this will cause the reads, queries, updates and writes operations statistics collection to be grouped by tag.
    • pageSize

      public static Options.ListOption pageSize(int pageSize)
      Specifying this will cause the list operations to fetch at most this many records in a page.
    • dataBoostEnabled

      public static com.google.cloud.spanner.Options.DataBoostQueryOption dataBoostEnabled(Boolean dataBoostEnabled)
      If this is for PartitionedRead or PartitionedQuery and this field is set to `true`, the request will be executed via Spanner independent compute resources.
    • lastStatement

      public static Options.QueryUpdateOption lastStatement()
      If set to true, this option marks the end of the transaction. The transaction should be committed or aborted after this statement executes, and attempts to execute any other requests against this transaction (including reads and queries) will be rejected. Mixing mutations with statements that are marked as the last statement is not allowed.

      For DML statements, setting this option may cause some error reporting to be deferred until commit time (e.g. validation of unique constraints). Given this, successful execution of a DML statement should not be assumed until the transaction commits.

    • pageToken

      public static Options.ListOption pageToken(String pageToken)
      Specifying this will cause the list operation to start fetching the record from this onwards.
    • filter

      public static Options.ListOption filter(String filter)
      Specifying this will cause the given filter to be applied to the list operation. List operations that support this options are: If this option is passed to any other list operation, it will throw an IllegalArgumentException.
      Parameters:
      filter - An expression for filtering the results of the request. Filter rules are case insensitive. Some examples of using filters are:
      • name:* The entity has a name.
      • name:Howl The entity's name contains "howl".
      • name:HOWL Equivalent to above.
      • NAME:howl Equivalent to above.
      • labels.env:* The entity has the label env.
      • labels.env:dev The entity has a label env whose value contains "dev".
      • name:howl labels.env:dev The entity's name contains "howl" and it has the label env whose value contains "dev".
    • etag

      public static Options.DeleteAdminApiOption etag(String etag)
      Specifying this will help in optimistic concurrency control as a way to help prevent simultaneous deletes of an instance config from overwriting each other. Operations that support this option are:
    • validateOnly

      public static Options.CreateUpdateDeleteAdminApiOption validateOnly(Boolean validateOnly)
    • directedRead

      public static Options.ReadAndQueryOption directedRead(DirectedReadOptions directedReadOptions)
      Option to request DirectedRead for ReadOnlyTransaction and SingleUseTransaction.

      The DirectedReadOptions can be used to indicate which replicas or regions should be used for non-transactional reads or queries. Not all requests can be sent to non-leader replicas. In particular, some requests such as reads within read-write transactions must be sent to a designated leader replica. These requests ignore DirectedReadOptions.

    • decodeMode

      public static Options.ReadAndQueryOption decodeMode(DecodeMode decodeMode)
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object