Version Info:
"org.apache.storm" % "storm-core" % "1.2.1"
"org.apache.storm" % "storm-kafka-client" % "1.2.1"
With this version of storm, when running topology, I see two processes for each worker: one for logwriter and other for worker, as mentioned here as well.
The problem is I want to give less memory to logwriter process(say -Xmx512mb) and higher to worker process(say -Xmx12gb). But I am not able to achieve this, I have tried playing with different config.
There is config topology.worker.logwriter.childopts
, which is taken by logwriter process, but than I have given some config to worker.childopts
, but that also gets applied to both logwriter and worker process. Similary I tried using topology.worker.childopts
and that also gets applied to both logwriter and worker process.
How to solve this to give lesser memory for logwriter process and higher for worker process?
As suggested by Rohde Døssing here and what I had also observed, The process of logwriter has both java parameters: -Xmx512m and after few more parameters it again have -Xmx10g, and in my case it is taking the first one and only using 512mb memory only, so it is not causing any problem as such to me.
However as suggested here, it is not very good thing to have same duplicate parameters in process as it might take in other order as well in some other system. so Storm should fix this.