[
https://issues.apache.org/jira/browse/DRILL-5741?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16142448#comment-16142448
]
ASF GitHub Bot commented on DRILL-5741:
---------------------------------------
Github user kkhatua commented on the issue:
https://github.com/apache/drill/pull/922
@ppadma Can you please review this?
The changes have been tested with and without the parameter.
If the env variable is set as `40%` , `drillbit.out` reports
```
Aug 25, 2017 4:30:59 PM org.glassfish.jersey.server.ApplicationHandler
initialize
INFO: Initiating Jersey application, version Jersey: 2.8 2014-04-29
01:25:26...
2017-08-25 16:32:19 [ERROR] Unable to start Drillbit due to memory
constraint violations
Max Memory Permitted : 40% (11 of 28 GB free memory)
Total Memory Requested : 26 GB
Check the following settings to possibly modify (or increase the Max
Memory Permitted):
-Xmx8g
-XX:MaxDirectMemorySize=16g
-XX:ReservedCodeCacheSize=1G
-XX:MaxPermSize=512M
```
If the env variable is set as `10240m` , `drillbit.out` reports
```
2017-08-25 16:35:18 [ERROR] Unable to start Drillbit due to memory
constraint violations
Max Memory Permitted : 10 GB
Total Memory Requested : 26 GB
Check the following settings to possibly modify (or increase the Max
Memory Permitted):
-Xmx8g
-XX:MaxDirectMemorySize=16g
-XX:ReservedCodeCacheSize=1G
-XX:MaxPermSize=512M
```
> During startup Drill should not exceed the available memory
> -----------------------------------------------------------
>
> Key: DRILL-5741
> URL: https://issues.apache.org/jira/browse/DRILL-5741
> Project: Apache Drill
> Issue Type: Improvement
> Components: Server
> Affects Versions: 1.11.0
> Reporter: Kunal Khatua
> Assignee: Kunal Khatua
> Fix For: 1.12.0
>
> Original Estimate: 48h
> Remaining Estimate: 48h
>
> Currently, during startup, a Drillbit can be assigned large values for the
> following:
> * Xmx (Heap)
> * XX:MaxDirectMemorySize
> * XX:ReservedCodeCacheSize
> * XX:MaxPermSize
> All of this, potentially, can exceed the available memory on a system when a
> Drillbit is under heavy load. It would be good to have the Drillbit ensure
> during startup itself that the cumulative value of these parameters does not
> exceed a pre-defined upper limit for the Drill process.
> The proposal is to have the
> [runbit|https://github.com/apache/drill/blob/master/distribution/src/resources/runbit]
> script look for an additional environment variable:
> {{DRILLBIT_MAX_PROC_MEM}}
> The parameter can specify the maximum in GB/MB (similar in syntax to how the
> Java's MaxHeap is defined), or in terms of percentage of available memory
> (not to exceed 95%).
> The
> [runbit|https://github.com/apache/drill/blob/master/distribution/src/resources/runbit]
> script will perform the calculation of the sum of memory required by the
> memory spaces (heap, direct, etc) and ensure that it is within the limit
> defined by the {{DRILLBIT_MAX_PROC_MEM}} env variable.
> In the absence of this parameter, there will be no restriction. A node admin
> can then define this variable in the default terminal's environment (e.g.
> {{/root/.bashrc}} ) files.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)