Updates an instance configuration. The returned long-running operation
can be used to track the progress of updating the instance. If the named
instance configuration does not exist, returns NOT_FOUND
. Only
user-managed configurations can be updated. Immediately after the
request returns: * The instance configuration's reconciling field is set
to true. While the operation is pending: * Cancelling the operation sets
its metadata's cancel_time. The operation is guaranteed to succeed at
undoing all changes, after which point it terminates with a CANCELLED
status. * All other attempts to modify the instance configuration are
rejected. * Reading the instance configuration via the API continues to
give the pre-request values. Upon completion of the returned operation:
* Creating instances using the instance configuration uses the new
values. * The new values of the instance configuration are readable via
the API. * The instance configuration's reconciling field becomes false.
The returned long-running operation will have a name of the format
/operations/
and can be used to track the instance configuration
modification. The metadata field type is UpdateInstanceConfigMetadata.
The response field type is InstanceConfig, if successful. Authorization
requires spanner.instanceConfigs.update
permission on the resource
name.
This method waits—the workflow execution is paused—until the operation is
complete, fails, or times out. The default timeout value is 1800
seconds (30
minutes) and can be changed to a maximum value of 31536000
seconds (one year)
for long-running operations using the connector_params
field.
The connector uses polling to monitor the long-running operation, which might
generate additional billable steps. The polling policy for the long-running
operation can be configured. For example, if you set skip_polling
to True
,
the connector invocation call is non-blocking if the initial request succeeds;
otherwise, retries might occur.
For more information about connector-specific parameters (connector_params
),
see Invoke a connector call.
For more information about retries and long-running operations, see Understand connectors.
Arguments
Parameters | |
---|---|
name |
Required. A unique identifier for the instance configuration. Values are of the form |
body |
Required. |
Raised exceptions
Exceptions | |
---|---|
ConnectionError |
In case of a network problem (such as DNS failure or refused connection). |
HttpError |
If the response status is >= 400 (excluding 429 and 503). |
TimeoutError |
If a long-running operation takes longer to finish than the specified timeout limit. |
TypeError |
If an operation or function receives an argument of the wrong type. |
ValueError |
If an operation or function receives an argument of the right type but an inappropriate value. For example, a negative timeout. |
OperationError |
If the long-running operation finished unsuccessfully. |
ResponseTypeError |
If the long-running operation returned a response of the wrong type. |
Response
If successful, the response contains an instance of Operation
.
Subworkflow snippet
Some fields might be optional or required. To identify required fields, refer to the API documentation.
YAML
- patch: call: googleapis.spanner.v1.projects.instanceConfigs.patch args: name: ... body: instanceConfig: baseConfig: ... displayName: ... etag: ... labels: ... leaderOptions: ... name: ... replicas: ... updateMask: ... validateOnly: ... result: patchResult
JSON
[ { "patch": { "call": "googleapis.spanner.v1.projects.instanceConfigs.patch", "args": { "name": "...", "body": { "instanceConfig": { "baseConfig": "...", "displayName": "...", "etag": "...", "labels": "...", "leaderOptions": "...", "name": "...", "replicas": "..." }, "updateMask": "...", "validateOnly": "..." } }, "result": "patchResult" } } ]