E.1. 출시 14.20

출시일: 2025-11-13

이 릴리스에는 14.19의 다양한 수정 사항이 포함되어 있습니다. 주요 릴리스 14의 새로운 기능에 대한 자세한 내용은 다음을 참조하세요.윈 토토 PostgreSQL : 문서 : 14 : E.18. 릴리스 14.

E.1.1. 버전 14.20으로 마이그레이션

14.X를 실행하는 경우 덤프/복원이 필요하지 않습니다.

그러나 14.19 이전 버전에서 업그레이드하는 경우 참조배트맨 토토 PostgreSQL : 문서 : 14 : E.1. 릴리스 14.19.

E.1.2. 변경사항

  • 다음을 확인하세요만들기스키마에 대한 권한통계 작성(젤테 페네마-니오)§

    이 누락으로 인해 테이블 소유자는 모든 스키마무지개 토토 통계를 생성할 수 있었고 잠재적으로 예상치 못한 이름 충돌이 발생할 수 있었습니다.

    포스트그레SQL프로젝트는 이 문제를 보고한 Jelte Fennema-Nio에게 감사드립니다. (CVE-2025-12817)

  • 할당 크기 계산 시 정수 오버플로 방지libpq(제이콥 챔피언)§

    여러 장소libpq필요한 메모리 할당 크기를 계산하는 데 충분히 주의하지 않았습니다. 입력이 충분히 크면 정수 오버플로가 발생하여 버퍼 크기가 작아지고 버퍼 끝을 지나서 쓰기가 발생할 수 있습니다.

    포스트그레SQL프로젝트는 이 문제를 보고한 Positive Technologies의 Aleksey Solovev에게 감사드립니다. (CVE-2025-12818)

  • 내 문자 클래스의 추가 수정 처리유사함정규식(Laurenz Albe)§

    번역을 위한 이전 수정사항유사함표현식과 POSIX 스타일 정규식의 패턴 일치는 이전에 작동했던 코너 케이스를 깨뜨렸습니다. 여는 괄호 바로 뒤에 이스케이프 문자가 있고 이스케이프 시퀀스 바로 뒤에 닫는 괄호가 있는 경우(예를 들어[\w]), 닫는 괄호가 더 이상 문자 클래스를 종료하는 것으로 표시되지 않았습니다.

  • 인수에 a가 포함된 하위 선택이 포함된 집계 함수의 구문 분석 문제 수정발신집계 함수 외부의 CTE에 대한 참조(Tom Lane)§

    이러한 CTE 참조는 집계의 의미 수준을 결정할 때 외부 수준 열 참조처럼 작동해야 합니다. 하지만 설명되지 않아 모호한 계획자 또는 실행자 오류가 발생했습니다.

  • 수정relid에 대한 관계 항목이 없습니다SubPlan 비용을 추정하는 동안 코너 케이스의 오류(Richard Guo)§

  • btree 인덱스 정리무지개 토토 잘못된 주장 제거(Peter Geoghegan)§

  • 여러 스캔 조건을 사용하는 GIN 인덱스 스캔에서 발생할 수 있는 무한 루프 수정(Tom Lane)§

    GIN은 일치하지 않는 항목을 거부할 수 있지만 관련 항목을 검색하는 데 유용하지 않은 검색 조건을 처리할 수 있습니다. 예를 들어 atsquery절 like!term. 그러나 그러한 조건은 스캔 조건 배열무지개 토토 첫 번째가 되어서는 안 됩니다. 코드는 모든 경우에 이러한 조건과 일반 조건이 혼합된 쿼리가 쿼리에 제공된 조건의 순서에 따라 작동할지 여부를 확인하지 못했습니다.

  • GIN 색인 스캔이 취소될 수 있는지 확인하세요(Tom Lane)§

    일부 코드 경로는 인터럽트를 확인하지 않고 오랫동안 실행될 수 있었습니다.

  • BRIN 자동 요약이 필요한 색인 표현식에 대한 스냅샷을 제공하는지 확인하세요(Álvaro Herrera)§ §

    이전에는 이러한 색인에 대한 자동 요약이 실패하고 자리 표시자 색인 튜플이 남겨져 시간이 지남에 따라 색인이 부풀어 올랐습니다.

  • 테이블에 2에 가까운 값이 포함될 때 BRIN 인덱스 스캔에서 정수 오버플로 위험 수정32페이지 (수닐 S)§

    이러한 감독으로 인해 무한 루프가 발생하거나 불필요한 테이블 페이지가 스캔될 수 있습니다.

  • JIT 생성 튜플 변형 코드에서 저장된 값의 잘못된 0 확장 수정(David Rowley)§

    JIT를 사용하지 않는 경우 해당 코드는 0 확장이 아닌 부호 확장을 수행하여 작은 정수 데이터 유형의 다른 Datum 표현으로 이어집니다. 이러한 불일치는 대부분의 경우 가려졌지만 다음과 같은 결과를 초래하는 것으로 알려져 있습니다.메모 테이블 항목을 찾을 수 없습니다.Memoize 계획 노드를 사용할 때 오류가 발생하며 다른 증상이 있을 수 있습니다.

  • TID 스캔 및 TID 범위 스캔 계획 노드에 대한 누락된 EvalPlanQual 재검사 추가(Sophie Alpert, David Rowley)§ §

    이 누락으로 인해 조건을 다시 확인할 수 없게 되었습니다.ctid동시 업데이트 상황무지개 토토 선택한 계획 유형에 따라 업데이트 동작이 달라집니다.

  • EPQ를 위해 준비된 대체 로컬 조인 계획이 없는 외부 또는 사용자 정의 조인의 EvalPlanQual 처리 수정(사와다 마사히코, 후지타 에츠로)§

    이러한 경우 외부 또는 사용자 정의 액세스 방법을 정상적으로 호출해야 하지만 그런 일이 발생하지 않아 일반적으로 충돌이 발생합니다.

  • 이동하는 동안 해시 파티션 제약 조건이 중복되지 않도록 하세요.동시에 분리(리 하이양)§

    테이블 분리 파티션을 동시에 변경이제 분리된 파티션에 파티션 제약 조건의 복사본을 추가하기 위해 작성되었습니다. 이는 부분적으로 비동시성으로 인해 잘못 안내되었습니다.분리그렇지 않습니다. 그러나 대부분 해시 파티셔닝의 경우 제약 조건 표현식에 상위 테이블의 OID에 대한 참조가 포함되어 있기 때문입니다. 이로 인해 덤프/복원 중에 문제가 발생하거나 이후 상위 테이블이 삭제되는 경우분리. v19 이상무지개 토토는 더 이상 복사된 제약 조건을 전혀 생성하지 않습니다. 릴리스된 분기무지개 토토는 예상치 못한 결과가 발생할 위험을 최소화하려면 해시 파티셔닝을 위한 경우에만 복사된 제약 조건 추가를 건너뛰세요.

  • 파티션 키무지개 토토 생성된 열을 허용하지 않음(Jian He, Ashutosh Bapat)§

    이것은 이미 허용되지 않았지만 검사무지개 토토 열 참조가 전체 행 참조에 암시되어 있는 경우와 같은 일부 경우가 누락되었습니다.

  • 다음에서 생성된 열을 허용하지 않음복사...무지개 토토...어디무지개 토토절(Peter Eisentraut, Jian He)§

    이전에는 생성된 열이 해당 지점에서 아직 계산되지 않았기 때문에 이러한 열을 참조하려고 시도하면 잘못된 동작이나 모호한 오류 메시지가 발생했습니다.어디필터링이 완료되었습니다.

  • 통계 개체에 대한 가시성 검사 수정pg_temp(노아 미쉬)§

    임시 스키마에 있는 통계 개체는 스키마 한정 없이 이름을 지정할 수 없지만pg_statistics_obj_is_visible()그 메모를 놓쳐서 돌아올 수 있었습니다상관없이. 차례로 다음과 같은 함수는pg_describe_object()예상대로 개체 이름을 스키마 한정하지 못할 수 있습니다.

  • 해시된 하위 계획의 메모리 누수 수정(Haiyang Li)§

    해싱 튜플에 사용되는 해시 함수에 의해 소비되는 모든 메모리는 쿼리 수명 메모리 누수를 구성합니다. 발생할 수 있는 한 가지 방법은 해시되는 값에 토스트 해제가 필요한 경우입니다.

  • 누락된 복제본 신원 확인 추가병합그리고충돌 시 삽입... 업데이트 수행(허우 지지에)§ §

    만약병합업데이트 또는 삭제 작업이 필요할 수 있으며 대상 테이블은 업데이트 또는 삭제를 게시합니다.복제본 ID정의되었습니다. 이를 요구하지 않으면 복제가 자동으로 중단될 수 있습니다. 마찬가지로,삽입그리고업데이트옵션은 필수입니다복제본 ID대상 테이블이 삽입 또는 업데이트를 게시하는 경우.

  • 중 교착상태 방지구독 취소게시자가 구독자와 동일한 서버에 있는 경우(Dilip Kumar)§

  • 복제 지연에 대한 잘못된 보고 수정pg_stat_replicationview (후지이 마사오)§

    대기 서버의 재생 LSN이 발전을 멈춘 경우,write_lag그리고flush_lag열은 결국 업데이트를 중단할 것입니다.

  • 잘못된 내용에 대한 중복 로그 메시지 방지기본_슬롯_이름설정(후지이 마사오)§

  • 복제 슬롯의 상태를 디스크에 쓰지 못한 후 완료되지 않은 슬롯 상태 파일 제거(Michael Paquier)§

    이전에는 디스크 공간 부족과 같은 오류로 인해 임시 계정이 종료되었습니다.state.tmp파일이 뒤에 있습니다. 이는 상태를 작성하려는 모든 후속 시도를 차단하고 정리를 위해 수동 개입이 필요하기 때문에 문제가 됩니다.

  • 스트리밍무지개 토토 아카이브 WAL 소스로 전환할 때 원치 않는 WAL 수신기 종료 방지(Xuneng Zhou)§

    타임라인이 변경되는 동안 대기 서버의 WAL 수신기는 새로운 WAL 스트리밍 시작 지점을 기다리면서 활성 상태를 유지해야 합니다. 대신 반복적으로 종료되었다가 즉시 다시 시작되어 상태 모니터링 코드를 혼동시킬 수 있었습니다.

  • 일반 테이블과 임시 테이블 간의 파일 번호 충돌로 인한 논리적 복제 실패 방지(Vignesh C)§

    이 확률이 낮은 문제는 다음과 같은 일시적인 오류로 나타납니다.테이블스페이스에 대한 예기치 않은 중복X, relfilenodeY. 기여/autoprewarm또한 영향을 받았습니다. 수정의 부작용은 SQL 함수입니다.pg_filenode_relation()이제 임시 테이블을 무시합니다.

  • 단일 사용자 모드무지개 토토 복제 슬롯을 해제하려고 할 때 어설션 실패 방지(구로다 하야토)§

  • 사용자에게 Windows 관리자 권한이 있는지 확인하는 데 실패했다는 메시지가 잘못 인쇄되는 문제 수정(Bryan Green)§

    이 코드는 충돌했거나 적어도 쓰레기를 인쇄했을 것입니다. 그러나 그러한 사례는 보고되지 않았으며 이는 이러한 시스템 호출이 실패하는 경우가 극히 드물다는 것을 나타냅니다.

  • 기존 세마포 세트와 충돌이 있을 때 macOS 및 BSD 플랫폼무지개 토토 시작 실패 방지(Tom Lane)§

    기존 세트에 요청한 것보다 적은 수의 세마포가 있는 경우 이러한 플랫폼이 반환됩니다.EINVAL아님EEXIST코드가 예상한 대로 데이터베이스 시작에 실패했습니다.

  • 64비트 Windows의 디버그 빌드에서 잘못된 메모리 컨텍스트 검사 경고 수정(David Rowley)§

  • 올바른 처리고유 그룹별PL/pgSQL 할당 문무지개 토토(Tom Lane)§

    파서가 기록에 실패했습니다.독특이 맥락무지개 토토 옵션을 사용하면 명령이 일반 것처럼 작동합니다.그룹별.

  • PL/Python 내무지개 토토 SQL 오류를 처리할 때 메모리 누수 방지(Tom Lane)§

    이전 마이너 릴리스에서 발생한 세션 수명 메모리 누수를 수정합니다.

  • 수정libpq's 높은 비트가 설정된 문자의 추적 출력(Ran Benita)§

    플랫폼무지개 토토문자서명된 것으로 간주되어 출력이 보기 흉하게 포함됨\xffffff장식.

  • 수정libpq의 GSSAPI 로직 내무지개 토토 Windows의 소켓 관련 오류 처리(Ning Wu, Tom Lane)§

    GSSAPI를 사용하여 전송된 데이터를 암호화/복호화하는 코드는 Windows가 다른 플랫폼과 다르게 보고하기 때문에 연결 소켓의 오류 조건을 올바르게 인식하지 못했습니다. 이로 인해 Windows무지개 토토 그러한 연결을 만드는 데 실패했습니다.

  • pg_dump, 구독 및 이벤트 트리거에 대한 보안 레이블 덤프(Jian He, Fujii Masao)§

    이러한 유형의 개체에 대한 라벨은 이전에 누락되었습니다.

  • 수정pg_dump의 기본 ACL 및 외래 키 제약 조건 정렬(Kirill Reshke, Álvaro Herrera)§ § §

    다른 개체 유형에 대해 이미 수행된 것처럼 이러한 데이터베이스 개체 유형의 일관된 순서를 확인하십시오.

  • pg_dump, 적절한 종속성을 사용하여 별도로 덤프된 도메인 제약 조건에 대한 주석에 라벨을 지정합니다(Noah Misch)§

    이 오류는 병렬화로 이어질 수 있습니다.pg_restore제약조건 자체가 복원되기 전에 주석을 작성하려고 시도 중입니다.

  • pg_restore, 복원되지 않는 발행물 및 구독에 대한 주석 및 보안 레이블을 건너뜁니다(Jian He, Fujii Masao)§ §

    발산하지 않음댓글또는보안 라벨다음 경우에 이 개체에 대한 명령--출판 없음또는--구독 없음지정되었습니다.

  • 데이터 압축 로직의 여러 오류 수정pg_dump그리고pg_restore(다니엘 구스타프손, 톰 레인)§

    오류 검사가 여러 곳무지개 토토 누락되었거나 부정확했으며 빅엔디안 하드웨어무지개 토토 나타나는 이식성 문제도 있었습니다. 이 코드는 디렉터리 형식 덤프 내무지개 토토 압축된 TOC 파일을 읽는 데만 사용되기 때문에 이러한 문제가 누락되었습니다.pg_dump절대 그런 덤프를 생성하지 않습니다. 이 사례는 사후에 TOC 파일을 수동으로 압축해야만 접근할 수 있습니다. 이는 지원되는 작업이지만 매우 드문 일입니다.

  • 수정pgbench다음과 같은 경우 오류가 완전히 발생합니다.복사작업이 시작되었습니다(Anthonin Bonnefoy)§

    pgbench이 경우를 지원할 의도는 없지만 이전에는 무한 루프에 빠졌습니다.

  • 수정pgbench여러 오류 보고(나가타 유고)§

    두 개가 연속되는 경우PQgetResult호출 둘 다 실패함,pgbench잘못된 오류 메시지를 보고할 수 있습니다.

  • 다음을 확인하세요contrib/pg_buffercache기능이 취소될 수 있습니다 (Satyanarayana Narlapuram, Yuhang Qiu)§

    일부 코드 경로는 인터럽트를 확인하지 않고 오랫동안 실행될 수 있었습니다.

  • 수정contrib/pg_prewarm의 인덱스에 대한 권한 검사(Ayush Vatsa, Nathan Bossart)§

    pg_prewarm()요구선택미리 따뜻해지는 관계에 대한 특권. 그러나 인덱스에는 자체 SQL 권한이 없기 때문에 수퍼유저가 아닌 사용자는 인덱스를 미리 준비할 수 없게 되었습니다. 대신 다음을 확인하세요.선택인덱스 테이블에 대한 권한.

  • 만들다contrib/pgstattuple비어 있거나 잘못된 색인 페이지에 대해 더욱 강력함(Nitin Motiani)§

    모두 0인 페이지를 여유 공간으로 계산하고 페이지의 특수 공간 크기 검사에 따라 유효하지 않은 페이지를 무시합니다. btree 인덱스에 대한 코드는 이미 모두 0인 페이지를 사용 가능한 것으로 간주했지만 해시 및 요지 코드무지개 토토는 오류가 발생하여 사용자 친화적이지 않은 것으로 나타났습니다. 마찬가지로 오류를 발생시키는 대신 손상된 페이지를 무시하는 데 세 가지 사례 모두 동의하도록 만드세요.

  • Clang을 만족시키기 위해 읽기 및 쓰기 장벽 매크로를 강화합니다(Thomas Munro)§

    우리는 그렇게 생각했습니다__atomic_thread_fence()는 C 컴파일러가 메모리 액세스 순서를 변경하는 것을 방지하는 데 충분한 장벽이지만 Clang의 경우에는 그렇지 않아 최소한 RISC-V, MIPS 및 LoongArch 시스템에 대해 잘못된 코드를 생성할 수 있는 것으로 보입니다. 이 문제를 해결하려면 명시적인 컴파일러 장벽을 추가하세요.

  • LLVM 버전 21 이상으로 빌드 수정(Holger Hoffstätte)§

  • NLS 구축을 지원하도록 PGXS 구축 인프라 수정확장용 파일(마츠무라 료)§

수정사항 제출

문서에 올바르지 않은 내용이 있으면 일치하지 않습니다. 특정 기능에 대한 경험이 있거나 추가 설명이 필요한 경우 이용해주세요이 양식문서 문제를 보고합니다.