Try adding this to your failure page:
<?php
@session_start();
var_dump($_SESSION);
?>
That will display more information about the failure including the exact error message which should shed some light on what is causing it.
If you need help diagnosing the result let me know and I can take a look.