[ 
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)

Reply via email to