[ 
https://issues.apache.org/jira/browse/ZOOKEEPER-2837?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16079832#comment-16079832
 ] 

ASF GitHub Bot commented on ZOOKEEPER-2837:
-------------------------------------------

Github user asdf2014 commented on the issue:

    https://github.com/apache/zookeeper/pull/302
  
    Even if had been fixed the issues by adding the `START_SERVER_JVMFLAGS` 
option, but i still don't understand why the execution of `mntr` 4lw command 
would use the `JVMFLAGS` option. I list the process call links about executing 
command, but still cannot figure out.
    
    ```java
    org.apache.zookeeper.server.WorkerService.ScheduledWorkRequest#run
    org.apache.zookeeper.server.NIOServerCnxnFactory.IOWorkRequest#doWork
    org.apache.zookeeper.server.NIOServerCnxn#doIO
    org.apache.zookeeper.server.NIOServerCnxn#checkFourLetterWord
    org.apache.zookeeper.server.command.CommandExecutor#getCommand
    org.apache.zookeeper.server.command.AbstractFourLetterCommand#start
    org.apache.zookeeper.server.command.MonitorCommand#commandRun
    ```
    
    @hanm @shralex @afine PTAL.


> Add a special START_SERVER_JVMFLAGS option only for `start` command to 
> distinguish JVMFLAGS and SERVER_JVMFLAGS
> ---------------------------------------------------------------------------------------------------------------
>
>                 Key: ZOOKEEPER-2837
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2837
>             Project: ZooKeeper
>          Issue Type: Bug
>          Components: server
>    Affects Versions: 3.5.3
>            Reporter: Benedict Jin
>            Assignee: Benedict Jin
>   Original Estimate: 72h
>  Remaining Estimate: 72h
>
> Add a special START_SERVER_JVMFLAGS option only for `start` command to 
> distinguish JVMFLAGS and SERVER_JVMFLAGS.
> If we use the normal way to add JVM options with `JVMFLAGS` in 
> `conf/java.env`, then it will effect almost all shell scripts under `bin` 
> directory. Even if using `SERVER_JVMFLAGS` will effect some commands like 
> `zkServer.sh status`, include four-letters commands.
> For example, if the JVMFLAGS is 
> ```bash
> export JVMFLAGS="-Xms3G -Xmx3G -Xmn1G -XX:+AlwaysPreTouch 
> -XX:CMSInitiatingOccupancyFraction=70 -XX:+UseParNewGC 
> -XX:+UseConcMarkSweepGC -XX:+PrintGCDetails -XX:-PrintGCTimeStamps 
> -Xloggc:/home/zookeeper/logs/zookeeper_`date '+%Y%m%d%H%M%S'`.gc 
> -XX:-UseGCLogFileRotation -XX:NumberOfGCLogFiles=10 -XX:GCLogFileSize=64M"
> ```
> then we will get too many GC log files due to using the `mntr` four-letters 
> command regularly  in some monitor situation.
> ```bash
> $ ls ~/logs
> zookeeper_20170704175942.gc
> zookeeper_20170704180101.gc
> zookeeper_20170704180201.gc
> zookeeper_20170704180301.gc
> zookeeper_20170704180401.gc
> ...
> ```



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to