이 문서는 지원되지 않는 버전의 PostgreSQL을위한 것입니다.
당신은에 대해 같은 페이지를 보려고 할 수 토토 커뮤니티현재버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

E.10. 릴리스 11.13

출시 날짜 :2021-08-12

이 릴리스에는 11.12의 다양한 수정 사항이 포함되어 토토 커뮤니티. Major Release 11의 새로운 기능에 대한 정보는 참조토토 사이트 PostgreSQL : 문서 : 11 : E.23. 릴리스 11.

E.10.1. 버전 11.13으로의 마이그레이션

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

그러나 11.11 이전 버전에서 업그레이드하는 경우 참조PostgreSQL : 문서 : 11 : E.12. 토토 결과 11.11.

E.10.2. 변화

  • 투영 단계 (Tom Lane)의 반복적 인 적용의 잘못 계획 수정

    플래너는 두 개의 투사 경로가 서로 쌓인 경우 잘못된 계획을 만들 수 토토 커뮤니티. 그 상황을 트리거하는 유일한 방법은 병렬 정렬 작업과 관련이 있지만 다른 사례가있을 수 토토 커뮤니티. 결과는 충돌 또는 잘못된 쿼리 결과입니다. 서버 메모리 내용의 공개도 가능합니다. (CVE-2021-3677)

  • SSL 재협상을 더 완전히 허용하지 않습니다 (Michael Paquier)

    SSL 재협상은 한동안 비활성화되었지만 서버는 여전히 클라이언트 개시 재협상 요청과 협력 할 것입니다. 악의적으로 제작 된 재협상 요청은 서버 충돌을 초래할 수 토토 커뮤니티 (OpenSSL 문제 CVE-2021-3449 참조). 1.1.0H 및 최신 인 OpenSSL 버전에서 기능을 모두 비활성화합니다.

  • 이후 포털 레벨 스냅 샷 복원커밋또는롤백절차 내 (Tom Lane)

    이 변경 사항은 즉시 구운 값을 가져 오려는 시도가를 수정합니다.커밋/롤백같은 오류로 실패합니다알려진 스냅 샷 없음또는토스트 값에 대한 누락 된 청크 번호 0.

    일부 확장자는 모든 포털 외부에서 SQL 코드를 실행하려고 시도 할 수 있습니다. 그들은 그렇게하기 전에 외부 스냅 샷이 존재하는지 확인해야합니다. 이전에는 스냅 샷을 제공하지 않거나 작동하지 않을 수도 있습니다. 이제 일관되게 실패합니다외부 스냅 샷 또는 포털 없이는 SQL을 실행할 수 없습니다.

  • 비 안정적인 쿼리 (Tom Lane)를 읽는 커서의 출력을 지속 할 때 오작동을 피하십시오

    이전에, 우리는 항상 전체 쿼리 결과를 되 감고 다시 읽었으므로 이전 실행과 다른 결과를 얻을 수 있으므로 나중에 큰 혼란을 초래할 수 있습니다. 스크롤이없는 커서의 경우 쿼리 출력의 아직 읽지 않은 부분 만 저장 하여이 문제를 해결할 수 있습니다. 스크롤 커서를 백업 할 수 없기 때문에 충분합니다. 스크롤 옵션이있는 커서는 위험에 처해 있지만 이미 비 안정적인 쿼리와 함께 사용하기에 안전하지 않은 옵션으로 기록되어 있습니다. 그 문서 경고를 더 강력하게 만드십시오.

    또한 a 암시 적 커서에 대한 스크롤 모드도 강제 없습니다.pl/pgsql쿼리 루프, 프로세서 내 커밋 중에 그러한 커서를 지속시킬 때 이러한 유형의 문제를 피하기 위해

  • 거부SELECT SELECT ... 업데이트 용 세트 (())를 그룹화하여 그룹(Tom Lane)

    이것은 허용되지 않아야합니다.업데이트평범한그룹 by허용되지는 않았지만 그 테스트는 빈 그룹화 세트를 올바르게 처리하지 못했습니다. 최종 결과는 집행자의 무효 인 포인터 인 Dereference가 될 것입니다.

  • 쿼리가있는 경우를 거부합니다with그냥 다시 쓰기Notify(Tom Lane)

    그러한 사례는 이전에 추락했습니다.

  • in숫자곱셈, 소수점 (Dean Rasheed) 이후 16383 자리 이상을 가질 경우 실패하지 않고 결과를 반올림합니다.

  • 제기시 코너 케이스 오류 및 정밀도 손실 수정숫자매우 큰 힘 (Dean Rasheed)

  • Division-by-Zero 실패 수정to_char ()witheeee형식 및 A숫자입력 값 10^(-1001) (Dean Rasheed)

  • 수정pg_size_pretty (bigint)긍정적 인 것들을 반올림하는 방식과 일관되게 음수 값을 반올림합니다 (그리고 일관되게숫자버전) (Dean Rasheed, David Rowley)

  • 만들기PG_FILENODE_RELATION (0, 0)실패하기보다는 NULL 리턴 (Justin Pryzby)

  • 만들기연장멤버 객체를 추가하거나 제거 할 때 확장자 잠그십시오 (Tom Lane)

    이전 코딩 허용변경 확장 추가/드롭동시에 발생하려면드롭 확장, 충돌 또는 부패한 카탈로그 항목으로 이어지는 것.

  • 수정구독빈 슬롯 이름 (Japin Li)을 거부하려면

  • 파티션 된 테이블의 트리거를 새로운 파티션으로 복제 할 때 활성화 된 상태가 복사되어 있는지 확인하십시오 (Álvaro Herrera)

  • 쿼리의 별칭 충돌을 피하십시오12625_12665(Tom Lane, Bharath Rupireddy)

    이 명령은 특정 이름을 가진 열이 포함 된 구체화 된 뷰에서 실패했습니다.MVandNewData.

  • 수정거래 준비상충되는 세션-제외 및 거래 리포 스팬 잠금 장치 (Tom Lane)를 올바르게 확인하려면

    동일한 자문 잠금 ID 값에 대한 세션 리포 스팬 및 트랜잭션 리포 스팬 잠금 장치가 있으면 거래를 준비 할 수 없습니다. 이 제한은 완전히 점검되지 않았으며, 이는 동안 공황으로 이어질 수 토토 커뮤니티.거래 준비.

  • 의 오작동 수정삭제 소유대상 역할이 RLS 정책 (Tom Lane)에 두 번 이상 나열된 경우

  • 동안 RLS 정책에서 역할을 제거 할 때 불필요한 오류 테스트 건너 뛰기삭제 소유(Tom Lane)

    특히, 사용하기 위해 슈퍼업자가 필요한 경우삭제 소유.

  • 저장하지 마십시오빠른 기본값외국 테이블에 열을 추가 할 때 (Andrew Dunstan)

    이러한 테이블에는 로컬 힙 스토리지가 존재하지 않기 때문에 빠른 기본값은 쓸모가 없지만 후속 작업이 혼란 스러웠습니다. 그러한 카탈로그 항목의 생성을 억제하는 것 외에도Alter Table명령, 하류 코드를 잘못 참석할 때 대처하도록 조정합니다.

  • 인덱스 상태 플래그가 트랜잭션으로 업데이트되도록 허용 (Michael Paquier, Andrey Lepikhov)

    이것은 실제로 불변이 아닌 지수 곤경을 처리 할 때 실패를 피합니다. 그것이 뒷받침되는 사례로 간주되지는 않지만, 여기서 비 트랜잭션 업데이트를 사용하는 원래 이유는 오랫동안 사라 졌기 때문에 우리는 그것을 바꿀 수 있습니다.

  • 계획 캐시 항목을 손상시키지 않으면도메인 생성또는Alter Domain캐시 된 계획 (Tom Lane)에 나타납니다.

  • Walsenders가 최신 복제 명령을 표시합니다pg_stat_activity(Tom Lane)

    이전에 Walsender는 최신 SQL 명령을 표시 할 것이며, 대신 일부 복제 작업을 수행하고 있다면 혼란 스러웠습니다. 이제 SQL 명령과 동일한 기반에 복제 프로토콜 명령이 표시됩니다.

  • makepg_settings.pending_restart관련 항목이에 따라 참으로 표시됩니다.postgresql.conf제거되었습니다 (Álvaro Herrera)

    pending_restartPostmaster 재시작없이 변경할 수없는 항목이 수정되었지만 항목이 완전히 제거 된 곳이 아닌 경우를 올바르게 보여주었습니다..

  • 새로운 대기의 코너 케이스 실패 수정 새로운 기본 (Dilip Kumar, Robert Haas)

    좁은 조건에서 대기는 잘못된 WAL 타임 라인을 따르려고 노력할 수 토토 커뮤니티.

  • 트랜잭션 중단 레코드의 WAL 재생이 파일 자르기 (Fujii Masao)를 유발할 때 최소 복구 지점 업데이트

    파일 잘림은 돌이킬 수 없으므로 더 이상 해당 레코드보다 일찍 회복을 중단하는 것이 안전하지 않습니다. 거래 커밋의 해당 사례는 몇 년 전에 고정되었지만 이것은 간과되었습니다.

  • Walreceivers에서 오류 후 카탈로그 조회를 시도하지 마십시오 (Masahiko Sawada, Bharath Rupireddy)

  • WAL이 도착하기를 기다리는 동안 대기 서버의 시작 프로세스가 셧다운 신호에 즉시 응답 할 수 있는지 확인하십시오 (Fujii Masao, Soumyadeep Chakraborty)

  • Transaction Commit Group (Amit Kapila)의 구성원이되지 않은 후 공유 상태를 정확하게 지우십시오.

    17214_17333

  • 다른 프로세스에서 동시 쓰기에 직면하여 잘못된 RelMapper 데이터를 읽지 않도록 잠금 추가 (Heikki Linnakangas)

  • 복제 프로토콜 위반 수표 개선 (Tom Lane)

    논리적 복제 작업자는 자주 사용하여 사용하여 무효 또는 외부 복제 명령에 의해 유발 될 수있는 사례를 확인하는 것을 자주 사용했습니다. 이것은 현명하지 않은 것처럼 보이므로 이러한 테스트를 정기 오류 확인으로 홍보합니다.

  • 다수의 논리적 복제 작업자가 같은 테이블 (Peter Smith, Haiying Tang)을 자르려고 할 때 교착 상태를 고정합니다.

  • 투기 삽입의 논리적 디코딩에서 오류 케이스 및 메모리 누출 수정 (Dilip Kumar)

  • 오류 후 잘못된 레코드 유형 해시 테이블 항목을 남기지 마십시오 (Sait Talha Nisanci)

    이것은 나중에 충돌 또는 메모리 누출로 이어질 수 있습니다.

  • 일부 오류 사례에서의 수정 계획 캐시 참조 누출.테이블 생성 ... execute(Tom Lane)

  • 병렬 작업자 (Thomas Munro)에서 튜플 디스크립터를 공유하기위한 코드의 레이스 조건 수정

    올바른 타이밍이 주어지면 충돌이 발생할 수 토토 커뮤니티.

  • 배경 노동자들을 출시 할 때 가능한 레이스 조건 수정 (Tom Lane)

    이것은 인텔 하드웨어에서 관찰 가능한 버그를 수정하지는 않지만 메모리 주문 규칙이 약한 머신에 문제가있을 수 있습니다.

  • 정렬 코드 (Ronan Dunklau)에서 잠재 충돌 수정

    하나의 코드 경로는 널 포인터를 제거하려고 시도 할 수 토토 커뮤니티. 핵심 서버의 정렬 사용에서는이 사례가 도달 할 수없는 것으로 보이지만 확장에 의해 트리거 될 수 토토 커뮤니티.

  • SP-Gist 인덱스 삽입 (Tom Lane)의 무한 루프 방지

    열이 포함 된 경우 잎 지수 튜플이 페이지에 맞지 않도록 충분한 공간을 차지하는 경우 Text_ops 연산자 클래스는 튜플을 맞추려고 무한 루프에 들어갑니다. Pre-V11 버전에는 열이 포함되어 있지 않지만 운영자 클래스의 버그에 대한 좋은 방어처럼 보이기 때문에이 방지 방지 수정 방지 수정 사항을 다시 배치합니다..

  • 쿼리 취소 요청으로 SP-Gist 인덱스 삽입을 종료 할 수 있는지 확인하십시오 (Tom Lane, Álvaro Herrera)

  • 원인이 될 수있는 비 초기의 변수 버그 수정pl/pgsqlin조항 지정엄격한, 그렇지 않더라도 (Tom Lane)

  • LIBPQ의 인쇄 기능 (Tom Lane)에서 메모리가없는 실패에 대한 프로세스를 중단하지 마십시오.

  • inECPG, 허용숫자valueint_min(일반적으로 -2147483648) 정수 (John Naylor)로 변환 될

  • inPSQL및 기타 클라이언트 프로그램은 잘못된 인코딩 된 데이터 (Tom Lane)를 다룰 때 문자열의 끝을 넘어서 피하십시오

    문자열 끝 근처의 잘못 인코딩 된 멀티 바이트 문자는 다음 메모리에서 발생하는 일에 따라 다양한 처리 루프가 문자열의 종료 NUL을지나 프로그램 충돌에 이르기까지 다양한 처리 루프를 실행할 수 있습니다. 이 특정 사례는 흥미로운 보안 결과가없는 것으로 보이지만 CVE-2006-2313을 연상시킵니다.

  • 수정pg_dump지원 상태가 부모 트리거 상태와 다른 파티션 된 테이블의 트리거를 올바르게 처리하려면 (Justin Pryzby, Álvaro Herrera)

  • 피하기헤더에서 유효하지 않은 생성 날짜실행할 때 관찰 된 경고PG_RESTORE다른 시간대 (Tom Lane)에서 생성 된 아카이브 파일에서

  • makepg_upgrade이전 설치의 이월OldestXidValue (Bertrand Drouvot)

    이전에 새 설치의OldestXid는 즉각적인 항-raparound autovacuuming을 강요하기에 충분히 오래된 값으로 설정되었습니다. 그것은 성능 관점에서 바람직하지 않습니다. 더 나쁜 것은 큰 값을 사용하는 설치autovacuum_freeze_max_age업그레이드 직후에 원치 않는 강제 종료를 겪을 수 토토 커뮤니티.

  • Extendpg_upgrade업그레이드 해야하는 확장에 대해 감지하고 경고하려면 (Bruce Momjian)

    스크립트 파일이 이제 포함되어 토토 커뮤니티.Alter Extension Update새 설치에서 기본값으로 간주되는 버전까지 확장자를 가져 오는 데 필요한 명령.

  • 전환시 문제를 피하십시오23133_23148압축 및 비 압축 월 스토리지 사이 (Michael Paquier)

  • inContrib/Postgres_FDW, 오류 후 카탈로그 조회를 시도하지 마십시오 (Tom Lane)

    이것은 일반적으로 작동하지만 오류가 카탈로그에 액세스하지 못한 오류 일 수 있기 때문에 그다지 안전하지 않습니다. 수정의 부작용은 데이터 변환 오류에 대한 메시지가 이제 외국 테이블 또는 열의 실제 기본 이름이 아닌 쿼리 테이블 및 열 별칭 (사용 된 경우)을 언급한다는 것입니다.

  • 격리 테스트 인프라 개선 (Tom Lane, Michael Paquier)

    예상 완료 순서를 표시하기 위해 격리 테스트 단계에 주석을 달 수 있도록합니다. 이를 통해 레이스 조건을 막기 위해 이전에 사용한 (완전히 성공적으로 성공적이지는 않음) 지연없이 다른 비율 테스트 사례로부터 안정적인 결과를 얻을 수 있습니다. 고립 된 식별자를 격리 테스트 세션/스텝 이름으로 허용합니다 (이전에는 모든 이름이 두 번 인용해야 함). 분리 테스트에서 사용하지 않은 단계를 감지하고 경고합니다. 쿼리 표시를 개선하면 격리 테스트가 있습니다. 격리 테스터 제거드라이 런모드. 분리기 자체에서 메모리 누출을 제거하십시오.

  • 캐시 클로버 테스트의 오버 헤드 감소 (Tom Lane)

  • 고정pl/python의 회귀 테스트 Python 3.10 (Honza Horak)

  • 만들기printf ( "%s", null)print(null)충돌 대신 (Tom Lane)

    이것은 코너 케이스에서 서버 견고성을 향상시켜야하며, 우리의 동기화printf공통 라이브러리를 사용한 구현.

  • 포인트-타임 복구가 a에서 멈출 때 잘못된 로그 메시지 수정롤백 준비레코드 (Simon Riggs)

  • 개선Alter Table의 잘못된 관계 오류에 대한 메시지 (Kyotaro Horiguchi)

  • 참조 오류 메시지를 명확히합니다비 음성값 (Bharath Rupireddy)

  • 수정구성더 이상 별도가없는 OpenLDap 2.5에서 작업하려면libldap_r도서관 (Adrian Ho, Tom Lane)

    없는 경우libldap_r라이브러리, 이제 우리는 이제 조용히 가정합니다libldapis trook-safe.

  • 새로운 대상 추가World-BinInstall-World-bin(Andrew Dunstan)

    이들은와 동일합니다.Worldand설치 세계문서를 빌드하거나 설치하지 않는 한 각각.

  • 탭 테스트에 대한 규칙 만들기 (provace_installcheck) PGXS 사용법 (Andrew Dunstan)

  • 다가오는 LLVM API 변경을 준비하도록 JIT 코드 조정 (Thomas Munro, Andres Freund)

    LLVM 13은 이전 JIT 컴파일러의 충돌을 일으키는 양립 할 수없는 API 변경을 만들었습니다.

  • GSSAPI 라이브러리에 의해 반환 된 문자열이 무효가 종결되었다고 가정하지 마십시오 (Tom Lane)

    GSSAPI 사양은 문자열 포인터 및 길이를 제공합니다. 실제로 문자열 이후 다음 바이트는 일반적으로 0이므로 이전 코딩이 실제로 실패하지 않았다는 것 같습니다. 그러나 우리는 주소 소송 불만에 대한 보고서가 있습니다.

  • MSVC (Michael Paquier)에서 GSSAPI를 사용하여 건물 활성화

    현대 Kerberos 빌드와의 다양한 비 호환성 수정.

  • MSVC 빌드에서 포함-with-pgport|PG_CONFIG, 지정된 경우 (Andrew Dunstan)