Request properties
Applies to: ✅ Microsoft Fabric ✅ Azure Data Explorer
Request properties control how a query or command executes and returns results.
Supported request properties
The following table overviews the supported request properties.
Note
The request properties query_weakconsistency_session_id
and queryconsistency
aren't available in Fabic.
Property name | Type | Description |
---|---|---|
best_effort |
bool |
If set to true , allows fuzzy resolution and connectivity issues of data sources (union legs.) The set of union sources is reduced to the set of table references that exist and are accessible at the time of execution. If at least one accessible table is found, the query executes. Any failure yields a warning in the query status results but doesn't prevent the query from executing. |
client_max_redirect_count |
long |
Controls the maximum number of HTTP redirects the client follows during processing. |
client_results_reader_allow_varying_row_widths |
bool |
If set to true , the results reader tolerates tables whose row width varies across rows. |
deferpartialqueryfailures |
bool |
If set to true , suppresses reporting of partial query failures within the result set. |
materialized_view_shuffle_query |
dynamic |
Provides a hint to use the shuffle strategy for referenced materialized views in the query. This property exclusively impacts materialized views and not any subsequent operations, such as joins, within the query. It takes an array of materialized view names and their corresponding shuffle keys. For example, dynamic([{ "Name": "V1", "Keys" : [ "K1", "K2" ] }]) indicates shuffling view V1 by keys K1 and K2 , while dynamic([ { "Name": "V1" } ]) shuffles view V1 by all keys. |
max_memory_consumption_per_query_per_node |
long |
Overrides the default maximum amount of memory a query can allocate per node. |
maxmemoryconsumptionperiterator |
long |
Overrides the default maximum amount of memory a query operator can allocate. |
maxoutputcolumns |
long |
Overrides the default maximum number of columns a query is allowed to produce. |
norequesttimeout |
bool |
Sets the request timeout to its maximum value. This option can't be modified as part of a set statement. |
notruncation |
bool |
Disables truncation of query results returned to the caller. |
push_selection_through_aggregation |
bool |
If set to true , allows pushing simple selection through aggregation. |
query_bin_auto_at |
literal | Specifies the start value to use when evaluating the bin_auto() function. |
query_bin_auto_size |
literal | Specifies the bin size value to use when evaluating the bin_auto() function. |
query_cursor_after_default |
string |
Sets the default parameter value for the cursor_after() function when called without parameters. |
query_cursor_before_or_at_default |
string |
Sets the default parameter value for the cursor_before_or_at() function when called without parameters. |
query_cursor_current |
string |
Overrides the cursor value returned by the cursor_current() function. |
query_cursor_disabled |
bool |
Disables the usage of cursor functions within the query context. |
query_cursor_scoped_tables |
dynamic |
Lists table names to be scoped to cursor_after_default .. cursor_before_or_at() (upper bound is optional). |
query_datascope |
string |
Controls the data to which the query applies. Supported values are default , all , or hotcache . |
query_datetimescope_column |
string |
Specifies the column name for the query's datetime scope (query_datetimescope_to / query_datetimescope_from ). |
query_datetimescope_from |
datetime |
Sets the minimum date and time limit for the query scope. If defined, it serves as an autoapplied filter on query_datetimescope_column . |
query_datetimescope_to |
datetime |
Sets the maximum date and time limit for the query scope. If defined, it serves as an autoapplied filter on query_datetimescope_column . |
query_distribution_nodes_span |
int |
Controls the behavior of subquery merge. The executing node introduces an extra level in the query hierarchy for each subgroup of nodes, and this option sets the subgroup size. |
query_fanout_nodes_percent |
int |
Specifies the percentage of nodes for executing fan-out. |
query_fanout_threads_percent |
int |
Specifies the percentage of threads for executing fan-out. |
query_force_row_level_security |
bool |
If set to true , enforces row level security rules, even if the policy is disabled. |
query_language |
string |
Determines how the query text should be interpreted. Supported values are csl , kql , or sql . This option can't be modified as part of a set statement. |
query_log_query_parameters |
bool |
Enables query parameters logging for later viewing in the .show queries journal. |
query_max_entities_in_union |
long |
Overrides the default maximum number of columns a query is allowed to produce. |
query_now |
datetime |
Overrides the datetime value returned by the now() function. |
query_optimize_fts_at_relop |
bool |
When set to true , enables an experimental optimization for queries that perform costly free-text search operations. For instance, \|where * has "pattern" . |
query_python_debug |
bool or int |
If set to true , generates a Python debug query for the enumerated Python node. |
query_results_apply_getschema |
bool |
If set to true , retrieves the schema of each tabular data in the results of the query instead of the data itself. |
query_results_cache_force_refresh |
bool |
If set to true , forces a cache refresh of query results for a specific query. Must be used in combination with query_results_cache_max_age , and sent via Kusto Data ClientRequestProperties class, not as a set statement. |
query_results_cache_max_age |
timespan |
Controls the maximum age of the cached query results that the service is allowed to return. |
query_results_cache_per_shard |
bool |
If set to true , enables per extent query caching. |
query_results_progressive_row_count |
long |
Provides a hint for how many records to send in each update. Takes effect only if results_progressive_enabled is set. |
query_results_progressive_update_period |
timespan |
Provides a hint for how often to send progress frames. Takes effect only if results_progressive_enabled is set. |
query_take_max_records |
long |
Limits query results to a specified number of records. |
query_weakconsistency_session_id |
string |
Sets the query weak consistency session ID. Takes effect when queryconsistency mode is set to weakconsistency_by_session_id . This option can't be modified as part of a set statement. |
queryconsistency |
string |
Controls query consistency. Supported values are strongconsistency , weakconsistency , weakconsistency_by_query , weakconsistency_by_database , or weakconsistency_by_session_id . When using weakconsistency_by_session_id , ensure to also set the query_weakconsistency_session_id property. This option can't be modified as part of a set statement. |
request_app_name |
string |
Specifies the request application name to be used in reporting. For example, .show queries. This option can't be modified as part of a set statement. |
request_block_row_level_security |
bool |
If set to true , blocks access to tables with row level security policy enabled. |
request_callout_disabled |
bool |
If set to true , prevents request callout to a user-provided service. |
request_description |
string |
Allows inclusion of arbitrary text as the request description. |
request_external_data_disabled |
bool |
If set to true , prevents the request from accessing external data using the externaldata operator or external tables. |
request_external_table_disabled |
bool |
If set to true , prevents the request from accessing external tables. |
request_impersonation_disabled |
bool |
If set to true , indicates that the service shouldn't impersonate the caller's identity. |
request_readonly |
bool |
If set to true , prevents write access for the request. This option can't be modified as part of a set statement. |
request_readonly_hardline |
bool |
If set to true , then the request operates in a strict read-only mode. The request isn't able to write anything, and any noncompliant functionality, such as plugins, are disabled. This option can't be modified as part of a set statement. |
request_remote_entities_disabled |
bool |
If set to true , prevents the request from accessing remote databases and remote entities. |
request_sandboxed_execution_disabled |
bool |
If set to true , prevents the request from invoking code in the sandbox. |
request_user |
string |
Specifies the request user to be used in reporting. For example, .show queries. This option can't be modified as part of a set statement. |
results_error_reporting_placement |
string |
Determines the placement of errors in the result set. Options are in_data , end_of_table , and end_of_dataset . |
results_progressive_enabled |
bool |
If set to true , enables the progressive query stream. This option can't be modified as part of a set statement. |
results_v2_fragment_primary_tables |
bool |
Causes primary tables to be sent in multiple fragments, each containing a subset of the rows. This option can't be modified as part of a set statement. |
results_v2_newlines_between_frames |
bool |
Adds new lines between frames in the results, in order to make it easier to parse them. |
servertimeout |
timespan |
Overrides the default request timeout. This option can't be modified as part of a set statement. Instead, modify the option using the dashboard settings. |
truncation_max_records |
long |
Overrides the default maximum number of records a query is allowed to return to the caller (truncation). |
truncationmaxsize |
long |
Overrides the default maximum data size a query is allowed to return to the caller (truncation). This option can't be modified as part of a set statement. |
validatepermissions |
bool |
Validates the user's permissions to perform the query without actually running the query. Possible results for this property are: OK (permissions are present and valid), Incomplete (validation couldn't be completed due to dynamic schema evaluation), or KustoRequestDeniedException (permissions weren't set). |
How to set request properties
You can set request properties in the following ways:
- The POST body of an HTTP request
- A Kusto Query Language set statement
- The set option method of the
ClientRequestProperties
class
Note
The following request properties can't be set with a set statement:
norequesttimeout
queryconsistency
query_language
query_weakconsistency_session_id
request_app_name
request_readonly
request_readonly_hardline
request_user
results_progressive_enabled
results_v2_fragment_primary_tables
servertimeout
truncationmaxsize
Note
- To set
norequesttimeout
andservertimeout
from dashboard settings see, Set timeout limits. - To set
queryconsistency
to weak consistency through the dashboard settings select Settings > Connection. For more information, see Customize settings in the Azure Data Explorer web UI.