Consumer group: query timeout

Details

Detail name Value
Changelog Number 11796
Type New Feature
Status Resolved
Fix Versions Exasol 7.1.0
Resolution Date 2021-08-03

Background

The Consumer Groups allow defining properties on a role basis.
They allow fine-grained control of the resource-utilization among users and roles.
In the past, the query timeout could only be set on session and system level.

Description

This new feature allows specifying query timeout within the consumer group.

The query timeout is integrated in the consumer groups (QUERY_TIMEOUT attribute)

  • Attribute type is decimal(6,0), defined for values in the interval <1 , 999999>, in seconds or 0 representing UNLIMITED
  • Attribute value can be set independent of system and session parameters QUERY_TIMEOUT.
  • When a query is executed the minimum value between session QUERY_TIMEOUT and the user consumer group QUERY_TIMEOUT is considered, to terminate the query if this value is reached.

Example

CREATE CONSUMER GROUP Group1
    WITH CPU_WEIGHT = 150,
         PRECEDENCE = 300,
         MAX_GROUP_TEMP_DBRAM = '10G',
         MAX_SESSION_TEMP_DBRAM = '1G',
         MAX_USER_TEMP_DBRAM = '2G',
         QUERY_TIMEOUT = 10;

ALTER CONSUMER GROUP Group1 set QUERY_TIMEOUT = 0;

Changed behavior

Session and system query_timeout was changed from decimal(9,0) to decimal(6,0) to be consistent with the query_timeout column of EXA_ALL_SESSIONS, EXA_DBA_SESSIONS and EXA_USER_SESSIONS. The upper limit for session and system query_timeout is now 999999 seconds.