Describe the bug
When starting a bookkeeper with: pulsar bookie
There are duplicate values that are added to the java command line based on PULSAR_GC and PULSAR_MEM and then those values from BOOKIE_GC and BOOKIE_MEM.
/usr/lib64/jvm/java-1.8.0-openjdk-1.8.0/jre/bin/java -cp /pulsar/conf:::/pulsar/lib/: -Dvertx.cacheDirBase=/pulsar/tmp/vertx-cache -Dlog4j.configurationFile=log4j2.yaml -Djute.maxbuffer=10485760 -Djava.net.preferIPv4Stack=true -Dzookeeper.clientCnxnSocket=org.apache.zookeeper.ClientCnxnSocketNetty -Dzookeeper.client.secure=true -Dzookeeper.ssl.keyStore.location=/pulsar/ssl/store/keystore.p12 -Dzookeeper.ssl.keyStore.password=pulsar22440 -Dzookeeper.ssl.trustStore.location=/pulsar/ssl/store/truststore.p12 -Dzookeeper.ssl.trustStore.password=pulsar22440 -Xms2g -Xmx2g -XX:MaxDirectMemorySize=1g -XX:+UseG1GC -XX:MaxGCPauseMillis=10 -XX:+ParallelRefProcEnabled -XX:+UnlockExperimentalVMOptions -XX:+AggressiveOpts -XX:+DoEscapeAnalysis -XX:ParallelGCThreads=4 -XX:ConcGCThreads=4 -XX:G1NewSizePercent=50 -XX:+DisableExplicitGC -XX:-ResizePLAB -XX:+ExitOnOutOfMemoryError -XX:+PerfDisableSharedMem -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+PrintGCApplicationStoppedTime -XX:+PrintHeapAtGC -verbosegc -Xloggc:/var/log/bookie-gc.log -XX:G1LogLevel=finest -Dpulsar.log.appender=RoutingAppender -Dpulsar.log.dir=/pulsar/logs -Dpulsar.log.level=info -Dpulsar.log.root.level=info -Dpulsar.routing.appender.default=Console -Dpulsar.functions.process.container.log.dir=/pulsar/logs -Dpulsar.functions.java.instance.jar=/pulsar/instances/java-instance.jar -Dpulsar.functions.python.instance.file=/pulsar/instances/python-instance/python_instance_main.py -Dpulsar.functions.extra.dependencies.dir=/pulsar/instances/deps -Dpulsar.functions.instance.classpath=/pulsar/conf:::/pulsar/lib/: -Xms2g -Xmx2g -XX:MaxDirectMemorySize=1g -XX:+UseG1GC -XX:MaxGCPauseMillis=10 -XX:+ParallelRefProcEnabled -XX:+UnlockExperimentalVMOptions -XX:+DoEscapeAnalysis -XX:ParallelGCThreads=32 -XX:ConcGCThreads=32 -XX:G1NewSizePercent=50 -XX:+DisableExplicitGC -XX:-ResizePLAB -Dio.netty.leakDetectionLevel=disabled -Dio.netty.recycler.maxCapacity.default=1000 -Dio.netty.recycler.linkCapacity=1024 -Dzookeeper.clientCnxnSocket=org.apache.zookeeper.ClientCnxnSocketNetty -Dzookeeper.client.secure=true -Dzookeeper.ssl.keyStore.location=/pulsar/ssl/store/keystore.p12 -Dzookeeper.ssl.keyStore.password=pulsar22440 -Dzookeeper.ssl.trustStore.location=/pulsar/ssl/store/truststore.p12 -Dzookeeper.ssl.trustStore.password=pulsar22440 -Dpulsar.log.file=bookkeeper.log org.apache.bookkeeper.server.Main --conf /pulsar/conf/bookkeeper.conf
There is also duplication of PULSAR_EXTRA_OPTS and BOOKIE_EXTRA_OPTS.
The system whatsmyclusterid function uses bin/bookkeeper to lauch the ID check requiring values to be placed in BOOKIE version of variables settings, while the launching of the container uses pulsar bookie which then uses the pulsar values, and appends in the duplicate values.
Containers have two ways of starting the bookeepers, which also leads to a confusing environment. There should be one consistent usage. So that the environments are clear. This defect is filed here as the bkenv.sh apply_config_from_env.py and bin/bookkeeper and bin/pulsar are all involved and are part of this repository and are provided for chart execution.
To Reproduce
Steps to reproduce the behavior:
- Start the bookie container
- Enter the container
- ps -aef|grep java
- identify the duplication of -Xms arguments.
Expected behavior
Expect unique values for the Java command line arguments. It should not be possible to get duplicate values causing confusion in support.
Describe the bug
When starting a bookkeeper with: pulsar bookie
There are duplicate values that are added to the java command line based on PULSAR_GC and PULSAR_MEM and then those values from BOOKIE_GC and BOOKIE_MEM.
/usr/lib64/jvm/java-1.8.0-openjdk-1.8.0/jre/bin/java -cp /pulsar/conf:::/pulsar/lib/: -Dvertx.cacheDirBase=/pulsar/tmp/vertx-cache -Dlog4j.configurationFile=log4j2.yaml -Djute.maxbuffer=10485760 -Djava.net.preferIPv4Stack=true -Dzookeeper.clientCnxnSocket=org.apache.zookeeper.ClientCnxnSocketNetty -Dzookeeper.client.secure=true -Dzookeeper.ssl.keyStore.location=/pulsar/ssl/store/keystore.p12 -Dzookeeper.ssl.keyStore.password=pulsar22440 -Dzookeeper.ssl.trustStore.location=/pulsar/ssl/store/truststore.p12 -Dzookeeper.ssl.trustStore.password=pulsar22440 -Xms2g -Xmx2g -XX:MaxDirectMemorySize=1g -XX:+UseG1GC -XX:MaxGCPauseMillis=10 -XX:+ParallelRefProcEnabled -XX:+UnlockExperimentalVMOptions -XX:+AggressiveOpts -XX:+DoEscapeAnalysis -XX:ParallelGCThreads=4 -XX:ConcGCThreads=4 -XX:G1NewSizePercent=50 -XX:+DisableExplicitGC -XX:-ResizePLAB -XX:+ExitOnOutOfMemoryError -XX:+PerfDisableSharedMem -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+PrintGCApplicationStoppedTime -XX:+PrintHeapAtGC -verbosegc -Xloggc:/var/log/bookie-gc.log -XX:G1LogLevel=finest -Dpulsar.log.appender=RoutingAppender -Dpulsar.log.dir=/pulsar/logs -Dpulsar.log.level=info -Dpulsar.log.root.level=info -Dpulsar.routing.appender.default=Console -Dpulsar.functions.process.container.log.dir=/pulsar/logs -Dpulsar.functions.java.instance.jar=/pulsar/instances/java-instance.jar -Dpulsar.functions.python.instance.file=/pulsar/instances/python-instance/python_instance_main.py -Dpulsar.functions.extra.dependencies.dir=/pulsar/instances/deps -Dpulsar.functions.instance.classpath=/pulsar/conf:::/pulsar/lib/: -Xms2g -Xmx2g -XX:MaxDirectMemorySize=1g -XX:+UseG1GC -XX:MaxGCPauseMillis=10 -XX:+ParallelRefProcEnabled -XX:+UnlockExperimentalVMOptions -XX:+DoEscapeAnalysis -XX:ParallelGCThreads=32 -XX:ConcGCThreads=32 -XX:G1NewSizePercent=50 -XX:+DisableExplicitGC -XX:-ResizePLAB -Dio.netty.leakDetectionLevel=disabled -Dio.netty.recycler.maxCapacity.default=1000 -Dio.netty.recycler.linkCapacity=1024 -Dzookeeper.clientCnxnSocket=org.apache.zookeeper.ClientCnxnSocketNetty -Dzookeeper.client.secure=true -Dzookeeper.ssl.keyStore.location=/pulsar/ssl/store/keystore.p12 -Dzookeeper.ssl.keyStore.password=pulsar22440 -Dzookeeper.ssl.trustStore.location=/pulsar/ssl/store/truststore.p12 -Dzookeeper.ssl.trustStore.password=pulsar22440 -Dpulsar.log.file=bookkeeper.log org.apache.bookkeeper.server.Main --conf /pulsar/conf/bookkeeper.conf
There is also duplication of PULSAR_EXTRA_OPTS and BOOKIE_EXTRA_OPTS.
The system whatsmyclusterid function uses bin/bookkeeper to lauch the ID check requiring values to be placed in BOOKIE version of variables settings, while the launching of the container uses pulsar bookie which then uses the pulsar values, and appends in the duplicate values.
Containers have two ways of starting the bookeepers, which also leads to a confusing environment. There should be one consistent usage. So that the environments are clear. This defect is filed here as the bkenv.sh apply_config_from_env.py and bin/bookkeeper and bin/pulsar are all involved and are part of this repository and are provided for chart execution.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
Expect unique values for the Java command line arguments. It should not be possible to get duplicate values causing confusion in support.