출시 날짜 :2020-11-12
이 롤 토토에는 11.9의 다양한 수정 사항이 포함되어 있습니다. Major Release 11의 새로운 기능에 대한 정보는 참조섹션 E.23.
11.x.를 실행하는 사람들에게는 덤프/복원이 필요하지 않습니다.
그러나 11.6 이전 버전에서 업그레이드하는 경우 참조섹션 E.17.
블록커서 선언 ... hold
및 인덱스 표현식 내에서 지연된 트리거의 발사 및 구체화 된보기 쿼리 (Noah Misch)
이것은 본질적으로 누출입니다“보안 제한 작업”샌드 박스 메커니즘. 비 임시 SQL 객체를 생성 할 권한이있는 공격자는이 누출을 슈퍼업자로 임의의 SQL 코드를 실행할 수 롤 토토.
the롤 토토이 문제를보고 한 Etienne Stalmans 프로젝트. (CVE-2020-25695)
복잡한 연결 스트링 매개 변수의 사용 수정pg_dump, PG_RESTORE, ClusterDB, ReindexDB및VACUUMDB(Tom Lane)
the-d
매개 변수pg_dumpandPG_RESTORE또는-유지 보수 -DB
언급 된 다른 프로그램의 매개 변수는 A 될 수 있습니다.“연결 문자열”데이터베이스 이름이 아닌 다중 연결 매개 변수를 포함합니다. 이러한 프로그램이 여러 데이터베이스의 병렬 처리 또는 처리와 같은 추가 연결을 시작 해야하는 경우 연결 문자열이 잊혀졌으며 기본 연결 매개 변수 (데이터베이스 이름, 호스트, 포트 및 사용자 이름) 만 추가 연결에 사용되었습니다.
언제PSQL's\ connect
명령은 연결 매개 변수를 재사용하고 이전 연결 문자열의 모든 비 지배적 매개 변수가 재사용되었는지 확인 (Tom Lane)
이것은 비 디폴트 SSL 또는 GSS 옵션과 같은 관련 매개 변수의 생략으로 인해 재 연결이 실패 할 수있는 경우를 피합니다. 더 나쁜 것은, 재 연결은 성공할 수 있지만 의도 된대로 암호화되지 않거나 의도 된 연결 매개 변수가 방지했던 중간 공격에 취약하지 않을 수 있습니다.pg_dumpet al이지만PSQL의 동작은 의도적으로 일부 연결 매개 변수를 무시할 수 있으므로 더 복잡합니다. (CVE-2020-25694)
예방PSQL's\ gset
특수 처리 된 변수 수정 (Noah Misch) 명령
\ gset
접두사가 없으면 서버가 말한 변수를 덮어 씁니다. 따라서 손상된 서버는와 같은 특수 처리 된 변수를 설정할 수 롤 토토.프롬프트 1
, 사용자 세션에서 임의의 쉘 코드를 실행할 수있는 기능을 제공합니다.
the롤 토토이 문제를보고 한 Nick Cleaton 프로젝트 감사합니다. (CVE-2020-25696)
SLRU 로그 (Noah Misch)의 동시 잘림으로부터 가능한 데이터 손실 방지
이 드문 문제는 나중에 나타날 것입니다“명백한 랩 어라운드”또는“거래 상태에 액세스 할 수 없음”오류.
체크 포인트 중에 SLRU 디렉토리가 올바르게 fsync에 도달해야합니다 (Thomas Munro)
이것은 후속 운영 체제 충돌에서 가능한 데이터 손실을 방지합니다.
수정ALTER 역할
사용자의 경우BYSPASSRLS
속성 (Tom Lane, Stephen Frost)
theBYSPASSRLS
속성은 슈퍼업자에 의해서만 변경 될 수 있지만 기타ALTER 역할
비밀번호 변경과 같은 작업은 일반 권한 점검 만 허용해야합니다. 이전 코딩은 이러한 역할에 대한 모든 변경 사항을 슈퍼업자에게 잘못 제한했습니다.
Alter Table 만 ... 활성화/비활성화
어린이 테이블 (Álvaro Herrera)으로 되풀이되지 않습니다.
이전전용
플래그가 무시되었습니다.
표현식 처리 수정테이블 생성
상속 (Tom Lane)
if a테이블 생성
명령을 모두 사용합니다좋아요
및 전통적인 상속, 열 참조check
a에서 나온 제약 및 표현 인덱스좋아요
상위 테이블은 잘못된 정답을 얻는 경향이있어서 잘못된 답변 및/또는 기괴한 오류 메시지를 초래했습니다. 똑같은 일이 일어날 수 있습니다.생성
그 기능이있는 분기에서 표현.
anallow동시에 인덱스 삭제
파티션 된 테이블 (Álvaro Herrera, Michael Paquier)
이 사례는 어쨌든 실패했지만 혼란스러운 오류 메시지가 롤 토토.
허용잠금 테이블
자기 참고 관점에서 성공하려면 (Tom Lane)
이전에는 무한 재귀에 대해 불평하는 오류를 던졌지 만 사건을 허용하지 않아도 될 것 같습니다.
부정적인 해를 BC 날짜로 전환하지 않음to_date ()
andTO_TIMESTAMP ()
(Dar Alathar-Yemen, Tom Lane)
또한 부정적인 해와 명시 적 조합을 준비“BC”취소 및 생산 마커
대기 서버가 WAL 타임 라인 히스토리 파일을 보관하는지 확인하십시오.archive_mode
로 설정되었습니다항상
(Grigory Smolkin, Fujii Masao)
이 감독은 후속 PITR 복구 시도의 실패로 이어질 수 롤 토토.
수정“캐시 조회가 관계에 실패 0”논리적 복제 작업자의 실패 (Tom Lane)
실패가 가능하지 않기 때문에 실제 영향은 적고, 발생하면 근로자가 단지 종료되어 다시 시작됩니다..
논리적 복제 작업자가 중복 핑 요청을 보내지 않도록 방지합니다 (Tom Lane)
“스마트”종료, 모든 클라이언트 (전경) 세션이 완료 될 때까지 배경 프로세스를 종료하지 마십시오 (Tom Lane)
이전 동작은 병렬 쿼리 처리가 중단되었습니다. 우체국 장은 병렬 작업자를 종료하고 새로운 작업을 거부하기 때문입니다. 또한 Autovacuum이 기능을 중단 시켰으며, 이는 생존 클라이언트 세션이 많은 데이터를 변경하면 장기적인 영향을 미칠 수 있습니다..
Postmaster (Tom Lane)에서 신호를 처리하는 동안 스택 공간의 재귀 소비를 피하십시오
병렬 처리의 중대한 사용은 병렬 작업자 프로세스 생성을 요청하는 동시 신호가 너무 많아서 우체국 마스터 충돌을 일으키는 것으로 관찰되었습니다.
실행을 피하십시오atexitSigquit (Kyotaro Horiguchi, Tom Lane)로 인해 종료 할 때의 핸들러
대부분의 서버 프로세스는 이미이 관행을 따랐지만 아카이버 프로세스는 간과되었습니다. 여전히 클라이언트 스타트 업 패킷을 기다리고있는 백엔드도 잘못되었습니다.
명백하게 정식 그룹화 열 (Tom Lane)을 참조하는 하위 쿼리 자격의 오해 최적화를 피하십시오
A “상수”서브 쿼리 출력 열은 그룹화 세트 중 일부에만 나타나는 그룹화 열인 경우 실제로 일정하지 않습니다.
SQL 기능이 잠재적으로 해산 가능한 하위 플랜 비교 표현식의 모양을 변경할 때 실패를 피하십시오
지수를 구축하거나 재건하는 동안 동시 업데이트로 인해 새로운 핫 체인의 모양을 견딜 수 롤 토토 (Anastasia Lubennikova, Álvaro Herrera)
이 감독은로 이어질 수 롤 토토.“힙 전용 튜플을위한 부모 튜플을 찾지 못했습니다”오류.
인덱스 조건이 만족할 수없는 경우 병렬 B- 트리 인덱스 스캔의 실패 수정 (James Hunter)
Brin Index (Tomas Vondra)에 삽입되기 전에 데이터가 고발되는지 확인하십시오.
인덱스 항목에는 외부 토스트 포인터가 포함되어 있지 않지만 Brin은 그 메모를 얻지 못했습니다. 이것은와 같은 오류로 이어질 수 롤 토토.“토스트 값 NNN에 대한 누락 된 청크 번호 0”. (기존 색인의 오류에 직면 한 경우Reindex
그것을 고치기에 충분해야합니다.)
브린 지수 스캔 중에 동시 탈수성을 올바르게 처리합니다 (Alexander Lakhin, Álvaro Herrera)
이전에, 페이지 범위가 잘못된 시간에 해제 된 경우 인덱스 스캔이 인덱스 손상을 나타내는 오류를 잘못 제기 할 수 있습니다..
수정 희귀“INDEX에서 저장된 포인트 손실”다색 진 인덱스 스캔 오류 (Tom Lane)
|getNameInfo ()
inPG_HBA_FILE_RULES
View (Tom Lane)
freebsd 11에서, 아마도 다른 플랫폼, The View 's주소
andnetmask
열은이 오류로 인해 항상 무효입니다.
충돌을 피하십시오debug_query_string
병렬 작업자 (Noah Misch)를 시작할 때 무효입니다.
이벤트가 트리거가 모니터링 할 때 무료 위험을 수정합니다Alter Table
Operation (Jehan-Guillaume de Rorthais)
일관되지 않은 이동 응집 데이터 유형에 대한 잘못된 오류 메시지 수정 (Jeff Janes)
병렬 작업자가 매우 긴 오류 메시지를보고 할 때 잠금을 피하십시오 (vignesh c)
공유 메모리 대기열을 통해 매우 큰 페이로드를 전송할 때 불필요한 고장을 피하십시오 (Markus Wanner)
JIT 코드 생성 (Andres Freund)에서 템플릿 기능 속성의 잘못된 처리 수정
이것은 충돌을 일으키는 것으로 나타났습니다S390X
, 그리고 아마도 다른 플랫폼에 다른 사례가있을 수 롤 토토.
RLS 정책을 사용한 관계 캐시 메모리 누출 수정 (Tom Lane)
Sighup 처리시 소형 메모리 누출 수정 새 GUC 변수 값을 다시 시작하지 않고 적용 할 수 없다고 결정합니다 (Tom Lane)
메모리 누출 수정pl/pgsql's콜
가공 (Pavel Stehule, Tom Lane)
만들기libpqin의 임의의 길이 라인 지원.pgpass
파일 (Tom Lane)
이것은 매우 긴 보안 토큰을 암호로 사용하는 데 주로 유용합니다.
inlibpqWindows의 경우 전화wsastartup ()
프로세스 당 한 번wsacleanup ()
전혀 (Tom Lane, Alexander Lakhin)
이전,libpq호출wsastartup ()
연결 시작 및wsacleanup ()
연결 정리시. 그러나 전화wsacleanup ()
다른 프로그램 운영을 방해 할 수 롤 토토. 특히, 우리는 STDOUT에 대한 예상 출력을 방출하는 드문 실패를 관찰했습니다.
수정ECPGWindows에 대한 도서관의 스레드 당 초기화 로직 (Tom Lane, Alexander Lakhin)
멀티 스레드ECPG응용 프로그램은 잘못된 잠금으로 인해 드문 오해를 겪을 수 롤 토토.
Windows에서, makePSQL이진 모드가 아닌 텍스트 모드에서 백티크 명령의 출력을 읽습니다 (Tom Lane)
이것은 Newlines의 적절한 취급을 보장합니다.
pg_dump확장 구성 테이블에 대한 컬럼 당 정보 수집 (Fabrízio de Royes Mello, Tom Lane)
이 작업을 수행하지 못하면 지정할 때 충돌이 발생했습니다-inserts
또는 ultspecified (일반적으로 정확하지만)COPY
사용시 명령COPY
테이블 데이터를 다시로드하려면
만들기pg_upgrade대상 클러스터 (Bruce Momjian)에서 테이블 스페이스 디렉토리의 기존을 확인하십시오
잠재적 메모리 누출 수정Contrib/Pgcrypto
(Michael Paquier)
실패 사례에 대한 확인 추가Contrib/Pgcrypto
(Daniel Gustafsson)
최근에 수정 된 수정TIMETZ
미국이 일광 절약 시간 (Tom Lane)을 관찰하지 않을 때 테스트 케이스가 작동합니다.
시간대 데이터 파일 업데이트TZDATAFiji, Morocco, Palestine, Canadian Yukon, Macquarie Island 및 Casey Station (Antarctica)의 DST 법률 변경을위한 2020d 출시; 프랑스, 헝가리, 모나코 및 팔레스타인을위한 역사적 교정.
IANA TZCODE RELEASE 2020D (Tom Lane)와 시간대 라이브러리 사본을 동기화합니다.
이것은 상류의 변화를 흡수합니다ZIC의 기본 출력 옵션에서“지방”to“슬림”. 우리가 계속 선택하기 때문에 그것은 우리의 목적에 대한 화장품 일뿐입니다.“지방”V13 Pre-V13 분기의 모드. 이 변화는 또한Strftime ()
변경되지 않습니다errno
실패하지 않는 한.