>Hi >Can you elaborate on the robust shutdown? >My experience is if you can't do the grace for shutdown with a certain >time, the on flight exchanges maybe have no other change to be processed.
>Do you mean Camel should store these on flight exchanges into a >persistence storage, if the wait time is out. No, It doesn't ask for so such process. >From the end user(system manager)'s point, it just means camel should give him chance to choose: 1) robust stop the application: It means the application must be stopped until the waiting-time expired; 2) or just try to stop application: it means the application must not be stopped if system is still busy until waiting time out. This function could tell the system manager: if you don't want to lost the message, you can do "try to stop " again and again. But if you couldn't endure and choose to robust stop ((especially the case: deadlocked by extern system), then you will have a risk to lost a message. whether using persistence storage or other means , it 's just a different ways to implement the "try to stop" requirement; For example we can use another simple ways to implement the requirement: Suspending the consumer's IO operation to avoid continue to process external message; and just waiting the Exchange to be processed over; if the Exchange is still being processed while time out, just return false to indicate try-stop failed; Thanks
