[
https://issues.apache.org/jira/browse/STORM-467?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14109811#comment-14109811
]
Jason Kania commented on STORM-467:
-----------------------------------
I am not sure what STORM_HOME refers to. There is no environment variable that
I see like that. Do you mean STORM_DIR as per the storm python script? In any
case, I have storm in /usr/local/bin/apache-storm-0.9.2-incubating and it
contains bin, lib, conf, README.markdown, etc.
The test files are in a subdirectory of my home directory
/home/jason/storm/application and storm.local.dir from the storm.yaml file is
set to be /home/jason/storm.
However, if I move my code out of /home/jason/storm/application to
/tmp/application and launch pointing to the new location, the problem still
remains and I am able launch even though the class is not present. Even if I
remove the jar containing the class completely, the topology still runs with a
cached version of the bolt class.
> storm jar executes non-existant or old jar files and classes
> ------------------------------------------------------------
>
> Key: STORM-467
> URL: https://issues.apache.org/jira/browse/STORM-467
> Project: Apache Storm (Incubating)
> Issue Type: Bug
> Affects Versions: 0.9.2-incubating
> Environment: debian linux wheezy and squeeze with java 1.7.0_67
> Reporter: Jason Kania
> Attachments: Exclamation.jar, Exclamation2.jar, ExclamationBolt.java,
> ExclamationTopology.java
>
>
> When issuing the storm jar command, the command will launch with some cached
> version of the jar contents even if no jar file is now present at the
> location specified on the command line. This should instead cause an error so
> that a user is actually running what they think they are.
> The second part of this is that some part of storm is caching topology
> classes so that when debugging errors, old code is executed instead of the
> new version of a class. I would argue that storm should attempt to destroy
> cached topology classes if presented with a new version or when an active
> topology is terminated. Again this is to avoid running versions of code that
> are not those which have been specified.
--
This message was sent by Atlassian JIRA
(v6.2#6252)