Google Cloud Spanner Database Administration v1 API - Class DatabaseAdminClientImpl (5.0.0-beta04)

public sealed class DatabaseAdminClientImpl : DatabaseAdminClient

Reference documentation and code samples for the Google Cloud Spanner Database Administration v1 API class DatabaseAdminClientImpl.

DatabaseAdmin client wrapper implementation, for convenient use.

Inheritance

object > DatabaseAdminClient > DatabaseAdminClientImpl

Namespace

Google.Cloud.Spanner.Admin.Database.V1

Assembly

Google.Cloud.Spanner.Admin.Database.V1.dll

Remarks

Cloud Spanner Database Admin API

The Cloud Spanner Database Admin API can be used to:

  • create, drop, and list databases
  • update the schema of pre-existing databases
  • create, delete, copy and list backups for a database
  • restore a database from an existing backup

Constructors

DatabaseAdminClientImpl(DatabaseAdminClient, DatabaseAdminSettings, ILogger)

public DatabaseAdminClientImpl(DatabaseAdmin.DatabaseAdminClient grpcClient, DatabaseAdminSettings settings, ILogger logger)

Constructs a client wrapper for the DatabaseAdmin service, with the specified gRPC client and settings.

Parameters
Name Description
grpcClient DatabaseAdminDatabaseAdminClient

The underlying gRPC client.

settings DatabaseAdminSettings

The base DatabaseAdminSettings used within this client.

logger ILogger

Optional ILogger to use within this client.

Fields

ResourcePrefixHeader

public const string ResourcePrefixHeader = "google-cloud-resource-prefix"

The name of the header used for efficiently routing requests.

Field Value
Type Description
string
Remarks

This should be set to the instance resource name ("projects/{projectId}/instances/{instanceId}") for some RPCs and to the database resource name for others ("projects/{projectId}/instances/{instanceId}/databases/{databaseId}"). For non-streaming calls, DatabaseAdminClientImpl performs this automatically. This cannot be performed automatically for streaming calls due to the separation between initializing the stream and sending requests, so client code should set the value in a CallSettings. Typically this is performed with either the FromHeader(string, string) factory method or the WithHeader(CallSettings, string, string) extension method.

Properties

CopyBackupOperationsClient

public override OperationsClient CopyBackupOperationsClient { get; }

The long-running operations client for CopyBackup.

Property Value
Type Description
OperationsClient
Overrides

CreateBackupOperationsClient

public override OperationsClient CreateBackupOperationsClient { get; }

The long-running operations client for CreateBackup.

Property Value
Type Description
OperationsClient
Overrides

CreateDatabaseOperationsClient

public override OperationsClient CreateDatabaseOperationsClient { get; }

The long-running operations client for CreateDatabase.

Property Value
Type Description
OperationsClient
Overrides

GrpcClient

public override DatabaseAdmin.DatabaseAdminClient GrpcClient { get; }

The underlying gRPC DatabaseAdmin client

Property Value
Type Description
DatabaseAdminDatabaseAdminClient
Overrides

RestoreDatabaseOperationsClient

public override OperationsClient RestoreDatabaseOperationsClient { get; }

The long-running operations client for RestoreDatabase.

Property Value
Type Description
OperationsClient
Overrides

UpdateDatabaseDdlOperationsClient

public override OperationsClient UpdateDatabaseDdlOperationsClient { get; }

The long-running operations client for UpdateDatabaseDdl.

Property Value
Type Description
OperationsClient
Overrides

UpdateDatabaseOperationsClient

public override OperationsClient UpdateDatabaseOperationsClient { get; }

The long-running operations client for UpdateDatabase.

Property Value
Type Description
OperationsClient
Overrides

Methods

CopyBackup(CopyBackupRequest, CallSettings)

public override Operation<Backup, CopyBackupMetadata> CopyBackup(CopyBackupRequest request, CallSettings callSettings = null)

Starts copying a Cloud Spanner Backup. The returned backup [long-running operation][google.longrunning.Operation] will have a name of the format projects/<project>/instances/<instance>/backups/<backup>/operations/<operation_id> and can be used to track copying of the backup. The operation is associated with the destination backup. The [metadata][google.longrunning.Operation.metadata] field type is [CopyBackupMetadata][google.spanner.admin.database.v1.CopyBackupMetadata]. The [response][google.longrunning.Operation.response] field type is [Backup][google.spanner.admin.database.v1.Backup], if successful. Cancelling the returned operation will stop the copying and delete the destination backup. Concurrent CopyBackup requests can run on the same source backup.

