Skip to content

Commit

Permalink
Fixes DOCS-687 (#1044)
Browse files Browse the repository at this point in the history
* Fixes DOCS-687

https://hazelcast.atlassian.net/browse/DOCS-687?atlOrigin=eyJpIjoiOGZhYzQyY2ExNzgwNGFhMTlmYWIwNzg1Njc1YTJjYjAiLCJwIjoiaiJ9

* Update docs/modules/data-structures/pages/preventing-out-of-memory.adoc

Co-authored-by: rebekah-lawrence <[email protected]>

---------

Co-authored-by: rebekah-lawrence <[email protected]>
(cherry picked from commit 1d92347)
  • Loading branch information
Serdaro authored and GitHub Actions Bot committed Mar 6, 2024
1 parent 7bb27c0 commit 97823e0
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 8 deletions.
5 changes: 3 additions & 2 deletions docs/modules/ROOT/pages/system-properties.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -980,8 +980,9 @@ Set to `true` if you are using slow predicates or have > 100,000s entries per me
|int
|Result size limit for query operations on maps.
This value defines the maximum number of returned elements for a single query result.
If a query exceeds this number of elements, a QueryResultSizeExceededException is thrown.
Its default value is -1, meaning it is disabled.
If a query exceeds this number of elements, a `QueryResultSizeExceededException` is thrown.
Its default value is -1, meaning it is disabled. See xref:data-structures:preventing-out-of-memory.adoc#setting-query-result-size-limit for a detailed explanation
of setting a result size limit.

|`hazelcast.security.recommendations`
|null
Expand Down
18 changes: 12 additions & 6 deletions docs/modules/data-structures/pages/preventing-out-of-memory.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -22,10 +22,14 @@ Each `QueryOperation` runs on all partitions of a member, so it collects result
as long as the member limit is not exceeded. If that happens, a
`QueryResultSizeExceededException` is thrown and propagated to the calling instance.

This feature depends on an equal distribution of the data on the cluster members to
calculate the result size limit per member. Therefore, there is a minimum value defined
in `QueryResultSizeLimiter.MINIMUM_MAX_RESULT_LIMIT`. Configured values below the minimum
will be increased to the minimum.
You can configure this limiter using the `hazelcast.query.result.size.limit` property. See <<configuring-query-result-size, Configuring Query Result Size>>.

This limiter depends on an equal distribution of the data on the cluster members to
calculate the result size limit for each member. Therefore, there is a hardcoded minimum value defined for the result size limit that is set to **100000**:

* If the value you set for `hazelcast.query.result.size.limit` is lower than 100000, it is
automatically increased to 100000.
* The value of `hazelcast.query.result.size.limit` is taken into consideration only if it is higher than 100000.

[[local-pre-check]]
== Local Pre-check
Expand Down Expand Up @@ -58,5 +62,7 @@ If a query exceeds this number of elements, a QueryResultSizeExceededException i
* `hazelcast.query.max.local.partition.limit.for.precheck`: Maximum value of local partitions
to trigger local pre-check for `Predicates#alwaysTrue()` query operations on maps.

See the xref:ROOT:system-properties.adoc[] to see the full descriptions
of these properties and how to set them.
See xref:configuration:configuring-with-system-properties[Configuring with System Properties] to learn
how to configure Hazelcast Platform using properties, such as the above ones.

See also xref:ROOT:system-properties.adoc[System Properties] to see the list of properties.

0 comments on commit 97823e0

Please sign in to comment.