토토 결과를 명시 적으로 사용하여 트랜잭션을 만들 수 있습니다시작
또는트랜잭션 시작
사용 끝커밋
또는롤백
. 명시 적 트랜잭션 이외의 SQL 문은 단일 진술 트랜잭션을 자동으로 사용합니다.
모든 트랜잭션은 고유 한 것으로 식별됩니다VirtualTransactionID
(또한virtualxid
또는VXID
)는 백엔드의 프로세스 번호 (또는로 구성됩니다.ProcNumber
) 및 각 백엔드에 현지에있는 순차적으로 할당 된 숫자 ()localXID
. 예를 들어, 가상 트랜잭션 ID4/12532
aProcNumber
of4
및 AlocalXID
of12532
.
비 바이러스TransactionId
s (또는xid
), 예 :278394
, 내의 모든 데이터베이스에서 사용하는 글로벌 카운터의 트랜잭션에 순차적으로 할당됩니다.postgresql클러스터. 이 과제는 트랜잭션이 먼저 데이터베이스에 쓸 때 발생합니다.
내부 트랜잭션 ID 유형xid
너비는 32 비트이고랩마다 40 억 건의 토토 결과. 각 랩 어라운드 동안 32 비트 에포크가 증가합니다.XID8
여기에는이 시대를 포함하므로 설치의 수명 동안 감싸지 않습니다. 캐스팅으로 XID로 변환 할 수 있습니다.표 9.84returnXID8
값. XID는의 기초로 사용됩니다.postgresql'sPostgreSQL : 문서 : 개발 : 13 장. 배트맨 토토 제어동시성 메커니즘 및 스트리밍 복제.
(비정상적인) XID와의 최상위 거래가 커밋되면에 커밋 된대로 표시됩니다.PG_XACT
디렉토리. 추가 정보는에 기록됩니다.pg_commit_ts
디렉토리 iftrack_commit_timestamp활성화되었습니다.
더 이상VXID
andxid
, 준비된 트랜잭션도 글로벌 트랜잭션 식별자 (도 할당됩니다.gid). GID는 최대 200 바이트 길이의 문자열 리터럴이며 현재 준비된 다른 거래 중에서도 고유해야합니다.PG_PREPARED_XACTS
.