Add connection failure and reconnect support to producer