In order to kill a topology with no wait period the operator needs to supply extra arguments `-w 0` or the code needs to be a few lines longer to pass in the KillOptions with a 0 timeout. If you want a configured minimum timeout for a given topology I think that would be perfectly fine. We do not currently support that, but please file a JIRA and hopefully someone can take a look at supporting it. You can probably do a lot of the work yourself if you want to. The function you care about is here https://github.com/apache/storm/blob/51c8474143b0081ff0522b0367f3efdba2689089/storm-core/src/jvm/org/apache/storm/daemon/nimbus/Nimbus.java#L2573-L2595 and it really would be mostly inserting a check probably after this line https://github.com/apache/storm/blob/51c8474143b0081ff0522b0367f3efdba2689089/storm-core/src/jvm/org/apache/storm/daemon/nimbus/Nimbus.java#L2583 to be sure the waitAmount is >= the configured minimum.
- Bobby On Tuesday, January 17, 2017, 1:28:32 AM CST, Sachin Pasalkar <sachin_pasal...@symantec.com> wrote:Currently user can kill topology directly without waiting for some amount of time so that all inflight messages will get processed. For example, storm is writing to file & user kills topology, file is not closed or moved to proper location. We need to educate operation guys to do the right things also there are some chances that it will be not followed causing system to go in inconsistent state. Can we set mandatory timeout (configurable) when user kills storm topology? User should not be allowed kill topology with time less than mentioned time. Some case: 1) If topology is long running don't allow user to kill but time not less than mentioned one 2) If topology is just deployed allow him to kill instantly (as it might be some mistake) 3) Handle same cases from command-line. Thanks, Sachin