Google Cloud Spanner C++ Client 2.13.0
A C++ Client Library for Google Cloud Spanner
|
Contains all the Cloud Spanner C++ client types and functions. More...
Classes | |
class | Backup |
This class identifies a Cloud Spanner Backup. More... | |
struct | BatchDmlResult |
The result of executing a batch of DML statements. More... | |
class | Bytes |
A representation of the Spanner BYTES type: variable-length binary data. More... | |
class | Client |
Performs database client operations on Spanner. More... | |
class | ClientOptions |
ClientOptions allows the caller to set a variety of options when constructing a Client instance. More... | |
class | CommitOptions |
Set options on calls to spanner::Client::Commit() . More... | |
struct | CommitResult |
The result of committing a Transaction. More... | |
struct | CommitReturnStatsOption |
Option for google::cloud::Options to return additional statistics about the committed transaction in a spanner::CommitResult . More... | |
struct | CommitStats |
Statistics returned for a committed Transaction. More... | |
struct | CommitTimestamp |
A sentinel type used to update a commit timestamp column. More... | |
class | Connection |
A connection to a Spanner database instance. More... | |
struct | ConnectionOptionsTraits |
The traits to configure `ConnectionOptions<T>` for Cloud Spanner. More... | |
class | CreateInstanceRequestBuilder |
CreateInstanceRequestBuilder is a builder class for google::spanner::admin::instance::v1::CreateInstanceRequest More... | |
class | CustomerManagedEncryption |
Use encryption with encryption_key . More... | |
class | Database |
This class identifies a Cloud Spanner Database. More... | |
class | DatabaseAdminClient |
Performs database administration operations on Spanner. More... | |
class | DatabaseAdminConnection |
A connection to the Cloud Spanner instance administration service. More... | |
class | Decimal |
A representation of the Spanner NUMERIC type: an exact decimal value with a maximum integer precision (kIntPrecision) and rounding to a maximum fractional precision (kFracPrecision). More... | |
class | DefaultEncryption |
Use the per-operation default encryption: More... | |
class | DmlResult |
Represents the result of a data modifying operation using spanner::Client::ExecuteDml() . More... | |
class | GoogleEncryption |
Use Google default encryption. More... | |
class | Instance |
This class identifies a Cloud Spanner Instance. More... | |
class | InstanceAdminClient |
Performs instance administration operations on Cloud Spanner. More... | |
class | InstanceAdminConnection |
A connection to the Cloud Spanner instance administration service. More... | |
class | Json |
A simple representation for the Spanner JSON type: a lightweight, text-based, language-independent data interchange format. More... | |
class | JsonB |
JsonB is a variant of Json (see above). More... | |
class | KeyBound |
The KeyBound class is a regular type that represents an open or closed endpoint for a range of keys. More... | |
class | KeySet |
The KeySet class is a regular type that represents a collection of Key s. More... | |
class | Mutation |
A wrapper for Cloud Spanner mutations. More... | |
struct | PartitionDataBoostOption |
Option for google::cloud::Options to use "data boost" in the partitions returned from Client::PartitionRead() or PartitionQuery() . More... | |
struct | PartitionedDmlResult |
The result of executing a Partitioned DML query. More... | |
struct | PartitionOptions |
Options passed to Client::PartitionRead or Client::PartitionQuery . More... | |
struct | PartitionSizeOption |
Option for google::cloud::Options to set the desired partition size to be generated by Client::PartitionRead() or PartitionQuery() . More... | |
struct | PartitionsMaximumOption |
Option for google::cloud::Options to set the desired maximum number of partitions to return from Client::PartitionRead() or PartitionQuery() . More... | |
class | ProfileDmlResult |
Represents the result and profile stats of a data modifying operation using spanner::Client::ProfileDml() . More... | |
class | ProfileQueryResult |
Represents the stream of Rows and profile stats returned from spanner::Client::ProfileQuery() . More... | |
struct | QueryOptimizerStatisticsPackageOption |
Option for google::cloud::Options to set the optimizer statistics package used in an SQL query. More... | |
struct | QueryOptimizerVersionOption |
Option for google::cloud::Options to set the optimizer version used in an SQL query. More... | |
class | QueryOptions |
These QueryOptions allow users to configure features about how their SQL queries executes on the server. More... | |
class | QueryPartition |
The QueryPartition class is a regular type that represents a single slice of a parallel SQL read. More... | |
struct | ReadIndexNameOption |
Option for google::cloud::Options to set the name of an index on a database table. More... | |
struct | ReadOptions |
Options passed to Client::Read or Client::PartitionRead . More... | |
class | ReadPartition |
The ReadPartition class is a regular type that represents a single slice of a parallel Read operation. More... | |
struct | ReadRowLimitOption |
Option for google::cloud::Options to set a limit on the number of rows to yield from Client::Read() . More... | |
struct | RequestPriorityOption |
Option for google::cloud::Options to set a spanner::RequestPriority . More... | |
struct | RequestTagOption |
Option for google::cloud::Options to set a per-request tag. More... | |
class | ResultSourceInterface |
Defines the interface for RowStream implementations. More... | |
struct | RouteToLeaderOption |
Control "route to leader region" headers. More... | |
class | Row |
A Row is a sequence of columns each with a name and an associated Value . More... | |
class | RowStream |
Represents the stream of Rows returned from spanner::Client::Read() or spanner::Client::ExecuteQuery() . More... | |
class | RowStreamIterator |
A RowStreamIterator is an Input Iterator (see below) that returns a sequence of StatusOr<Row> objects. More... | |
struct | SessionCreatorRoleOption |
Option for google::cloud::Options to set the database role used for session creation. More... | |
struct | SessionPoolActionOnExhaustionOption |
Option for google::cloud::Options to set the action to take when attempting to allocate a session when the pool is exhausted. More... | |
struct | SessionPoolKeepAliveIntervalOption |
Option for google::cloud::Options to set the interval at which we refresh sessions so they don't get collected by the backend GC. More... | |
struct | SessionPoolLabelsOption |
Option for google::cloud::Options to set the labels used when creating sessions within the pool. More... | |
struct | SessionPoolMaxIdleSessionsOption |
Option for google::cloud::Options to set the maximum number of sessions to keep in the pool in an idle state. More... | |
struct | SessionPoolMaxSessionsPerChannelOption |
Option for google::cloud::Options to set the maximum number of sessions to create on each channel. More... | |
struct | SessionPoolMinSessionsOption |
Option for google::cloud::Options to set the minimum number of sessions to keep in the pool. More... | |
class | SessionPoolOptions |
Controls the session pool maintained by a spanner::Client . More... | |
struct | SpannerBackoffPolicyOption |
Option for google::cloud::Options to set a spanner::BackoffPolicy . More... | |
struct | SpannerPollingPolicyOption |
Option for google::cloud::Options to set a spanner::PollingPolicy . More... | |
struct | SpannerRetryPolicyOption |
Option for google::cloud::Options to set a spanner::RetryPolicy . More... | |
class | SqlStatement |
Represents a potentially parameterized SQL statement. More... | |
struct | StreamingResumabilityBufferSizeOption |
Option for google::cloud::Options to set a limit on how much data will be buffered to guarantee resumability of a streaming read or SQL query. More... | |
class | Timestamp |
A representation of the Spanner TIMESTAMP type: An instant in time. More... | |
class | Transaction |
The representation of a Cloud Spanner transaction. More... | |
struct | TransactionTagOption |
Option for google::cloud::Options to set a per-transaction tag. More... | |
class | TupleStream |
A TupleStream<Tuple> defines a range that parses Tuple objects from the given range of RowStreamIterator s. More... | |
class | TupleStreamIterator |
A TupleStreamIterator<Tuple> is an "Input Iterator" that wraps a RowStreamIterator , parsing its elements into a sequence of StatusOr<Tuple> objects. More... | |
class | UpdateInstanceRequestBuilder |
UpdateInstanceRequestBuilder is a builder class for google::spanner::admin::instance::v1::UpdateInstanceRequest More... | |
class | Value |
The Value class represents a type-safe, nullable Spanner value. More... | |
Typedefs | |
using | BackoffPolicy = ::google::cloud::internal::BackoffPolicy |
The base class for backoff policies. More... | |
using | ExponentialBackoffPolicy = google::cloud::internal::ExponentialBackoffPolicy |
A truncated exponential backoff policy with randomized periods. More... | |
using | ConnectionOptions = google::cloud::ConnectionOptions< ConnectionOptionsTraits > |
The options for Cloud Spanner connections. More... | |
using | ListDatabaseRange = ::google::cloud::internal::PaginationRange< google::spanner::admin::database::v1::Database > |
An input range to stream all the databases in a Cloud Spanner instance. More... | |
using | ListBackupOperationsRange = google::cloud::internal::PaginationRange< google::longrunning::Operation > |
An input range to stream backup operations in Cloud Spanner instance. More... | |
using | ListDatabaseOperationsRange = google::cloud::internal::PaginationRange< google::longrunning::Operation > |
An input range to stream database operations in Cloud Spanner instance. More... | |
using | ListBackupsRange = ::google::cloud::internal::PaginationRange< google::spanner::admin::database::v1::Backup > |
An input range to stream backups in Cloud Spanner instance. More... | |
using | Date = ::absl::CivilDay |
Represents a date in the proleptic Gregorian calendar as a triple of year, month (1-12), and day (1-31). More... | |
using | EncryptionConfig = absl::variant< DefaultEncryption, GoogleEncryption, CustomerManagedEncryption > |
Specify the encryption configuration for any of the following operations: More... | |
using | IamUpdater = ::google::cloud::IamUpdater |
Type alias for google::cloud::IamUpdater. More... | |
using | ListInstancesRange = ::google::cloud::internal::PaginationRange< google::spanner::admin::instance::v1::Instance > |
An input range to stream all the instances in a Cloud project. More... | |
using | ListInstanceConfigsRange = ::google::cloud::internal::PaginationRange< google::spanner::admin::instance::v1::InstanceConfig > |
An input range to stream all the instance configs in a Cloud project. More... | |
using | Key = std::vector< Value > |
A Key is a collection of Value objects where the i'th value corresponds to the i'th component of the table or primary index key. More... | |
using | Mutations = std::vector< Mutation > |
An ordered sequence of mutations to pass to Client::Commit() or return from the Client::Commit() mutator. More... | |
using | InsertMutationBuilder = spanner_internal::WriteMutationBuilder< spanner_internal::InsertOp > |
A helper class to construct "insert" mutations. More... | |
using | UpdateMutationBuilder = spanner_internal::WriteMutationBuilder< spanner_internal::UpdateOp > |
A helper class to construct "update" mutations. More... | |
using | InsertOrUpdateMutationBuilder = spanner_internal::WriteMutationBuilder< spanner_internal::InsertOrUpdateOp > |
A helper class to construct "insert_or_update" mutations. More... | |
using | ReplaceMutationBuilder = spanner_internal::WriteMutationBuilder< spanner_internal::ReplaceOp > |
A helper class to construct "replace" mutations. More... | |
using | DeleteMutationBuilder = spanner_internal::DeleteMutationBuilder |
A helper class to construct "delete" mutations. More... | |
using | SpannerPolicyOptionList = OptionList< spanner::SpannerRetryPolicyOption, SpannerBackoffPolicyOption, SpannerPollingPolicyOption > |
List of all "policy" options. More... | |
using | SessionPoolOptionList = OptionList< RouteToLeaderOption, SessionCreatorRoleOption, SessionPoolMinSessionsOption, SessionPoolMaxSessionsPerChannelOption, SessionPoolMaxIdleSessionsOption, SessionPoolActionOnExhaustionOption, SessionPoolKeepAliveIntervalOption, SessionPoolLabelsOption > |
List of all SessionPool options. More... | |
using | RequestOptionList = OptionList< RequestPriorityOption, RequestTagOption > |
List of Request options for client::ExecuteBatchDml() . More... | |
using | PollingPolicy = ::google::cloud::PollingPolicy |
template<typename Retry = LimitedTimeRetryPolicy, typename Backoff = ExponentialBackoffPolicy> | |
using | GenericPollingPolicy = ::google::cloud::GenericPollingPolicy< Retry, Backoff > |
using | ExecutionPlan = ::google::spanner::v1::QueryPlan |
Contains a hierarchical representation of the operations the database server performs in order to execute a particular SQL statement. More... | |
using | RetryPolicy = ::google::cloud::internal::TraitBasedRetryPolicy< spanner_internal::SafeGrpcRetry > |
The base class for retry policies. More... | |
using | LimitedTimeRetryPolicy = ::google::cloud::internal::LimitedTimeRetryPolicy< spanner_internal::SafeGrpcRetry > |
A retry policy that limits based on time. More... | |
using | LimitedErrorCountRetryPolicy = google::cloud::internal::LimitedErrorCountRetryPolicy< spanner_internal::SafeGrpcRetry > |
A retry policy that limits the number of times a request can fail. More... | |
using | TransactionRerunPolicy = ::google::cloud::internal::TraitBasedRetryPolicy< spanner_internal::SafeTransactionRerun > |
The base class for transaction rerun policies. More... | |
using | LimitedTimeTransactionRerunPolicy = google::cloud::internal::LimitedTimeRetryPolicy< spanner_internal::SafeTransactionRerun > |
A transaction rerun policy that limits the duration of the rerun loop. More... | |
using | LimitedErrorCountTransactionRerunPolicy = google::cloud::internal::LimitedErrorCountRetryPolicy< spanner_internal::SafeTransactionRerun > |
A transaction rerun policy that limits the number of failures. More... | |
template<typename Duration > | |
using | sys_time = std::chrono::time_point< std::chrono::system_clock, Duration > |
Convenience alias. More... | |
using | TracingOptions = ::google::cloud::TracingOptions |
The configuration parameters for RPC/protobuf tracing. More... | |
using | Numeric = Decimal< DecimalMode::kGoogleSQL > |
Most users only need the Numeric or PgNumeric specializations of Decimal . More... | |
using | PgNumeric = Decimal< DecimalMode::kPostgreSQL > |
Most users only need the Numeric or PgNumeric specializations of Decimal . More... | |
Enumerations | |
enum class | DecimalMode { kGoogleSQL , kPostgreSQL } |
enum class | ActionOnExhaustion { kBlock , kFail } |
Action to take when the session pool is exhausted. More... | |
enum class | RequestPriority { kLow , kMedium , kHigh } |
Functions | |
StatusOr< Backup > | MakeBackup (std::string const &full_name) |
Constructs a Backup from the given full_name . More... | |
std::shared_ptr< spanner::Connection > | MakeConnection (spanner::Database const &db, Options opts={}) |
Returns a Connection object that can be used for interacting with Spanner. More... | |
std::shared_ptr< Connection > | MakeConnection (Database const &db, ConnectionOptions const &connection_options, SessionPoolOptions session_pool_options=SessionPoolOptions()) |
Returns a Connection object that can be used for interacting with Spanner. More... | |
std::shared_ptr< Connection > | MakeConnection (Database const &db, ConnectionOptions const &connection_options, SessionPoolOptions session_pool_options, std::unique_ptr< RetryPolicy > retry_policy, std::unique_ptr< BackoffPolicy > backoff_policy) |
Returns a Connection object that can be used for interacting with Spanner. More... | |
StatusOr< Database > | MakeDatabase (std::string const &full_name) |
Constructs a Database from the given full_name . More... | |
std::shared_ptr< spanner::DatabaseAdminConnection > | MakeDatabaseAdminConnection (Options opts={}) |
Returns a DatabaseAdminConnection object that can be used for interacting with Cloud Spanner's admin APIs. More... | |
std::shared_ptr< DatabaseAdminConnection > | MakeDatabaseAdminConnection (ConnectionOptions const &options) |
Returns a DatabaseAdminConnection object that can be used for interacting with Cloud Spanner's admin APIs. More... | |
std::shared_ptr< DatabaseAdminConnection > | MakeDatabaseAdminConnection (ConnectionOptions const &options, std::unique_ptr< RetryPolicy > retry_policy, std::unique_ptr< BackoffPolicy > backoff_policy, std::unique_ptr< PollingPolicy > polling_policy) |
Returns a DatabaseAdminConnection object that can be used for interacting with Cloud Spanner's admin APIs. More... | |
StatusOr< Instance > | MakeInstance (std::string const &full_name) |
Constructs an Instance from the given full_name . More... | |
std::shared_ptr< spanner::InstanceAdminConnection > | MakeInstanceAdminConnection (Options opts={}) |
Returns an InstanceAdminConnection object that can be used for interacting with Cloud Spanner's admin APIs. More... | |
std::shared_ptr< InstanceAdminConnection > | MakeInstanceAdminConnection (ConnectionOptions const &options) |
Returns an InstanceAdminConnection object that can be used for interacting with Cloud Spanner's admin APIs. More... | |
std::shared_ptr< InstanceAdminConnection > | MakeInstanceAdminConnection (ConnectionOptions const &options, std::unique_ptr< RetryPolicy > retry_policy, std::unique_ptr< BackoffPolicy > backoff_policy, std::unique_ptr< PollingPolicy > polling_policy) |
Returns an InstanceAdminConnection object that can be used for interacting with Cloud Spanner's admin APIs. More... | |
std::ostream & | operator<< (std::ostream &os, Json const &json) |
Outputs a JSON-formatted string to the provided stream. More... | |
std::ostream & | operator<< (std::ostream &os, JsonB const &json) |
Outputs a JSON-formatted string to the provided stream. More... | |
template<typename... Ts> | |
Key | MakeKey (Ts &&... ts) |
Constructs a Key from the given arguments. More... | |
template<typename... Ts> | |
KeyBound | MakeKeyBoundClosed (Ts &&... ts) |
Returns a "closed" KeyBound with a Key constructed from the given arguments. More... | |
template<typename... Ts> | |
KeyBound | MakeKeyBoundOpen (Ts &&... ts) |
Returns an "open" KeyBound with a Key constructed from the given arguments. More... | |
template<typename... Ts> | |
Mutation | MakeInsertMutation (std::string table_name, std::vector< std::string > columns, Ts &&... values) |
Creates a simple insert mutation for the values in values . More... | |
template<typename... Ts> | |
Mutation | MakeUpdateMutation (std::string table_name, std::vector< std::string > columns, Ts &&... values) |
Creates a simple update mutation for the values in values . More... | |
template<typename... Ts> | |
Mutation | MakeInsertOrUpdateMutation (std::string table_name, std::vector< std::string > columns, Ts &&... values) |
Creates a simple "insert or update" mutation for the values in values . More... | |
template<typename... Ts> | |
Mutation | MakeReplaceMutation (std::string table_name, std::vector< std::string > columns, Ts &&... values) |
Creates a simple "replace" mutation for the values in values . More... | |
Mutation | MakeDeleteMutation (std::string table_name, KeySet keys) |
Creates a simple "delete" mutation for the values in keys . More... | |
template<DecimalMode Mode> | |
StatusOr< Decimal< Mode > > | MakeDecimal (std::string s) |
Construction from a string, in decimal fixed- or floating-point formats. More... | |
template<DecimalMode Mode> | |
StatusOr< Decimal< Mode > > | MakeDecimal (double d) |
Construction from a double. More... | |
template<typename T , DecimalMode Mode> | |
StatusOr< Decimal< Mode > > | MakeDecimal (T i, int exponent=0) |
Construction from an integer i , scaled by 10^exponent . More... | |
template<DecimalMode Mode> | |
double | ToDouble (Decimal< Mode > const &d) |
Conversion to the closest double value, with possible loss of precision. More... | |
bool | operator== (PartitionOptions const &a, PartitionOptions const &b) |
bool | operator!= (PartitionOptions const &a, PartitionOptions const &b) |
Options | ToOptions (PartitionOptions const &) |
Converts PartitionOptions to common Options . More... | |
PartitionOptions | ToPartitionOptions (Options const &) |
Converts common Options to PartitionOptions . More... | |
StatusOr< std::string > | SerializeQueryPartition (QueryPartition const &query_partition) |
Serializes an instance of QueryPartition to a string of bytes. More... | |
StatusOr< QueryPartition > | DeserializeQueryPartition (std::string const &serialized_query_partition) |
Deserializes the provided string into a QueryPartition . More... | |
bool | operator== (ReadOptions const &lhs, ReadOptions const &rhs) |
bool | operator!= (ReadOptions const &lhs, ReadOptions const &rhs) |
Options | ToOptions (ReadOptions const &) |
Converts ReadOptions to common Options . More... | |
ReadOptions | ToReadOptions (Options const &) |
Converts common Options to ReadOptions . More... | |
StatusOr< std::string > | SerializeReadPartition (ReadPartition const &read_partition) |
Serializes an instance of ReadPartition to a string of bytes. More... | |
StatusOr< ReadPartition > | DeserializeReadPartition (std::string const &serialized_read_partition) |
Deserializes the provided string into a ReadPartition . More... | |
Row | MakeTestRow (std::vector< std::pair< std::string, Value > > pairs) |
Creates a Row with the specified column names and values. More... | |
template<typename... Ts> | |
Row | MakeTestRow (Ts &&... ts) |
Creates a Row with Value s created from the given arguments and with auto-generated column names. More... | |
template<typename Tuple , typename RowRange > | |
TupleStream< Tuple > | StreamOf (RowRange &&range) |
A factory that creates a TupleStream<Tuple> by wrapping the given range . More... | |
template<typename RowRange > | |
auto | GetSingularRow (RowRange range) -> typename std::decay< decltype(*range.begin())>::type |
Returns the only row from a range that contains exactly one row. More... | |
StatusOr< Timestamp > | MakeTimestamp (absl::Time) |
Construct a Timestamp from an absl::Time . More... | |
StatusOr< Timestamp > | MakeTimestamp (protobuf::Timestamp const &) |
Construct a Timestamp from a google::protobuf::Timestamp . More... | |
template<typename Duration > | |
StatusOr< Timestamp > | MakeTimestamp (sys_time< Duration > const &tp) |
Construct a Timestamp from a std::chrono::time_point on the system clock. More... | |
Transaction | MakeReadOnlyTransaction (Transaction::ReadOnlyOptions opts={}) |
Create a read-only transaction configured with opts . More... | |
Transaction | MakeReadWriteTransaction (Transaction::ReadWriteOptions opts={}) |
Create a read-write transaction configured with opts . More... | |
Transaction | MakeReadWriteTransaction (Transaction const &txn, Transaction::ReadWriteOptions opts={}) |
Create a read-write transaction configured with opts , and sharing lock priority with txn . More... | |
template<typename T > | |
Value | MakeNullValue () |
Factory to construct a "null" Value of the specified type T . More... | |
int constexpr | VersionMajor () |
The Cloud Spanner C++ Client major version. More... | |
int constexpr | VersionMinor () |
The Cloud Spanner C++ Client minor version. More... | |
int constexpr | VersionPatch () |
The Cloud Spanner C++ Client patch version. More... | |
constexpr char const * | VersionPreRelease () |
The Cloud Spanner C++ Client pre-release version. More... | |
int constexpr | Version () |
A single integer representing the Major/Minor/Patch version. More... | |
std::string | VersionString () |
The version as a string, in MAJOR.MINOR.PATCH[-PRE][+gitrev] format. More... | |
Relational operators | |
bool | operator== (Json const &lhs, Json const &rhs) |
bool | operator!= (Json const &lhs, Json const &rhs) |
bool | operator== (JsonB const &lhs, JsonB const &rhs) |
bool | operator!= (JsonB const &lhs, JsonB const &rhs) |
template<typename T , DecimalMode Mode> | |
StatusOr< T > | ToInteger (Decimal< Mode > const &d, int exponent=0) |
Conversion to the nearest integer value, scaled by 10^exponent . More... | |
StatusOr< Numeric > | MakeNumeric (std::string s) |
MakeNumeric() factory functions for Numeric . More... | |
StatusOr< Numeric > | MakeNumeric (double d) |
MakeNumeric() factory functions for Numeric . More... | |
template<typename T > | |
StatusOr< Numeric > | MakeNumeric (T i, int exponent=0) |
MakeNumeric() factory functions for Numeric . More... | |
StatusOr< PgNumeric > | MakePgNumeric (std::string s) |
MakePgNumeric() factory functions for PgNumeric . More... | |
StatusOr< PgNumeric > | MakePgNumeric (double d) |
MakePgNumeric() factory functions for PgNumeric . More... | |
template<typename T > | |
StatusOr< PgNumeric > | MakePgNumeric (T i, int exponent=0) |
MakePgNumeric() factory functions for PgNumeric . More... | |
Contains all the Cloud Spanner C++ client types and functions.
using google::cloud::spanner::BackoffPolicy = typedef ::google::cloud::internal::BackoffPolicy |
The base class for backoff policies.
using google::cloud::spanner::ConnectionOptions = typedef google::cloud::ConnectionOptions<ConnectionOptionsTraits> |
The options for Cloud Spanner connections.
using google::cloud::spanner::Date = typedef ::absl::CivilDay |
Represents a date in the proleptic Gregorian calendar as a triple of year, month (1-12), and day (1-31).
We use absl::CivilDay
to represent a "date". Direct use of absl::CivilDay
is recommended. This alias exists for backward compatibility.
using google::cloud::spanner::DeleteMutationBuilder = typedef spanner_internal::DeleteMutationBuilder |
A helper class to construct "delete" mutations.
using google::cloud::spanner::EncryptionConfig = typedef absl::variant<DefaultEncryption, GoogleEncryption, CustomerManagedEncryption> |
Specify the encryption configuration for any of the following operations:
using google::cloud::spanner::ExecutionPlan = typedef ::google::spanner::v1::QueryPlan |
Contains a hierarchical representation of the operations the database server performs in order to execute a particular SQL statement.
using google::cloud::spanner::ExponentialBackoffPolicy = typedef google::cloud::internal::ExponentialBackoffPolicy |
A truncated exponential backoff policy with randomized periods.
using google::cloud::spanner::GenericPollingPolicy = typedef ::google::cloud::GenericPollingPolicy<Retry, Backoff> |
using google::cloud::spanner::IamUpdater = typedef ::google::cloud::IamUpdater |
Type alias for google::cloud::IamUpdater.
Used in the SetIamPolicy()
read-modify-write cycle of the Spanner admin clients, DatabaseAdminClient
and InstanceAdminClient
, in order to avoid race conditions.
The updater is called with a recently fetched policy, and should either return an empty optional if no changes are required, or return a new policy to be set. In the latter case the control loop will always set the etag
of the new policy to that of the recently fetched one. A failure to update then indicates a race, and the process will repeat.
using google::cloud::spanner::InsertMutationBuilder = typedef spanner_internal::WriteMutationBuilder<spanner_internal::InsertOp> |
A helper class to construct "insert" mutations.
using google::cloud::spanner::InsertOrUpdateMutationBuilder = typedef spanner_internal::WriteMutationBuilder<spanner_internal::InsertOrUpdateOp> |
A helper class to construct "insert_or_update" mutations.
using google::cloud::spanner::Key = typedef std::vector<Value> |
using google::cloud::spanner::LimitedErrorCountRetryPolicy = typedef google::cloud::internal::LimitedErrorCountRetryPolicy< spanner_internal::SafeGrpcRetry> |
A retry policy that limits the number of times a request can fail.
using google::cloud::spanner::LimitedErrorCountTransactionRerunPolicy = typedef google::cloud::internal::LimitedErrorCountRetryPolicy< spanner_internal::SafeTransactionRerun> |
A transaction rerun policy that limits the number of failures.
using google::cloud::spanner::LimitedTimeRetryPolicy = typedef ::google::cloud::internal::LimitedTimeRetryPolicy< spanner_internal::SafeGrpcRetry> |
A retry policy that limits based on time.
using google::cloud::spanner::LimitedTimeTransactionRerunPolicy = typedef google::cloud::internal::LimitedTimeRetryPolicy< spanner_internal::SafeTransactionRerun> |
A transaction rerun policy that limits the duration of the rerun loop.
using google::cloud::spanner::ListBackupOperationsRange = typedef google::cloud::internal::PaginationRange<google::longrunning::Operation> |
An input range to stream backup operations in Cloud Spanner instance.
This type models an input range of google::longrunning::Operation
objects. Applications can make a single pass through the results.
using google::cloud::spanner::ListBackupsRange = typedef ::google::cloud::internal::PaginationRange< google::spanner::admin::database::v1::Backup> |
An input range to stream backups in Cloud Spanner instance.
This type models an input range of google::longrunning::Operation
objects. Applications can make a single pass through the results.
using google::cloud::spanner::ListDatabaseOperationsRange = typedef google::cloud::internal::PaginationRange<google::longrunning::Operation> |
An input range to stream database operations in Cloud Spanner instance.
This type models an input range of google::longrunning::Operation
objects. Applications can make a single pass through the results.
using google::cloud::spanner::ListDatabaseRange = typedef ::google::cloud::internal::PaginationRange< google::spanner::admin::database::v1::Database> |
An input range to stream all the databases in a Cloud Spanner instance.
This type models an input range of google::spanner::admin::v1::Database
objects. Applications can make a single pass through the results.
using google::cloud::spanner::ListInstanceConfigsRange = typedef ::google::cloud::internal::PaginationRange< google::spanner::admin::instance::v1::InstanceConfig> |
An input range to stream all the instance configs in a Cloud project.
This type models an input range of google::spanner::admin::v1::Instance
objects. Applications can make a single pass through the results.
using google::cloud::spanner::ListInstancesRange = typedef ::google::cloud::internal::PaginationRange< google::spanner::admin::instance::v1::Instance> |
An input range to stream all the instances in a Cloud project.
This type models an input range of google::spanner::admin::v1::Instance
objects. Applications can make a single pass through the results.
using google::cloud::spanner::Mutations = typedef std::vector<Mutation> |
An ordered sequence of mutations to pass to Client::Commit()
or return from the Client::Commit()
mutator.
using google::cloud::spanner::Numeric = typedef Decimal<DecimalMode::kGoogleSQL> |
Most users only need the Numeric
or PgNumeric
specializations of Decimal
.
For example:
using google::cloud::spanner::PgNumeric = typedef Decimal<DecimalMode::kPostgreSQL> |
Most users only need the Numeric
or PgNumeric
specializations of Decimal
.
For example:
using google::cloud::spanner::PollingPolicy = typedef ::google::cloud::PollingPolicy |
using google::cloud::spanner::ReplaceMutationBuilder = typedef spanner_internal::WriteMutationBuilder<spanner_internal::ReplaceOp> |
A helper class to construct "replace" mutations.
using google::cloud::spanner::RequestOptionList = typedef OptionList<RequestPriorityOption, RequestTagOption> |
List of Request options for client::ExecuteBatchDml()
.
using google::cloud::spanner::RetryPolicy = typedef ::google::cloud::internal::TraitBasedRetryPolicy< spanner_internal::SafeGrpcRetry> |
The base class for retry policies.
List of all SessionPool options.
Pass to spanner::MakeConnection()
.
using google::cloud::spanner::SpannerPolicyOptionList = typedef OptionList<spanner::SpannerRetryPolicyOption, SpannerBackoffPolicyOption, SpannerPollingPolicyOption> |
List of all "policy" options.
using google::cloud::spanner::sys_time = typedef std::chrono::time_point<std::chrono::system_clock, Duration> |
Convenience alias.
std::chrono::sys_time
since C++20.
The configuration parameters for RPC/protobuf tracing.
The default options are: single_line_mode=on use_short_repeated_primitives=on truncate_string_field_longer_than=128
using google::cloud::spanner::TransactionRerunPolicy = typedef ::google::cloud::internal::TraitBasedRetryPolicy< spanner_internal::SafeTransactionRerun> |
The base class for transaction rerun policies.
using google::cloud::spanner::UpdateMutationBuilder = typedef spanner_internal::WriteMutationBuilder<spanner_internal::UpdateOp> |
A helper class to construct "update" mutations.
|
strong |
|
strong |
|
strong |
StatusOr< QueryPartition > google::cloud::spanner::DeserializeQueryPartition | ( | std::string const & | serialized_query_partition | ) |
Deserializes the provided string into a QueryPartition
.
The serialized_query_partition
argument must be a string that was previously returned by a call to SerializeQueryPartition()
.
serialized_query_partition |
StatusOr< ReadPartition > google::cloud::spanner::DeserializeReadPartition | ( | std::string const & | serialized_read_partition | ) |
Deserializes the provided string into a ReadPartition
.
The serialized_read_partition
argument must be a string that was previously returned by a call to SerializeReadPartition()
.
serialized_read_partition | - string representation to be deserialized. |
auto google::cloud::spanner::GetSingularRow | ( | RowRange | range | ) | -> typename std::decay<decltype(*range.begin())>::type |
Returns the only row from a range that contains exactly one row.
An error is returned if the given range does not contain exactly one row. This is a convenience function that may be useful when the caller knows that a range should contain exactly one row, such as when LIMIT 1
is used in an SQL query, or when a read is performed on a guaranteed unique key such that only a single row could possibly match. In cases where the caller does not know how many rows may be returned, they should instead consume the range in a loop.
std::shared_ptr< Connection > google::cloud::spanner::MakeConnection | ( | Database const & | db, |
ConnectionOptions const & | connection_options, | ||
SessionPoolOptions | session_pool_options, | ||
std::unique_ptr< RetryPolicy > | retry_policy, | ||
std::unique_ptr< BackoffPolicy > | backoff_policy | ||
) |
Returns a Connection object that can be used for interacting with Spanner.
The returned connection object should not be used directly, rather it should be given to a Client
instance, and methods should be invoked on Client
.
MakeConnection()
overload that accepts google::cloud::Options
instead.Connection
db | See Database . |
connection_options | configure the Connection created by this function. |
session_pool_options | (optional) configure the SessionPool created by the Connection . |
MakeConnection()
overload that accepts google::cloud::Options
instead.retry_policy | override the default RetryPolicy , controls how long the returned Connection object retries requests on transient failures. |
backoff_policy | override the default BackoffPolicy , controls how long the Connection object waits before retrying a failed request. |
std::shared_ptr< Connection > google::cloud::spanner::MakeConnection | ( | Database const & | db, |
ConnectionOptions const & | connection_options, | ||
SessionPoolOptions | session_pool_options = SessionPoolOptions() |
||
) |
Returns a Connection object that can be used for interacting with Spanner.
The returned connection object should not be used directly, rather it should be given to a Client
instance, and methods should be invoked on Client
.
MakeConnection()
overload that accepts google::cloud::Options
instead.Connection
db | See Database . |
connection_options | configure the Connection created by this function. |
session_pool_options | (optional) configure the SessionPool created by the Connection . |
std::shared_ptr< spanner::Connection > google::cloud::spanner::MakeConnection | ( | spanner::Database const & | db, |
Options | opts = {} |
||
) |
Returns a Connection object that can be used for interacting with Spanner.
The returned connection object should not be used directly; instead it should be given to a Client
instance, and methods should be invoked on Client
.
The optional opts
argument may be used to configure aspects of the returned Connection
. Expected options are any of the types in the following option lists.
google::cloud::CommonOptionList
google::cloud::GrpcOptionList
google::cloud::spanner::SpannerPolicyOptionList
google::cloud::spanner::SessionPoolOptionList
GOOGLE_CLOUD_CPP_ENABLE_CLOG=yes
in the environment and unexpected options will be logged.Connection
db | See Database . |
opts | (optional) Configure the Connection created by this function. |
std::shared_ptr< DatabaseAdminConnection > google::cloud::spanner::MakeDatabaseAdminConnection | ( | ConnectionOptions const & | options | ) |
Returns a DatabaseAdminConnection object that can be used for interacting with Cloud Spanner's admin APIs.
The returned connection object should not be used directly, rather it should be given to a DatabaseAdminClient
instance.
MakeDatabaseAdminConnection()
overload that accepts google::cloud::Options
.DatabaseAdminConnection
options | configure the DatabaseAdminConnection created by this function. |
std::shared_ptr< DatabaseAdminConnection > google::cloud::spanner::MakeDatabaseAdminConnection | ( | ConnectionOptions const & | options, |
std::unique_ptr< RetryPolicy > | retry_policy, | ||
std::unique_ptr< BackoffPolicy > | backoff_policy, | ||
std::unique_ptr< PollingPolicy > | polling_policy | ||
) |
Returns a DatabaseAdminConnection object that can be used for interacting with Cloud Spanner's admin APIs.
The returned connection object should not be used directly, rather it should be given to a DatabaseAdminClient
instance.
MakeDatabaseAdminConnection()
overload that accepts google::cloud::Options
.options | configure the DatabaseAdminConnection created by this function. |
retry_policy | control for how long (or how many times) are retryable RPCs attempted |
backoff_policy | controls the backoff behavior between retry attempts, typically some form of exponential backoff with jitter |
polling_policy | controls for how often, and how quickly, are long running checked for completion |
std::shared_ptr< spanner::DatabaseAdminConnection > google::cloud::spanner::MakeDatabaseAdminConnection | ( | Options | opts = {} | ) |
Returns a DatabaseAdminConnection object that can be used for interacting with Cloud Spanner's admin APIs.
The returned connection object should not be used directly; instead it should be given to a DatabaseAdminClient
instance.
The optional opts
argument may be used to configure aspects of the returned DatabaseAdminConnection
. Expected options are any of types in the following option lists.
google::cloud::CommonOptionList
google::cloud::GrpcOptionList
google::cloud::SpannerPolicyOptionList
DatabaseAdminConnection
opts | (optional) configure the DatabaseAdminConnection created by this function. |
StatusOr< Decimal< Mode > > google::cloud::spanner::MakeDecimal | ( | double | d | ) |
Construction from a double.
Fails on NaN or any argument outside the NUMERIC value range (including infinities). If the argument has more than kFracPrecision
digits after the decimal point it will be rounded, with halfway cases rounding away from zero.
StatusOr< Decimal< Mode > > google::cloud::spanner::MakeDecimal | ( | std::string | s | ) |
Construction from a string, in decimal fixed- or floating-point formats.
For example, "0", "-999", "3.141592654", "299792458", "6.02214076e23", etc. There must be digits either before or after any decimal point.
Fails on syntax errors or if the conversion would yield a value outside the NUMERIC range. If the argument has more than kFracPrecision
digits after the decimal point it will be rounded, with halfway cases rounding away from zero.
StatusOr< Decimal< Mode > > google::cloud::spanner::MakeDecimal | ( | T | i, |
int | exponent = 0 |
||
) |
Construction from an integer i
, scaled by 10^exponent
.
Fails on any (scaled) argument outside the NUMERIC value range.
Creates a simple "delete" mutation for the values in keys
.
Mutation google::cloud::spanner::MakeInsertMutation | ( | std::string | table_name, |
std::vector< std::string > | columns, | ||
Ts &&... | values | ||
) |
Creates a simple insert mutation for the values in values
.
Mutation google::cloud::spanner::MakeInsertOrUpdateMutation | ( | std::string | table_name, |
std::vector< std::string > | columns, | ||
Ts &&... | values | ||
) |
Creates a simple "insert or update" mutation for the values in values
.
std::shared_ptr< InstanceAdminConnection > google::cloud::spanner::MakeInstanceAdminConnection | ( | ConnectionOptions const & | options | ) |
Returns an InstanceAdminConnection object that can be used for interacting with Cloud Spanner's admin APIs.
The returned connection object should not be used directly, rather it should be given to a InstanceAdminClient
instance.
MakeInstanceAdminConnection()
overload that accepts google::cloud::Options
.InstanceAdminConnection
options | configure the InstanceAdminConnection created by this function. |
std::shared_ptr< InstanceAdminConnection > google::cloud::spanner::MakeInstanceAdminConnection | ( | ConnectionOptions const & | options, |
std::unique_ptr< RetryPolicy > | retry_policy, | ||
std::unique_ptr< BackoffPolicy > | backoff_policy, | ||
std::unique_ptr< PollingPolicy > | polling_policy | ||
) |
Returns an InstanceAdminConnection object that can be used for interacting with Cloud Spanner's admin APIs.
The returned connection object should not be used directly, rather it should be given to a InstanceAdminClient
instance.
MakeInstanceAdminConnection()
overload that accepts google::cloud::Options
.options | configure the InstanceAdminConnection created by this function. |
retry_policy | control for how long (or how many times) are retryable RPCs attempted |
backoff_policy | controls the backoff behavior between retry attempts, typically some form of exponential backoff with jitter |
polling_policy | controls for how often, and how quickly, are long running checked for completion |
std::shared_ptr< spanner::InstanceAdminConnection > google::cloud::spanner::MakeInstanceAdminConnection | ( | Options | opts = {} | ) |
Returns an InstanceAdminConnection object that can be used for interacting with Cloud Spanner's admin APIs.
The returned connection object should not be used directly; instead it should be given to a InstanceAdminClient
instance.
The optional opts
argument may be used to configure aspects of the returned InstanceAdminConnection
. Expected options are any of the types in the following option lists.
google::cloud::CommonOptionList
google::cloud::GrpcOptionList
google::cloud::SpannerPolicyOptionList
InstanceAdminConnection
opts | (optional) configure the InstanceAdminConnection created by this function. |
Key google::cloud::spanner::MakeKey | ( | Ts &&... | ts | ) |
Constructs a Key
from the given arguments.
KeyBound google::cloud::spanner::MakeKeyBoundClosed | ( | Ts &&... | ts | ) |
Returns a "closed" KeyBound
with a Key
constructed from the given arguments.
KeyBound google::cloud::spanner::MakeKeyBoundOpen | ( | Ts &&... | ts | ) |
Returns an "open" KeyBound
with a Key
constructed from the given arguments.
Value google::cloud::spanner::MakeNullValue | ( | ) |
Factory to construct a "null" Value of the specified type T
.
This is equivalent to passing an absl::optional<T>
without a value to the constructor, though this factory may be easier to invoke and result in clearer code at the call site.
MakeNumeric()
factory functions for Numeric
.
MakeNumeric()
factory functions for Numeric
.
StatusOr< Numeric > google::cloud::spanner::MakeNumeric | ( | T | i, |
int | exponent = 0 |
||
) |
MakeNumeric()
factory functions for Numeric
.
MakePgNumeric()
factory functions for PgNumeric
.
MakePgNumeric()
factory functions for PgNumeric
.
StatusOr< PgNumeric > google::cloud::spanner::MakePgNumeric | ( | T | i, |
int | exponent = 0 |
||
) |
MakePgNumeric()
factory functions for PgNumeric
.
|
inline |
Create a read-only transaction configured with opts
.
Transaction
object. Instead, the first request to the server (for example as part of a ExecuteQuery()
call) will also create the transaction.
|
inline |
Create a read-write transaction configured with opts
, and sharing lock priority with txn
.
This should be used when rerunning an aborted transaction, so that the new attempt has a slightly better chance of success.
|
inline |
Create a read-write transaction configured with opts
.
Transaction
object. Instead, the first request to the server (for example as part of a ExecuteQuery()
call) will also create the transaction. Mutation google::cloud::spanner::MakeReplaceMutation | ( | std::string | table_name, |
std::vector< std::string > | columns, | ||
Ts &&... | values | ||
) |
Creates a simple "replace" mutation for the values in values
.
Creates a Row
with the specified column names and values.
This overload accepts a vector of pairs, allowing the caller to specify both the column names and the Value
that goes in each column.
This function is intended for application developers who are mocking the results of a Client::ExecuteQuery
call.
Row google::cloud::spanner::MakeTestRow | ( | Ts &&... | ts | ) |
Creates a Row
with Value
s created from the given arguments and with auto-generated column names.
This overload accepts a variadic list of arguments that will be used to create the Value
s in the row. The column names will be implicitly generated, the first column being "0", the second "1", and so on, corresponding to the argument's position.
This function is intended for application developers who are mocking the results of a Client::ExecuteQuery
call.
StatusOr< Timestamp > google::cloud::spanner::MakeTimestamp | ( | sys_time< Duration > const & | tp | ) |
Construct a Timestamp
from a std::chrono::time_point
on the system clock.
May produce out-of-range errors, depending on the properties of Duration
and the std::chrono::system_clock
epoch. Duration::rep
may not be wider than std::int64_t
. Requires that Duration::period
is no more precise than std::nano
.
Mutation google::cloud::spanner::MakeUpdateMutation | ( | std::string | table_name, |
std::vector< std::string > | columns, | ||
Ts &&... | values | ||
) |
Creates a simple update mutation for the values in values
.
|
inline |
|
inline |
|
inline |
Outputs a JSON-formatted string to the provided stream.
|
inline |
Outputs a JSON-formatted string to the provided stream.
|
inline |
|
inline |
StatusOr< std::string > google::cloud::spanner::SerializeQueryPartition | ( | QueryPartition const & | query_partition | ) |
Serializes an instance of QueryPartition
to a string of bytes.
The serialized string of bytes is suitable for writing to disk or transmission to another process.
query_partition | - instance to be serialized. |
StatusOr< std::string > google::cloud::spanner::SerializeReadPartition | ( | ReadPartition const & | read_partition | ) |
Serializes an instance of ReadPartition
to a string of bytes.
The serialized string of bytes is suitable for writing to disk or transmission to another process.
read_partition | - instance to be serialized. |
TupleStream< Tuple > google::cloud::spanner::StreamOf | ( | RowRange && | range | ) |
A factory that creates a TupleStream<Tuple>
by wrapping the given range
.
The RowRange
must be a range defined by RowStreamIterator
objects.
range
is not transferred, so it must outlive the returned TupleStream
.RowRange | must be a range defined by RowStreamIterator s. |
double google::cloud::spanner::ToDouble | ( | Decimal< Mode > const & | d | ) |
Conversion to the closest double value, with possible loss of precision.
Always succeeds (i.e., can never overflow, assuming a double can hold values up to 10^(kIntPrecision+1)).
StatusOr< T > google::cloud::spanner::ToInteger | ( | Decimal< Mode > const & | d, |
int | exponent = 0 |
||
) |
Conversion to the nearest integer value, scaled by 10^exponent
.
Rounds halfway cases away from zero. Fails when the destination type cannot hold that value.
Options google::cloud::spanner::ToOptions | ( | PartitionOptions const & | ) |
Converts PartitionOptions
to common Options
.
Options google::cloud::spanner::ToOptions | ( | ReadOptions const & | ) |
Converts ReadOptions
to common Options
.
PartitionOptions google::cloud::spanner::ToPartitionOptions | ( | Options const & | ) |
Converts common Options
to PartitionOptions
.
ReadOptions google::cloud::spanner::ToReadOptions | ( | Options const & | ) |
Converts common Options
to ReadOptions
.
|
constexpr |
A single integer representing the Major/Minor/Patch version.
|
constexpr |
The Cloud Spanner C++ Client major version.
|
constexpr |
The Cloud Spanner C++ Client minor version.
|
constexpr |
The Cloud Spanner C++ Client patch version.
|
constexpr |
The Cloud Spanner C++ Client pre-release version.
std::string google::cloud::spanner::VersionString | ( | ) |
The version as a string, in MAJOR.MINOR.PATCH[-PRE][+gitrev] format.