[ https://issues.apache.org/jira/browse/STORM-2191?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15998406#comment-15998406 ]
Robert Joseph Evans commented on STORM-2191: -------------------------------------------- [~erikdw], I merged the classpath shortening into master. You marked this as a problem on 1.x too but the cherry-pick is not clean so if you want it there you will need a second pull request. I'll let you close this JIRA if you are OK with just 2.0 getting this change. > shorten classpaths in worker and LogWriter commands > --------------------------------------------------- > > Key: STORM-2191 > URL: https://issues.apache.org/jira/browse/STORM-2191 > Project: Apache Storm > Issue Type: Task > Components: storm-core > Affects Versions: 1.0.2 > Reporter: Erik Weathers > Assignee: Erik Weathers > Priority: Minor > Labels: cli, command-line > Time Spent: 1h 20m > Remaining Estimate: 0h > > When launching the worker daemon and its wrapping LogWriter daemon, the > commands can become so long that they eclipse the default Linux limit of 4096 > bytes. That results in commands that are cut off in {{ps}} output, and > prevents easily inspecting the system to see even what processes are running. > The specific scenario in which this problem can be easily triggered: *running > Storm on Mesos*. > h5. Details on why it happens: > # using the default Mesos containerizer instead of Docker containers, which > causes the storm-mesos package to be unpacked into the Mesos executor sandbox. > # The ["expand all jars on > classpath"|https://github.com/apache/storm/blob/6dc6407a01d032483edebb1c1b4d8b69a304d81c/bin/storm.py#L114-L140] > functionality in the {{bin/storm.py}} script causes every one of the jars > that storm bundles into its lib directory to be explicitly listed in the > command. > #* e.g., say the mesos work dir is {{/var/run/mesos/work_dir/}} > #* and say that the original classpath argument in the supervisor cmd > includes the following for the {{lib/}} dir in the binary storm package: > #** > {{/var/run/mesos/work_dir/slaves/2357b762-6653-4052-ab9e-f1354d78991b-S12/frameworks/20160509-084241-1086985738-5050-32231-0000/executors/STORM_TOPOLOGY_ID/runs/e6a1407e-73fd-4be4-8d00-e882117b3391/storm-mesos-0.1.7-storm0.9.6-mesos0.28.2/lib/*}} > #* That leads to a hugely expanded classpath argument for the LogWriter and > Worker daemons that get launched: > #** > {{/var/run/mesos/work_dir/slaves/2357b762-6653-4052-ab9e-f1354d78991b-S12/frameworks/20160509-084241-1086985738-5050-32231-0000/executors/STORM_TOPOLOGY_ID/runs/e6a1407e-73fd-4be4-8d00-e882117b3391/storm-mesos-0.1.7-storm0.9.6-mesos0.28.2/lib/asm-4.0.jar:/var/run/mesos/work_dir/slaves/2357b762-6653-4052-ab9e-f1354d78991b-S12/frameworks/20160509-084241-1086985738-5050-32231-0000/executors/STORM_TOPOLOGY_ID/runs/e6a1407e-73fd-4be4-8d00-e882117b3391/storm-mesos-0.1.7-storm0.9.6-mesos0.28.2/lib/carbonite-1.4.0.jar:...}} -- This message was sent by Atlassian JIRA (v6.3.15#6346)