Class AlterWalRequest

  • All Implemented Interfaces:
    org.apache.avro.generic.GenericContainer, org.apache.avro.generic.IndexedRecord

    public class AlterWalRequest
    extends Object
    implements org.apache.avro.generic.IndexedRecord
    A set of parameters for GPUdb.alterWal.

    Alters table write-ahead log (WAL) settings. Returns information about the requested table WAL modifications.

    • Constructor Detail

      • AlterWalRequest

        public AlterWalRequest()
        Constructs an AlterWalRequest object with default parameters.
      • AlterWalRequest

        public AlterWalRequest​(List<String> tableNames,
                               Map<String,​String> options)
        Constructs an AlterWalRequest object with the specified parameters.
        Parameters:
        tableNames - List of tables to modify. An asterisk changes the system settings.
        options - Optional parameters.
        • MAX_SEGMENT_SIZE: Maximum size of an individual segment file
        • SEGMENT_COUNT: Approximate number of segment files to split the WAL across. Must be at least two.
        • SYNC_POLICY: Maximum size of an individual segment file. Supported values:
          • NONE: Disables the WAL
          • BACKGROUND: WAL entries are periodically written instead of immediately after each operation
          • FLUSH: Protects entries in the event of a database crash
          • FSYNC: Protects entries in the event of an OS crash
        • FLUSH_FREQUENCY: Specifies how frequently WAL entries are written with background sync. This is a global setting and can only be used with the system {options.table_names} specifier '*'.
        • CHECKSUM: If TRUE each entry will be checked against a protective checksum. Supported values: The default value is TRUE.
        • OVERRIDE_NON_DEFAULT: If TRUE tables with unique WAL settings will be overridden when applying a system level change. Supported values: The default value is FALSE.
        • RESTORE_SYSTEM_SETTINGS: If TRUE tables with unique WAL settings will be reverted to the current global settings. Cannot be used in conjunction with any other option. Supported values: The default value is FALSE.
        • PERSIST: If TRUE and a system-level change was requested, the system configuration will be written to disk upon successful application of this request. This will commit the changes from this request and any additional in-memory modifications. Supported values: The default value is TRUE.
        The default value is an empty Map.
    • Method Detail

      • getClassSchema

        public static org.apache.avro.Schema getClassSchema()
        This method supports the Avro framework and is not intended to be called directly by the user.
        Returns:
        The schema for the class.
      • getTableNames

        public List<String> getTableNames()
        List of tables to modify. An asterisk changes the system settings.
        Returns:
        The current value of tableNames.
      • setTableNames

        public AlterWalRequest setTableNames​(List<String> tableNames)
        List of tables to modify. An asterisk changes the system settings.
        Parameters:
        tableNames - The new value for tableNames.
        Returns:
        this to mimic the builder pattern.
      • getOptions

        public Map<String,​String> getOptions()
        Optional parameters.
        • MAX_SEGMENT_SIZE: Maximum size of an individual segment file
        • SEGMENT_COUNT: Approximate number of segment files to split the WAL across. Must be at least two.
        • SYNC_POLICY: Maximum size of an individual segment file. Supported values:
          • NONE: Disables the WAL
          • BACKGROUND: WAL entries are periodically written instead of immediately after each operation
          • FLUSH: Protects entries in the event of a database crash
          • FSYNC: Protects entries in the event of an OS crash
        • FLUSH_FREQUENCY: Specifies how frequently WAL entries are written with background sync. This is a global setting and can only be used with the system {options.table_names} specifier '*'.
        • CHECKSUM: If TRUE each entry will be checked against a protective checksum. Supported values: The default value is TRUE.
        • OVERRIDE_NON_DEFAULT: If TRUE tables with unique WAL settings will be overridden when applying a system level change. Supported values: The default value is FALSE.
        • RESTORE_SYSTEM_SETTINGS: If TRUE tables with unique WAL settings will be reverted to the current global settings. Cannot be used in conjunction with any other option. Supported values: The default value is FALSE.
        • PERSIST: If TRUE and a system-level change was requested, the system configuration will be written to disk upon successful application of this request. This will commit the changes from this request and any additional in-memory modifications. Supported values: The default value is TRUE.
        The default value is an empty Map.
        Returns:
        The current value of options.
      • setOptions

        public AlterWalRequest setOptions​(Map<String,​String> options)
        Optional parameters.
        • MAX_SEGMENT_SIZE: Maximum size of an individual segment file
        • SEGMENT_COUNT: Approximate number of segment files to split the WAL across. Must be at least two.
        • SYNC_POLICY: Maximum size of an individual segment file. Supported values:
          • NONE: Disables the WAL
          • BACKGROUND: WAL entries are periodically written instead of immediately after each operation
          • FLUSH: Protects entries in the event of a database crash
          • FSYNC: Protects entries in the event of an OS crash
        • FLUSH_FREQUENCY: Specifies how frequently WAL entries are written with background sync. This is a global setting and can only be used with the system {options.table_names} specifier '*'.
        • CHECKSUM: If TRUE each entry will be checked against a protective checksum. Supported values: The default value is TRUE.
        • OVERRIDE_NON_DEFAULT: If TRUE tables with unique WAL settings will be overridden when applying a system level change. Supported values: The default value is FALSE.
        • RESTORE_SYSTEM_SETTINGS: If TRUE tables with unique WAL settings will be reverted to the current global settings. Cannot be used in conjunction with any other option. Supported values: The default value is FALSE.
        • PERSIST: If TRUE and a system-level change was requested, the system configuration will be written to disk upon successful application of this request. This will commit the changes from this request and any additional in-memory modifications. Supported values: The default value is TRUE.
        The default value is an empty Map.
        Parameters:
        options - The new value for options.
        Returns:
        this to mimic the builder pattern.
      • getSchema

        public org.apache.avro.Schema getSchema()
        This method supports the Avro framework and is not intended to be called directly by the user.
        Specified by:
        getSchema in interface org.apache.avro.generic.GenericContainer
        Returns:
        The schema object describing this class.
      • get

        public Object get​(int index)
        This method supports the Avro framework and is not intended to be called directly by the user.
        Specified by:
        get in interface org.apache.avro.generic.IndexedRecord
        Parameters:
        index - the position of the field to get
        Returns:
        value of the field with the given index.
        Throws:
        IndexOutOfBoundsException
      • put

        public void put​(int index,
                        Object value)
        This method supports the Avro framework and is not intended to be called directly by the user.
        Specified by:
        put in interface org.apache.avro.generic.IndexedRecord
        Parameters:
        index - the position of the field to set
        value - the value to set
        Throws:
        IndexOutOfBoundsException
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object