OmniSciDB  a47db9e897
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
InputMetadata.cpp File Reference
#include "InputMetadata.h"
#include "Execute.h"
#include "../Fragmenter/Fragmenter.h"
#include <future>
+ Include dependency graph for InputMetadata.cpp:

Go to the source code of this file.

Namespaces

 

Functions

Fragmenter_Namespace::TableInfo anonymous_namespace{InputMetadata.cpp}::copy_table_info (const Fragmenter_Namespace::TableInfo &table_info)
 
Fragmenter_Namespace::TableInfo anonymous_namespace{InputMetadata.cpp}::build_table_info (const std::vector< const TableDescriptor * > &shard_tables)
 
bool anonymous_namespace{InputMetadata.cpp}::uses_int_meta (const SQLTypeInfo &col_ti)
 
std::map< int, ChunkMetadataanonymous_namespace{InputMetadata.cpp}::synthesize_metadata (const ResultSet *rows)
 
Fragmenter_Namespace::TableInfo anonymous_namespace{InputMetadata.cpp}::synthesize_table_info (const ResultSetPtr &rows)
 
void anonymous_namespace{InputMetadata.cpp}::collect_table_infos (std::vector< InputTableInfo > &table_infos, const std::vector< InputDescriptor > &input_descs, Executor *executor)
 
size_t get_frag_count_of_table (const int table_id, Executor *executor)
 
std::vector< InputTableInfoget_table_infos (const std::vector< InputDescriptor > &input_descs, Executor *executor)
 
std::vector< InputTableInfoget_table_infos (const RelAlgExecutionUnit &ra_exe_unit, Executor *executor)
 

Function Documentation

size_t get_frag_count_of_table ( const int  table_id,
Executor executor 
)

Definition at line 237 of file InputMetadata.cpp.

References CHECK(), and CHECK_GE.

237  {
238  const auto temporary_tables = executor->getTemporaryTables();
239  CHECK(temporary_tables);
240  auto it = temporary_tables->find(table_id);
241  if (it != temporary_tables->end()) {
242  CHECK_GE(int(0), table_id);
243  return size_t(1);
244  } else {
245  const auto table_info = executor->getTableInfo(table_id);
246  return table_info.fragments.size();
247  }
248 }
#define CHECK_GE(x, y)
Definition: Logger.h:203
CHECK(cgen_state)

+ Here is the call graph for this function:

std::vector<InputTableInfo> get_table_infos ( const std::vector< InputDescriptor > &  input_descs,
Executor executor 
)

Definition at line 250 of file InputMetadata.cpp.

References anonymous_namespace{InputMetadata.cpp}::collect_table_infos().

Referenced by RelAlgExecutor::computeWindow(), RelAlgExecutor::createCompoundWorkUnit(), RelAlgExecutor::createModifyCompoundWorkUnit(), RelAlgExecutor::createProjectWorkUnit(), RelAlgExecutor::createTableFunctionWorkUnit(), RelAlgExecutor::executeDeleteViaCompound(), RelAlgExecutor::executeDeleteViaProject(), RelAlgExecutor::executeTableFunction(), RelAlgExecutor::executeUpdateViaCompound(), RelAlgExecutor::executeUpdateViaProject(), RelAlgExecutor::executeWorkUnit(), get_table_infos(), RelAlgExecutor::getFilteredCountAll(), RelAlgExecutor::getFilterSelectivity(), RelAlgExecutor::getNDVEstimation(), RelAlgExecutor::handleOutOfMemoryRetry(), TableOptimizer::recomputeMetadata(), and RelAlgExecutor::selectFiltersToBePushedDown().

252  {
253  std::vector<InputTableInfo> table_infos;
254  collect_table_infos(table_infos, input_descs, executor);
255  return table_infos;
256 }
void collect_table_infos(std::vector< InputTableInfo > &table_infos, const std::vector< InputDescriptor > &input_descs, Executor *executor)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

std::vector<InputTableInfo> get_table_infos ( const RelAlgExecutionUnit ra_exe_unit,
Executor executor 
)

Definition at line 258 of file InputMetadata.cpp.

References anonymous_namespace{InputMetadata.cpp}::collect_table_infos(), get_table_infos(), INJECT_TIMER, and RelAlgExecutionUnit::input_descs.

259  {
261  std::vector<InputTableInfo> table_infos;
262  collect_table_infos(table_infos, ra_exe_unit.input_descs, executor);
263  return table_infos;
264 }
const std::vector< InputDescriptor > input_descs
#define INJECT_TIMER(DESC)
Definition: measure.h:91
std::vector< InputTableInfo > get_table_infos(const std::vector< InputDescriptor > &input_descs, Executor *executor)
void collect_table_infos(std::vector< InputTableInfo > &table_infos, const std::vector< InputDescriptor > &input_descs, Executor *executor)

+ Here is the call graph for this function: