Github user vvysotskyi commented on a diff in the pull request:

    https://github.com/apache/drill/pull/805#discussion_r133933369
  
    --- Diff: 
exec/java-exec/src/main/java/org/apache/drill/exec/store/parquet/ParquetReaderUtility.java
 ---
    @@ -181,6 +186,101 @@ else if (parquetTableMetadata instanceof 
Metadata.ParquetTableMetadata_v2 &&
       }
     
       /**
    +   * Checks that the metadata file has version less than
    +   * the version where was changed the serialization of BINARY values
    +   * and assigns byte arrays to min/max values obtained from the 
deserialized string.
    +   *
    +   * @param parquetTableMetadata table metadata that should be corrected
    +   */
    --- End diff --
    
    `ColumnMetadata_v1`  class serializes / deserializes `primitiveType` field 
so it does not hard to check that field has `BINARY` type.
    But `ColumnMetadata_v2` and `ColumnMetadata_v3` does not serialize this 
field. They have classes `ColumnTypeMetadata_v2` and `ColumnTypeMetadata_v3` 
respectively which contain information about the field name, primitive and 
original types. In this method, we are receiving fields with `BINARY` type 
taking information about the field type from `ColumnTypeMetadata_v2` or 
`ColumnTypeMetadata_v3`.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

Reply via email to