[jira] [Assigned] (STORM-3064) PartitionedTridentSpoutExecutor should use getPartitionsForTask

2018-05-17 Thread Jing Chen (JIRA)

 [ 
https://issues.apache.org/jira/browse/STORM-3064?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jing Chen reassigned STORM-3064:


Assignee: Jing Chen

> PartitionedTridentSpoutExecutor should use getPartitionsForTask
> ---
>
> Key: STORM-3064
> URL: https://issues.apache.org/jira/browse/STORM-3064
> Project: Apache Storm
>  Issue Type: Improvement
>  Components: storm-client
>Affects Versions: 2.0.0
>Reporter: Stig Rohde Døssing
>Assignee: Jing Chen
>Priority: Minor
>
> https://issues.apache.org/jira/browse/STORM-2407 added a method to the 
> IOpaquePartitionedTridentSpout.Emitter interface called getPartitionsForTask, 
> which is now used to delegate partitioning between tasks (previously, the 
> partitioning was hard coded to round robin).
> If we want to be able to delegate partitioning, I don't see a reason not to 
> make the same change on the IPartitionedTridentSpout.Emitter interface, where 
> partitioning is still hard coded to use round robin. E.g. compare 
> https://github.com/apache/storm/blob/4137328b75c06771f84414c3c2113e2d1c757c08/storm-client/src/jvm/org/apache/storm/trident/spout/PartitionedTridentSpoutExecutor.java#L131
>  to 
> https://github.com/apache/storm/blob/4137328b75c06771f84414c3c2113e2d1c757c08/storm-client/src/jvm/org/apache/storm/trident/spout/OpaquePartitionedTridentSpoutExecutor.java#L131



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (STORM-3056) Add a test for quickly rebinding to a port

2018-05-17 Thread P. Taylor Goetz (JIRA)

 [ 
https://issues.apache.org/jira/browse/STORM-3056?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

P. Taylor Goetz updated STORM-3056:
---
Fix Version/s: (was: 1.2.2)
   (was: 1.1.3)
   (was: 2.0.0)

> Add a test for quickly rebinding to a port
> --
>
> Key: STORM-3056
> URL: https://issues.apache.org/jira/browse/STORM-3056
> Project: Apache Storm
>  Issue Type: Bug
>  Components: storm-core
>Affects Versions: 1.1.2, 1.2.1
>Reporter: Raghav Kumar Gautam
>Assignee: Raghav Kumar Gautam
>Priority: Minor
>  Labels: pull-request-available
>  Time Spent: 50m
>  Remaining Estimate: 0h
>
> We need to add a test for the bug fix of STORM-3039. We try to rebind to port 
> 6700 a few times and expect it to be usable quickly.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (STORM-3079) improve getMessage support for ThriftExceptions

2018-05-17 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/STORM-3079?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

ASF GitHub Bot updated STORM-3079:
--
Labels: pull-request-available  (was: )

> improve getMessage support for ThriftExceptions
> ---
>
> Key: STORM-3079
> URL: https://issues.apache.org/jira/browse/STORM-3079
> Project: Apache Storm
>  Issue Type: Bug
>Affects Versions: 2.0.0
>Reporter: Aaron Gresch
>Assignee: Aaron Gresch
>Priority: Major
>  Labels: pull-request-available
>
> I've seen error callstacks similar to this and been confused as to the null 
> message.  The generated thrift code does not support getMessage().  We should 
> try and improve the log messages.
>  
> 2018-05-16 21:15:04.596 o.a.s.d.n.Nimbus timer [INFO] Exception {}
> org.apache.storm.generated.KeyNotFoundException: nullat 
> org.apache.storm.blobstore.LocalFsBlobStore.getStoredBlobMeta(LocalFsBlobStore.java:258)
>  ~[storm-server-2.0.0.y.jar:2.0.0.y]
> at 
> org.apache.storm.blobstore.LocalFsBlobStore.getBlob(LocalFsBlobStore.java:393)
>  ~[storm-server-2.0.0.y.jar:2.0.0.y]
> at 
> org.apache.storm.blobstore.BlobStore.readBlobTo(BlobStore.java:310) 
> ~[storm-client-2.0.0.y.jar:2.0.0.y]
> at org.apache.storm.blobstore.BlobStore.readBlob(BlobStore.java:339) 
> ~[storm-client-2.0.0.y.jar:2.0.0.y]
> at 
> org.apache.storm.daemon.nimbus.TopoCache.readTopology(TopoCache.java:67) 
> ~[storm-server-2.0.0.y.jar:2.0.0.y]
> at 
> org.apache.storm.daemon.nimbus.Nimbus.readStormTopologyAsNimbus(Nimbus.java:670)
>  ~[storm-server-2.0.0.y.jar:2.0.0.y]
> at 
> org.apache.storm.daemon.nimbus.Nimbus.rmDependencyJarsInTopology(Nimbus.java:2333)
>  ~[storm-server-2.0.0.y.jar:2.0.0.y]
> at org.apache.storm.daemon.nimbus.Nimbus.doCleanup(Nimbus.java:2387) 
> ~[storm-server-2.0.0.y.jar:2.0.0.y]
> at 
> org.apache.storm.daemon.nimbus.Nimbus.lambda$launchServer$37(Nimbus.java:2674)
>  ~[storm-server-2.0.0.y.jar:2.0.0.y]
> at org.apache.storm.StormTimer$1.run(StormTimer.java:111) 
> ~[storm-client-2.0.0.y.jar:2.0.0.y]
> at 
> org.apache.storm.StormTimer$StormTimerTask.run(StormTimer.java:227) 
> ~[storm-client-2.0.0.y.jar:2.0.0.y]



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (STORM-3079) improve getMessage support for ThriftExceptions

2018-05-17 Thread Aaron Gresch (JIRA)
Aaron Gresch created STORM-3079:
---

 Summary: improve getMessage support for ThriftExceptions
 Key: STORM-3079
 URL: https://issues.apache.org/jira/browse/STORM-3079
 Project: Apache Storm
  Issue Type: Bug
Affects Versions: 2.0.0
Reporter: Aaron Gresch
Assignee: Aaron Gresch


I've seen error callstacks similar to this and been confused as to the null 
message.  The generated thrift code does not support getMessage().  We should 
try and improve the log messages.

 
2018-05-16 21:15:04.596 o.a.s.d.n.Nimbus timer [INFO] Exception {}
org.apache.storm.generated.KeyNotFoundException: nullat 
org.apache.storm.blobstore.LocalFsBlobStore.getStoredBlobMeta(LocalFsBlobStore.java:258)
 ~[storm-server-2.0.0.y.jar:2.0.0.y]
at 
org.apache.storm.blobstore.LocalFsBlobStore.getBlob(LocalFsBlobStore.java:393) 
~[storm-server-2.0.0.y.jar:2.0.0.y]
at org.apache.storm.blobstore.BlobStore.readBlobTo(BlobStore.java:310) 
~[storm-client-2.0.0.y.jar:2.0.0.y]
at org.apache.storm.blobstore.BlobStore.readBlob(BlobStore.java:339) 
~[storm-client-2.0.0.y.jar:2.0.0.y]
at 
org.apache.storm.daemon.nimbus.TopoCache.readTopology(TopoCache.java:67) 
~[storm-server-2.0.0.y.jar:2.0.0.y]
at 
org.apache.storm.daemon.nimbus.Nimbus.readStormTopologyAsNimbus(Nimbus.java:670)
 ~[storm-server-2.0.0.y.jar:2.0.0.y]
at 
org.apache.storm.daemon.nimbus.Nimbus.rmDependencyJarsInTopology(Nimbus.java:2333)
 ~[storm-server-2.0.0.y.jar:2.0.0.y]
at org.apache.storm.daemon.nimbus.Nimbus.doCleanup(Nimbus.java:2387) 
~[storm-server-2.0.0.y.jar:2.0.0.y]
at 
org.apache.storm.daemon.nimbus.Nimbus.lambda$launchServer$37(Nimbus.java:2674) 
~[storm-server-2.0.0.y.jar:2.0.0.y]
at org.apache.storm.StormTimer$1.run(StormTimer.java:111) 
~[storm-client-2.0.0.y.jar:2.0.0.y]
at org.apache.storm.StormTimer$StormTimerTask.run(StormTimer.java:227) 
~[storm-client-2.0.0.y.jar:2.0.0.y]



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (STORM-3078) HBAuthorizationException appears unused

2018-05-17 Thread Aaron Gresch (JIRA)
Aaron Gresch created STORM-3078:
---

 Summary: HBAuthorizationException appears unused
 Key: STORM-3078
 URL: https://issues.apache.org/jira/browse/STORM-3078
 Project: Apache Storm
  Issue Type: Bug
Affects Versions: 2.0.0
Reporter: Aaron Gresch


Looks like this class is safe to remove.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Closed] (STORM-3075) NPE starting nimbus

2018-05-17 Thread Ethan Li (JIRA)

 [ 
https://issues.apache.org/jira/browse/STORM-3075?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ethan Li closed STORM-3075.
---
   Resolution: Fixed
Fix Version/s: 2.0.0

Thanks [~agresch]. I merged this into master.

> NPE starting nimbus
> ---
>
> Key: STORM-3075
> URL: https://issues.apache.org/jira/browse/STORM-3075
> Project: Apache Storm
>  Issue Type: Bug
>Affects Versions: 2.0.0
>Reporter: Aaron Gresch
>Assignee: Aaron Gresch
>Priority: Major
>  Labels: pull-request-available
> Fix For: 2.0.0
>
>  Time Spent: 1.5h
>  Remaining Estimate: 0h
>
> {code:java}
> 2018-05-15 14:14:59.873 o.a.c.f.l.ListenerContainer main-EventThread [ERROR] 
> Listener (org.apache.storm.zookeeper.Zookeeper$1@26d820eb) threw an exception
> java.lang.NullPointerException: null
> at 
> org.apache.storm.nimbus.LeaderListenerCallback.leaderCallBack(LeaderListenerCallback.java:118)
>  ~[storm-server-2.0.0.y.jar:2.0.0.y]
> at 
> org.apache.storm.zookeeper.Zookeeper$1.isLeader(Zookeeper.java:124) 
> ~[storm-server-2.0.0.y.jar:2.0.0.y]
> at 
> org.apache.curator.framework.recipes.leader.LeaderLatch$9.apply(LeaderLatch.java:665)
>  ~[curator-recipes-4.0.1.jar:4.0.1]
> at 
> org.apache.curator.framework.recipes.leader.LeaderLatch$9.apply(LeaderLatch.java:661)
>  ~[curator-recipes-4.0.1.jar:4.0.1]
> at 
> org.apache.curator.framework.listen.ListenerContainer$1.run(ListenerContainer.java:93)
>  ~[curator-framework-4.0.1.jar:4.0.1]
> at 
> org.apache.curator.shaded.com.google.common.util.concurrent.MoreExecutors$DirectExecutor.execute(MoreExecutors.java:435)
>  ~[curator-client-4.0.1.jar:?]
> at 
> org.apache.curator.framework.listen.ListenerContainer.forEach(ListenerContainer.java:85)
>  ~[curator-framework-4.0.1.jar:4.0.1]
> at 
> org.apache.curator.framework.recipes.leader.LeaderLatch.setLeadership(LeaderLatch.java:660)
>  ~[curator-recipes-4.0.1.jar:4.0.1]
> at 
> org.apache.curator.framework.recipes.leader.LeaderLatch.checkLeadership(LeaderLatch.java:539)
>  ~[curator-recipes-4.0.1.jar:4.0.1]
> at 
> org.apache.curator.framework.recipes.leader.LeaderLatch.access$700(LeaderLatch.java:65)
>  ~[curator-recipes-4.0.1.jar:4.0.1]
> at 
> org.apache.curator.framework.recipes.leader.LeaderLatch$7.processResult(LeaderLatch.java:590)
>  ~[curator-recipes-4.0.1.jar:4.0.1]
> at 
> org.apache.curator.framework.imps.CuratorFrameworkImpl.sendToBackgroundCallback(CuratorFrameworkImpl.java:865)
>  ~[curator-framework-4.0.1.jar:4.0.1]
> at 
> org.apache.curator.framework.imps.CuratorFrameworkImpl.processBackgroundOperation(CuratorFrameworkImpl.java:635)
>  ~[curator-framework-4.0.1.jar:4.0.1]
> at 
> org.apache.curator.framework.imps.WatcherRemovalFacade.processBackgroundOperation(WatcherRemovalFacade.java:152)
>  ~[curator-framework-4.0.1.jar:4.0.1]
> at 
> org.apache.curator.framework.imps.GetChildrenBuilderImpl$2.processResult(GetChildrenBuilderImpl.java:187)
>  ~[curator-framework-4.0.1.jar:4.0.1]
> at 
> org.apache.zookeeper.ClientCnxn$EventThread.processEvent(ClientCnxn.java:590) 
> ~[zookeeper-3.4.6.jar:3.4.6-1569965]
> at 
> org.apache.zookeeper.ClientCnxn$EventThread.run(ClientCnxn.java:498) 
> ~[zookeeper-3.4.6.jar:3.4.6-1569965]
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (STORM-1038) Upgrade netty transport from 3.x to 4.x

2018-05-17 Thread JIRA

[ 
https://issues.apache.org/jira/browse/STORM-1038?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16479209#comment-16479209
 ] 

Stig Rohde Døssing commented on STORM-1038:
---

[~sunh11373] Okay. Thanks for the contribution regardless, it's a great help.

> Upgrade netty transport from 3.x to 4.x
> ---
>
> Key: STORM-1038
> URL: https://issues.apache.org/jira/browse/STORM-1038
> Project: Apache Storm
>  Issue Type: Dependency upgrade
>  Components: storm-core
>Reporter: Hang Sun
>Priority: Minor
>  Labels: performance
>   Original Estimate: 168h
>  Time Spent: 2h 40m
>  Remaining Estimate: 165h 20m
>
> It will be nice to upgrade netty to 4.x to take advantage of its more 
> efficient memory usage.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (STORM-3077) Upgrade Disruptor version to 3.3.11

2018-05-17 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/STORM-3077?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

ASF GitHub Bot updated STORM-3077:
--
Labels: pull-request-available  (was: )

> Upgrade Disruptor version to 3.3.11
> ---
>
> Key: STORM-3077
> URL: https://issues.apache.org/jira/browse/STORM-3077
> Project: Apache Storm
>  Issue Type: Improvement
>  Components: storm-core
>Affects Versions: 1.2.1
>Reporter: Jungtaek Lim
>Assignee: Jungtaek Lim
>Priority: Major
>  Labels: pull-request-available
>
> I encountered the version conflict from Disruptor.
> Phoenix 5 depends on Disruptor 3.3.6 which added some new methods, and calls 
> the method which is not available from Disruptor 3.3.2 (Storm 1.x), resulting 
> NoSuchMethodError.
> Instead of taking a look at all changes from 
> https://github.com/LMAX-Exchange/disruptor/compare/3.3.2...3.3.11#diff-dd0cdb682e550bb371997155c2f2995d
>  , I just simply checked with https://github.com/trohovsky/japi-checker
> $ java -jar japi-checker-cli/target/japi-checker-cli-0.2.0-SNAPSHOT.jar 
> disruptor-3.3.2.jar disruptor-3.3.11.jar
> {code:java}
> WARNING: com/lmax/disruptor/TimeoutBlockingWaitStrategy.java: The 
> non-abstract and non-static method toString() has been added
> ERROR: com/lmax/disruptor/SleepingWaitStrategy.java(66): The method 
> waitFor(long, com.lmax.disruptor.Sequence, com.lmax.disruptor.Sequence, 
> com.lmax.disruptor.SequenceBarrier) is not throwing 
> java.lang.InterruptedException anymore
> ERROR: com/lmax/disruptor/util/PaddedLong.java: The class 
> com.lmax.disruptor.util.PaddedLong has been removed
> WARNING: com/lmax/disruptor/dsl/Disruptor.java: The non-abstract and 
> non-static method 
> setDefaultExceptionHandler(com.lmax.disruptor.ExceptionHandler) has been added
> WARNING: com/lmax/disruptor/dsl/Disruptor.java: The non-abstract and 
> non-static method  
> publishEvent(com.lmax.disruptor.EventTranslatorTwoArg, java.lang.Object, 
> java.lang.Object) has been added
> WARNING: com/lmax/disruptor/dsl/Disruptor.java: The non-abstract and 
> non-static method  extends java.lang.Object> 
> publishEvent(com.lmax.disruptor.EventTranslatorThreeArg, java.lang.Object, 
> java.lang.Object, java.lang.Object) has been added
> WARNING: com/lmax/disruptor/dsl/Disruptor.java: The non-abstract and 
> non-static method getSequenceValueFor(com.lmax.disruptor.EventHandler) has 
> been added
> WARNING: com/lmax/disruptor/dsl/Disruptor.java: The non-abstract and 
> non-static method toString() has been added
> WARNING: com/lmax/disruptor/AbstractSequencer.java: The non-abstract and 
> non-static method toString() has been added
> ERROR: com/lmax/disruptor/util/MutableLong.java: The class 
> com.lmax.disruptor.util.MutableLong has been removed{code}
> Removed files were for testing, and they're moved to test package.
> The utility missed new constructor of Disruptor which raises error, but looks 
> like there are no backward incompatibility, so it looks safe to upgrade in 
> point of API compatibility view.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (STORM-3077) Upgrade Disruptor version to 3.3.11

2018-05-17 Thread Jungtaek Lim (JIRA)
Jungtaek Lim created STORM-3077:
---

 Summary: Upgrade Disruptor version to 3.3.11
 Key: STORM-3077
 URL: https://issues.apache.org/jira/browse/STORM-3077
 Project: Apache Storm
  Issue Type: Improvement
  Components: storm-core
Affects Versions: 1.2.1
Reporter: Jungtaek Lim
Assignee: Jungtaek Lim


I encountered the version conflict from Disruptor.

Phoenix 5 depends on Disruptor 3.3.6 which added some new methods, and calls 
the method which is not available from Disruptor 3.3.2 (Storm 1.x), resulting 
NoSuchMethodError.

Instead of taking a look at all changes from 
https://github.com/LMAX-Exchange/disruptor/compare/3.3.2...3.3.11#diff-dd0cdb682e550bb371997155c2f2995d
 , I just simply checked with https://github.com/trohovsky/japi-checker

$ java -jar japi-checker-cli/target/japi-checker-cli-0.2.0-SNAPSHOT.jar 
disruptor-3.3.2.jar disruptor-3.3.11.jar
{code:java}
WARNING: com/lmax/disruptor/TimeoutBlockingWaitStrategy.java: The non-abstract 
and non-static method toString() has been added
ERROR: com/lmax/disruptor/SleepingWaitStrategy.java(66): The method 
waitFor(long, com.lmax.disruptor.Sequence, com.lmax.disruptor.Sequence, 
com.lmax.disruptor.SequenceBarrier) is not throwing 
java.lang.InterruptedException anymore
ERROR: com/lmax/disruptor/util/PaddedLong.java: The class 
com.lmax.disruptor.util.PaddedLong has been removed
WARNING: com/lmax/disruptor/dsl/Disruptor.java: The non-abstract and non-static 
method setDefaultExceptionHandler(com.lmax.disruptor.ExceptionHandler) has been 
added
WARNING: com/lmax/disruptor/dsl/Disruptor.java: The non-abstract and non-static 
method  
publishEvent(com.lmax.disruptor.EventTranslatorTwoArg, java.lang.Object, 
java.lang.Object) has been added
WARNING: com/lmax/disruptor/dsl/Disruptor.java: The non-abstract and non-static 
method  publishEvent(com.lmax.disruptor.EventTranslatorThreeArg, 
java.lang.Object, java.lang.Object, java.lang.Object) has been added
WARNING: com/lmax/disruptor/dsl/Disruptor.java: The non-abstract and non-static 
method getSequenceValueFor(com.lmax.disruptor.EventHandler) has been added
WARNING: com/lmax/disruptor/dsl/Disruptor.java: The non-abstract and non-static 
method toString() has been added
WARNING: com/lmax/disruptor/AbstractSequencer.java: The non-abstract and 
non-static method toString() has been added
ERROR: com/lmax/disruptor/util/MutableLong.java: The class 
com.lmax.disruptor.util.MutableLong has been removed{code}
Removed files were for testing, and they're moved to test package.

The utility missed new constructor of Disruptor which raises error, but looks 
like there are no backward incompatibility, so it looks safe to upgrade in 
point of API compatibility view.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (STORM-3066) Storm Flux variable substitution

2018-05-17 Thread Jungtaek Lim (JIRA)

 [ 
https://issues.apache.org/jira/browse/STORM-3066?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jungtaek Lim updated STORM-3066:

Issue Type: Improvement  (was: Bug)

> Storm Flux variable substitution
> 
>
> Key: STORM-3066
> URL: https://issues.apache.org/jira/browse/STORM-3066
> Project: Apache Storm
>  Issue Type: Improvement
>Reporter: Calvin Chen
>Priority: Minor
>
> we are using flux to submit storm topology, for topology yml file, we need 
> substitute variables, from 
> [https://github.com/apache/storm/tree/master/flux], it says variable can be 
> substituted in format of ${variable.name}, my question is, in my case, 
> variable is a list, and I only want to get first element of the list, how can 
> I do it?
>  I try to use ${variable.0} and ${variable}[0], it doesn't work, after 
> substitution, the result is element_name.0 or element_name[0], which is not I 
> expected(expected one should be element_name), please let me know how to 
> specify the first element of a list in flux.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (STORM-3066) Storm Flux variable substitution

2018-05-17 Thread Jungtaek Lim (JIRA)

 [ 
https://issues.apache.org/jira/browse/STORM-3066?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jungtaek Lim updated STORM-3066:

Priority: Minor  (was: Critical)

> Storm Flux variable substitution
> 
>
> Key: STORM-3066
> URL: https://issues.apache.org/jira/browse/STORM-3066
> Project: Apache Storm
>  Issue Type: Bug
>Reporter: Calvin Chen
>Priority: Minor
>
> we are using flux to submit storm topology, for topology yml file, we need 
> substitute variables, from 
> [https://github.com/apache/storm/tree/master/flux], it says variable can be 
> substituted in format of ${variable.name}, my question is, in my case, 
> variable is a list, and I only want to get first element of the list, how can 
> I do it?
>  I try to use ${variable.0} and ${variable}[0], it doesn't work, after 
> substitution, the result is element_name.0 or element_name[0], which is not I 
> expected(expected one should be element_name), please let me know how to 
> specify the first element of a list in flux.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (STORM-1516) Topology workers are not getting killed when a topology is killed.

2018-05-17 Thread Jungtaek Lim (JIRA)

 [ 
https://issues.apache.org/jira/browse/STORM-1516?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jungtaek Lim updated STORM-1516:

Fix Version/s: (was: 1.0.0)

> Topology workers are not getting killed when a topology is killed.
> --
>
> Key: STORM-1516
> URL: https://issues.apache.org/jira/browse/STORM-1516
> Project: Apache Storm
>  Issue Type: Bug
>  Components: storm-core
>Affects Versions: 2.0.0
>Reporter: Satish Duggana
>Assignee: Satish Duggana
>Priority: Blocker
> Fix For: 2.0.0
>
> Attachments: SlidingWindowTopology.java
>
>  Time Spent: 50m
>  Remaining Estimate: 0h
>
> When topology with timebased windowing bolts are killed, respective workers 
> are not shutdown properly and they remain running. When you want to deploy a 
> new topology, it throws with the below Exception as the earlier worker is not 
> shutdown. This issue is not specific with this topology though.
> 2016-02-02 10:07:42.845 o.a.s.d.worker [ERROR] Error on initialization of 
> server mk-worker
> org.apache.storm.shade.org.jboss.netty.channel.ChannelException: Failed to 
> bind to: 0.0.0.0/0.0.0.0:6700
>   at 
> org.apache.storm.shade.org.jboss.netty.bootstrap.ServerBootstrap.bind(ServerBootstrap.java:272)
>  ~[storm-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
>   at org.apache.storm.messaging.netty.Server.(Server.java:101) 
> ~[storm-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
>   at org.apache.storm.messaging.netty.Context.bind(Context.java:67) 
> ~[storm-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
>   at 
> org.apache.storm.daemon.worker$worker_data$fn__6329.invoke(worker.clj:265) 
> ~[storm-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
>   at org.apache.storm.util$assoc_apply_self.invoke(util.clj:934) 
> ~[storm-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
>   at org.apache.storm.daemon.worker$worker_data.invoke(worker.clj:262) 
> ~[storm-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
>   at 
> org.apache.storm.daemon.worker$fn__6627$exec_fn__2511__auto__$reify__6629.run(worker.clj:605)
>  ~[storm-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
>   at java.security.AccessController.doPrivileged(Native Method) 
> ~[?:1.8.0_60]
>   at javax.security.auth.Subject.doAs(Subject.java:422) ~[?:1.8.0_60]
>   at 
> org.apache.storm.daemon.worker$fn__6627$exec_fn__2511__auto6628.invoke(worker.clj:603)
>  ~[storm-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
>   at clojure.lang.AFn.applyToHelper(AFn.java:178) ~[clojure-1.7.0.jar:?]
>   at clojure.lang.AFn.applyTo(AFn.java:144) ~[clojure-1.7.0.jar:?]
>   at clojure.core$apply.invoke(core.clj:630) ~[clojure-1.7.0.jar:?]
>   at 
> org.apache.storm.daemon.worker$fn__6627$mk_worker__6722.doInvoke(worker.clj:577)
>  [storm-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
>   at clojure.lang.RestFn.invoke(RestFn.java:512) [clojure-1.7.0.jar:?]
>   at org.apache.storm.daemon.worker$_main.invoke(worker.clj:764) 
> [storm-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
>   at clojure.lang.AFn.applyToHelper(AFn.java:165) [clojure-1.7.0.jar:?]
>   at clojure.lang.AFn.applyTo(AFn.java:144) [clojure-1.7.0.jar:?]
>   at org.apache.storm.daemon.worker.main(Unknown Source) 
> [storm-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
> Caused by: java.net.BindException: Address already in use
>   at sun.nio.ch.Net.bind0(Native Method) ~[?:1.8.0_60]
>   at sun.nio.ch.Net.bind(Net.java:433) ~[?:1.8.0_60]
>   at sun.nio.ch.Net.bind(Net.java:425) ~[?:1.8.0_60]
>   at 
> sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:223) 
> ~[?:1.8.0_60]
>   at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74) 
> ~[?:1.8.0_60]
>   at 
> org.apache.storm.shade.org.jboss.netty.channel.socket.nio.NioServerBoss$RegisterTask.run(NioServerBoss.java:193)
>  ~[storm-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
>   at 
> org.apache.storm.shade.org.jboss.netty.channel.socket.nio.AbstractNioSelector.processTaskQueue(AbstractNioSelector.java:372)
>  ~[storm-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
>   at 
> org.apache.storm.shade.org.jboss.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:296)
>  ~[storm-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
>   at 
> org.apache.storm.shade.org.jboss.netty.channel.socket.nio.NioServerBoss.run(NioServerBoss.java:42)
>  ~[storm-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
>   at 
> org.apache.storm.shade.org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108)
>  ~[storm-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
>   at 
> org.apache.storm.shade.org.jboss.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:42)
>  ~[storm-core-2.0.0-SNAPSHOT.jar:2.0.0-SNAPSHOT]
>   at 
>