Parameters
Name Description
request CopyBackupRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
OperationBackupCopyBackupMetadata

The RPC response.

Overrides

CopyBackupAsync(CopyBackupRequest, CallSettings)

public override Task<Operation<Backup, CopyBackupMetadata>> CopyBackupAsync(CopyBackupRequest request, CallSettings callSettings = null)

Starts copying a Cloud Spanner Backup. The returned backup [long-running operation][google.longrunning.Operation] will have a name of the format projects/<project>/instances/<instance>/backups/<backup>/operations/<operation_id> and can be used to track copying of the backup. The operation is associated with the destination backup. The [metadata][google.longrunning.Operation.metadata] field type is [CopyBackupMetadata][google.spanner.admin.database.v1.CopyBackupMetadata]. The [response][google.longrunning.Operation.response] field type is [Backup][google.spanner.admin.database.v1.Backup], if successful. Cancelling the returned operation will stop the copying and delete the destination backup. Concurrent CopyBackup requests can run on the same source backup.

Parameters
Name Description
request CopyBackupRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskOperationBackupCopyBackupMetadata

A Task containing the RPC response.

Overrides

CreateBackup(CreateBackupRequest, CallSettings)

public override Operation<Backup, CreateBackupMetadata> CreateBackup(CreateBackupRequest request, CallSettings callSettings = null)

Starts creating a new Cloud Spanner Backup. The returned backup [long-running operation][google.longrunning.Operation] will have a name of the format projects/<project>/instances/<instance>/backups/<backup>/operations/<operation_id> and can be used to track creation of the backup. The [metadata][google.longrunning.Operation.metadata] field type is [CreateBackupMetadata][google.spanner.admin.database.v1.CreateBackupMetadata]. The [response][google.longrunning.Operation.response] field type is [Backup][google.spanner.admin.database.v1.Backup], if successful. Cancelling the returned operation will stop the creation and delete the backup. There can be only one pending backup creation per database. Backup creation of different databases can run concurrently.

Parameters
Name Description
request CreateBackupRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
OperationBackupCreateBackupMetadata

The RPC response.

Overrides

CreateBackupAsync(CreateBackupRequest, CallSettings)

public override Task<Operation<Backup, CreateBackupMetadata>> CreateBackupAsync(CreateBackupRequest request, CallSettings callSettings = null)

Starts creating a new Cloud Spanner Backup. The returned backup [long-running operation][google.longrunning.Operation] will have a name of the format projects/<project>/instances/<instance>/backups/<backup>/operations/<operation_id> and can be used to track creation of the backup. The [metadata][google.longrunning.Operation.metadata] field type is [CreateBackupMetadata][google.spanner.admin.database.v1.CreateBackupMetadata]. The [response][google.longrunning.Operation.response] field type is [Backup][google.spanner.admin.database.v1.Backup], if successful. Cancelling the returned operation will stop the creation and delete the backup. There can be only one pending backup creation per database. Backup creation of different databases can run concurrently.

Parameters
Name Description
request CreateBackupRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskOperationBackupCreateBackupMetadata

A Task containing the RPC response.

Overrides

CreateBackupSchedule(CreateBackupScheduleRequest, CallSettings)

public override BackupSchedule CreateBackupSchedule(CreateBackupScheduleRequest request, CallSettings callSettings = null)

Creates a new backup schedule.

Parameters
Name Description
request CreateBackupScheduleRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
BackupSchedule

The RPC response.

Overrides

CreateBackupScheduleAsync(CreateBackupScheduleRequest, CallSettings)

public override Task<BackupSchedule> CreateBackupScheduleAsync(CreateBackupScheduleRequest request, CallSettings callSettings = null)

Creates a new backup schedule.

Parameters
Name Description
request CreateBackupScheduleRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskBackupSchedule

A Task containing the RPC response.

Overrides

CreateDatabase(CreateDatabaseRequest, CallSettings)

public override Operation<Database, CreateDatabaseMetadata> CreateDatabase(CreateDatabaseRequest request, CallSettings callSettings = null)

Creates a new Cloud Spanner database and starts to prepare it for serving. The returned [long-running operation][google.longrunning.Operation] will have a name of the format <database_name>/operations/<operation_id> and can be used to track preparation of the database. The [metadata][google.longrunning.Operation.metadata] field type is [CreateDatabaseMetadata][google.spanner.admin.database.v1.CreateDatabaseMetadata]. The [response][google.longrunning.Operation.response] field type is [Database][google.spanner.admin.database.v1.Database], if successful.

