Skip to content

update_integration_table_properties async

update_integration_table_properties(
    resource_arn: String512,
    table_name: String128,
    *,
    config_overrides: Optional[AsyncGlueClientConfig] = None,
    source_table_config: Optional[SourceTableConfig] = None,
    target_table_config: Optional[TargetTableConfig] = None,
) -> UpdateIntegrationTablePropertiesResponse

This API is used to provide optional override properties for the tables that need to be replicated. These properties can include properties for filtering and partitioning for the source and target tables. To set both source and target properties the same API need to be invoked with the Glue connection ARN as ResourceArn with SourceTableConfig, and the Glue database ARN as ResourceArn with TargetTableConfig respectively.

The override will be reflected across all the integrations using same ResourceArn and source table.

Parameters:

  • resource_arn (String512) –

    The connection ARN of the source, or the database ARN of the target.

  • table_name (String128) –

    The name of the table to be replicated.

  • source_table_config (Optional[SourceTableConfig], default: None ) –

    A structure for the source table configuration.

  • target_table_config (Optional[TargetTableConfig], default: None ) –

    A structure for the target table configuration.

Raises:

Source code in docs_src/capo_glue/_services/async_glue.py
async def update_integration_table_properties(
    self,
    resource_arn: "capo_glue.types.string512.String512",
    table_name: "capo_glue.types.string128.String128",
    *,
    config_overrides: Optional[AsyncGlueClientConfig] = None,
    source_table_config: Optional[
        "capo_glue.types.source_table_config.SourceTableConfig"
    ] = None,
    target_table_config: Optional[
        "capo_glue.types.target_table_config.TargetTableConfig"
    ] = None,
) -> "capo_glue.types.update_integration_table_properties_response.UpdateIntegrationTablePropertiesResponse":
    """<p>This API is used to provide optional override properties for the tables that need to be replicated. These properties can include properties for filtering and partitioning for the source and target tables. To set both source and target properties the same API need to be invoked with the Glue connection ARN as <code>ResourceArn</code> with <code>SourceTableConfig</code>, and the Glue database ARN as <code>ResourceArn</code> with <code>TargetTableConfig</code> respectively.</p> <p>The override will be reflected across all the integrations using same <code>ResourceArn</code> and source table.</p>

    Args:
        resource_arn: <p>The connection ARN of the source, or the database ARN of the target.</p>
        table_name: <p>The name of the table to be replicated.</p>
        source_table_config: <p>A structure for the source table configuration.</p>
        target_table_config: <p>A structure for the target table configuration.</p>

    Raises:
        capo_glue.errors.access_denied_exception.AccessDeniedException: <p>Access to a resource was denied.</p>
        capo_glue.errors.entity_not_found_exception.EntityNotFoundException: <p>A specified entity does not exist</p>
        capo_glue.errors.internal_server_exception.InternalServerException: <p>An internal server error occurred.</p>
        capo_glue.errors.internal_service_exception.InternalServiceException: <p>An internal service error occurred.</p>
        capo_glue.errors.invalid_input_exception.InvalidInputException: <p>The input provided was not valid.</p>
        capo_glue.errors.resource_not_found_exception.ResourceNotFoundException: <p>The resource could not be found.</p>
        capo_glue.errors.validation_exception.ValidationException: <p>A value could not be validated.</p>
        capo_glue.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_glue.types.update_integration_table_properties_request.UpdateIntegrationTablePropertiesRequest]",
    ) -> AsyncOperationResponse[
        "capo_glue.types.update_integration_table_properties_response.UpdateIntegrationTablePropertiesResponse"
    ]:
        import capo_glue._operations.aws_glue.update_integration_table_properties

        (
            output,
            http_response,
        ) = await capo_glue._operations.aws_glue.update_integration_table_properties.async_update_integration_table_properties(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("UpdateIntegrationTableProperties")
    )
    input_: capo_glue.types.update_integration_table_properties_request.UpdateIntegrationTablePropertiesRequest = {
        "resource_arn": resource_arn,
        "table_name": table_name,
    }
    if source_table_config is not None:
        input_["source_table_config"] = source_table_config
    if target_table_config is not None:
        input_["target_table_config"] = target_table_config

    response = await aexecute_pipeline(
        AsyncOperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    await response.response.aclose()
    return response.output