Class ColumnChunk

java.lang.Object
org.apache.parquet.format.ColumnChunk
All Implemented Interfaces:
Serializable, Cloneable, Comparable<ColumnChunk>, org.apache.thrift.TBase<ColumnChunk,ColumnChunk._Fields>, org.apache.thrift.TSerializable

@Generated(value="Autogenerated by Thrift Compiler (0.23.0)", date="2026-08-06") public class ColumnChunk extends Object implements org.apache.thrift.TBase<ColumnChunk,ColumnChunk._Fields>, Serializable, Cloneable, Comparable<ColumnChunk>
See Also:
  • Field Details

    • file_path

      public String file_path
      File where column data is stored. If not set, assumed to be same file as metadata. This path is relative to the current file. As of December 2025, the only known use-case for this field is writing summary parquet files (i.e. "_metadata" files). These files consolidate footers from multiple parquet files to allow for efficient reading of footers to avoid file listing costs and prune out files that do not need to be read based on statistics. These files do not appear to have ever been formally specified in the specification. and are potentially problematic from a correctness perspective [1]. [1] https://lists.apache.org/thread/ootf2kmyg3p01b1bvplpvp4ftd1bt72d There is no other known usage of this field. Specifically, there are no known reference implementations that will read externally stored column data if this field is populated within a standard parquet file. Making use of the field for this purpose is not considered part of the Parquet specification.
    • file_offset

      public long file_offset
      DEPRECATED: Byte offset in file_path to the ColumnMetaData Past use of this field has been inconsistent, with some implementations using it to point to the ColumnMetaData and some using it to point to the first page in the column chunk. In many cases, the ColumnMetaData at this location is wrong. This field is now deprecated and should not be used. Writers should set this field to 0 if no ColumnMetaData has been written outside the footer.
    • meta_data

      public ColumnMetaData meta_data
      Column metadata for this chunk. Some writers may also replicate this at the location pointed to by file_path/file_offset. Note: while marked as optional, this field is in fact required by most major Parquet implementations. As such, writers MUST populate this field.
    • offset_index_offset

      public long offset_index_offset
      File offset of ColumnChunk's OffsetIndex *
    • offset_index_length

      public int offset_index_length
      Size of ColumnChunk's OffsetIndex, in bytes *
    • column_index_offset

      public long column_index_offset
      File offset of ColumnChunk's ColumnIndex *
    • column_index_length

      public int column_index_length
      Size of ColumnChunk's ColumnIndex, in bytes *
    • crypto_metadata

      public ColumnCryptoMetaData crypto_metadata
      Crypto metadata of encrypted columns *
    • encrypted_column_metadata

      public ByteBuffer encrypted_column_metadata
      Encrypted column metadata for this chunk *
    • metaDataMap

      public static final Map<ColumnChunk._Fields,org.apache.thrift.meta_data.FieldMetaData> metaDataMap
  • Constructor Details

    • ColumnChunk

      public ColumnChunk()
    • ColumnChunk

      public ColumnChunk(long file_offset)
    • ColumnChunk

      public ColumnChunk(ColumnChunk other)
      Performs a deep copy on other.
  • Method Details

    • deepCopy

      public ColumnChunk deepCopy()
      Specified by:
      deepCopy in interface org.apache.thrift.TBase<ColumnChunk,ColumnChunk._Fields>
    • clear

      public void clear()
      Specified by:
      clear in interface org.apache.thrift.TBase<ColumnChunk,ColumnChunk._Fields>
    • getFile_path

      public String getFile_path()
      File where column data is stored. If not set, assumed to be same file as metadata. This path is relative to the current file. As of December 2025, the only known use-case for this field is writing summary parquet files (i.e. "_metadata" files). These files consolidate footers from multiple parquet files to allow for efficient reading of footers to avoid file listing costs and prune out files that do not need to be read based on statistics. These files do not appear to have ever been formally specified in the specification. and are potentially problematic from a correctness perspective [1]. [1] https://lists.apache.org/thread/ootf2kmyg3p01b1bvplpvp4ftd1bt72d There is no other known usage of this field. Specifically, there are no known reference implementations that will read externally stored column data if this field is populated within a standard parquet file. Making use of the field for this purpose is not considered part of the Parquet specification.
    • setFile_path

      public ColumnChunk setFile_path(String file_path)
      File where column data is stored. If not set, assumed to be same file as metadata. This path is relative to the current file. As of December 2025, the only known use-case for this field is writing summary parquet files (i.e. "_metadata" files). These files consolidate footers from multiple parquet files to allow for efficient reading of footers to avoid file listing costs and prune out files that do not need to be read based on statistics. These files do not appear to have ever been formally specified in the specification. and are potentially problematic from a correctness perspective [1]. [1] https://lists.apache.org/thread/ootf2kmyg3p01b1bvplpvp4ftd1bt72d There is no other known usage of this field. Specifically, there are no known reference implementations that will read externally stored column data if this field is populated within a standard parquet file. Making use of the field for this purpose is not considered part of the Parquet specification.
    • unsetFile_path

      public void unsetFile_path()
    • isSetFile_path

      public boolean isSetFile_path()
      Returns true if field file_path is set (has been assigned a value) and false otherwise
    • setFile_pathIsSet

      public void setFile_pathIsSet(boolean value)
    • getFile_offset

      public long getFile_offset()
      DEPRECATED: Byte offset in file_path to the ColumnMetaData Past use of this field has been inconsistent, with some implementations using it to point to the ColumnMetaData and some using it to point to the first page in the column chunk. In many cases, the ColumnMetaData at this location is wrong. This field is now deprecated and should not be used. Writers should set this field to 0 if no ColumnMetaData has been written outside the footer.
    • setFile_offset

      public ColumnChunk setFile_offset(long file_offset)
      DEPRECATED: Byte offset in file_path to the ColumnMetaData Past use of this field has been inconsistent, with some implementations using it to point to the ColumnMetaData and some using it to point to the first page in the column chunk. In many cases, the ColumnMetaData at this location is wrong. This field is now deprecated and should not be used. Writers should set this field to 0 if no ColumnMetaData has been written outside the footer.
    • unsetFile_offset

      public void unsetFile_offset()
    • isSetFile_offset

      public boolean isSetFile_offset()
      Returns true if field file_offset is set (has been assigned a value) and false otherwise
    • setFile_offsetIsSet

      public void setFile_offsetIsSet(boolean value)
    • getMeta_data

      public ColumnMetaData getMeta_data()
      Column metadata for this chunk. Some writers may also replicate this at the location pointed to by file_path/file_offset. Note: while marked as optional, this field is in fact required by most major Parquet implementations. As such, writers MUST populate this field.
    • setMeta_data

      public ColumnChunk setMeta_data(ColumnMetaData meta_data)
      Column metadata for this chunk. Some writers may also replicate this at the location pointed to by file_path/file_offset. Note: while marked as optional, this field is in fact required by most major Parquet implementations. As such, writers MUST populate this field.
    • unsetMeta_data

      public void unsetMeta_data()
    • isSetMeta_data

      public boolean isSetMeta_data()
      Returns true if field meta_data is set (has been assigned a value) and false otherwise
    • setMeta_dataIsSet

      public void setMeta_dataIsSet(boolean value)
    • getOffset_index_offset

      public long getOffset_index_offset()
      File offset of ColumnChunk's OffsetIndex *
    • setOffset_index_offset

      public ColumnChunk setOffset_index_offset(long offset_index_offset)
      File offset of ColumnChunk's OffsetIndex *
    • unsetOffset_index_offset

      public void unsetOffset_index_offset()
    • isSetOffset_index_offset

      public boolean isSetOffset_index_offset()
      Returns true if field offset_index_offset is set (has been assigned a value) and false otherwise
    • setOffset_index_offsetIsSet

      public void setOffset_index_offsetIsSet(boolean value)
    • getOffset_index_length

      public int getOffset_index_length()
      Size of ColumnChunk's OffsetIndex, in bytes *
    • setOffset_index_length

      public ColumnChunk setOffset_index_length(int offset_index_length)
      Size of ColumnChunk's OffsetIndex, in bytes *
    • unsetOffset_index_length

      public void unsetOffset_index_length()
    • isSetOffset_index_length

      public boolean isSetOffset_index_length()
      Returns true if field offset_index_length is set (has been assigned a value) and false otherwise
    • setOffset_index_lengthIsSet

      public void setOffset_index_lengthIsSet(boolean value)
    • getColumn_index_offset

      public long getColumn_index_offset()
      File offset of ColumnChunk's ColumnIndex *
    • setColumn_index_offset

      public ColumnChunk setColumn_index_offset(long column_index_offset)
      File offset of ColumnChunk's ColumnIndex *
    • unsetColumn_index_offset

      public void unsetColumn_index_offset()
    • isSetColumn_index_offset

      public boolean isSetColumn_index_offset()
      Returns true if field column_index_offset is set (has been assigned a value) and false otherwise
    • setColumn_index_offsetIsSet

      public void setColumn_index_offsetIsSet(boolean value)
    • getColumn_index_length

      public int getColumn_index_length()
      Size of ColumnChunk's ColumnIndex, in bytes *
    • setColumn_index_length

      public ColumnChunk setColumn_index_length(int column_index_length)
      Size of ColumnChunk's ColumnIndex, in bytes *
    • unsetColumn_index_length

      public void unsetColumn_index_length()
    • isSetColumn_index_length

      public boolean isSetColumn_index_length()
      Returns true if field column_index_length is set (has been assigned a value) and false otherwise
    • setColumn_index_lengthIsSet

      public void setColumn_index_lengthIsSet(boolean value)
    • getCrypto_metadata

      public ColumnCryptoMetaData getCrypto_metadata()
      Crypto metadata of encrypted columns *
    • setCrypto_metadata

      public ColumnChunk setCrypto_metadata(ColumnCryptoMetaData crypto_metadata)
      Crypto metadata of encrypted columns *
    • unsetCrypto_metadata

      public void unsetCrypto_metadata()
    • isSetCrypto_metadata

      public boolean isSetCrypto_metadata()
      Returns true if field crypto_metadata is set (has been assigned a value) and false otherwise
    • setCrypto_metadataIsSet

      public void setCrypto_metadataIsSet(boolean value)
    • getEncrypted_column_metadata

      public byte[] getEncrypted_column_metadata()
      Encrypted column metadata for this chunk *
    • bufferForEncrypted_column_metadata

      public ByteBuffer bufferForEncrypted_column_metadata()
    • setEncrypted_column_metadata

      public ColumnChunk setEncrypted_column_metadata(byte[] encrypted_column_metadata)
      Encrypted column metadata for this chunk *
    • setEncrypted_column_metadata

      public ColumnChunk setEncrypted_column_metadata(ByteBuffer encrypted_column_metadata)
    • unsetEncrypted_column_metadata

      public void unsetEncrypted_column_metadata()
    • isSetEncrypted_column_metadata

      public boolean isSetEncrypted_column_metadata()
      Returns true if field encrypted_column_metadata is set (has been assigned a value) and false otherwise
    • setEncrypted_column_metadataIsSet

      public void setEncrypted_column_metadataIsSet(boolean value)
    • setFieldValue

      public void setFieldValue(ColumnChunk._Fields field, Object value)
      Specified by:
      setFieldValue in interface org.apache.thrift.TBase<ColumnChunk,ColumnChunk._Fields>
    • getFieldValue

      public Object getFieldValue(ColumnChunk._Fields field)
      Specified by:
      getFieldValue in interface org.apache.thrift.TBase<ColumnChunk,ColumnChunk._Fields>
    • isSet

      public boolean isSet(ColumnChunk._Fields field)
      Returns true if field corresponding to fieldID is set (has been assigned a value) and false otherwise
      Specified by:
      isSet in interface org.apache.thrift.TBase<ColumnChunk,ColumnChunk._Fields>
    • equals

      public boolean equals(Object that)
      Overrides:
      equals in class Object
    • equals

      public boolean equals(ColumnChunk that)
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • compareTo

      public int compareTo(ColumnChunk other)
      Specified by:
      compareTo in interface Comparable<ColumnChunk>
    • fieldForId

      public ColumnChunk._Fields fieldForId(int fieldId)
      Specified by:
      fieldForId in interface org.apache.thrift.TBase<ColumnChunk,ColumnChunk._Fields>
    • read

      public void read(org.apache.thrift.protocol.TProtocol iprot) throws org.apache.thrift.TException
      Specified by:
      read in interface org.apache.thrift.TSerializable
      Throws:
      org.apache.thrift.TException
    • write

      public void write(org.apache.thrift.protocol.TProtocol oprot) throws org.apache.thrift.TException
      Specified by:
      write in interface org.apache.thrift.TSerializable
      Throws:
      org.apache.thrift.TException
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • validate

      public void validate() throws org.apache.thrift.TException
      Throws:
      org.apache.thrift.TException