Repository: incubator-hawq-docs Updated Branches: refs/heads/master 214684a05 -> 973791b22
Notes on memory limit (closes #119) Project: http://git-wip-us.apache.org/repos/asf/incubator-hawq-docs/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-hawq-docs/commit/973791b2 Tree: http://git-wip-us.apache.org/repos/asf/incubator-hawq-docs/tree/973791b2 Diff: http://git-wip-us.apache.org/repos/asf/incubator-hawq-docs/diff/973791b2 Branch: refs/heads/master Commit: 973791b2257656d96708c770d356ea5e172be2aa Parents: 214684a Author: Jane Beckman <[email protected]> Authored: Mon Jun 5 16:24:47 2017 -0700 Committer: David Yozie <[email protected]> Committed: Mon Jun 5 16:24:47 2017 -0700 ---------------------------------------------------------------------- markdown/reference/catalog/pg_resqueue.html.md.erb | 2 +- markdown/reference/sql/CREATE-RESOURCE-QUEUE.html.md.erb | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-hawq-docs/blob/973791b2/markdown/reference/catalog/pg_resqueue.html.md.erb ---------------------------------------------------------------------- diff --git a/markdown/reference/catalog/pg_resqueue.html.md.erb b/markdown/reference/catalog/pg_resqueue.html.md.erb index 651f1fd..8d68936 100644 --- a/markdown/reference/catalog/pg_resqueue.html.md.erb +++ b/markdown/reference/catalog/pg_resqueue.html.md.erb @@ -31,7 +31,7 @@ The `pg_resqueue` system catalog table contains information about HAWQ resource | `rsqname` | name | Â | The name of the resource queue. | | `parentoid` | oid | Â | OID of the parent queue of the resource queue. | | `activestats` | integer | Â | The maximum number of parallel active statements allowed for the resource queue. | -| `memorylimit` | text | Â | The maximum amount of memory that can be consumed by the resource queue (expressed as a percentage of the cluster's memory.) | +| `memorylimit` | text | Â | The maximum amount of memory that can be consumed by the resource queue (expressed as a percentage of the cluster's memory.) Because of how memory is determined, the memory limit is not an upper limit on the memory actually used by a resource queue. | | `corelimit` | text | Â | The maximum amount of cores that can be consumed by the resource queue (expressed as a percentage of the cluster's cores.) | | `resovercommit` | real | Â | The ratio of resource consumption overcommit for the resource queue. | | `allocpolicy` | text | Â | The resource allocation policy name for the resource queue. | http://git-wip-us.apache.org/repos/asf/incubator-hawq-docs/blob/973791b2/markdown/reference/sql/CREATE-RESOURCE-QUEUE.html.md.erb ---------------------------------------------------------------------- diff --git a/markdown/reference/sql/CREATE-RESOURCE-QUEUE.html.md.erb b/markdown/reference/sql/CREATE-RESOURCE-QUEUE.html.md.erb index 4ebaf7a..b27ccf5 100644 --- a/markdown/reference/sql/CREATE-RESOURCE-QUEUE.html.md.erb +++ b/markdown/reference/sql/CREATE-RESOURCE-QUEUE.html.md.erb @@ -58,6 +58,8 @@ Resource queues with an `ACTIVE_STATEMENTS` threshold set a maximum limit on the When creating the resource queue, use the MEMORY\_LIMIT\_CLUSTER and CORE\_LIMIT\_CLUSTER queue attributes to tune the allowed resource usage of the resource queue. MEMORY\_LIMIT\_CLUSTER and CORE\_LIMIT\_CLUSTER must set to the same value for a resource queue. In addition the sum of the percentages of MEMORY\_LIMIT\_CLUSTER (and CORE\_LIMIT\_CLUSTER) for resource queues that share the same parent cannot exceed 100%. +Note: The MEMORY\_LIMIT of a resource queue assigns the quota to operators in a query plan during planning, before actual execution. Actual memory consumption during query might exceed the limit. + You can optionally configure the maximum or minimum number of virtual segments to use when executing a query by setting NVSEG\_UPPER\_LIMIT/NVSEG\_LOWER\_LIMIT or NVSEG\_UPPER\_LIMIT\_PERSEG/NVSEG\_LOWER\_LIMIT\_PERSEG attributes for the resource queue. After defining a resource queue, you can assign a role to the queue by using the [ALTER ROLE](ALTER-ROLE.html) or [CREATE ROLE](CREATE-ROLE.html) command. You can only assign roles to the leaf-level resource queues (resource queues that do not have any children.) @@ -75,7 +77,7 @@ See also [Best Practices for Using Resource Queues](../../bestpractices/managing The parent queue cannot have any roles assigned.</dd> <dt>MEMORY\_LIMIT\_CLUSTER=\<percentage\> </dt> -<dd>Required. Defines how much memory a resource queue can consume from its parent resource queue and consequently dispatch to the execution of parallel statements. Since a resource queue obtains its memory from its parent, the actual memory limit is based from its parent queue. The valid values are 1% to 100%. The value of MEMORY\_ LIMIT\_CLUSTER must be identical to the value of CORE\_LIMIT\_CLUSTER. The sum of values for MEMORY\_LIMIT\_CLUSTER of this queue plus other queues that share the same parent cannot exceed 100%. The HAWQ resource manager periodically validates this restriction.</dd> +<dd>Required. Defines how much memory a resource queue can consume from its parent resource queue and consequently dispatch to the execution of parallel statements. Since a resource queue obtains its memory from its parent, the actual memory limit is based from its parent queue. The valid values are 1% to 100%. The value of MEMORY\_ LIMIT\_CLUSTER must be identical to the value of CORE\_LIMIT\_CLUSTER. The sum of values for MEMORY\_LIMIT\_CLUSTER of this queue plus other queues that share the same parent cannot exceed 100%. The HAWQ resource manager periodically validates this restriction. Despite its name, the actual memory consumed by a resource queue may exceed a limit inferred from this value.</dd> <dt>CORE\_LIMIT\_CLUSTER=\<percentage\> </dt> <dd>Required. The percentage of consumable CPU (virtual core) resources that the resource queue can take from its parent resource queue. The valid values are 1% to 100%. The value of MEMORY\_ LIMIT\_CLUSTER must be identical to the value of CORE\_LIMIT\_CLUSTER. The sum of values for CORE\_LIMIT\_CLUSTER of this queue and queues that share the same parent cannot exceed 100%.</dd>