Parameters
Name Description
request CreateDatabaseRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
OperationDatabaseCreateDatabaseMetadata

The RPC response.

Overrides

CreateDatabaseAsync(CreateDatabaseRequest, CallSettings)

public override Task<Operation<Database, CreateDatabaseMetadata>> CreateDatabaseAsync(CreateDatabaseRequest request, CallSettings callSettings = null)

Creates a new Cloud Spanner database and starts to prepare it for serving. The returned [long-running operation][google.longrunning.Operation] will have a name of the format <database_name>/operations/<operation_id> and can be used to track preparation of the database. The [metadata][google.longrunning.Operation.metadata] field type is [CreateDatabaseMetadata][google.spanner.admin.database.v1.CreateDatabaseMetadata]. The [response][google.longrunning.Operation.response] field type is [Database][google.spanner.admin.database.v1.Database], if successful.

Parameters
Name Description
request CreateDatabaseRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskOperationDatabaseCreateDatabaseMetadata

A Task containing the RPC response.

Overrides

DeleteBackup(DeleteBackupRequest, CallSettings)

public override void DeleteBackup(DeleteBackupRequest request, CallSettings callSettings = null)

Deletes a pending or completed [Backup][google.spanner.admin.database.v1.Backup].

Parameters
Name Description
request DeleteBackupRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Overrides

DeleteBackupAsync(DeleteBackupRequest, CallSettings)

public override Task DeleteBackupAsync(DeleteBackupRequest request, CallSettings callSettings = null)

Deletes a pending or completed [Backup][google.spanner.admin.database.v1.Backup].

Parameters
Name Description
request DeleteBackupRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
Task

A Task containing the RPC response.

Overrides

DeleteBackupSchedule(DeleteBackupScheduleRequest, CallSettings)

public override void DeleteBackupSchedule(DeleteBackupScheduleRequest request, CallSettings callSettings = null)

Deletes a backup schedule.

Parameters
Name Description
request DeleteBackupScheduleRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Overrides

DeleteBackupScheduleAsync(DeleteBackupScheduleRequest, CallSettings)

public override Task DeleteBackupScheduleAsync(DeleteBackupScheduleRequest request, CallSettings callSettings = null)

Deletes a backup schedule.

Parameters
Name Description
request DeleteBackupScheduleRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
Task

A Task containing the RPC response.

Overrides

DropDatabase(DropDatabaseRequest, CallSettings)

public override void DropDatabase(DropDatabaseRequest request, CallSettings callSettings = null)

Drops (aka deletes) a Cloud Spanner database. Completed backups for the database will be retained according to their expire_time. Note: Cloud Spanner might continue to accept requests for a few seconds after the database has been deleted.

Parameters
Name Description
request DropDatabaseRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Overrides

DropDatabaseAsync(DropDatabaseRequest, CallSettings)

public override Task DropDatabaseAsync(DropDatabaseRequest request, CallSettings callSettings = null)

Drops (aka deletes) a Cloud Spanner database. Completed backups for the database will be retained according to their expire_time. Note: Cloud Spanner might continue to accept requests for a few seconds after the database has been deleted.

Parameters
Name Description
request DropDatabaseRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
Task

A Task containing the RPC response.

Overrides

GetBackup(GetBackupRequest, CallSettings)

public override Backup GetBackup(GetBackupRequest request, CallSettings callSettings = null)

Gets metadata on a pending or completed [Backup][google.spanner.admin.database.v1.Backup].

Parameters
Name Description
request GetBackupRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
Backup

The RPC response.

Overrides

GetBackupAsync(GetBackupRequest, CallSettings)

public override Task<Backup> GetBackupAsync(GetBackupRequest request, CallSettings callSettings = null)

Gets metadata on a pending or completed [Backup][google.spanner.admin.database.v1.Backup].

Parameters
Name Description
request GetBackupRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskBackup

A Task containing the RPC response.

Overrides

GetBackupSchedule(GetBackupScheduleRequest, CallSettings)

public override BackupSchedule GetBackupSchedule(GetBackupScheduleRequest request, CallSettings callSettings = null)

Gets backup schedule for the input schedule name.

Parameters
Name Description
request GetBackupScheduleRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
BackupSchedule

The RPC response.

Overrides

GetBackupScheduleAsync(GetBackupScheduleRequest, CallSettings)

public override Task<BackupSchedule> GetBackupScheduleAsync(GetBackupScheduleRequest request, CallSettings callSettings = null)

