Most web frameworks(like seam, etc) use a transaction pattern of beginning a transaction(calling tx.begin) and committing the transaction(tx.commit) on every http request. This saves us alot of time.
In the case of using the postgres jdbc driver, if the database is down, i can begin a transaction, commit it without doing any sql and everything works GREAT for those static pages that the user is viewing. When the user goes to a page that needs the database, it redirects to /web/error.xhtml.
Now, if I use postgres XA datasource, or the oracle XA datasource or the oracle JDBC driver, it ALL fails!!!! Applications end up in an infinite redirect. Basically, should hibernate be fixed here or should the drivers be fixed. There is no reason to be talking to the database unless an actual select, update, or insert is actually done even if begin transaction is called like in the case of the postgres driver which is the only one that handles it correctly in my testing.
Should I file a hibernate bug here? I filed a seam bug as seam goes into infinite redirect when accessing static pages which I think a framework should not do.....
https://jira.jboss.org/jira/browse/JBSEAM-4528thanks,
Dean