2013-10-05 1 views
1

Postgresql에 연결하는 다중 스레드 응용 프로그램이 있습니다. 클라이언트가 너무 많으면 앱이 다시 연결되기를 원하지만 인증이 실패하면 사용자에게 오류를 표시하고 싶습니다. 불행히도이 두 이벤트는 SQLException을 던지고 toString() 메서드에서 텍스트를 구문 분석하는 것처럼 보이는 유일한 방법입니다. 더 좋은 방법이 있습니까?SQLException 너무 많은 클라이언트 대 auth 실패

답변

1

포스트그레스는 error codes입니다.

예외로 인해 어떤 방식 으로든 노출되지 않는다고 확신합니까?

더하기, 어떤 언어를 사용하고 있습니까? 자바? 그렇다면 Java와 아무 상관이 없지만 PSQLException does expose that information을 생각합니다.

+0

감사합니다. 이것은 내가 원하는 곳으로 나를 데려 갈 것입니다. – user2669285

+0

이것이 효과가 있다면이 답변에 동의로 표시하십시오. –

+0

이것은 조금 우스운 이야기입니다. getErrorCode()는 private 필드 vendorCode를 리턴합니다. 이것은 컨스트럭터 "public SQLException (String reason, String sqlState, int vendorCode, Throwable cause)"에서 설정됩니다. 그러나 PSQException은이 생성자를 대체하지 않으며 구현 된 모든 컨스트럭터는 vendorCode에 0을 할당합니다. – user2669285

관련 문제