Github user jamesclampffer commented on a diff in the pull request: https://github.com/apache/orc/pull/273#discussion_r191933565 --- Diff: c++/src/ColumnWriter.cc --- @@ -1675,7 +1677,9 @@ namespace orc { void ListColumnWriter::getColumnEncoding( std::vector<proto::ColumnEncoding>& encodings) const { proto::ColumnEncoding encoding; - encoding.set_kind(proto::ColumnEncoding_Kind_DIRECT); + encoding.set_kind(rleVersion == RleVersion_1 ? --- End diff -- You could clean up the initializer list and avoid long term version mismatch issues if you add a helper function that maps RleVersion1 to ColumnEncoding_Kind_DIRECT and RleVersion_2 to ColumnEncoding_Kind_DIRECT_V2 and errors/throws on other values.
---