2011-01-12 5 views
2

'독점적 인 nowait'옵션 때문에 실패한 가져 오기 스크립트가 있습니다. 내 스크립트를 설정했습니다. 이로 인해 스크립트가 테이블에서 독점적 인 잠금을 얻을 수 없을 때 처음으로 오류가 발생했습니다. 이제 내 스크립트가 나는 그것이 기다려야하는 대신 PostgreSQL를위한 제한 시간을 설정 할 수 있도록하려는 것을 그냥 작동PostgreSQL에서 단독 잠금을위한 타임 아웃을 설정하는 방법

"EXCLUSIVE 모드 NOWAIT 잠금 표 % s에"내 스크립트는 이런 식으로했다 최대 시간은 15 분입니다. posgresql.conf에서 설정하는 것을 선호합니다. 이것을 할 수있는 방법이 있습니까?

+1

LOCK NOWAIT을 사용하려고하면 어떤 시도가 실패하면 다시 시도해보십시오. –

답변

1

이 주제는 2010 년 8 월에 under discussion이고, 필요한 optin (lock_timeout)을 제공 한 패치가 PG의 타임 아웃 프레임 워크를 훨씬 복잡하게 만들기 때문에 거부 될 것 같습니다. 그래서 당신은 평소의 statement_timeout과 함께 가야만한다고 가정합니다.

+0

주 :'lock_timeout'은 PostgreSQL 9.3부터 사용할 수 있습니다 - http://www.postgresql.org/docs/9.3/static/runtime-config-client.html#GUC-LOCK-TIMEOUT –

관련 문제