Re: [storm-user] "java.io.IOException: Unable to delete file" in supervisor while trying to kill a topology from ui

917 views
Skip to first unread message

Nathan Marz

unread,
Oct 31, 2012, 5:11:09 PM10/31/12
to storm-user
I haven't tried running a Storm cluster on Windows, so you're kind of on your own. I would accept any pull requests that make Storm run better in a Windows environment.

That said, Storm does work in local mode when run under cygwin.


On Tue, Oct 30, 2012 at 2:19 AM, Sergei Zobnin <sergei....@gmail.com> wrote:
Good day!

I am trying to kill a topology from the ui and have the following exception in supervisor:

2012-10-30 11:26:44 supervisor [DEBUG] Synchronizing supervisor
2012-10-30 11:26:44 supervisor [DEBUG] Storm code map: {}
2012-10-30 11:26:44 supervisor [DEBUG] Downloaded storm ids: #{"TransmitterTopology-1-1351581981"}
2012-10-30 11:26:44 supervisor [DEBUG] All assignment: 
2012-10-30 11:26:44 supervisor [DEBUG] New assignment: {}
2012-10-30 11:26:44 supervisor [DEBUG] Writing new assignment {}
2012-10-30 11:26:44 supervisor [INFO] Removing code for storm id TransmitterTopology-1-1351581981
2012-10-30 11:26:44 util [DEBUG] Rmr path ..\tmp\storm/supervisor/stormdist/TransmitterTopology-1-1351581981
2012-10-30 11:26:44 event [ERROR] Error when processing event
java.io.IOException: Unable to delete file: ..\tmp\storm\supervisor\stormdist\TransmitterTopology-1-1351581981\stormjar.jar
at org.apache.commons.io.FileUtils.forceDelete(FileUtils.java:1390)
at org.apache.commons.io.FileUtils.cleanDirectory(FileUtils.java:1044)
at org.apache.commons.io.FileUtils.deleteDirectory(FileUtils.java:977)
at org.apache.commons.io.FileUtils.forceDelete(FileUtils.java:1381)
at backtype.storm.util$rmr.invoke(util.clj:415)
at backtype.storm.daemon.supervisor$mk_synchronize_supervisor$this__4702.invoke(supervisor.clj:317)
at backtype.storm.event$event_manager$fn__2485.invoke(event.clj:24)
at clojure.lang.AFn.run(AFn.java:24)
at java.lang.Thread.run(Thread.java:722)

..\tmp\storm\supervisor\stormdist\TransmitterTopology-1-1351581981\stormjar.jar seems to be the only file, that is not deleted in the temporary directory, this possibly happends because the worker process runs when the following code is executed (supervisor.clj, 316): 

(doseq [storm-id downloaded-storm-ids]
        (when-not (assigned-storm-ids storm-id)
          (log-message "Removing code for storm id "
                       storm-id)
          (rmr (supervisor-stormdist-root conf storm-id))
          ))
 
I wonder if the worker process supposed to be killed by the time rmr stormdist runs and if the worker process at least supposed to be killed (like it is done in sync-processes)

Running storm-0.8.2-wip11.jar on a windows system (path separators are already fixed and taskkill called in ensure-process-killed).

I would appreciate any ideas.

Thank you!



--
Twitter: @nathanmarz
http://nathanmarz.com

Reply all
Reply to author
Forward
Message has been deleted
0 new messages