Alexey Serbin has uploaded this change for review. ( http://gerrit.cloudera.org:8080/22976
Change subject: [common] introduce ColumnSchemaBuilder ...................................................................... [common] introduce ColumnSchemaBuilder My in-progress patches to introduce array data type require updates on ColumnSchema. However, the number of parameters-by-default for ColumnSchema constructor is unmaintainable already. Consequently, the are too many unrelated parameters specified at call sites, making it hard to read and comprehend, and even more so if trying to make any updates. This changelist addresses these issues by introducing ColumnSchemaBuilder helper (similar to KuduClientBuilder, etc.). I also moved the full-fledged constructor of the ColumnSchema class into the private section to encourage using the simpler one and switch to ColumnSchemaBuilder for more advanced use cases. Correspondingly, I updated all the call sites to switch to ColumnSchemaBuilder where necessary. I removed the usage of std::optional for ColumnSchemaFromPB(), switching it to ColumnSchemaBuilder and renaming the helper function into ColumnSchemaBuilderFromPB(). In addition, a new enumeration ColumnSchema::Nullability has been added to specify NULLABLE and NOT_NULL instead of boolean parameter in a simpler ColumnSchema's constructor. This patch doesn't contain any functional modifications. Change-Id: I1c21b459b24675d0702c91add27950d91975fad9 --- M src/kudu/client/scan_configuration.cc M src/kudu/client/schema.cc M src/kudu/codegen/codegen-test.cc M src/kudu/common/column_predicate-test.cc M src/kudu/common/generic_iterators-test.cc M src/kudu/common/key_util-test.cc M src/kudu/common/partial_row-test.cc M src/kudu/common/partition-test.cc M src/kudu/common/row_operations-test.cc M src/kudu/common/scan_spec-test.cc M src/kudu/common/schema-test.cc M src/kudu/common/schema.cc M src/kudu/common/schema.h M src/kudu/common/wire_protocol-test-util.h M src/kudu/common/wire_protocol-test.cc M src/kudu/common/wire_protocol.cc M src/kudu/common/wire_protocol.h M src/kudu/integration-tests/auto_incrementing-itest.cc M src/kudu/integration-tests/create-table-itest.cc M src/kudu/master/catalog_manager-test.cc M src/kudu/master/catalog_manager.cc M src/kudu/master/master-test.cc M src/kudu/tablet/all_types-scan-correctness-test.cc M src/kudu/tablet/cfile_set-test.cc M src/kudu/tablet/compaction-test.cc M src/kudu/tablet/delta_compaction-test.cc M src/kudu/tablet/diff_scan-test.cc M src/kudu/tablet/diskrowset-test.cc M src/kudu/tablet/key_value_test_schema.h M src/kudu/tablet/memrowset-test.cc M src/kudu/tablet/tablet-decoder-eval-test.cc M src/kudu/tablet/tablet-pushdown-test.cc M src/kudu/tablet/tablet-schema-test.cc M src/kudu/tablet/tablet-test-base.h M src/kudu/tablet/tablet-test-util.h M src/kudu/tablet/tablet-test.cc M src/kudu/tablet/tablet_auto_incrementing-test.cc M src/kudu/tools/kudu-tool-test.cc M src/kudu/tserver/tablet_server-test.cc M src/kudu/tserver/tablet_server_authorization-test.cc M src/kudu/tserver/tablet_service.cc 41 files changed, 816 insertions(+), 502 deletions(-) git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/76/22976/1 -- To view, visit http://gerrit.cloudera.org:8080/22976 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: I1c21b459b24675d0702c91add27950d91975fad9 Gerrit-Change-Number: 22976 Gerrit-PatchSet: 1 Gerrit-Owner: Alexey Serbin <[email protected]>