Gets backup schedule for the input schedule name.

Parameters
Name Description
request GetBackupScheduleRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskBackupSchedule

A Task containing the RPC response.

Overrides

GetDatabase(GetDatabaseRequest, CallSettings)

public override Database GetDatabase(GetDatabaseRequest request, CallSettings callSettings = null)

Gets the state of a Cloud Spanner database.

Parameters
Name Description
request GetDatabaseRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
Database

The RPC response.

Overrides

GetDatabaseAsync(GetDatabaseRequest, CallSettings)

public override Task<Database> GetDatabaseAsync(GetDatabaseRequest request, CallSettings callSettings = null)

Gets the state of a Cloud Spanner database.

Parameters
Name Description
request GetDatabaseRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskDatabase

A Task containing the RPC response.

Overrides

GetDatabaseDdl(GetDatabaseDdlRequest, CallSettings)

public override GetDatabaseDdlResponse GetDatabaseDdl(GetDatabaseDdlRequest request, CallSettings callSettings = null)

Returns the schema of a Cloud Spanner database as a list of formatted DDL statements. This method does not show pending schema updates, those may be queried using the [Operations][google.longrunning.Operations] API.

Parameters
Name Description
request GetDatabaseDdlRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
GetDatabaseDdlResponse

The RPC response.

Overrides

GetDatabaseDdlAsync(GetDatabaseDdlRequest, CallSettings)

public override Task<GetDatabaseDdlResponse> GetDatabaseDdlAsync(GetDatabaseDdlRequest request, CallSettings callSettings = null)

Returns the schema of a Cloud Spanner database as a list of formatted DDL statements. This method does not show pending schema updates, those may be queried using the [Operations][google.longrunning.Operations] API.

Parameters
Name Description
request GetDatabaseDdlRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskGetDatabaseDdlResponse

A Task containing the RPC response.

Overrides

GetIamPolicy(GetIamPolicyRequest, CallSettings)

public override Policy GetIamPolicy(GetIamPolicyRequest request, CallSettings callSettings = null)

Gets the access control policy for a database or backup resource. Returns an empty policy if a database or backup exists but does not have a policy set.

Authorization requires spanner.databases.getIamPolicy permission on [resource][google.iam.v1.GetIamPolicyRequest.resource]. For backups, authorization requires spanner.backups.getIamPolicy permission on [resource][google.iam.v1.GetIamPolicyRequest.resource].

Parameters
Name Description
request GetIamPolicyRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
Policy

The RPC response.

Overrides

GetIamPolicyAsync(GetIamPolicyRequest, CallSettings)

public override Task<Policy> GetIamPolicyAsync(GetIamPolicyRequest request, CallSettings callSettings = null)

Gets the access control policy for a database or backup resource. Returns an empty policy if a database or backup exists but does not have a policy set.

Authorization requires spanner.databases.getIamPolicy permission on [resource][google.iam.v1.GetIamPolicyRequest.resource]. For backups, authorization requires spanner.backups.getIamPolicy permission on [resource][google.iam.v1.GetIamPolicyRequest.resource].

Parameters
Name Description
request GetIamPolicyRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskPolicy

A Task containing the RPC response.

Overrides

ListBackupOperations(ListBackupOperationsRequest, CallSettings)

public override PagedEnumerable<ListBackupOperationsResponse, Operation> ListBackupOperations(ListBackupOperationsRequest request, CallSettings callSettings = null)

Lists the backup [long-running operations][google.longrunning.Operation] in the given instance. A backup operation has a name of the form projects/<project>/instances/<instance>/backups/<backup>/operations/<operation>. The long-running operation [metadata][google.longrunning.Operation.metadata] field type metadata.type_url describes the type of the metadata. Operations returned include those that have completed/failed/canceled within the last 7 days, and pending operations. Operations returned are ordered by operation.metadata.value.progress.start_time in descending order starting from the most recently started operation.

Parameters
Name Description
request ListBackupOperationsRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
PagedEnumerableListBackupOperationsResponseOperation

A pageable sequence of Operation resources.

Overrides

ListBackupOperationsAsync(ListBackupOperationsRequest, CallSettings)

public override PagedAsyncEnumerable<ListBackupOperationsResponse, Operation> ListBackupOperationsAsync(ListBackupOperationsRequest request, CallSettings callSettings = null)

