kou commented on code in PR #40768:
URL: https://github.com/apache/arrow/pull/40768#discussion_r1536950188
##########
cpp/src/parquet/file_writer.cc:
##########
@@ -292,36 +290,34 @@ class RowGroupSerializer : public
RowGroupWriter::Contents {
auto col_meta = metadata_->NextColumnChunk();
const auto& path = col_meta->descr()->path();
const int32_t column_ordinal = next_column_index_++;
+ const ColumnProperties& column_properties =
properties_->column_properties(path);
auto meta_encryptor =
file_encryptor_ ?
file_encryptor_->GetColumnMetaEncryptor(path->ToDotString())
: nullptr;
auto data_encryptor =
file_encryptor_ ?
file_encryptor_->GetColumnDataEncryptor(path->ToDotString())
: nullptr;
- auto ci_builder = page_index_builder_ &&
properties_->page_index_enabled(path)
+ auto ci_builder = page_index_builder_ &&
column_properties.page_index_enabled()
?
page_index_builder_->GetColumnIndexBuilder(column_ordinal)
: nullptr;
- auto oi_builder = page_index_builder_ &&
properties_->page_index_enabled(path)
+ auto oi_builder = page_index_builder_ &&
column_properties.page_index_enabled()
?
page_index_builder_->GetOffsetIndexBuilder(column_ordinal)
: nullptr;
- auto codec_options = properties_->codec_options(path)
- ? (properties_->codec_options(path)).get()
- : nullptr;
- std::unique_ptr<PageWriter> pager;
+ const CodecOptions* codec_options = column_properties.codec_options()
+ ?
column_properties.codec_options().get()
+ : nullptr;
+ CodecOptions default_codec_options;
if (!codec_options) {
- pager = PageWriter::Open(
- sink_, properties_->compression(path), col_meta,
row_group_ordinal_,
- static_cast<int16_t>(column_ordinal), properties_->memory_pool(),
- buffered_row_group_, meta_encryptor, data_encryptor,
- properties_->page_checksum_enabled(), ci_builder, oi_builder,
CodecOptions());
- } else {
- pager = PageWriter::Open(
- sink_, properties_->compression(path), col_meta,
row_group_ordinal_,
- static_cast<int16_t>(column_ordinal), properties_->memory_pool(),
- buffered_row_group_, meta_encryptor, data_encryptor,
- properties_->page_checksum_enabled(), ci_builder, oi_builder,
*codec_options);
+ codec_options = &default_codec_options;
}
+ DCHECK_NE(nullptr, codec_options);
+ std::unique_ptr<PageWriter> pager = PageWriter::Open(
Review Comment:
`auto`?
```suggestion
auto pager = PageWriter::Open(
```
##########
cpp/src/parquet/file_writer.cc:
##########
@@ -140,37 +140,35 @@ class RowGroupSerializer : public
RowGroupWriter::Contents {
const int32_t column_ordinal = next_column_index_++;
const auto& path = col_meta->descr()->path();
+ const ColumnProperties& column_properties =
properties_->column_properties(path);
Review Comment:
`auto`?
```suggestion
const auto& column_properties = properties_->column_properties(path);
```
##########
cpp/src/parquet/file_writer.cc:
##########
@@ -140,37 +140,35 @@ class RowGroupSerializer : public
RowGroupWriter::Contents {
const int32_t column_ordinal = next_column_index_++;
const auto& path = col_meta->descr()->path();
+ const ColumnProperties& column_properties =
properties_->column_properties(path);
auto meta_encryptor =
file_encryptor_ ?
file_encryptor_->GetColumnMetaEncryptor(path->ToDotString())
: nullptr;
auto data_encryptor =
file_encryptor_ ?
file_encryptor_->GetColumnDataEncryptor(path->ToDotString())
: nullptr;
- auto ci_builder = page_index_builder_ &&
properties_->page_index_enabled(path) &&
- properties_->statistics_enabled(path)
+ auto ci_builder = page_index_builder_ &&
column_properties.page_index_enabled() &&
+ column_properties.statistics_enabled()
?
page_index_builder_->GetColumnIndexBuilder(column_ordinal)
: nullptr;
- auto oi_builder = page_index_builder_ &&
properties_->page_index_enabled(path)
+ auto oi_builder = page_index_builder_ &&
column_properties.page_index_enabled()
?
page_index_builder_->GetOffsetIndexBuilder(column_ordinal)
: nullptr;
- auto codec_options = properties_->codec_options(path)
- ? properties_->codec_options(path).get()
- : nullptr;
+ const CodecOptions* codec_options = column_properties.codec_options()
Review Comment:
Should we use explicit type here? Can we use `auto` here?
```suggestion
const auto* codec_options = column_properties.codec_options()
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]