릴리스 노트

PostgreSQL 10.19

E.5. 릴리스 10.19

출시 날짜 :2021-11-11

이 릴리스에는 10.18의 다양한 수정 사항이 포함되어 있습니다. Major Release 10의 새로운 기능에 대한 정보는 참조섹션 E.24.

E.5.1. 버전 10.19로의 마이그레이션

10.x.를 실행하는 사람들에게는 덤프/복원이 필요하지 않습니다.

그러나 물리적 복제를 사용한 설치는 아래의 세 번째 ChangeLog 항목에 설명 된대로 기본 서버 전에 대기 서버를 업데이트해야합니다..

또한 다음 몇 가지 변경 항목에서 설명 된 바와 같이, 인덱스가 손상 될 수있는 몇 가지 버그가 발견되었습니다. 해당 사례 중 하나가 귀하에게 적용되면 업데이트 후 영향을받을 수있는 인덱스가 권장됩니다.

또한 10.16 이전 버전에서 업그레이드하는 경우 참조섹션 E.8.

E.5.2. 변화

  • SSL 또는 GSS 암호화 핸드 셰이크 (Tom Lane) 이후 서버가 외부 데이터를 거부하게합니다.

    TCP 연결에 데이터를 주입 할 수있는 능력이있는 중간 인간은 암호화로 보호 된 데이터베이스 세션의 시작 부분에 명확한 텍스트 데이터를 넣을 수 있습니다. 서버가 인증 데이터를 요구하지 않은 경우에만 작동하지만 가짜 SQL 명령을 서버로 보내는 것이 남용 될 수 있습니다.

    thePostgreSQL이 문제를보고 한 Jacob Champion 프로젝트. (CVE-2021-23214)

  • makelibpqSSL 또는 GSS 암호화 핸드 셰이크 후 외부 데이터 거부 (Tom Lane)

    TCP 연결에 데이터를 주입 할 수있는 능력이있는 중간 인간은 암호화로 보호 된 데이터베이스 세션의 시작 부분에 명확한 텍스트 데이터를 넣을 수 있습니다. LIBPQ의 행동에 대한 다른 세부 사항은 그 소리보다 더 어렵지만 클라이언트의 첫 몇 가지 쿼리에 가짜 응답을 주입하는 데 남용 될 수 있습니다.

    thePostgreSQL이 문제를보고 한 Jacob Champion 프로젝트. (CVE-2021-23222)

  • 부분 WAL 레코드 (Álvaro Herrera)로 끝나는 WAL 세그먼트를 배송 한 후 1 차 충돌이 발생하는 경우 물리 복제 수정

    기본이 나머지 불완전한 WAL 레코드 작성을 마치기에 충분히 오래 살아남지 못한 경우, 이전 충돌 회복 논리는 불완전한 WAL 레코드의 시작부터 시작하여 WAL을 다시 올려 놓았습니다. 대기 서버에는 이미 해당 WAL 세그먼트의 사본이있을 수 있으므로 문제가 발생합니다.

    이 업데이트를 적용 할 때 기본이되기 전에 대기 서버를 업데이트하는 것이 가장 좋습니다. 따라서 기본이 충돌하는 경우이 새로운 WAL 레코드 유형을 처리 할 준비가됩니다..

  • 수정동시에 색인 생성최신 준비된 거래 (Andrey Borodin)를 기다리려면

    방금 준비된 트랜잭션에 의해 삽입 된 행은 새 인덱스에서 생략 될 수 있으므로 인덱스에 의존하는 쿼리가 그러한 행을 놓치게됩니다. 이 유형의 문제에 대한 이전 수정은를 설명하지 못했습니다.거래 준비계속 진행중인 명령동시에 색인 생성그들을 확인했습니다. 이전과 마찬가지로 준비된 트랜잭션을 가능하게하는 설치 (max_prepared_transactions 0),이 문제가 구축 될 때 발생한 경우 동시에 제작 된 인덱스를 다시 알리는 것이 좋습니다.

  • 백엔드가 동시에 구축되는 색인에 새로운 행에 대한 항목을 추가하지 못하는 레이스 조건을 피하십시오 (Noah Misch, Andrey Borodin)

    현장스포츠 토토 사이트는 드물지만이 경우는와 함께 구축되거나 구사 된 지수에 잠재적으로 영향을 줄 수 있습니다.동시에옵션. 그러한 색인이 올바른지 확인하기 위해 그러한 지수를 다시 알리는 것이 좋습니다.

  • 수정float4float8해시 기능 NANS (Tom Lane)에 대한 균일 한 결과를 생성하는 기능

    이후PostgreSQL의 부동 소수점 유형은 모든 Nans가 동일하다고 간주되며, 해시 함수는 IEEE 754 표준에 따라 NANS 인 모든 비트 패턴에 대해 동일한 해시 코드를 생성하는 것이 중요합니다. 이로 인해 해시 인덱스와 해시 기반 쿼리 플랜이 비 캐논 NAN 값에 대한 잘못된 결과를 생성 할 수 있음을 의미합니다.'-nan':: float8대부분의 기계스포츠 토토 사이트 그러한 값을 생성하는 한 가지 방법입니다.) 이러한 값을 포함 할 가능성이있는 경우 부동 소수점 열스포츠 토토 사이트 해시 인덱스를 다시 인덱스하는 것이 좋습니다..

  • 충돌 회복 중 데이터 손실 방지테이블 스페이스 생성, 언제Wal_level = 최소(Noah Misch)

    서버가 사이에 충돌 한 경우테이블 스페이스 생성그리고 다음 체크 포인트에서, 재생은 새로운 테이블 스페이스 디렉토리의 내용을 완전히 제거하여 후속 WAL 리플레이에 의존하여 해당 디렉토리의 모든 것을 복원합니다. 이것은 WAL을 작성하는 최적화와 심하게 상호 작용합니다 (예 : 예제는입니다.COPY방금 제작 된 테이블로). 이러한 최적화는 만 적용됩니다.Wal_levelis최소, V10 이상의 기본값이 아닙니다.

  • 분할 된 테이블에 부착되거나 분리되는 테이블에 대해 관계 캐시가 무효화되어 있는지 확인하십시오 (Amit Langote, Álvaro Herrera)

    이 감독은 파티션에 직접 해결 된 후속 인서트/업데이트의 오작동을 허용 할 수 있지만 현재 존재하는 세션스포츠 토토 사이트만..

  • a 관계 캐시가 무효화되어 있는지 확인하십시오모든 테이블의 경우간행물 (Hou Zhijie, Vignesh C)

    이 감독은 현재 존재하는 모든 세션이 종료 될 때까지 부적절한 복제 행동으로 이어질 수 있습니다.

  • 지정되지 않은 유형 수정 자 (Tom Lane)를 사용하여 동일한 유형으로 캐스트를 버리지 마십시오.

    예를 들어, 열f1is type숫자 (18,3), 파서는 단순히 캐스트를 버리는 데 사용되었습니다f1 :: 숫자, 런타임 효과가 없다는 이유로. 그것은 사실이지만, 표현식의 노출 된 유형은 여전히 ​​평범한 것으로 간주되어야한다.숫자, 아님숫자 (18,3). 이것은 재귀와 같은 더 큰 구조물의 유형을 올바르게 해결하는 데 중요합니다Unions.

  • 현재 데이터베이스의 인코딩이 지원하지 않으면 ICU 콜라이트 생성을 허용하지 않습니다 (Tom Lane)

    이전에는 이것이 허용되었지만, 콜레이션 조회가 작동하는 방식으로 인해 콜레이션을 참조 할 수 없었습니다. Collation을 사용할 수도없고 심지어 떨어 뜨릴 수도 없습니다.

  • 숫자에서 정밀도의 코너 케이스 손실 수정power ()(Dean Rasheed)

    첫 번째 인수가 1에 매우 가까울 때 결과가 부정확 할 수 있습니다.

  • 내부 괄호를 캡처 한 정규 표현 오류 방지{0}(Tom Lane)

    정규 표현식과 같은(.) 0 ... \ 1Drew잘못된 역전 번호. 그러나 Perl과 같은 다른 Regexp 엔진은 불평하지 않으며, 그 문제에 대해 우리는 밀접하게 관련된 경우에도 우리의 것이 아닙니다.

  • 정규 표현식 역 참조가 가끔 일치하지 않아야 할 때 (Tom Lane)

    Regexp 엔진은 부분 일치를 거부 한 후 괄호를 캡처하기위한 일치 데이터를 지우는 데 부주의했습니다. 이를 통해 나중에 정의 된 지시자가 부족한 곳스포츠 토토 사이트 실패 해야하는 장소스포츠 토토 사이트 일치 할 수 있습니다.

  • 반복 노드 (Tom Lane) 내부의 역 참조로 정규 표현 성능 버그 수정

    잘못된 백로 추적 로직으로 인해 일치를 찾는 데 소요되는 지수 시간이 발생할 수 있습니다. 다행히도 다른 최적화에 의해 대부분의 경우 문제가 가려집니다.

  • 잘못된 결과 수정시간대스포츠 토토 사이트A에 적용시간대가있는 시간value (Tom Lane)

    대상 시간대가 동적 시간대 약어에 의해 지정된 경우 결과가 잘못되었습니다 (즉, 고정 UTC 오프셋이 아닌 정규 영역 이름과 동일하게 정의되는)..

  • 열 전용 통계를 사용하여 열 범위 (Tom Lane)

    코너 케이스가 있습니다분석MCV 목록이 관찰 된 모든 값을 설명하지 않더라도 MCV (Most-Common-Values) 목록을 작성하지만 히스토그램은 아닙니다. 이 경우 플래너가 MCV 목록 만 사용하여 열 값의 범위를 추정하지 못하도록합니다..

  • 스냅 샷을 내보낸 후 트랜잭션이 실패하면 올바르게 정리하십시오 (Dilip Kumar)

    이 감독은 같은 세션이 스냅 샷을 다시 내보내려 고 시도한 경우에만 문제를 일으킬 것입니다. 이에 대한 가장 큰 시나리오는 복제 슬롯을 생성 한 다음 다른 복제 슬롯을 생성하는 것입니다.

  • 대기 서버스포츠 토토 사이트 오버플로 된 변환 추적의 랩 어라운드 방지 (Kyotaro Horiguchi, Alexander Korotkov)

    이 감독은 대기 서버스포츠 토토 사이트 상당한 성능 저하 (과도한 서브 트랜스 슬루 트래픽으로 나타냄)를 유발할 수 있습니다.

  • 대기 서버 홍보 중에 준비된 거래가 올바르게 설명되어 있는지 확인하십시오 (Michael Paquier, Andres Freund)

    동시에 실행되는 세션에서 스냅 샷에서 준비된 트랜잭션을 생략 할 수있는 좁은 창이있었습니다. 해당 세션이 스냅 샷을 사용하여 데이터 업데이트를 수행하면 잘못된 결과 또는 데이터 손상이 발생할 수 있습니다.

  • 최대 허용 길이 (Tom Lane)로 성장한 관계의 감지 수정

    2^32-1 블록의 한계를지나 테이블을 연장하거나 색인하려는 시도는 거부되었지만 일관되지 않은 내부 상태가 생성되는 것을 막기에는 충분하지 않습니다.

  • 확장 할 때 데이터 수정 CTE의 존재를 올바르게 추적합니다대신Rule (Greg Nancarrow, Tom Lane)

    이전에 실패한 실패는 부적절하게 병렬 계획을 선택하는 것과 같은 문제로 이어질 수 있습니다.

  • 확장 통계 개체 (Tomas Vondra)에서 권한 실패에 대한 잘못된보고 수정

    일반적으로 생성 된 코드캐시 조회 오류의도 된 메시지 대신.

  • 병렬 작업자 (Greg Nancarrow)의 잘못된 스냅 샷 처리 수정

    이 감독은 트랜잭션 격리 수준이반복 가능한 읽기.

  • Walreceiver 프로세스가 종료되기 전에 필요한 모든 아카이브 알림 파일을 생성해야합니다 (Fujii Masao)

    Walreceiver가 WAL 세그먼트 경계에서 정확히 종료 된 경우, 마지막으로 호평을받은 세그먼트에 대한 알림 파일을 만들지 못하여 대기에서 해당 세그먼트의 아카이브를 지연시킵니다..

  • 잠금을 피하십시오oldNEW사용하는 규칙의 의사 관계업데이트 선택(Masahiko Sawada, Tom Lane)

  • Parser의 집계 처리 수정필터Clauses (Tom Lane)

    필터표현은 일반 부울 열이며, 골재의 의미 론적 수준은 잘못 결정되어 스펙 픽 행동으로 이어질 수 있습니다. 인 경우필터표현 자체는 부울 회복 집계입니다. 오류는 던져져야하지만 실행시 충돌이 발생했을 가능성이 높습니다..

  • 동시에 삭제되는 객체를 소유 한 역할을 삭제할 때 널 포인터-언론-회의를 피하십시오 (Álvaro Herrera)

  • 예방스냅 샷 참조 누출경고lo_export ()또는 관련 함수 실패 (Heikki Linnakangas)

  • SP-Gist 인덱스의 스캔이 통계보기 (Tom Lane)에서 계산되는지 확인하십시오.

    SP-GIST 코드스포츠 토토 사이트 인덱스 스캔 횟수를 증가 시켰지만, 튜플 당 카운터가 올바르게 발전되었지만.

  • 관련 대기 간격을 다시 계산하면복구 _min_apply_delay회복 중에 변경되었습니다 (Souideep Chakraborty, Ashwin Agrawal)

  • a 인 경우 무한 루프 수정Simplehash.hhash table reaches 2^32 elements (Yura Sokolov)

    이 버그가 실제로 필요한대로 타격을 받았을 것 같지 않습니다work_mem기존의 사용을위한 수백 기가 바이트 설정Simplehash.h.

  • 확장 통계 계산 중 메모리 소비 감소 (Justin Pryzby, Tomas Vondra)

  • 수정ECPG이후에 올바르게 복구하려면malloc ()연결을 설정하는 동안 고장 (Michael Paquier)

  • 허용출구PL/PGSQL 루틴 (Tom Lane)에서 가장 바깥 쪽 블록 밖으로

    루틴에 명시 적이 필요하지 않은 경우return,이 사용량은 유효하지만 거부되었습니다.

  • 제거PG_CTL생성 된 명령의 총 길이 (Phil Krylov)에 대한 하드 코딩 한도

    예를 들어, 이것은 우체국 장에게 전달할 수있는 명령 줄 옵션의 수에 대한 제한을 제거합니다. 개별 경로 이름PG_CTLPostmaster Executable의 이름 또는 데이터 디렉토리 이름과 같은 거래는 여전히로 제한되어 있습니다.maxpgpath대부분의 경우 바이트.

  • 수정pg_dumpgrobal이 아닌 기본 권한을 올바르게 덤프하려면 (Neil Chen, Masahiko Sawada)

    글로벌 (무제한) 인 경우기본 권한 변경명령은 예를 들어 현재별로 일부 특권을 취소했습니다.execute함수의 경우기본 권한 변경명령은 선택된 역할 또는 스키마에 대한 권한을 다시 부여했습니다.pg_dump제한된 특권 보조금을 올바르게 덤프하지 못했습니다.

  • makepg_dump덤프 할 파티션 된 테이블에서 공유 잠금 장치 획득 (Tom Lane)

    이 감독은 일반적으로 한 번 이후로 상당히 무해했습니다pg_dump잎 파티션을 잠그 셨는데, 이는 분할 된 테이블 자체스포츠 토토 사이트 상당한 DDL을 방지하기에 충분합니다. 그러나 관련 잠금이 유지되지 않기 때문에 아이가없는 분할 테이블을 버릴 때 문제가 발생할 수 있습니다.

  • 개선pg_dump의 성능은 RLS 정책에 대한 테이블 당 쿼리를 피하고 반복적 인 호출을 피함으로써의 성능format_type ()(Tom Lane)

    이러한 변경 사항은 로컬 서버에서 덤프 할 때 한계 개선 만 제공하지만 원격 서버의 덤프는 네트워크 왕복이 적기 때문에 실질적으로 이익을 얻을 수 있습니다..

  • 잘못된 파일 이름 수정PG_RESTORE의 잘못된 큰 개체 TOC 파일에 대한 오류 메시지 (Daniel Gustafsson)

  • 실패 수정contrib/btree_gin인덱스 ON"char"(아님char (n)) 열, indexscan을 사용하는 경우<또는<=운영자가 수행됩니다 (Tom Lane)

    그러한 인덱스 스캔은 모든 항목을 반환하지 못했습니다.

  • 변경contrib/pg_stat_statements읽기쿼리 텍스트최대 1GB (Tom Lane) 단위의 파일

    이러한 큰 쿼리 텍스트 파일은 매우 드문 일이지만, 발생하면 이전 코딩은 Windows 64에서 실패합니다 (2GB 이상의 개별 읽기 요청을 거부).

  • 언제Contrib/Postgres_FDW데이터 변환 오류를보고하려고합니다 (Tom Lane)

  • RISC-V 아키텍처 (Marek Szuba)에 대한 스핀 락 지원 추가

    이것은 해당 플랫폼스포츠 토토 사이트 합리적인 성능에 필수적입니다.

  • 지원 OpenSSL 3.0.0 (Peter Eisentraut, Daniel Gustafsson, Michael Paquier)

  • OpenSSL Bio (I/O 추상화)스포츠 토토 사이트 올바른 유형 식별자 설정PostgreSQL(Itamar Gafni)

    이 감독은 아마도 OpenSSL 설치 감사와 같은 작업을 수행하는 코드에만 중요합니다. 그러나 명목상 OpenSSL API를 위반 한 것입니다.

  • makepg_regexec ()범위 외부에 대한 강력한search_start매개 변수 (Tom Lane)

    returnreg_nomatchsearch_start는 문자열의 끝입니다. 이 사례는 아마도 코어 내스포츠 토토 사이트 도달 할 수 없을 것입니다PostgreSQL그러나 확장자는 매개 변수 값에 대해 더 부주의 할 수 있습니다.

  • GetSharedSecurityLabel ()아직 중요한 관계 캐시 항목 (Jeff Davis)을 아직 구축하지 않은 새로 시작된 세션에서 사용할 수 있습니다.

  • CLDR 프로젝트의 데이터를 사용하여 Windows 시간대 이름을 Iana Time Zones (Tom Lane)에 매핑합니다

    Windows스포츠 토토 사이트 실행할 때initdb새 클러스터를 설정하려는 시도TimeZone시스템의 일반적인 시간대와 일치하는 Iana 시간대의 매개 변수. 우리는 몇 년 전에 생성 한 매핑 테이블을 사용하고 있었고 적절하게 만 업데이트했습니다.

  • 시간대 데이터 파일 업데이트TZDATAFiji, Jordan, Palestine 및 Samoa의 DST 법률 변경에 대한 릴리스 2021E, 바베이도스, 쿡 제도, 가이아나, 니우, 포르투갈 및 통가에 대한 역사적 교정.

    또한 Pacific/Enderbury Zone은 Pacific/Kanton으로 이름을 바꿨습니다. 또한 1970 년부터 아프리카/아크라, 아메리카/아티 코칸, America/Blanc-Sablon, America/Creston, America/Curacao, America/Nassau, America/Port_of_spain, Antarctica/Dumontdurville 및 Antartica/owa/owoa/owa/owa/owa/owa와 같은 인근 지역의 더 인기있는 구역으로 합병되었습니다.