Lists the backup [long-running operations][google.longrunning.Operation] in the given instance. A backup operation has a name of the form projects/<project>/instances/<instance>/backups/<backup>/operations/<operation>. The long-running operation [metadata][google.longrunning.Operation.metadata] field type metadata.type_url describes the type of the metadata. Operations returned include those that have completed/failed/canceled within the last 7 days, and pending operations. Operations returned are ordered by operation.metadata.value.progress.start_time in descending order starting from the most recently started operation.

Parameters
Name Description
request ListBackupOperationsRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
PagedAsyncEnumerableListBackupOperationsResponseOperation

A pageable asynchronous sequence of Operation resources.

Overrides

ListBackupSchedules(ListBackupSchedulesRequest, CallSettings)

public override PagedEnumerable<ListBackupSchedulesResponse, BackupSchedule> ListBackupSchedules(ListBackupSchedulesRequest request, CallSettings callSettings = null)

Lists all the backup schedules for the database.

Parameters
Name Description
request ListBackupSchedulesRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
PagedEnumerableListBackupSchedulesResponseBackupSchedule

A pageable sequence of BackupSchedule resources.

Overrides

ListBackupSchedulesAsync(ListBackupSchedulesRequest, CallSettings)

public override PagedAsyncEnumerable<ListBackupSchedulesResponse, BackupSchedule> ListBackupSchedulesAsync(ListBackupSchedulesRequest request, CallSettings callSettings = null)

Lists all the backup schedules for the database.

Parameters
Name Description
request ListBackupSchedulesRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
PagedAsyncEnumerableListBackupSchedulesResponseBackupSchedule

A pageable asynchronous sequence of BackupSchedule resources.

Overrides

ListBackups(ListBackupsRequest, CallSettings)

public override PagedEnumerable<ListBackupsResponse, Backup> ListBackups(ListBackupsRequest request, CallSettings callSettings = null)

Lists completed and pending backups. Backups returned are ordered by create_time in descending order, starting from the most recent create_time.

Parameters
Name Description
request ListBackupsRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
PagedEnumerableListBackupsResponseBackup

A pageable sequence of Backup resources.

Overrides

ListBackupsAsync(ListBackupsRequest, CallSettings)

public override PagedAsyncEnumerable<ListBackupsResponse, Backup> ListBackupsAsync(ListBackupsRequest request, CallSettings callSettings = null)

Lists completed and pending backups. Backups returned are ordered by create_time in descending order, starting from the most recent create_time.

Parameters
Name Description
request ListBackupsRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
PagedAsyncEnumerableListBackupsResponseBackup

A pageable asynchronous sequence of Backup resources.

Overrides

ListDatabaseOperations(ListDatabaseOperationsRequest, CallSettings)

public override PagedEnumerable<ListDatabaseOperationsResponse, Operation> ListDatabaseOperations(ListDatabaseOperationsRequest request, CallSettings callSettings = null)

Lists database [longrunning-operations][google.longrunning.Operation]. A database operation has a name of the form projects/<project>/instances/<instance>/databases/<database>/operations/<operation>. The long-running operation [metadata][google.longrunning.Operation.metadata] field type metadata.type_url describes the type of the metadata. Operations returned include those that have completed/failed/canceled within the last 7 days, and pending operations.

Parameters
Name Description
request ListDatabaseOperationsRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
PagedEnumerableListDatabaseOperationsResponseOperation

A pageable sequence of Operation resources.

Overrides

ListDatabaseOperationsAsync(ListDatabaseOperationsRequest, CallSettings)

public override PagedAsyncEnumerable<ListDatabaseOperationsResponse, Operation> ListDatabaseOperationsAsync(ListDatabaseOperationsRequest request, CallSettings callSettings = null)

Lists database [longrunning-operations][google.longrunning.Operation]. A database operation has a name of the form projects/<project>/instances/<instance>/databases/<database>/operations/<operation>. The long-running operation [metadata][google.longrunning.Operation.metadata] field type metadata.type_url describes the type of the metadata. Operations returned include those that have completed/failed/canceled within the last 7 days, and pending operations.

Parameters
Name Description
request ListDatabaseOperationsRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
PagedAsyncEnumerableListDatabaseOperationsResponseOperation

A pageable asynchronous sequence of Operation resources.

Overrides

ListDatabaseRoles(ListDatabaseRolesRequest, CallSettings)

public override PagedEnumerable<ListDatabaseRolesResponse, DatabaseRole> ListDatabaseRoles(ListDatabaseRolesRequest request, CallSettings callSettings = null)

Lists Cloud Spanner database roles.

