High Availability & Durability

Is it possible to have both high avaaibility and durability with open fire?

It is my understanding that XMMP is a long lived connection so if the server crashes. Assuming you have a clustered setup and a load balancer, then user could would have to login again but their message would be potentially lost? Are there any options for automatica fail over or enhacned durablability?

I assume that if the server is receiving a message and crashes the message will be lost. But what if the message has be received by the server but the server has not sent the message to the client. Is the message resilient to server crashing?

If you long in again will the server have your history or is it the responsibility of the client to save history?

Is there support for message receipts?