Details
-
Bug
-
Status: Open
-
Major
-
Resolution: Unresolved
-
None
-
None
-
None
Description
In the section "Monitoring Queries for Low Memory" it is stated that
When the query memory monitoring feature is on, the default query time out is set to five hours. You can override this value by setting a larger or smaller, non -1 value to the existing query time out system variable {{gemfire.cache.MAX_QUERY_EXECUTION_TIME}}.
But when we look at the code
public QueryMonitor getQueryMonitor() { // Check to see if monitor is required if ResourceManager critical heap percentage is set // or whether we override it with the system variable; boolean monitorRequired = !this.queryMonitorDisabledForLowMem && queryMonitorRequiredForResourceManager; // Added for DUnit test purpose, which turns-on and off the this.testMaxQueryExecutionTime. if (!(MAX_QUERY_EXECUTION_TIME > 0 || monitorRequired)) { // if this.testMaxQueryExecutionTime is set, send the QueryMonitor. // Else send null, so that the QueryMonitor is turned-off. return null; }
We can see that the monitor is returned as null when the timeout is set to a non positive numeral.
Solution:
We should mention in the docs that the monitors will not be activated if the timeout is set a non positive integer.