출시 날짜 :2021-05-13
이 토토 결과에는 12.6의 다양한 수정 사항이 포함되어 있습니다. Major Release 12의 새로운 기능에 대한 정보는 참조섹션 E.23.
덤프/복원은 12.x.를 실행하는 사람들에게는 필요하지 않습니다.
그러나 12.6 이전 버전에서 업그레이드하는 경우 참조하십시오.섹션 E.17.
배열 첨자 계산 (Tom Lane)의 정수 오버플로 방지§
배열 코드는 배열의 하한 + 길이가 정수를 넘치는 경우에 대해 불평하지 않았습니다. 이로 인해 배열의 이후 항목이 액세스 할 수 없게되었지만 (구독은 정수로 작성할 수 없기 때문에), 더 중요한 것은 후속 할당 작업을 혼란스럽게하는 것입니다.
“정크”열에서 열삽입 ... 충돌에 ... 업데이트
대상 목록 (Tom Lane)§
업데이트
목록에는 다중 열 하위 선택이 포함되어 있습니다 (결과 외에 정크 열을 제공하는),업데이트
경로는 여분의 정크 열의 값을 포함하는 튜플을 저장하게됩니다. 단기적으로는 상당히 무해하지만, 새 열이 테이블에 추가되면 값이 액세스 할 수있게되면 추가 된 열의 데이터 타입과 일치하지 않으면 오작동이 발생할 수 있습니다..
또한 교차 파티션 업데이트를 지원하는 버전에서 이러한 경우에 의해 트리거 된 교차 파티션 업데이트는 역 문제가 발생했습니다. 정크 열은 대상 목록에서 제거되어 일반적으로 다중 연속 하위 선택 메커니즘의 오작동으로 인해 즉시 충돌이 발생했습니다. (CVE-2021-32028)
가능성이 낮은 계산 토토 결과업데이트 ... 반환
교차 파티션 업데이트에 대한 출력 (Amit Langote, Etsuro Fujita)§ §
IF an업데이트
파티션 된 테이블의 경우 물리적으로 다른 행 유형 (예 : 다른 삭제 열 세트가있는 하나), 계산의 계산과 함께 다른 파티션으로 행을 이동 시켰습니다.반환
해당 행의 결과는 오류 또는 잘못된 답변을 생성 할 수 있습니다. 이 아니라면 오류가 관찰되지 않습니다.업데이트
다른 테이블이 대상 테이블에 연결되는 것을 포함합니다. (CVE-2021-32029)
분할 된 테이블에서 제약 조건 지연성 특성 조정 토토 결과 (Álvaro Herrera)§
분할 된 테이블의 외국 키 제약 조건에 적용될 때ALTER 테이블 ... ALTER SURPLEATIANT
조정에 실패연기 가능
및/또는처음 연기
잎 파티션의 제약 및 트리거 표시. 이로 인해 그러한 제약이 예상치 못한 행동으로 이어졌습니다.Alter
원하는 속성을 설정하도록 명령.
이 변경 사항도 그러한 적용을 적용하는 데 해당됩니다Alter
잎 파티션의 제약 조건에 직접. 유일하게 지원되는 사례는 전체 분할 계층이 동일한 제약 속성을 갖는 것입니다.Alter
파티션 루트에 적용해야합니다.
|Alter Table ... 상속
, 부모의 생성 된 열은 아동 (Peter Eisentraut)에서 같은 방식으로 생성 될 것을 주장합니다.§
신원 열을 무효가 될 수있는 것으로 표시하는 금지 (Vik Fearing)§
생성 ... 신원으로
암시NOT NULL
, 따라서 명시 적과 결합하도록 허용하지 마십시오null
사양.
허용ALTER 역할/데이터베이스 ... SET
설정하려면역할
, Session_Authorization
및temp_buffers
매개 변수 (Tom Lane)§
이전에, 과도한 유효성 검사는 나중에 사용될 때 값이 작동하더라도 이러한 명령을 거부 할 수 있습니다. 이로 인해 덤프/재 장전 및 업그레이드 시나리오에 대한 명령 주문 위험이 생성되었습니다.
토토 결과커밋 및 체인
현재 트랜잭션에 Live SavePoints (Fujii Masao)가있을 때 올바르게 작동하려면§
a 강요로 버그 토토 결과Collate
충돌 할 수없는 유형 (Tom Lane)에 대한 표현§
이것은 구문 분석 나무로 이어졌습니다.Collate
는 실패 할 수없는 값에 적용되는 것으로 보입니다. 그것은 일반적으로 실제 영향을 미치지 않지만 (이후Collate
런타임에 영향을 미치지 않음), 덤프/reload. 동안 거부 될 뷰를 구축 할 수있었습니다.
튜플을 저장 할 때 사용하지 않는 버그 토토 결과이후
Triggers (Amit Langote)§
어떤 상황에서는 충돌이 발생할 수 있습니다.
통화 창 함수 및 절차를 통하지 않음“빠른 경로”와이어 프로토콜 메시지 (Tom Lane)§
여기에서는 일반 함수 만 지원됩니다. 집계 함수를 호출하려고하는 동안 이미 실패하면 창 함수를 호출하는 것이 충돌하고 절차가 트랜잭션 제어가없는 경우에만 절차를 호출 할 수 있습니다.
Extendpg_identify_object_as_address ()
이벤트 트리거를 지원하려면 (Joel Jacobson)§ §
토토 결과to_char ()
의 부정적인 간격 (Julien Rouhaud)을 가진 로마 수 달 형식 코드 처리§
이전에, 그러한 경우에는 일반적으로 충돌이 발생합니다.
의 주장을 확인하십시오pg_import_system_collations ()
유효한 스키마 OID (Tom Lane)입니다.§
구문 분석하는 동안 초기화되지 않은 값의 사용 토토 결과\
BRE 모드 정규 표현식의 정량 자 (Tom Lane)§m
,n
\
이 오류는 정량자가 비 게리를 행동하게 할 수 있습니다.{
Quantifier는 정기적 인 표현식으로 할 것입니다.m
,n
?
확장 통계 (Tomas Vondra)를 사용하여 그룹 수를 추정 할 때 시스템 열을 무시하지 마십시오.§
이로 인해 쿼리에 대한 이상한 추정치가 발생했습니다.선택 ... 그룹별 A, B, CTID
.
매우 긴 고정 접두사 (Tom Lane)로 정규 표현식의 선택성을 추정 할 때 제로별로 나누지 마십시오.§
이것은 일반적으로 A로 이어졌습니다.nan
선택성 값, 주장 실패 또는 이상한 플래너 행동을 유발합니다.
브린 인덱스 비트 맵 스캔 (Tomas Vondra)의 액세스 오프-테이블 오류 토토 결과§
Brin Index에서 사용하는 페이지 범위 크기가 2의 전원이 아닌 경우 비트 맵 스캔이 테이블의 실제 끝을지나 페이지를 가져 오려고 시도 할 수있는 코너 케이스가있었습니다.“파일을 열 수 없음”오류.
WAL에서 커밋되지 않은 2 상 거래를 복구하는 동안 잘못된 타임 라인 변경을 피하십시오 (Soumyadeep Chakraborty, Jimmy Yih, Kevin Yeap)§
이 오류는 이후의 WAL 레코드가 잘못된 타임 라인 ID로 작성되어 일관성 문제로 이어지거나 나중에 서버를 다시 시작할 수없는 완전한 실패로 이어질 수 있습니다..
대기 서버의 시작 프로세스를 종료하는 동안 잠금이 해제되는지 확인하십시오 (Fujii Masao)§
회복 중에도 대기 서버가 종료되면 일부 잠금 장치가 유지 될 수 있습니다. 이로 인해 디버그 빌드에서 어설 션 실패가 발생합니다.
논리적 복제 작업자가 할 때 충돌 토토 결과구독 변경
(Peter Smith)§
핵심 코드는이 작업을 수행하지 않지만 복제 트리거는 할 수 있습니다.
우리가 기본값을 확인하십시오Wal_sync_method
= fdatasync
최근 freebsd (Thomas Munro)§
freebsd 13 지원Open_Datasync
는 일반적으로 기본 선택이됩니다. 그러나 이것이 실제로 우편 요금의 개선인지는 확실하지 않으므로 현재 기존 기본값을 보존하십시오.
올바른 트리거 OID를 전달 후 후크에 전달조건 변경
(Álvaro Herrera)§
중 트리거 속성을 업데이트 할 때조건 변경
, 포스트 알터 훅은 우리가 트리거를 업데이트하고 있다고 들었지만 제약 조건의 OID가 트리거 대신 전달되었습니다..
DSM 세그먼트 (Thomas Munro)를 분리하는 동안 중단 될 때 청소를 마치십시오§
이 오류는 병렬 쿼리 후에 즉시 임시 파일을 정리하지 않을 수 있습니다.
서버의 SSL 매개 변수를 초기화하는 동안 메모리 누출 토토 결과 (Michael Paquier)§
이것은 일반적으로 중요하지 않지만 우체국 장이 반복적으로 전송된다면Sighup신호, 시간이 지남에 따라 누출이 쌓일 수 있습니다.
서버에서 모듬 된 작은 메모리 누출 토토 결과 (Tom Lane, Andres Freund)§ § § § § § §
PL/PGSQL시 실패 토토 결과do
블록은 복합 유형 변수와 트랜잭션 제어를 모두 사용합니다 (Tom Lane)§
이전에, 그러한 경우, 유출 된 튜플 디스크립터에 대한 오류가 발생했습니다.
무한 루프 방지libpq길이가 손상된 ParameterDescription 메시지가 수신되면 (Tom Lane)§
언제initdb서버를 시작하는 방법에 대한 지침을 인쇄하고에 표시된 경로를 만드십시오.PG_CTLWindows에서 백 슬래시 분리기 사용 (Nitin Jadhav)§
토토 결과PSQL이전 동작을 복원하려면\ Connect Service =
(Tom Lane)§뭔가
이전 버그 토토 결과은 환경 변수를 일으켰습니다 (예 :pgport
)이 맥락에서 서비스 파일의 항목을 무시하려면. 우선 순위가 다른 방법 인 이전 행동을 복원합니다.
토토 결과PSQL'son_error_rollback
처리 할 기능커밋 및 체인
올바르게 명령 (Arthur nascimento)§
이전 에이 사건이 실패했습니다“SavePoint "PG_PSQL_TEMPORARY_SAVEPOINT"가 존재하지 않습니다”.
파일 토토 결과 감지시 레이스 조건 토토 결과PSQL's\ e
및 관련 명령 (Laurenz Albe)§
매우 빠른 타이피스트는 임시 편집 파일이 변경되었는지 여부에 대한 코드의 파일 타임 스탬프 기반 탐지를 속일 수 있습니다.
토토 결과pg_dump의 파티션 테이블에 생성 된 열을 덤핑 (Peter Eisentraut)§
이전 마이너 릴리스에 도입 된 토토 결과 사항은 분할 된 테이블에 적용해서는 안되며 전통적으로 상속 된 테이블
누락 된 파일 버전 토토 결과PG_RESTORE(Tom Lane)§
extable이 아닌 소스에서 사용자 정의 형식 아카이브를 읽을 때PG_RESTORE아카이브 버전을 확인하는 것을 무시했습니다. 지원할 수있는 것보다 새로운 아카이브 버전을 공급하면 나중에 지저분하게 실패 할 것입니다.
더 많은 수표 추가pg_upgrade업그레이드 할 수없는 데이터 유형을 포함하는 사용자 테이블 (Tom Lane)§
업그레이드 할 수없는 데이터 유형이 컨테이너 유형 (예 : 배열 또는 범위)에 포함 된 일부 경우의 감지 토토 결과. 또한 사용자 테이블이 시스템 정의 복합 유형의 열이 포함되어있을 때 업그레이드를 허용하지 않습니다. 이러한 유형의 OID는 버전에서 안정적이지 않기 때문입니다.
잘못된 진행보고 계산 토토 결과PG_CHECKSUMS(Shinya Kato)§
토토 결과pg_waldump카운트xact
기록 당 통계를 생성 할 때 올바르게 기록 (Kyotaro Horiguchi)§
토토 결과Contrib/Amcheck
튜플 플래그에 대해 불평하지 않기heap_xmax_lock_only
andheap_keys_updated
둘 다 설정 중 (Julien Rouhaud)§
이것은 유효한 상태입니다업데이트 선택
.
최근 Oracle Developer Studio Compiler 버전 (Noah Misch)을 지원하기위한 vpath 빌드 규칙 조정§
Solaris (Noah Misch)에서 Python 3에 대한 PL/Python 테스트 토토 결과§