Parameters
Name Description
request ListDatabaseRolesRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
PagedEnumerableListDatabaseRolesResponseDatabaseRole

A pageable sequence of DatabaseRole resources.

Overrides

ListDatabaseRolesAsync(ListDatabaseRolesRequest, CallSettings)

public override PagedAsyncEnumerable<ListDatabaseRolesResponse, DatabaseRole> ListDatabaseRolesAsync(ListDatabaseRolesRequest request, CallSettings callSettings = null)

Lists Cloud Spanner database roles.

Parameters
Name Description
request ListDatabaseRolesRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
PagedAsyncEnumerableListDatabaseRolesResponseDatabaseRole

A pageable asynchronous sequence of DatabaseRole resources.

Overrides

ListDatabases(ListDatabasesRequest, CallSettings)

public override PagedEnumerable<ListDatabasesResponse, Database> ListDatabases(ListDatabasesRequest request, CallSettings callSettings = null)

Lists Cloud Spanner databases.

Parameters
Name Description
request ListDatabasesRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
PagedEnumerableListDatabasesResponseDatabase

A pageable sequence of Database resources.

Overrides

ListDatabasesAsync(ListDatabasesRequest, CallSettings)

public override PagedAsyncEnumerable<ListDatabasesResponse, Database> ListDatabasesAsync(ListDatabasesRequest request, CallSettings callSettings = null)

Lists Cloud Spanner databases.

Parameters
Name Description
request ListDatabasesRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
PagedAsyncEnumerableListDatabasesResponseDatabase

A pageable asynchronous sequence of Database resources.

Overrides

RestoreDatabase(RestoreDatabaseRequest, CallSettings)

public override Operation<Database, RestoreDatabaseMetadata> RestoreDatabase(RestoreDatabaseRequest request, CallSettings callSettings = null)

Create a new database by restoring from a completed backup. The new database must be in the same project and in an instance with the same instance configuration as the instance containing the backup. The returned database [long-running operation][google.longrunning.Operation] has a name of the format projects/<project>/instances/<instance>/databases/<database>/operations/<operation_id>, and can be used to track the progress of the operation, and to cancel it. The [metadata][google.longrunning.Operation.metadata] field type is [RestoreDatabaseMetadata][google.spanner.admin.database.v1.RestoreDatabaseMetadata]. The [response][google.longrunning.Operation.response] type is [Database][google.spanner.admin.database.v1.Database], if successful. Cancelling the returned operation will stop the restore and delete the database. There can be only one database being restored into an instance at a time. Once the restore operation completes, a new restore operation can be initiated, without waiting for the optimize operation associated with the first restore to complete.

Parameters
Name Description
request RestoreDatabaseRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
OperationDatabaseRestoreDatabaseMetadata

The RPC response.

Overrides

RestoreDatabaseAsync(RestoreDatabaseRequest, CallSettings)

public override Task<Operation<Database, RestoreDatabaseMetadata>> RestoreDatabaseAsync(RestoreDatabaseRequest request, CallSettings callSettings = null)

Create a new database by restoring from a completed backup. The new database must be in the same project and in an instance with the same instance configuration as the instance containing the backup. The returned database [long-running operation][google.longrunning.Operation] has a name of the format projects/<project>/instances/<instance>/databases/<database>/operations/<operation_id>, and can be used to track the progress of the operation, and to cancel it. The [metadata][google.longrunning.Operation.metadata] field type is [RestoreDatabaseMetadata][google.spanner.admin.database.v1.RestoreDatabaseMetadata]. The [response][google.longrunning.Operation.response] type is [Database][google.spanner.admin.database.v1.Database], if successful. Cancelling the returned operation will stop the restore and delete the database. There can be only one database being restored into an instance at a time. Once the restore operation completes, a new restore operation can be initiated, without waiting for the optimize operation associated with the first restore to complete.

Parameters
Name Description
request RestoreDatabaseRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskOperationDatabaseRestoreDatabaseMetadata

A Task containing the RPC response.

Overrides

SetIamPolicy(SetIamPolicyRequest, CallSettings)

public override Policy SetIamPolicy(SetIamPolicyRequest request, CallSettings callSettings = null)

Sets the access control policy on a database or backup resource. Replaces any existing policy.

Authorization requires spanner.databases.setIamPolicy permission on [resource][google.iam.v1.SetIamPolicyRequest.resource]. For backups, authorization requires spanner.backups.setIamPolicy permission on [resource][google.iam.v1.SetIamPolicyRequest.resource].

