diff --git a/google/cloud/spanner_admin_database_v1/__init__.py b/google/cloud/spanner_admin_database_v1/__init__.py index ac9f326d88..97dfa1c991 100644 --- a/google/cloud/spanner_admin_database_v1/__init__.py +++ b/google/cloud/spanner_admin_database_v1/__init__.py @@ -44,6 +44,7 @@ from .types.spanner_database_admin import CreateDatabaseRequest from .types.spanner_database_admin import Database from .types.spanner_database_admin import DatabaseRole +from .types.spanner_database_admin import DdlStatementActionInfo from .types.spanner_database_admin import DropDatabaseRequest from .types.spanner_database_admin import GetDatabaseDdlRequest from .types.spanner_database_admin import GetDatabaseDdlResponse @@ -81,6 +82,7 @@ "DatabaseAdminClient", "DatabaseDialect", "DatabaseRole", + "DdlStatementActionInfo", "DeleteBackupRequest", "DropDatabaseRequest", "EncryptionConfig", diff --git a/google/cloud/spanner_admin_database_v1/types/__init__.py b/google/cloud/spanner_admin_database_v1/types/__init__.py index 405629136c..28f71d58f2 100644 --- a/google/cloud/spanner_admin_database_v1/types/__init__.py +++ b/google/cloud/spanner_admin_database_v1/types/__init__.py @@ -41,6 +41,7 @@ CreateDatabaseRequest, Database, DatabaseRole, + DdlStatementActionInfo, DropDatabaseRequest, GetDatabaseDdlRequest, GetDatabaseDdlResponse, @@ -87,6 +88,7 @@ "CreateDatabaseRequest", "Database", "DatabaseRole", + "DdlStatementActionInfo", "DropDatabaseRequest", "GetDatabaseDdlRequest", "GetDatabaseDdlResponse", diff --git a/google/cloud/spanner_admin_database_v1/types/spanner_database_admin.py b/google/cloud/spanner_admin_database_v1/types/spanner_database_admin.py index 15f38a30fd..e3c0e5bec2 100644 --- a/google/cloud/spanner_admin_database_v1/types/spanner_database_admin.py +++ b/google/cloud/spanner_admin_database_v1/types/spanner_database_admin.py @@ -40,6 +40,7 @@ "UpdateDatabaseRequest", "UpdateDatabaseMetadata", "UpdateDatabaseDdlRequest", + "DdlStatementActionInfo", "UpdateDatabaseDdlMetadata", "DropDatabaseRequest", "GetDatabaseDdlRequest", @@ -533,6 +534,46 @@ class UpdateDatabaseDdlRequest(proto.Message): ) +class DdlStatementActionInfo(proto.Message): + r"""Action information extracted from a DDL statement. This proto is + used to display the brief info of the DDL statement for the + operation + [UpdateDatabaseDdl][google.spanner.admin.database.v1.DatabaseAdmin.UpdateDatabaseDdl]. + + Attributes: + action (str): + The action for the DDL statement, e.g. + CREATE, ALTER, DROP, GRANT, etc. This field is a + non-empty string. + entity_type (str): + The entity type for the DDL statement, e.g. TABLE, INDEX, + VIEW, etc. This field can be empty string for some DDL + statement, e.g. for statement "ANALYZE", ``entity_type`` = + "". + entity_names (MutableSequence[str]): + The entity name(s) being operated on the DDL statement. E.g. + + 1. For statement "CREATE TABLE t1(...)", ``entity_names`` = + ["t1"]. + 2. For statement "GRANT ROLE r1, r2 ...", ``entity_names`` = + ["r1", "r2"]. + 3. For statement "ANALYZE", ``entity_names`` = []. + """ + + action: str = proto.Field( + proto.STRING, + number=1, + ) + entity_type: str = proto.Field( + proto.STRING, + number=2, + ) + entity_names: MutableSequence[str] = proto.RepeatedField( + proto.STRING, + number=3, + ) + + class UpdateDatabaseDdlMetadata(proto.Message): r"""Metadata type for the operation returned by [UpdateDatabaseDdl][google.spanner.admin.database.v1.DatabaseAdmin.UpdateDatabaseDdl]. @@ -550,20 +591,22 @@ class UpdateDatabaseDdlMetadata(proto.Message): commit timestamp for the statement ``statements[i]``. throttled (bool): Output only. When true, indicates that the - operation is throttled e.g due to resource + operation is throttled e.g. due to resource constraints. When resources become available the operation will resume and this field will be false again. progress (MutableSequence[google.cloud.spanner_admin_database_v1.types.OperationProgress]): The progress of the [UpdateDatabaseDdl][google.spanner.admin.database.v1.DatabaseAdmin.UpdateDatabaseDdl] - operations. Currently, only index creation statements will - have a continuously updating progress. For non-index - creation statements, ``progress[i]`` will have start time - and end time populated with commit timestamp of operation, - as well as a progress of 100% once the operation has - completed. ``progress[i]`` is the operation progress for - ``statements[i]``. + operations. All DDL statements will have continuously + updating progress, and ``progress[i]`` is the operation + progress for ``statements[i]``. Also, ``progress[i]`` will + have start time and end time populated with commit timestamp + of operation, as well as a progress of 100% once the + operation has completed. + actions (MutableSequence[google.cloud.spanner_admin_database_v1.types.DdlStatementActionInfo]): + The brief action info for the DDL statements. ``actions[i]`` + is the brief info for ``statements[i]``. """ database: str = proto.Field( @@ -588,6 +631,11 @@ class UpdateDatabaseDdlMetadata(proto.Message): number=5, message=common.OperationProgress, ) + actions: MutableSequence["DdlStatementActionInfo"] = proto.RepeatedField( + proto.MESSAGE, + number=6, + message="DdlStatementActionInfo", + ) class DropDatabaseRequest(proto.Message): diff --git a/samples/generated_samples/snippet_metadata_google.spanner.admin.database.v1.json b/samples/generated_samples/snippet_metadata_google.spanner.admin.database.v1.json index ed948fdb6d..11932ae5e8 100644 --- a/samples/generated_samples/snippet_metadata_google.spanner.admin.database.v1.json +++ b/samples/generated_samples/snippet_metadata_google.spanner.admin.database.v1.json @@ -8,7 +8,7 @@ ], "language": "PYTHON", "name": "google-cloud-spanner-admin-database", - "version": "3.35.1" + "version": "0.1.0" }, "snippets": [ { diff --git a/samples/generated_samples/snippet_metadata_google.spanner.admin.instance.v1.json b/samples/generated_samples/snippet_metadata_google.spanner.admin.instance.v1.json index 7a1b240bf9..9572d4d727 100644 --- a/samples/generated_samples/snippet_metadata_google.spanner.admin.instance.v1.json +++ b/samples/generated_samples/snippet_metadata_google.spanner.admin.instance.v1.json @@ -8,7 +8,7 @@ ], "language": "PYTHON", "name": "google-cloud-spanner-admin-instance", - "version": "3.35.1" + "version": "0.1.0" }, "snippets": [ { diff --git a/samples/generated_samples/snippet_metadata_google.spanner.v1.json b/samples/generated_samples/snippet_metadata_google.spanner.v1.json index 070f4adbe5..a8e8be3ae3 100644 --- a/samples/generated_samples/snippet_metadata_google.spanner.v1.json +++ b/samples/generated_samples/snippet_metadata_google.spanner.v1.json @@ -8,7 +8,7 @@ ], "language": "PYTHON", "name": "google-cloud-spanner", - "version": "3.35.1" + "version": "0.1.0" }, "snippets": [ {