You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@arrow.apache.org by we...@apache.org on 2018/12/13 14:56:23 UTC
[arrow] branch master updated: PARQUET-1473: [C++] Add helper
function that converts ParquetVersion to human-friendly string
This is an automated email from the ASF dual-hosted git repository.
wesm pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/arrow.git
The following commit(s) were added to refs/heads/master by this push:
new 2a726c1 PARQUET-1473: [C++] Add helper function that converts ParquetVersion to human-friendly string
2a726c1 is described below
commit 2a726c179fdb794a9fbc2025aced0dbab3c5c362
Author: Hatem Helal <Ha...@mathworks.co.uk>
AuthorDate: Thu Dec 13 08:56:16 2018 -0600
PARQUET-1473: [C++] Add helper function that converts ParquetVersion to human-friendly string
Author: Hatem Helal <Ha...@mathworks.co.uk>
Author: Hatem Helal <ha...@gmail.com>
Closes #3148 from hatemhelal/parquet-1473-wip and squashes the following commits:
8983ae629 <Hatem Helal> remove default case from switch to make any omission a compile-time error
a87c3ba99 <Hatem Helal> Add helper function parquet::ParquetVersionToString and use it in parquet-reader tool
---
cpp/src/parquet/metadata.cc | 12 ++++++++++++
cpp/src/parquet/metadata.h | 2 ++
cpp/src/parquet/printer.cc | 2 +-
cpp/tools/parquet/parquet-reader.cc | 2 +-
4 files changed, 16 insertions(+), 2 deletions(-)
diff --git a/cpp/src/parquet/metadata.cc b/cpp/src/parquet/metadata.cc
index cf63b0f..22cfbdb 100644
--- a/cpp/src/parquet/metadata.cc
+++ b/cpp/src/parquet/metadata.cc
@@ -47,6 +47,18 @@ const ApplicationVersion& ApplicationVersion::PARQUET_CPP_FIXED_STATS_VERSION()
return version;
}
+std::string ParquetVersionToString(ParquetVersion::type ver) {
+ switch (ver) {
+ case ParquetVersion::PARQUET_1_0:
+ return "1.0";
+ case ParquetVersion::PARQUET_2_0:
+ return "2.0";
+ }
+
+ // This should be unreachable
+ return "UNKNOWN";
+}
+
template <typename DType>
static std::shared_ptr<RowGroupStatistics> MakeTypedColumnStats(
const format::ColumnMetaData& metadata, const ColumnDescriptor* descr) {
diff --git a/cpp/src/parquet/metadata.h b/cpp/src/parquet/metadata.h
index 706e980..25f4d4c 100644
--- a/cpp/src/parquet/metadata.h
+++ b/cpp/src/parquet/metadata.h
@@ -282,6 +282,8 @@ class PARQUET_EXPORT FileMetaDataBuilder {
std::unique_ptr<FileMetaDataBuilderImpl> impl_;
};
+PARQUET_EXPORT std::string ParquetVersionToString(ParquetVersion::type ver);
+
} // namespace parquet
#endif // PARQUET_FILE_METADATA_H
diff --git a/cpp/src/parquet/printer.cc b/cpp/src/parquet/printer.cc
index 9f26a41..5be8d9d 100644
--- a/cpp/src/parquet/printer.cc
+++ b/cpp/src/parquet/printer.cc
@@ -38,7 +38,7 @@ void ParquetFilePrinter::DebugPrint(std::ostream& stream, std::list<int> selecte
const FileMetaData* file_metadata = fileReader->metadata().get();
stream << "File Name: " << filename << "\n";
- stream << "Version: " << file_metadata->version() << "\n";
+ stream << "Version: " << ParquetVersionToString(file_metadata->version()) << "\n";
stream << "Created By: " << file_metadata->created_by() << "\n";
stream << "Total rows: " << file_metadata->num_rows() << "\n";
diff --git a/cpp/tools/parquet/parquet-reader.cc b/cpp/tools/parquet/parquet-reader.cc
index 34bdfc1..a5b7db1 100644
--- a/cpp/tools/parquet/parquet-reader.cc
+++ b/cpp/tools/parquet/parquet-reader.cc
@@ -23,7 +23,7 @@
int main(int argc, char** argv) {
if (argc > 5 || argc < 2) {
- std::cerr << "Usage: parquet_reader [--only-metadata] [--no-memory-map] [--json]"
+ std::cerr << "Usage: parquet-reader [--only-metadata] [--no-memory-map] [--json]"
"[--print-key-value-metadata] [--columns=...] <file>"
<< std::endl;
return -1;