2012-10-10 6 views
0

쿼리 시간 초과를 구현하고 싶습니다. 응용 프로그램 프레임 워크는 , 스프링 MVC 및 최대 절전 모드으로 구성됩니다.Postgres로 쿼리 실행 시간 초과 8.4

세션 공장에서 시간 초과를 지정하는 경우. PostgreSQL 드라이버에 Timeout이 으로 구현되지 않았습니다.

내가 사용하고 포스트 그레스 8.4

코드는 다음과 같습니다

@Override 
@Transactional(timeout=20) 
public List<MasterBooking> searchMasterBookings(---){//some more code} 

오류 스택 추적은 다음과 같습니다

SQL state [0A000]; error code [0];Method org.postgresql.jdbc4.Jdbc4PreparedStatement.setQueryTimeout(int) is not yet implemented.; nested exception is org.postgresql.util.PSQLException: Method org.postgresql.jdbc4.Jdbc4PreparedStatement.setQueryTimeout(int) is not yet implemented. 

어떻게이를 구현 할 수 있습니까?

+0

일부 코드/파일 스 니펫이 도움이 될 것으로 생각됩니다. –

답변

1

postgres 드라이버는이 방법을 구현하지 않습니다. 자세한 내용은 http://archives.postgresql.org/pgsql-bugs/2008-04/msg00161.php도 참조하십시오. 솔루션 요청은 TODO 목록에 있습니다.

과 같은 연결 풀을 사용하십시오. C3P0은 훨씬 더 나은 방법으로 제어 된 시간 초과 동작을 구현하는 데 도움이됩니다.

+0

감사합니다. 나는 그렇게 할 것입니다. –