OmniSciDB
a5dc49c757
|
#include <CommandLineOptions.h>
Public Member Functions | |
CommandLineOptions (char const *argv0, bool dist_v5_=false) | |
void | fillOptions () |
void | fillDeveloperOptions () |
std::string | getNodeIds () |
std::vector< std::string > | getNodeIdsArray () |
boost::optional< int > | parse_command_line (int argc, char const *const *argv, const bool should_init_logging=false) |
void | validate () |
void | validate_base_path () |
void | init_logging () |
Static Public Attributes | |
static const std::string | nodeIds_token = {"node_id"} |
static const std::string | cluster_command_line_arg {"cluster_topology"} |
Private Attributes | |
bool | enable_runtime_udfs = true |
bool | enable_runtime_udf = true |
bool | enable_udf_registration_for_all_users = false |
Definition at line 47 of file CommandLineOptions.h.
|
inline |
Definition at line 49 of file CommandLineOptions.h.
References fillDeveloperOptions(), and fillOptions().
void CommandLineOptions::fillDeveloperOptions | ( | ) |
Definition at line 775 of file CommandLineOptions.cpp.
References g_allow_invalid_literal_buffer_reads, g_allow_memory_status_log, g_allow_query_step_cpu_retry, g_approx_quantile_buffer, g_approx_quantile_centroids, g_bitmap_memory_limit, g_columnar_large_projections, g_columnar_large_projections_threshold, g_cpu_sub_task_size, g_cpu_threads_override, g_enable_auto_metadata_update, g_enable_automatic_ir_metadata, g_enable_bump_allocator, g_enable_columnar_output, g_enable_cpu_sub_tasks, g_enable_dev_table_functions, g_enable_direct_columnarization, g_enable_filter_function, g_enable_foreign_table_scheduled_refresh, g_enable_geo_ops_on_uncompressed_coords, g_enable_http_binary_server, g_enable_idp_temporary_users, g_enable_lazy_fetch, g_enable_left_join_filter_hoisting, g_enable_parallel_window_partition_compute, g_enable_parallel_window_partition_sort, g_enable_seconds_refresh, g_enable_smem_group_by, g_enable_smem_grouped_non_count_agg, g_enable_smem_non_grouped_agg, g_enable_window_functions, g_estimator_failure_max_groupby_size, g_fraction_code_cache_to_evict, g_gpu_code_cache_max_size_in_bytes, g_gpu_smem_threshold, g_large_ndv_multiplier, g_large_ndv_threshold, g_max_log_length, g_max_memory_allocation_size, g_min_memory_allocation_size, g_ndv_groups_estimator_multiplier, g_num_tuple_threshold_switch_to_baseline, g_optimize_row_initialization, g_parallel_top_max, g_parallel_top_min, g_query_engine_cuda_streams, g_ratio_num_hash_entry_to_num_tuple_switch_to_baseline, g_skip_intermediate_count, g_streaming_topn_max, g_strip_join_covered_quals, g_use_cpu_mem_pool_for_output_buffers, g_use_table_device_offset, g_vacuum_min_selectivity, and g_window_function_aggregation_tree_fanout.
Referenced by CommandLineOptions().
void CommandLineOptions::fillOptions | ( | ) |
Definition at line 104 of file CommandLineOptions.cpp.
References g_allow_auto_resultset_caching, g_allow_cpu_retry, g_allow_query_step_skipping, g_auto_resultset_caching_threshold, g_bbox_intersect_max_table_size_bytes, g_bbox_intersect_target_entries_per_bin, g_bigint_count, g_cache_string_hash, g_enable_add_metadata_columns, g_enable_bbox_intersect_hashjoin, g_enable_debug_timer, g_enable_distance_rangejoin, g_enable_executor_resource_mgr, g_enable_filter_push_down, g_enable_fsi, g_enable_fsi_regex_import, g_enable_hashjoin_many_to_many, g_enable_interop, g_enable_legacy_delimited_import, g_enable_logs_system_tables, g_enable_logs_system_tables_auto_refresh, g_enable_ml_functions, g_enable_string_functions, g_enable_stringdict_parallel, g_enable_system_tables, g_enable_table_functions, g_enable_thrift_logs, g_enable_union, g_executor_resource_mgr_allow_cpu_gpu_kernel_concurrency, g_executor_resource_mgr_allow_cpu_kernel_concurrency, g_executor_resource_mgr_allow_cpu_result_mem_oversubscription_concurrency, g_executor_resource_mgr_allow_cpu_slot_oversubscription_concurrency, g_executor_resource_mgr_cpu_result_mem_bytes, g_executor_resource_mgr_cpu_result_mem_ratio, g_executor_resource_mgr_max_available_resource_use_ratio, g_executor_resource_mgr_per_query_max_cpu_result_mem_ratio, g_executor_resource_mgr_per_query_max_cpu_slots_ratio, g_filter_push_down_high_frac, g_filter_push_down_low_frac, g_filter_push_down_passing_row_ubound, g_from_table_reordering, g_hll_precision_bits, g_in_clause_num_elem_skip_bitmap, g_inner_join_fragment_skipping, Catalog_Namespace::g_log_user_id, g_logs_system_tables_max_files_count, g_logs_system_tables_refresh_interval, g_max_cacheable_query_resultset_size_bytes, g_max_import_threads, g_null_div_by_zero, g_pmem_path, g_pmem_size, g_query_resultset_cache_total_bytes, g_restrict_ml_model_metadata_to_superusers, g_trivial_loop_join_threshold, g_uniform_request_ids_per_thrift_call, g_use_chunk_metadata_cache, g_use_query_resultset_cache, g_watchdog_in_clause_max_num_elem_bitmap, g_watchdog_in_clause_max_num_elem_non_bitmap, g_watchdog_in_clause_max_num_input_rows, g_watchdog_max_projected_rows_per_device, g_watchdog_none_encoded_string_translation_limit, and run_benchmark_import::required.
Referenced by CommandLineOptions().
std::string CommandLineOptions::getNodeIds | ( | ) |
std::vector<std::string> CommandLineOptions::getNodeIdsArray | ( | ) |
void CommandLineOptions::init_logging | ( | ) |
Definition at line 96 of file CommandLineOptions.cpp.
References logger::DEBUG1, and logger::init().
Referenced by EmbeddedDatabase::DBEngineImpl::init().
boost::optional< int > CommandLineOptions::parse_command_line | ( | int | argc, |
char const *const * | argv, | ||
const bool | should_init_logging = false |
||
) |
Definition at line 1762 of file CommandLineOptions.cpp.
References SystemParameters::ALLOWED_ALL_USERS, SystemParameters::ALLOWED_SUPERUSERS_ONLY, BASELINE_HT, BBOX_INTERSECT_HT, construct_runtime_udf_registration_policy(), SystemParameters::DISALLOWED, logger::ERROR, migrations::MigrationMgr::executeRebrandMigration(), g_allow_auto_resultset_caching, g_allow_query_step_skipping, g_auto_resultset_caching_threshold, g_dynamic_watchdog_time_limit, g_enable_data_recycler, g_enable_dynamic_watchdog, g_enable_executor_resource_mgr, g_enable_filter_push_down, g_enable_non_kernel_time_query_interrupt, g_enable_runtime_query_interrupt, g_enable_union, g_enable_watchdog, g_executor_resource_mgr_allow_cpu_gpu_kernel_concurrency, g_executor_resource_mgr_allow_cpu_kernel_concurrency, g_executor_resource_mgr_allow_cpu_result_mem_oversubscription_concurrency, g_executor_resource_mgr_allow_cpu_slot_oversubscription_concurrency, g_executor_resource_mgr_cpu_result_mem_bytes, g_executor_resource_mgr_cpu_result_mem_ratio, g_executor_resource_mgr_max_available_resource_use_ratio, g_executor_resource_mgr_per_query_max_cpu_result_mem_ratio, g_executor_resource_mgr_per_query_max_cpu_slots_ratio, g_from_table_reordering, g_hashtable_cache_total_bytes, g_max_cacheable_hashtable_size_bytes, g_max_cacheable_query_resultset_size_bytes, g_max_import_threads, g_optimize_cuda_block_and_grid_sizes, g_parallel_top_max, g_parallel_top_min, g_pending_query_interrupt_freq, g_preflight_count_query_threshold, g_query_resultset_cache_total_bytes, g_running_query_interrupt_freq, g_use_chunk_metadata_cache, g_use_cpu_mem_pool_for_output_buffers, g_use_cpu_mem_pool_size_for_max_cpu_slab_size, g_use_estimator_result_cache, g_use_hashtable_cache, g_use_query_resultset_cache, g_watchdog_max_projected_rows_per_device, BoundingBoxIntersectJoinHashTable::getHashTableCache(), PerfectJoinHashTable::getHashTableCache(), BaselineJoinHashTable::getHashTableCache(), logger::INFO, shared::kCatalogDirectoryName, shared::kDataDirectoryName, shared::kLockfilesDirectoryName, LOG, MAPD_RELEASE, migrations::MigrationMgr::migrationEnabled(), PERFECT_HT, run, anonymous_namespace{CommandLineOptions.cpp}::sanitize_config_file(), DataRecycler< CACHED_ITEM_TYPE, META_INFO_TYPE >::setMaxCacheItemSize(), DataRecycler< CACHED_ITEM_TYPE, META_INFO_TYPE >::setTotalCacheSize(), migrations::MigrationMgr::takeMigrationLock(), anonymous_namespace{CommandLineOptions.cpp}::trim_and_check_file_exists(), and UNREACHABLE.
Referenced by EmbeddedDatabase::DBEngineImpl::init(), and main().
void CommandLineOptions::validate | ( | ) |
Definition at line 1296 of file CommandLineOptions.cpp.
References anonymous_namespace{CommandLineOptions.cpp}::addOptionalFileToBlacklist(), ddl_utils::FilePathBlacklist::addToBlacklist(), File_Namespace::all, test_exceptions::data_path, File_Namespace::fsi, heavyai::ftruncate(), g_allow_invalid_literal_buffer_reads, g_enable_debug_timer, g_enable_executor_resource_mgr, g_enable_foreign_table_scheduled_refresh, g_enable_fsi, g_enable_fsi_regex_import, g_enable_legacy_delimited_import, g_enable_logs_system_tables, g_enable_logs_system_tables_auto_refresh, g_enable_ml_functions, g_enable_s3_fsi, g_enable_system_tables, g_enable_table_functions, g_executor_resource_mgr_allow_cpu_gpu_kernel_concurrency, g_executor_resource_mgr_allow_cpu_kernel_concurrency, g_executor_resource_mgr_allow_cpu_result_mem_oversubscription_concurrency, g_executor_resource_mgr_allow_cpu_slot_oversubscription_concurrency, g_executor_resource_mgr_cpu_result_mem_ratio, g_executor_resource_mgr_max_available_resource_use_ratio, g_executor_resource_mgr_per_query_max_cpu_result_mem_ratio, g_executor_resource_mgr_per_query_max_cpu_slots_ratio, Catalog_Namespace::g_log_user_id, g_logs_system_tables_max_files_count, g_logs_system_tables_refresh_interval, g_multi_instance, g_ndv_groups_estimator_multiplier, g_pmem_path, g_pmem_size, g_read_only, g_use_cpu_mem_pool_size_for_max_cpu_slab_size, g_vacuum_min_selectivity, File_Namespace::CachingFileMgr::getMinimumSize(), logger::INFO, ddl_utils::FilePathWhitelist::initialize(), shared::kCatalogDirectoryName, shared::kDataDirectoryName, shared::kDefaultDiskCacheDirName, shared::kDefaultLicenseFileName, shared::kDefaultLogDirName, shared::kSystemCatalogName, LOG, File_Namespace::non_fsi, File_Namespace::none, heavyai::safe_close(), heavyai::safe_fcntl(), heavyai::safe_open(), heavyai::safe_write(), import_export::ForeignDataImporter::setDefaultImportPath(), to_string(), VLOG, and logger::WARNING.
Referenced by main().
void CommandLineOptions::validate_base_path | ( | ) |
Definition at line 1289 of file CommandLineOptions.cpp.
Referenced by main().
bool CommandLineOptions::allow_loop_joins = false |
Definition at line 68 of file CommandLineOptions.h.
Referenced by EmbeddedDatabase::DBEngineImpl::init(), and startHeavyDBServer().
bool CommandLineOptions::allow_multifrag = true |
Definition at line 66 of file CommandLineOptions.h.
Referenced by EmbeddedDatabase::DBEngineImpl::init(), and startHeavyDBServer().
std::string CommandLineOptions::allowed_export_paths {} |
Definition at line 130 of file CommandLineOptions.h.
std::string CommandLineOptions::allowed_import_paths {} |
Definition at line 129 of file CommandLineOptions.h.
AuthMetadata CommandLineOptions::authMetadata |
Definition at line 71 of file CommandLineOptions.h.
Referenced by EmbeddedDatabase::DBEngineImpl::init(), and startHeavyDBServer().
std::string CommandLineOptions::base_path |
Definition at line 57 of file CommandLineOptions.h.
Referenced by EmbeddedDatabase::DBEngineImpl::init(), and startHeavyDBServer().
|
static |
Definition at line 159 of file CommandLineOptions.h.
std::string CommandLineOptions::cluster_file = {"cluster.conf"} |
Definition at line 59 of file CommandLineOptions.h.
std::string CommandLineOptions::cluster_topology_file = {"cluster_topology.conf"} |
Definition at line 60 of file CommandLineOptions.h.
std::string CommandLineOptions::clusterIds_arg |
Definition at line 155 of file CommandLineOptions.h.
std::string CommandLineOptions::compressor = std::string(BLOSC_LZ4HC_COMPNAME) |
Definition at line 143 of file CommandLineOptions.h.
std::vector<LeafHostInfo> CommandLineOptions::db_leaves |
Definition at line 152 of file CommandLineOptions.h.
Referenced by EmbeddedDatabase::DBEngineImpl::init(), and startHeavyDBServer().
std::string CommandLineOptions::db_query_file = {""} |
path to file containing warmup queries list
Definition at line 111 of file CommandLineOptions.h.
Referenced by startHeavyDBServer().
po::options_description CommandLineOptions::developer_desc_ |
Definition at line 146 of file CommandLineOptions.h.
File_Namespace::DiskCacheConfig CommandLineOptions::disk_cache_config |
Definition at line 58 of file CommandLineOptions.h.
Referenced by EmbeddedDatabase::DBEngineImpl::init(), and startHeavyDBServer().
std::string CommandLineOptions::disk_cache_level = "" |
Definition at line 96 of file CommandLineOptions.h.
const bool CommandLineOptions::dist_v5_ |
Definition at line 167 of file CommandLineOptions.h.
unsigned CommandLineOptions::dynamic_watchdog_time_limit = 10000 |
Definition at line 95 of file CommandLineOptions.h.
bool CommandLineOptions::enable_auto_clear_render_mem = false |
Definition at line 75 of file CommandLineOptions.h.
Referenced by EmbeddedDatabase::DBEngineImpl::init(), and startHeavyDBServer().
bool CommandLineOptions::enable_data_recycler = true |
Definition at line 98 of file CommandLineOptions.h.
bool CommandLineOptions::enable_dynamic_watchdog = false |
Definition at line 85 of file CommandLineOptions.h.
bool CommandLineOptions::enable_legacy_syntax = true |
Definition at line 69 of file CommandLineOptions.h.
Referenced by EmbeddedDatabase::DBEngineImpl::init(), and startHeavyDBServer().
bool CommandLineOptions::enable_non_kernel_time_query_interrupt = true |
Definition at line 91 of file CommandLineOptions.h.
bool CommandLineOptions::enable_rendering = false |
Definition at line 74 of file CommandLineOptions.h.
Referenced by EmbeddedDatabase::DBEngineImpl::init(), and startHeavyDBServer().
bool CommandLineOptions::enable_runtime_query_interrupt = true |
Definition at line 90 of file CommandLineOptions.h.
|
private |
Definition at line 174 of file CommandLineOptions.h.
|
private |
Definition at line 170 of file CommandLineOptions.h.
|
private |
Definition at line 175 of file CommandLineOptions.h.
bool CommandLineOptions::enable_watchdog = true |
Definition at line 84 of file CommandLineOptions.h.
std::string CommandLineOptions::encryption_key_store_path = {} |
Definition at line 62 of file CommandLineOptions.h.
std::string CommandLineOptions::exe_name |
Definition at line 148 of file CommandLineOptions.h.
bool CommandLineOptions::exit_after_warmup = false |
exit after warmup
Definition at line 115 of file CommandLineOptions.h.
Referenced by startHeavyDBServer().
size_t CommandLineOptions::hashtable_cache_total_bytes = 4294967296 |
Definition at line 100 of file CommandLineOptions.h.
po::options_description CommandLineOptions::help_desc_ |
Definition at line 145 of file CommandLineOptions.h.
int CommandLineOptions::http_binary_port = 6276 |
Definition at line 55 of file CommandLineOptions.h.
Referenced by startHeavyDBServer().
int CommandLineOptions::http_port = 6278 |
Definition at line 54 of file CommandLineOptions.h.
Referenced by startHeavyDBServer().
int CommandLineOptions::idle_session_duration = kMinsPerHour |
Inactive session tolerance in mins (60 mins)
Definition at line 119 of file CommandLineOptions.h.
Referenced by EmbeddedDatabase::DBEngineImpl::init(), and startHeavyDBServer().
bool CommandLineOptions::intel_jit_profile = false |
Definition at line 65 of file CommandLineOptions.h.
Referenced by EmbeddedDatabase::DBEngineImpl::init(), and startHeavyDBServer().
bool CommandLineOptions::jit_debug = false |
Definition at line 64 of file CommandLineOptions.h.
Referenced by EmbeddedDatabase::DBEngineImpl::init(), and startHeavyDBServer().
std::string CommandLineOptions::license_path = {""} |
Definition at line 61 of file CommandLineOptions.h.
logger::LogOptions CommandLineOptions::log_options_ |
Definition at line 147 of file CommandLineOptions.h.
bool CommandLineOptions::log_user_origin = true |
Definition at line 70 of file CommandLineOptions.h.
Referenced by startHeavyDBServer().
size_t CommandLineOptions::max_cacheable_hashtable_size_bytes = 2147483648 |
Definition at line 101 of file CommandLineOptions.h.
size_t CommandLineOptions::max_concurrent_render_sessions = 500 |
Definition at line 78 of file CommandLineOptions.h.
Referenced by EmbeddedDatabase::DBEngineImpl::init(), and startHeavyDBServer().
int CommandLineOptions::max_session_duration = kMinsPerMonth |
Maximum session life in mins (43,200 mins == 30 Days) (https://pages.nist.gov/800-63-3/sp800-63b.html#aal3reauth)
Definition at line 124 of file CommandLineOptions.h.
Referenced by EmbeddedDatabase::DBEngineImpl::init(), and startHeavyDBServer().
|
static |
Definition at line 159 of file CommandLineOptions.h.
size_t CommandLineOptions::num_reader_threads = 0 |
Number of threads used when loading data
Definition at line 107 of file CommandLineOptions.h.
Referenced by EmbeddedDatabase::DBEngineImpl::init(), and startHeavyDBServer().
bool CommandLineOptions::optimize_cuda_block_and_grid_sizes = false |
Definition at line 102 of file CommandLineOptions.h.
unsigned CommandLineOptions::pending_query_interrupt_freq = 1000 |
Definition at line 94 of file CommandLineOptions.h.
po::positional_options_description CommandLineOptions::positional_options |
Definition at line 149 of file CommandLineOptions.h.
size_t CommandLineOptions::preflight_count_query_threshold = g_preflight_count_query_threshold |
Definition at line 89 of file CommandLineOptions.h.
bool CommandLineOptions::read_only = false |
Definition at line 67 of file CommandLineOptions.h.
Referenced by EmbeddedDatabase::DBEngineImpl::init(), and startHeavyDBServer().
bool CommandLineOptions::render_compositor_use_last_gpu = true |
Definition at line 79 of file CommandLineOptions.h.
Referenced by EmbeddedDatabase::DBEngineImpl::init(), and startHeavyDBServer().
size_t CommandLineOptions::render_mem_bytes = 1000000000 |
Definition at line 77 of file CommandLineOptions.h.
Referenced by EmbeddedDatabase::DBEngineImpl::init(), and startHeavyDBServer().
int CommandLineOptions::render_oom_retry_threshold = 0 |
Definition at line 76 of file CommandLineOptions.h.
Referenced by EmbeddedDatabase::DBEngineImpl::init(), and startHeavyDBServer().
bool CommandLineOptions::renderer_enable_slab_allocation = false |
Definition at line 83 of file CommandLineOptions.h.
Referenced by startHeavyDBServer().
bool CommandLineOptions::renderer_prefer_igpu = false |
Definition at line 80 of file CommandLineOptions.h.
Referenced by EmbeddedDatabase::DBEngineImpl::init(), and startHeavyDBServer().
bool CommandLineOptions::renderer_use_parallel_executors = true |
Definition at line 82 of file CommandLineOptions.h.
Referenced by startHeavyDBServer().
unsigned CommandLineOptions::renderer_vulkan_timeout_ms = 60000 |
Definition at line 81 of file CommandLineOptions.h.
Referenced by EmbeddedDatabase::DBEngineImpl::init(), and startHeavyDBServer().
size_t CommandLineOptions::reserved_gpu_mem = 384 * 1024 * 1024 |
Definition at line 56 of file CommandLineOptions.h.
Referenced by EmbeddedDatabase::DBEngineImpl::init(), and startHeavyDBServer().
double CommandLineOptions::running_query_interrupt_freq = 0.1 |
Definition at line 93 of file CommandLineOptions.h.
std::vector<LeafHostInfo> CommandLineOptions::string_leaves |
Definition at line 153 of file CommandLineOptions.h.
Referenced by EmbeddedDatabase::DBEngineImpl::init(), and startHeavyDBServer().
SystemParameters CommandLineOptions::system_parameters |
Definition at line 73 of file CommandLineOptions.h.
Referenced by EmbeddedDatabase::DBEngineImpl::init(), and startHeavyDBServer().
std::vector<std::string> CommandLineOptions::udf_compiler_options |
Definition at line 127 of file CommandLineOptions.h.
Referenced by EmbeddedDatabase::DBEngineImpl::init(), and startHeavyDBServer().
std::string CommandLineOptions::udf_compiler_path = {""} |
Definition at line 126 of file CommandLineOptions.h.
Referenced by EmbeddedDatabase::DBEngineImpl::init(), and startHeavyDBServer().
std::string CommandLineOptions::udf_file_name = {""} |
Definition at line 125 of file CommandLineOptions.h.
Referenced by EmbeddedDatabase::DBEngineImpl::init(), and startHeavyDBServer().
bool CommandLineOptions::use_estimator_result_cache = true |
Definition at line 92 of file CommandLineOptions.h.
bool CommandLineOptions::use_hashtable_cache = true |
Definition at line 99 of file CommandLineOptions.h.
bool CommandLineOptions::verbose_logging = false |
Definition at line 63 of file CommandLineOptions.h.
po::variables_map CommandLineOptions::vm |
Definition at line 154 of file CommandLineOptions.h.
size_t CommandLineOptions::watchdog_max_projected_rows_per_device |
Definition at line 87 of file CommandLineOptions.h.
size_t CommandLineOptions::watchdog_none_encoded_string_translation_limit = 1000000 |
Definition at line 86 of file CommandLineOptions.h.