createPgOpaqueAdvisoryLocks — @gj-kit/toss-payments-postgresql
@gj-kit/toss-payments-postgresql에서 공개하는 function입니다. package version 0.5.1의 release declaration을 그대로 표시합니다.
검증된 import 예제
섹션 제목: “검증된 import 예제”import { createPgOpaqueAdvisoryLocks } from '@gj-kit/toss-payments-postgresql';시그니처, 매개변수, 반환 타입
섹션 제목: “시그니처, 매개변수, 반환 타입”/** * PostgreSQL advisory transaction lock factory. * * `BEGIN → pg_advisory_xact_lock → callback → COMMIT`은 SqlClient가 보장하는 하나의 * connection에서 실행된다. callback 또는 lock/commit이 실패하면 best-effort ROLLBACK 후 * 원래 오류를 그대로 rethrow한다. `pg_advisory_xact_lock`은 commit/rollback과 함께 자동 * 해제되므로 session-level lock 누수 경로가 없다. */declare function createPgOpaqueAdvisoryLocks(sql: SqlClient, options?: PgOpaqueAdvisoryLocksOptions): PgOpaqueAdvisoryLocks;이 선언은 매개변수, optionality, 제네릭, 반환값, 공개 union/type 계약의 정본입니다. 호출 전 필요한 환경·권한·오류 경계는 패키지 Golden path와 이 subpath의 import 조건을 함께 확인하세요.
Release context
섹션 제목: “Release context”- 패키지:
@gj-kit/toss-payments-postgresql - 버전:
0.5.1 - 공개 entry:
. - 소스: GitHub
구현 주석
섹션 제목: “구현 주석”PostgreSQL advisory transaction lock factory.
BEGIN → pg_advisory_xact_lock → callback → COMMIT은 SqlClient가 보장하는 하나의
connection에서 실행된다. callback 또는 lock/commit이 실패하면 best-effort ROLLBACK 후
원래 오류를 그대로 rethrow한다. pg_advisory_xact_lock은 commit/rollback과 함께 자동
해제되므로 session-level lock 누수 경로가 없다.