Class PostgreSQLSettings

    • Method Detail

      • afterConnectScript

        public final String afterConnectScript()

        For use with change data capture (CDC) only, this attribute has DMS bypass foreign keys and user triggers to reduce the time it takes to bulk load data.

        Example: afterConnectScript=SET session_replication_role='replica'

        Returns:
        For use with change data capture (CDC) only, this attribute has DMS bypass foreign keys and user triggers to reduce the time it takes to bulk load data.

        Example: afterConnectScript=SET session_replication_role='replica'

      • captureDdls

        public final Boolean captureDdls()

        To capture DDL events, DMS creates various artifacts in the PostgreSQL database when the task starts. You can later remove these artifacts.

        If this value is set to N, you don't have to create tables or triggers on the source database.

        Returns:
        To capture DDL events, DMS creates various artifacts in the PostgreSQL database when the task starts. You can later remove these artifacts.

        If this value is set to N, you don't have to create tables or triggers on the source database.

      • maxFileSize

        public final Integer maxFileSize()

        Specifies the maximum size (in KB) of any .csv file used to transfer data to PostgreSQL.

        Example: maxFileSize=512

        Returns:
        Specifies the maximum size (in KB) of any .csv file used to transfer data to PostgreSQL.

        Example: maxFileSize=512

      • databaseName

        public final String databaseName()

        Database name for the endpoint.

        Returns:
        Database name for the endpoint.
      • ddlArtifactsSchema

        public final String ddlArtifactsSchema()

        The schema in which the operational DDL database artifacts are created.

        Example: ddlArtifactsSchema=xyzddlschema;

        Returns:
        The schema in which the operational DDL database artifacts are created.

        Example: ddlArtifactsSchema=xyzddlschema;

      • executeTimeout

        public final Integer executeTimeout()

        Sets the client statement timeout for the PostgreSQL instance, in seconds. The default value is 60 seconds.

        Example: executeTimeout=100;

        Returns:
        Sets the client statement timeout for the PostgreSQL instance, in seconds. The default value is 60 seconds.

        Example: executeTimeout=100;

      • failTasksOnLobTruncation

        public final Boolean failTasksOnLobTruncation()

        When set to true, this value causes a task to fail if the actual size of a LOB column is greater than the specified LobMaxSize.

        If task is set to Limited LOB mode and this option is set to true, the task fails instead of truncating the LOB data.

        Returns:
        When set to true, this value causes a task to fail if the actual size of a LOB column is greater than the specified LobMaxSize.

        If task is set to Limited LOB mode and this option is set to true, the task fails instead of truncating the LOB data.

      • heartbeatEnable

        public final Boolean heartbeatEnable()

        The write-ahead log (WAL) heartbeat feature mimics a dummy transaction. By doing this, it prevents idle logical replication slots from holding onto old WAL logs, which can result in storage full situations on the source. This heartbeat keeps restart_lsn moving and prevents storage full scenarios.

        Returns:
        The write-ahead log (WAL) heartbeat feature mimics a dummy transaction. By doing this, it prevents idle logical replication slots from holding onto old WAL logs, which can result in storage full situations on the source. This heartbeat keeps restart_lsn moving and prevents storage full scenarios.
      • heartbeatSchema

        public final String heartbeatSchema()

        Sets the schema in which the heartbeat artifacts are created.

        Returns:
        Sets the schema in which the heartbeat artifacts are created.
      • heartbeatFrequency

        public final Integer heartbeatFrequency()

        Sets the WAL heartbeat frequency (in minutes).

        Returns:
        Sets the WAL heartbeat frequency (in minutes).
      • password

        public final String password()

        Endpoint connection password.

        Returns:
        Endpoint connection password.
      • port

        public final Integer port()

        Endpoint TCP port. The default is 5432.

        Returns:
        Endpoint TCP port. The default is 5432.
      • serverName

        public final String serverName()

        The host name of the endpoint database.

        For an Amazon RDS PostgreSQL instance, this is the output of DescribeDBInstances, in the Endpoint.Address field.

        For an Aurora PostgreSQL instance, this is the output of DescribeDBClusters, in the Endpoint field.

        Returns:
        The host name of the endpoint database.

        For an Amazon RDS PostgreSQL instance, this is the output of DescribeDBInstances, in the Endpoint.Address field.

        For an Aurora PostgreSQL instance, this is the output of DescribeDBClusters, in the Endpoint field.

      • username

        public final String username()

        Endpoint connection user name.

        Returns:
        Endpoint connection user name.
      • slotName

        public final String slotName()

        Sets the name of a previously created logical replication slot for a change data capture (CDC) load of the PostgreSQL source instance.

        When used with the CdcStartPosition request parameter for the DMS API , this attribute also makes it possible to use native CDC start points. DMS verifies that the specified logical replication slot exists before starting the CDC load task. It also verifies that the task was created with a valid setting of CdcStartPosition. If the specified slot doesn't exist or the task doesn't have a valid CdcStartPosition setting, DMS raises an error.

        For more information about setting the CdcStartPosition request parameter, see Determining a CDC native start point in the Database Migration Service User Guide. For more information about using CdcStartPosition, see CreateReplicationTask, StartReplicationTask, and ModifyReplicationTask.

        Returns:
        Sets the name of a previously created logical replication slot for a change data capture (CDC) load of the PostgreSQL source instance.

        When used with the CdcStartPosition request parameter for the DMS API , this attribute also makes it possible to use native CDC start points. DMS verifies that the specified logical replication slot exists before starting the CDC load task. It also verifies that the task was created with a valid setting of CdcStartPosition. If the specified slot doesn't exist or the task doesn't have a valid CdcStartPosition setting, DMS raises an error.

        For more information about setting the CdcStartPosition request parameter, see Determining a CDC native start point in the Database Migration Service User Guide. For more information about using CdcStartPosition, see CreateReplicationTask, StartReplicationTask, and ModifyReplicationTask.

      • pluginNameAsString

        public final String pluginNameAsString()

        Specifies the plugin to use to create a replication slot.

        If the service returns an enum value that is not available in the current SDK version, pluginName will return PluginNameValue.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from pluginNameAsString().

        Returns:
        Specifies the plugin to use to create a replication slot.
        See Also:
        PluginNameValue
      • secretsManagerAccessRoleArn

        public final String secretsManagerAccessRoleArn()

        The full Amazon Resource Name (ARN) of the IAM role that specifies DMS as the trusted entity and grants the required permissions to access the value in SecretsManagerSecret. The role must allow the iam:PassRole action. SecretsManagerSecret has the value of the Amazon Web Services Secrets Manager secret that allows access to the PostgreSQL endpoint.

        You can specify one of two sets of values for these permissions. You can specify the values for this setting and SecretsManagerSecretId. Or you can specify clear-text values for UserName, Password, ServerName, and Port. You can't specify both. For more information on creating this SecretsManagerSecret and the SecretsManagerAccessRoleArn and SecretsManagerSecretId required to access it, see Using secrets to access Database Migration Service resources in the Database Migration Service User Guide.

        Returns:
        The full Amazon Resource Name (ARN) of the IAM role that specifies DMS as the trusted entity and grants the required permissions to access the value in SecretsManagerSecret. The role must allow the iam:PassRole action. SecretsManagerSecret has the value of the Amazon Web Services Secrets Manager secret that allows access to the PostgreSQL endpoint.

        You can specify one of two sets of values for these permissions. You can specify the values for this setting and SecretsManagerSecretId. Or you can specify clear-text values for UserName, Password, ServerName, and Port. You can't specify both. For more information on creating this SecretsManagerSecret and the SecretsManagerAccessRoleArn and SecretsManagerSecretId required to access it, see Using secrets to access Database Migration Service resources in the Database Migration Service User Guide.

      • secretsManagerSecretId

        public final String secretsManagerSecretId()

        The full ARN, partial ARN, or friendly name of the SecretsManagerSecret that contains the PostgreSQL endpoint connection details.

        Returns:
        The full ARN, partial ARN, or friendly name of the SecretsManagerSecret that contains the PostgreSQL endpoint connection details.
      • trimSpaceInChar

        public final Boolean trimSpaceInChar()

        Use the TrimSpaceInChar source endpoint setting to trim data on CHAR and NCHAR data types during migration. The default value is true.

        Returns:
        Use the TrimSpaceInChar source endpoint setting to trim data on CHAR and NCHAR data types during migration. The default value is true.
      • mapBooleanAsBoolean

        public final Boolean mapBooleanAsBoolean()

        When true, lets PostgreSQL migrate the boolean type as boolean. By default, PostgreSQL migrates booleans as varchar(5). You must set this setting on both the source and target endpoints for it to take effect.

        Returns:
        When true, lets PostgreSQL migrate the boolean type as boolean. By default, PostgreSQL migrates booleans as varchar(5). You must set this setting on both the source and target endpoints for it to take effect.
      • mapJsonbAsClob

        public final Boolean mapJsonbAsClob()

        When true, DMS migrates JSONB values as CLOB.

        Returns:
        When true, DMS migrates JSONB values as CLOB.
      • databaseMode

        public final DatabaseMode databaseMode()

        Specifies the default behavior of the replication's handling of PostgreSQL- compatible endpoints that require some additional configuration, such as Babelfish endpoints.

        If the service returns an enum value that is not available in the current SDK version, databaseMode will return DatabaseMode.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from databaseModeAsString().

        Returns:
        Specifies the default behavior of the replication's handling of PostgreSQL- compatible endpoints that require some additional configuration, such as Babelfish endpoints.
        See Also:
        DatabaseMode
      • databaseModeAsString

        public final String databaseModeAsString()

        Specifies the default behavior of the replication's handling of PostgreSQL- compatible endpoints that require some additional configuration, such as Babelfish endpoints.

        If the service returns an enum value that is not available in the current SDK version, databaseMode will return DatabaseMode.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from databaseModeAsString().

        Returns:
        Specifies the default behavior of the replication's handling of PostgreSQL- compatible endpoints that require some additional configuration, such as Babelfish endpoints.
        See Also:
        DatabaseMode
      • babelfishDatabaseName

        public final String babelfishDatabaseName()

        The Babelfish for Aurora PostgreSQL database name for the endpoint.

        Returns:
        The Babelfish for Aurora PostgreSQL database name for the endpoint.
      • hashCode

        public final int hashCode()
        Overrides:
        hashCode in class Object
      • equals

        public final boolean equals​(Object obj)
        Overrides:
        equals in class Object
      • toString

        public final String toString()
        Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
        Overrides:
        toString in class Object
      • getValueForField

        public final <T> Optional<T> getValueForField​(String fieldName,
                                                      Class<T> clazz)