/alter/system/properties

URL: http://GPUDB_IP_ADDRESS:GPUDB_PORT/alter/system/properties

The /alter/system/properties endpoint is primarily used to simplify the testing of the system and is not expected to be used during normal execution. Commands are given through the input parameter property_updates_map whose keys are commands and values are strings representing integer values (for example '8000') or boolean values ('true' or 'false').

Input Parameter Description

NameTypeDescription
property_updates_mapmap of string to strings

Map containing the properties of the system to be updated. Error if empty.

Supported Parameters (keys)Parameter Description
sm_omp_threadsSet the number of OpenMP threads that will be used to service filter & aggregation requests to the specified integer value.
kernel_omp_threadsSet the number of kernel OpenMP threads to the specified integer value.
concurrent_kernel_execution

Enables concurrent kernel execution if the value is true and disables it if the value is false. The supported values are:

  • true
  • false
subtask_concurrency_limitSets the maximum number of simultaneous threads allocated to a given request, on each rank. Note that thread allocation may also be limted by resource group limits and/or system load.
chunk_sizeSets the number of records per chunk to be used for all new tables.
evict_columnsAttempts to evict columns from memory to the persistent store. Value string is a semicolon separated list of entries, each entry being a table name optionally followed by a comma and a comma separated list of column names to attempt to evict. An empty value string will attempt to evict all tables and columns.
execution_modeSets the execution_mode for kernel executions to the specified string value. Possible values are host, device, default (engine decides) or an integer value that indicates max chunk size to exec on host
external_files_directorySets the root directory path where external table data files are accessed from. Path must exist on the head node
flush_to_diskFlushes any changes to any tables to the persistent store. These changes include updates to the vector store, object store, and text search store, Value string is ignored
clear_cacheClears cached results. Useful to allow repeated timing of endpoints. Value string is the name of the table for which to clear the cached results, or an empty string to clear the cached results for all tables.
communicator_testInvoke the communicator test and report timing results. Value string is is a semicolon separated list of [key]=[value] expressions. Expressions are: num_transactions=[num] where num is the number of request reply transactions to invoke per test; message_size=[bytes] where bytes is the size in bytes of the messages to send; check_values=[enabled] where if enabled is true the value of the messages received are verified.
set_message_timers_enabled

Enables the communicator test to collect additional timing statistics when the value string is true. Disables collecting statistics when the value string is false The supported values are:

  • true
  • false
network_speedInvoke the network speed test and report timing results. Value string is a semicolon-separated list of [key]=[value] expressions. Valid expressions are: seconds=[time] where time is the time in seconds to run the test; data_size=[bytes] where bytes is the size in bytes of the block to be transferred; threads=[number of threads]; to_ranks=[space-separated list of ranks] where the list of ranks is the ranks that rank 0 will send data to and get data from. If to_ranks is unspecified then all worker ranks are used.
request_timeoutNumber of minutes after which filtering (e.g., /filter) and aggregating (e.g., /aggregate/groupby) queries will timeout. The default value is '20'.The minimum allowed value is 0. The maximum allowed value is 1440.
max_get_records_sizeThe maximum number of records the database will serve for a given data retrieval call. The default value is '20000'.The minimum allowed value is 0. The maximum allowed value is 1000000.
enable_auditEnable or disable auditing.
audit_headersEnable or disable auditing of request headers.
audit_bodyEnable or disable auditing of request bodies.
audit_dataEnable or disable auditing of request data.
shadow_agg_sizeSize of the shadow aggregate chunk cache in bytes. The default value is '10000000'.The minimum allowed value is 0. The maximum allowed value is 2147483647.
shadow_filter_sizeSize of the shdow filter chunk cache in bytes. The default value is '10000000'.The minimum allowed value is 0. The maximum allowed value is 2147483647.
synchronous_compressioncompress vector on set_compression (instead of waiting for background thread). The default value is 'false'.
enable_overlapped_equi_joinEnable overlapped-equi-join filter. The default value is 'true'.
optionsmap of string to stringsOptional parameters. The default value is an empty map ( {} ).

Output Parameter Description

The GPUdb server embeds the endpoint response inside a standard response structure which contains status information and the actual response to the query. Here is a description of the various fields of the wrapper:

NameTypeDescription
statusString'OK' or 'ERROR'
messageStringEmpty if success or an error message
data_typeString'alter_system_properties_request' or 'none' in case of an error
dataStringEmpty string
data_strJSON or String

This embedded JSON represents the result of the /alter/system/properties endpoint:

NameTypeDescription
updated_properties_mapmap of string to stringsmap of values updated, For speed tests a map of values measured to the measurement
infomap of string to stringsAdditional information.

Empty string in case of an error.