Parameters
Name Description
request SetIamPolicyRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
Policy

The RPC response.

Overrides

SetIamPolicyAsync(SetIamPolicyRequest, CallSettings)

public override Task<Policy> SetIamPolicyAsync(SetIamPolicyRequest request, CallSettings callSettings = null)

Sets the access control policy on a database or backup resource. Replaces any existing policy.

Authorization requires spanner.databases.setIamPolicy permission on [resource][google.iam.v1.SetIamPolicyRequest.resource]. For backups, authorization requires spanner.backups.setIamPolicy permission on [resource][google.iam.v1.SetIamPolicyRequest.resource].

Parameters
Name Description
request SetIamPolicyRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskPolicy

A Task containing the RPC response.

Overrides

TestIamPermissions(TestIamPermissionsRequest, CallSettings)

public override TestIamPermissionsResponse TestIamPermissions(TestIamPermissionsRequest request, CallSettings callSettings = null)

Returns permissions that the caller has on the specified database or backup resource.

Attempting this RPC on a non-existent Cloud Spanner database will result in a NOT_FOUND error if the user has spanner.databases.list permission on the containing Cloud Spanner instance. Otherwise returns an empty set of permissions. Calling this method on a backup that does not exist will result in a NOT_FOUND error if the user has spanner.backups.list permission on the containing instance.

Parameters
Name Description
request TestIamPermissionsRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TestIamPermissionsResponse

The RPC response.

Overrides

TestIamPermissionsAsync(TestIamPermissionsRequest, CallSettings)

public override Task<TestIamPermissionsResponse> TestIamPermissionsAsync(TestIamPermissionsRequest request, CallSettings callSettings = null)

Returns permissions that the caller has on the specified database or backup resource.

Attempting this RPC on a non-existent Cloud Spanner database will result in a NOT_FOUND error if the user has spanner.databases.list permission on the containing Cloud Spanner instance. Otherwise returns an empty set of permissions. Calling this method on a backup that does not exist will result in a NOT_FOUND error if the user has spanner.backups.list permission on the containing instance.

Parameters
Name Description
request TestIamPermissionsRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskTestIamPermissionsResponse

A Task containing the RPC response.

Overrides

UpdateBackup(UpdateBackupRequest, CallSettings)

public override Backup UpdateBackup(UpdateBackupRequest request, CallSettings callSettings = null)

Updates a pending or completed [Backup][google.spanner.admin.database.v1.Backup].

Parameters
Name Description
request UpdateBackupRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
Backup

The RPC response.

Overrides

UpdateBackupAsync(UpdateBackupRequest, CallSettings)

public override Task<Backup> UpdateBackupAsync(UpdateBackupRequest request, CallSettings callSettings = null)

Updates a pending or completed [Backup][google.spanner.admin.database.v1.Backup].

Parameters
Name Description
request UpdateBackupRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskBackup

A Task containing the RPC response.

Overrides

UpdateBackupSchedule(UpdateBackupScheduleRequest, CallSettings)

public override BackupSchedule UpdateBackupSchedule(UpdateBackupScheduleRequest request, CallSettings callSettings = null)

Updates a backup schedule.

Parameters
Name Description
request UpdateBackupScheduleRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
BackupSchedule

The RPC response.

Overrides

UpdateBackupScheduleAsync(UpdateBackupScheduleRequest, CallSettings)

public override Task<BackupSchedule> UpdateBackupScheduleAsync(UpdateBackupScheduleRequest request, CallSettings callSettings = null)

Updates a backup schedule.

Parameters
Name Description
request UpdateBackupScheduleRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskBackupSchedule

A Task containing the RPC response.

Overrides

UpdateDatabase(UpdateDatabaseRequest, CallSettings)

public override Operation<Database, UpdateDatabaseMetadata> UpdateDatabase(UpdateDatabaseRequest request, CallSettings callSettings = null)

Updates a Cloud Spanner database. The returned [long-running operation][google.longrunning.Operation] can be used to track the progress of updating the database. If the named database does not exist, returns NOT_FOUND.

While the operation is pending:

  • The database's [reconciling][google.spanner.admin.database.v1.Database.reconciling] field is set to true.
  • Cancelling the operation is best-effort. If the cancellation succeeds, the operation metadata's [cancel_time][google.spanner.admin.database.v1.UpdateDatabaseMetadata.cancel_time] is set, the updates are reverted, and the operation terminates with a CANCELLED status.
  • New UpdateDatabase requests will return a FAILED_PRECONDITION error until the pending operation is done (returns successfully or with error).
  • Reading the database via the API continues to give the pre-request values.

