How to set query timeout on PreparedStatement?
Is there a way to get Connection.prepareStatement() to throw an error or return, instead of waiting for a row lock?
I am trying to implement cross-process synchronization with using a prepared statement, that i do not commit, so it gra开发者_运维百科bs a write lock on a specific row. In the other processes it tries to prepare the sql statement, then it hangs while the original process finishes up. I need this to let me know it is hanging, so i can stop the function, and try again whenever it gets rescheduled.
Any ideas? Ive been googling for days, and can't seem to find a yes/no to this.
Im a fool, I figured this out yesterday and just forgot...
To solve it, do
preparedstatement = con.prepareStatement(query);
preparedstatement.setQueryTimeout(seconds);
and then just catch the exception.
精彩评论