릴리스 노트

토토 꽁 머니

E.8. 릴리스 13.13

출시 날짜 :2023-11-09

이 릴리스에는 13.12의 다양한 수정 사항이 포함되어 토토 꽁 머니. Major Release 13의 새로운 기능에 대한 정보는 참조섹션 E.21.

E.8.1. 버전 13.13으로의 마이그레이션

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

그러나 특정 유형의 인덱스로 이어질 수있는 몇 가지 실수가 발견되어 잘못된 검색 결과를 얻을 수 토토 꽁 머니. 권장됩니다.Reindex이 업데이트를 설치 한 후 잠재적으로 영향을받는 인덱스. 아래 네 번째 및 다섯 번째 ChangeLog 항목을 참조하십시오.

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

E.8.2. 변화

  • 알려지지 않은 유형의 인수 처리 수정별도의 "Any"집계 함수 (Tom Lane)§

    이 오류가 A로 이어졌습니다.텍스트-유형 값은로 해석됩니다알 수없는7133_7255텍스트value.

    토토 꽁 머니이 문제를보고 한 Jingzhou Fu 프로젝트 감사합니다. (CVE-2023-5868)

  • 새로운 배열 치수를 계산하는 동안 정수 오버플로 감지 (Tom Lane)§

    현재 배열 경계 외부에있는 배열 위트 스크립트에 새 요소를 할당 할 때, 감지되지 않은 정수 오버플로가 가장자리 케이스에서 발생할 수 토토 꽁 머니. 임의의 코드 실행에 잠재적으로 악용 될 수있는 메모리 스톰프가 가능하며 서버 메모리의 공개도 가능합니다.

    토토 꽁 머니프로젝트이 문제를보고 한 Pedro Gallegos 감사합니다. (CVE-2023-5869)

  • 방지pg_signal_backend신호 배경 근로자 및 오토바 쿠움 프로세스의 역할 (Noah Misch, Jelte Fennema-Nio)§ §

    문서에pg_signal_backendSuperUser 소유 프로세스에 신호를 발행 할 수 없습니다. 그러나 이러한 배경 프로세스는 0의 역할 OID를 광고하기 때문에 신호를 보낼 수있었습니다.

    또한is_superuser매개 변수는 이러한 프로세스에서 올바르게 설정됩니다. 그 감독에 대해 구체적인 보안 결과는 알려져 있지 않지만 일부 확장에는 중요 할 수 토토 꽁 머니.

    토토 꽁 머니프로젝트 감사합니다 Hemanth Sandrana와 Mahendrakar Srinivasarao는이 문제를보고했습니다. (CVE-2023-5870)

  • Gist Index 빌드에서 재귀 페이지 분할 중 오해 수정 (Heikki Linnakangas)§

    페이지 다운 링크의 위치가 잘못 추적 된 사례를 수정하고 잘못된 일을 조용히 수행하지 않고 그러한 상황에서 복구 할 수 있도록 일부 논리를 소개합니다. 이 오류로 인해 후속 인덱스 검색으로 인해 잘못된 답변이 발생할 수 토토 꽁 머니.

  • BTREE INDEX 항목의 복제 방지간격열 (Noah Misch)§

    간격구별 가능하지만 동일하게 비교하는 값24 : 00 : 00and1 일. 이것은 btree de-duplication의 가정을 깨뜨립니다.간격열은 복제 제거에서 제외되어야합니다. 이 감독은 인덱스 전용 스캔으로 인해 잘못된 결과를 초래할 수 토토 꽁 머니.Amcheck거의 모든 인덱스에 대한 오류를보고합니다. 사용자는 BTREE 색인을 다시 시작해야합니다.간격

  • 다중 파티션 키 (David Rowley)를 갖춘 해시 파티셔닝 테이블에 대한 파티션 단계 생성 및 런타임 파티션 정리 수정§ §

    일부 경우is null파티션 키 중 하나의 조건은 충돌이 발생할 수 토토 꽁 머니.

  • ScalarArrayopexpr 조항의 Btree Mark/복원 처리 (Peter Geoghegan)의 Edge Case를 고정합니다.§

    indexscan을 이전에 표시된 위치로 복원 할 때, 스캔이 ScalarArrayopexpr의 일치 끝까지 정확히 발전 한 경우 코드는 필요한 설정 단계를 놓칠 수 있습니다 (즉,indexcol = any (array [])) 조항. 이로 인해 가져와야 할 일부 행이 누락 될 수 토토 꽁 머니.

  • 설정 퇴행 함수가 0 행 (Tom Lane)을 반복적으로 반환 할 때 쿼리 내 메모리 누출 수정§

  • 충돌하지 마십시오cursor_to_xmlschema ()비 데이터 리턴 포털 (Boyu Yang)에 적용됩니다.§

  • 의도 한 오류를 던지면pgrowlocks ()파티션 된 테이블 (David Rowley)에 적용됩니다§

    이전에, 포인트가 아닌 불만힙 만 지원됩니다올라갈 것입니다.

  • 다양한 SQL 기능 (Noah Misch)에서 유효하지 않은 인덱스를보다 깨끗하게 처리합니다.§

    if 오류보고pgstatIndex (), pgstatginindex (), pgstathashIndex ()또는pgstattuple ()는 유효하지 않은 인덱스에 적용됩니다. 만약에brin_desummarize_range (), brin_summarize_new_values ​​(), brin_summarize_range ()또는gin_clean_pending_list ()유효하지 않은 인덱스에 적용되며 디버그 레벨 메시지를보고하는 것 외에는 아무것도하지 않습니다. 이전에 이러한 기능은 지수를 처리하려고 시도했으며 실패한 것에 따라 이상한 방식으로 실패 할 수 있습니다색인 생성뒤에 남겨졌습니다.

  • 긴 입력으로 조기 메모리 할당을 피하십시오to_tsvector ()(Tom Lane)§

  • 건설 된 자체의 과도 할당 수정TSVECTORinTSVectorRecv ()(Denis Erokhin)§

    들어오는 벡터에 위치 데이터가 포함 된 경우 완성 된 됨의 이진 수신 함수 왼쪽 낭비 공간 (포지셔닝 데이터의 크기와 거의 같습니다)TSVECTOR. 극단적 인 경우 이것은로 이어질 수 토토 꽁 머니.최대 총 Lexeme 길이 초과방출시 길이 한계 아래에있는 벡터의 실패. 어쨌든 그것은 공간에서 낭비되는 공간으로 이어질 수 토토 꽁 머니.

  • 잘못된 코딩 수정gtsvector_picksplit ()(Alexander Lakhin)§

    이것은 GIST 인덱스에서 페이지 분할 결정이 좋지 않을 수 토토 꽁 머니TSVECTOR

  • 손상된 PGLZ 압축 데이터 검사 개선 (Flavien Guedez)§

  • 수정커밋 및 체인/롤백 및 체인미공개 savepoint (Liu Xiang, Tom Lane)가있을 때 올바르게 작동하려면§

    새로운 거래에 대한 현재 트랜잭션의 속성을 전파하는 대신 이전 트랜잭션의 속성을 전파했습니다.

  • 충돌을 피하십시오설명설명NULL 부팅 시간 값이 있습니다 (Xing Guo, Aleksander Alekseev, Tom Lane)§

    내장 매개 변수는이 설명에 적합하지만 확장자는 그러한 매개 변수를 정의 할 수 있습니다.

  • 떨어지는 동안 스냅 샷이 있는지 확인on Commit DropTemp Tables (Tom Lane)§

    이것은 임시 테이블의 카탈로그 항목에 토스트가 필요할 정도로 넓은 필드를 가지고 있다면 (예 : 매우 복잡한).check조건).

  • 방금 포장 된 아동 프로세스에서 셧다운 신호에 대한 부적절한 응답을 피하십시오System ()(Nathan Bossart)§ §

    이 수정 사항은 아동 과정이 쫓겨 난 경주 조건을 피합니다.System ()그러나 아직 의도 된 자식 프로그램을 실행하지는 않았지만 부모 서버 프로세스를위한 신호를 받고 행동 할 수 토토 꽁 머니. 그것은 중복 청소 작업이 수행되는 것으로 이어질 것입니다.

  • 찢어진 읽기에 대처PG_CONTROL프론트 엔드 프로그램 (Thomas Munro)§

    일부 파일 시스템에서 읽기PG_CONTROL서버가 동시에 해당 파일을 쓸 때 원자 조치가 아닐 수도 토토 꽁 머니. 이것은 나쁜 CRC를 통해 감지 할 수 토토 꽁 머니.

  • 찢어진 읽기를 피하십시오PG_CONTROL관련 SQL 함수 (Thomas Munro)§

    읽기 전에 적절한 잠금을 획득PG_CONTROL, 해당 파일의 일관된보기를 얻기 위해.

  • 백엔드 활동 크기를 계산할 때 정수 오버플로를 피하십시오. 스트링 어레이 (Jakub Wartak)§

    64 비트 머신에서 우리는 값을 허용합니다track_activity_query_size허용 된 연결 수를 곱하면 32 비트 오버플로를 유발할만큼 충분히 큽니다. 실제로 백 커드당 로컬 어레이를 할당하는 코드는 이것에 대해 부주의하고 배열을 잘못 할당했습니다.

  • |분석상속 테이블 (Heikki Linnakangas)§

    블록 레벨 카운터는 현재 관계 필드를 업데이트 할 때 동시에 0으로 재설정해야합니다.

  • 캐시의 종속성 추적Call진술, 필요할 때 다시 계획 (Tom Lane)§

    DDL 명령, 예를 들어 a에 인쇄 된 함수 교체와 같은Call인수, A를 다시 계획해야 할 필요성을 창출 할 수 토토 꽁 머니.CallPL/PGSQL에 의해 캐시되었습니다. 그것은 일어나지 않았으며, 오작동 또는와 같은 이상한 오류로 이어졌습니다.캐시 조회 실패.

  • 검사 할 때 둥지 깊이를 올바르게 추적레코드-유형의 외부 쿼리 레벨 (Richard Guo)§

    이 감독은 주장 실패, 핵심 덤프 또는로 이어질 수 있습니다.Bogus Varno오류.

  • 피하기레코드 유형이 등록되지 않았습니다복합 상수의 필드에 대한 참조를 포함하는 뷰를 포함 할 때의 실패 (Tom Lane)§

  • 오류 처리 버그 수정레코드타입 캐시 관리 (Thomas Munro)§

    잘못된 지점에서 발생하는 메모리 외 오류는 무한 루프로 이어지는 일관되지 않은 상태를 남길 수 토토 꽁 머니.

  • 오류 후 같은 세션에서 논리적 디코딩이 재조정 될 때 어설 션 실패 수정 (hou zhijie)§

  • Wal (Michael Paquier)을 읽는 동안 메모리 외 실패를 치명적으로 취급합니다.§

    이전에 이것은 가짜 데이터 조건으로 취급 될 것이며, 우리가 WAL의 종말에 도달했다는 결론으로 ​​이어질 것입니다.

  • 가짜 월드 레코드 길이 필드 (Thomas Munro, Michael Paquier)를 기반으로 메모리를 할당하려는 시도로 인한 가능한 복구 실패 수정§ §

  • 대기 모드 WAL 복구가 잘못된 페이지 헤더가 발견 될 때 오류를보고하는지 확인하십시오 (Yugo Nagata, Kyotaro Horiguchi)§

  • 논리 테이프 관리 (Ranier Vilela)에서 데이터 유형 크기 혼동 수정§

    정수 오버플로는 int보다 넓은 플랫폼에서 가능했지만 문제를 일으키기 위해 다중 테라 바이트 임시 파일이 필요합니다.

  • 의도하지 않은 Syslogger Process의 Stdin (Heikki Linnakangas)의 닫기를 피하십시오§

  • 계획 캐시를 피하십시오 캐시 분석 중에 흥미로운 처리를받지 못하는 유틸리티 문장의 재평가 (Tom Lane)§

    몇 사이클을 저장하는 것 외에도, 이는 스냅 샷을 설정하지 말아야 할 문에 대한 캐시 무효화 후를 방지합니다.트랜잭션 격리 수준 설정.

  • 참조 유지attmissingval그들이 사용하는 동안 오래 지속되는 맥락에서 값 (Andrew Dunstan)§

    이것은 튜플 슬롯이 그 값이 구성된 튜플 디스크립터를 원인화 할 때 매달려있는 포인터의 사용을 피합니다.

  • 유효 값을 다시 계산하십시오search_path이후ALTER 역할(Jeff Davis)§ §

    이것은 역할을 바꾸고 나면 특별한 문자열의 의미를 보장합니다$ user다시 결정됩니다.

  • 운영 순서 수정genericxlogfinish(Jeff Davis)§

    이 코드는 변경된 버퍼를 표시하기 전에 WAL을 작성하여 충돌 안전에 필요한 조건을 위반했습니다. 핵심 코드는이 기능을 사용하지 않지만 확장자는 다음과 같습니다 (Contrib/Bloom예를 들어).

  • PL/Python 예외 처리 (Alexander Lakhin)에서 잘못된 주장 제거§

  • 수정PG_RESTORE선택적 복원이 선택된 테이블 (Euler Taveira, Tom Lane)에 대한 테이블 레벨 및 열 레벨 ACL을 모두 포함하도록합니다.§

    이전에는 두 유형이 모두 존재하면 테이블 레벨 ACL 만 복원됩니다.

  • 논리 추가pg_upgrade사용 확인Abstime, ReltimeTinterVal데이터 유형 (Álvaro Herrera)§ §

    이 쓸모없는 데이터 유형이 제거되었습니다토토 꽁 머니버전 12, 따라서 업그레이드 될 수 있다고 주장하기 전에 이전 데이터베이스에 존재하지 않는지 확인하십시오.

  • 유효하지 않은 임시 슬롯 이름을 생성하지 마십시오PG_BASEBACKUP(Jelte Fennema)§

    이것은 서버 연결이 실행될 때만 발생하는 것으로 나타났습니다pgbouncer.

  • 거짓을 피하십시오너무 많은 클라이언트 연결오류pgbenchWindows (Noah Misch)§

  • inContrib/Amcheck, 중단 된 페이지 삭제를 부패로보고하지 마십시오 (Noah Misch)§

    이 수정은의 거짓 양성 보고서를 방지합니다.가장 왼쪽 대상 페이지의 첫 번째 자녀는 레벨의 가장 왼쪽이 아닙니다, Block Nnnn이 가장 남지 않았습니다또는index xxxx의 왼쪽 링크/오른쪽 링크 쌍이 동의하지 않음. 그들은 나타났습니다Amcheck미완성 된 BTREE 인덱스 페이지 삭제 및 이전 이후에 출시되었습니다.진공물건을 청소했습니다.

  • 실패 수정contrib/btree_ginindexes on간격열, indexscan을 사용하는 경우<또는<=운영자가 수행됩니다 (Dean Rasheed)§

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

  • LLVM 16 및 17에 대한 지원 추가 (Thomas Munro, Dmitry Dolgov)§ § § §

  • 최근에 대한 모듬 된 빌드 타임 경고 억제MacOS(Tom Lane)§ §

    Xcode 15(Macos Sonoma) 구축 중에 많은 중복-서식 경고를 일으키는 방식으로 링커의 동작을 변경했습니다토토 꽁 머니. 이것들은 무해했지만 성가 시므로 같은 라이브러리를 두 번 인용하지 마십시오.-multiply_defined suppress링커 스위치는 오랫동안 NO-OP였으며 현재 적극적으로 불만을 제기했습니다.

  • 빌딩시Contrib/Unaccent의 규칙 파일, 사용으로 돌아 가기Pythonif-with-python제공되지 않았고 변수를 만들지 않았습니다Python설정되지 않았다 (Japin Li)§

  • remodPhot(Phoenix Islands Time)의 기본 시간대 약어 목록 (Tom Lane)§

    기본 목록 에이 약어가 있으면 더 이상 기본적으로 기본 TZDB 항목을 기본적으로 설치하지 않기 때문에 최근 Debian 및 Ubuntu 릴리스에서 실패 할 수 토토 꽁 머니. 이것은 총 인구가 약 24 명인 구역의 약어이기 때문에 누구나 그것을 놓치지 않을 것 같습니다.