Fork me on GitHub

@darnok what do you mean by parallel states? mount starts/stops state serially in order very close to the way they are compiled (that's how mount discovers them and records the order). hence if you run (mount/start) and one of these states fails the "start chain of events" will abort with an exception.


I mean that they are not required by each other. I'm asking because I have this case that I have one state - cassandra session and the other - queue consumer. The cassandra client doesn't start, but the consumer starts (starts thread pool, etc.). So I have cassandra state not valid, and the consuming functions throw exceptions because cannot deref cassandra session var.


I'm sorry for confusion. It seems that the problem was elsewhere. I had in code a future call and it was preventing shutdown of app.


@darnok ah.. ok, so the start function of one of the states "ate" the exception in the future?