Upon completion of the returned operation:

  • The new values are in effect and readable via the API.
  • The database's [reconciling][google.spanner.admin.database.v1.Database.reconciling] field becomes false.

The returned [long-running operation][google.longrunning.Operation] will have a name of the format projects/<project>/instances/<instance>/databases/<database>/operations/<operation_id> and can be used to track the database modification. The [metadata][google.longrunning.Operation.metadata] field type is [UpdateDatabaseMetadata][google.spanner.admin.database.v1.UpdateDatabaseMetadata]. The [response][google.longrunning.Operation.response] field type is [Database][google.spanner.admin.database.v1.Database], if successful.

Parameters
Name Description
request UpdateDatabaseRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
OperationDatabaseUpdateDatabaseMetadata

The RPC response.

Overrides

UpdateDatabaseAsync(UpdateDatabaseRequest, CallSettings)

public override Task<Operation<Database, UpdateDatabaseMetadata>> UpdateDatabaseAsync(UpdateDatabaseRequest request, CallSettings callSettings = null)

Updates a Cloud Spanner database. The returned [long-running operation][google.longrunning.Operation] can be used to track the progress of updating the database. If the named database does not exist, returns NOT_FOUND.

While the operation is pending:

  • The database's [reconciling][google.spanner.admin.database.v1.Database.reconciling] field is set to true.
  • Cancelling the operation is best-effort. If the cancellation succeeds, the operation metadata's [cancel_time][google.spanner.admin.database.v1.UpdateDatabaseMetadata.cancel_time] is set, the updates are reverted, and the operation terminates with a CANCELLED status.
  • New UpdateDatabase requests will return a FAILED_PRECONDITION error until the pending operation is done (returns successfully or with error).
  • Reading the database via the API continues to give the pre-request values.

Upon completion of the returned operation:

  • The new values are in effect and readable via the API.
  • The database's [reconciling][google.spanner.admin.database.v1.Database.reconciling] field becomes false.

The returned [long-running operation][google.longrunning.Operation] will have a name of the format projects/<project>/instances/<instance>/databases/<database>/operations/<operation_id> and can be used to track the database modification. The [metadata][google.longrunning.Operation.metadata] field type is [UpdateDatabaseMetadata][google.spanner.admin.database.v1.UpdateDatabaseMetadata]. The [response][google.longrunning.Operation.response] field type is [Database][google.spanner.admin.database.v1.Database], if successful.

Parameters
Name Description
request UpdateDatabaseRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskOperationDatabaseUpdateDatabaseMetadata

A Task containing the RPC response.

Overrides

UpdateDatabaseDdl(UpdateDatabaseDdlRequest, CallSettings)

public override Operation<Empty, UpdateDatabaseDdlMetadata> UpdateDatabaseDdl(UpdateDatabaseDdlRequest request, CallSettings callSettings = null)

Updates the schema of a Cloud Spanner database by creating/altering/dropping tables, columns, indexes, etc. The returned [long-running operation][google.longrunning.Operation] will have a name of the format <database_name>/operations/<operation_id> and can be used to track execution of the schema change(s). The [metadata][google.longrunning.Operation.metadata] field type is [UpdateDatabaseDdlMetadata][google.spanner.admin.database.v1.UpdateDatabaseDdlMetadata]. The operation has no response.

Parameters
Name Description
request UpdateDatabaseDdlRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
OperationEmptyUpdateDatabaseDdlMetadata

The RPC response.

Overrides

UpdateDatabaseDdlAsync(UpdateDatabaseDdlRequest, CallSettings)

public override Task<Operation<Empty, UpdateDatabaseDdlMetadata>> UpdateDatabaseDdlAsync(UpdateDatabaseDdlRequest request, CallSettings callSettings = null)

Updates the schema of a Cloud Spanner database by creating/altering/dropping tables, columns, indexes, etc. The returned [long-running operation][google.longrunning.Operation] will have a name of the format <database_name>/operations/<operation_id> and can be used to track execution of the schema change(s). The [metadata][google.longrunning.Operation.metadata] field type is [UpdateDatabaseDdlMetadata][google.spanner.admin.database.v1.UpdateDatabaseDdlMetadata]. The operation has no response.

Parameters
Name Description
request UpdateDatabaseDdlRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskOperationEmptyUpdateDatabaseDdlMetadata

A Task containing the RPC response.

Overrides