MCPcopy Create free account
hub / github.com/apache/orc / getMemoryUseByFieldId

Method getMemoryUseByFieldId

c++/src/Reader.cc:973–989  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

971 }
972
973 uint64_t ReaderImpl::getMemoryUseByFieldId(const std::list<uint64_t>& include, int stripeIx) {
974 std::vector<bool> selectedColumns;
975 selectedColumns.assign(static_cast<size_t>(contents_->footer->types_size()), false);
976 ColumnSelector column_selector(contents_.get());
977 if (contents_->schema->getKind() == STRUCT && include.begin() != include.end()) {
978 for (std::list<uint64_t>::const_iterator field = include.begin(); field != include.end();
979 ++field) {
980 column_selector.updateSelectedByFieldId(selectedColumns, *field);
981 }
982 } else {
983 // default is to select all columns
984 std::fill(selectedColumns.begin(), selectedColumns.end(), true);
985 }
986 column_selector.selectParents(selectedColumns, *contents_->schema.get());
987 selectedColumns[0] = true; // column 0 is selected by default
988 return getMemoryUse(stripeIx, selectedColumns);
989 }
990
991 uint64_t ReaderImpl::getMemoryUseByName(const std::list<std::string>& names, int stripeIx) {
992 std::vector<bool> selectedColumns;

Callers 2

TESTFunction · 0.80
processFileFunction · 0.80

Calls 5

selectParentsMethod · 0.80
getKindMethod · 0.65
endMethod · 0.65
getMethod · 0.45

Tested by 1

TESTFunction · 0.64