We currently define topology.classpath at the global level for Storm. The reason for this feature was to enable setting the classpath to include things like hbase-site and core-site without modifying the topology jar files on the cluster. That made things simpler, but this also has the consequence that Metron's installation process via Ambari looks something like this:
1. Install Metron 2. Start Metron - part of install process 3. Restart Storm - bc of the new property that has been added that needs to be distributed 4. Restart Metron - the topologies won't get the new classpath otherwise We're in effect restarting Metron a couple times, which can take some time. A possible alternative here is to set the classpath on the individual topologies. By doing so, we remove the need to restart Storm and Metron during the install. The down side is that this requires us to duplicate this setting for every flux file or topology, including newly-added topologies. What do folks think about which would be better? Best, Mike
