릴리스 토토

토토

E.8. 토토 11.15

출시 날짜 :2022-02-10

이 토토에는 11.14의 다양한 수정 사항이 포함되어 있습니다. Major Release 11의 새로운 기능에 대한 정보는 참조섹션 E.23.

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

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

그러나 11.14 이전 버전에서 업그레이드하는 경우 참조섹션 E.9.

E.8.2. 변화

  • 모든 인덱스 열을 반환 할 수없는 경우 (Tom Lane)에 대한 인덱스 전용 스캔 요금 수정

    인덱스에 리턴 가능 및 회전 불가능한 열이 있고, 회전 할 수없는 열 중 하나가 반환 가능한 색인 열에 나타나는 테이블 열을 사용한 표현식 인 경우, 해당 표현식을 사용하는 쿼리는 수익성 열을 읽을 수없는 인덱스 전용 스캔 플랜을 초래할 수있는 인덱스 전용 스캔 계획을 사용하여 의도적 인 열을 사용하여 의도적 인 열 열을 사용하는 표현입니다. 회전 할 수없는 열은 NULL로 읽어서 쿼리 결과가 잘못되었습니다.

  • 지정되지 않은 타이프 모드로 주조하는 것이 길이 코커 함수 호출 대신 relabeltype 노드를 생성하는지

    강요 함수가 옳은 일을해야하지만이 번역은 바람직하지 않게 비효율적입니다.

  • WAL 페이지 경계 (Álvaro Herrera)에서 데이터베이스 일관성이 정확히 도달 할 때 WAL 재생 실패 수정

  • 트랜잭션 ID 랩 어라운드 (Abhijit Menon-Sen, Tomas Vondra)를 견딜 수 있도록 물리 복제의 시작을 수정합니다.

    기본의 활성 트랜잭션 세트가 랩 어라운드 경계를 가로 지르는 동안 복제 서버가 시작된 경우 (따라서 기존 XID보다 작은 XID를 가진 새로운 트랜잭션이있는 경우) 복제본은 실패합니다.알려진 ASSIGNEDXIDS의 외부 XID 삽입. 복제본은 재 시도하지만 그 오류를 지나치지 않을 수는 없습니다.

  • 논리적 복제 연결 (Tom Lane)에서 발행 된 SQL 명령에 대한 어휘 제한 제거

    walsender 프로세스는 인용되지 않은 세미콜론을 포함하는 SQL 명령에 실패하거나 단일 또는 이중 견적 마크의 홀수가 포함 된 1 달러 규모의 리터럴 또는 SQL 명령이 주석으로 시작할 때 실패합니다. 또한 오류 복구가 잘못되면 이후 명령에서도 예상치 못한 오류가 발생할 수 있습니다.

  • 거래의 마지막 하위 변환에 대한 커밋 타임 스탬프의 가능한 손실 수정 (Alex Kingsborough, Kyotaro Horiguchi)

  • 확실히fsyncthePG_LOGICAL/MAPPING체크 포인트 중 하위 디렉토리 (Nathan Bossart)

    일부 파일 시스템 에서이 감독은 시스템 충돌 후 논리적 재 작성 상태 파일을 잃을 수 있습니다.

  • 분할 된 테이블에 대한 확장 통계 구축 (Justin Pryzby)

    이전 버그 수정 구식 상속 트리에 대한 확장 된 통계의 비활성화 된 건물이지만 불필요한 제한이었던 파티션 된 테이블을 위해 건축을하지 못했습니다. 이 변경이 가능합니다분석분할 된 테이블의 통계 객체에 대한 값을 계산합니다. (그러나 Autovacuum은 분할 된 테이블을 처리하지 않으므로 정기적으로 매뉴얼을 발행해야합니다분석그러한 통계를 유지하려면 분할 된 테이블에서.)

  • 상속 트리 (Justin Pryzby)에 대한 확장 된 통계를 무시합니다

    현재 확장 된 통계 값은 전체 상속 트리가 아닌 각 테이블에 대해 로컬로만 계산됩니다. 그러나 상속 트리를 가로 질러 쿼리를 계획 할 때 값은 실수로 상담되어 기절보다 더 나빠질 수 있습니다.

  • 파티션 된 테이블의 행 유형이 다른 곳에서 복합 유형으로 사용될 때 파티션 된 테이블의 열의 데이터 유형 변경 허용

    이 제한은 일반 테이블에 오랫동안 존재 해 왔지만 감독을 통해 파티셔닝 된 테이블을 확인하지 않았습니다.

  • anallowALTER 테이블 ... 드롭 아님복제 아이덴티티 인덱스 (Haiying Tang, Hou Zhijie)의 일부인 열의 경우

    기본 키 인덱스에 대해 이미 동일한 금지가 존재했습니다.

  • 동안 캐시 된 테이블 상태를 올바르게 업데이트합니다Alter Table Index를 사용하여 기본 키 추가(Hou Zhijie)

    동시 세션은 테이블에 기본 키가 있는지 여부에 대한 의견을 업데이트하지 못하여 잘못된 논리적 복제 동작을 일으킬 수 있습니다.

  • 전환시 캐시 된 테이블 상태를 올바르게 업데이트복제 아이덴티티색인 (Tang Haiying, Hou Zhijie)

    동시 세션은 어떤 색인이 복제 아이덴티티인지에 대한 의견을 업데이트하지 못하여 잘못된 논리적 복제 동작을 일으킬 수 있습니다..

  • 동안 메모리가 새지 않으면REASSIGN 소유많은 물체의 소유권을 재 할당하는 작업 (Justin Pryzby)

  • 전체 열 변수의 디스플레이 수정삽입 ... 값규칙 (Tom Lane)

    전체 열 변수는로 인쇄됩니다.var.*이지만 규칙이 다시로드 될 때 개별 열로 확장 할 수 있으므로 의미론이 다릅니다. 우리가 다른 곳에서하는 것처럼 그것을 막기 위해 명시적인 캐스트를 부착하십시오.

  • 잘못된 주장을 수정하거나 제거합니다 (Simon Riggs, Michael Paquier, Alexander Lakhin)

    이러한 오류는 생산이 아닌 디버그 빌드에만 영향을 미칩니다.

  • 다중 스레드 사용에서 초기에보고 된 오류 메시지를 현지화하지 못하는 경주 조건을 수정하십시오.libpq또는ecpglib(Tom Lane)

  • 전화 방지strerrorFromlibpq'spqcancel함수 (Tom Lane)

    pqcancel신호 핸들러에서 호출하는 데 안전해야하지만strerror는 안전하지 않습니다. 취소 메시지를 서버로 보내지 못하고 보고서의 부족을 설명 할 가능성이없는 이벤트에서만 발생했을 때만 발생했습니다.

  • 만들기PSQL's\ password암호 설정에 대한 명령 기본값current_user, 연결의 원래 사용자 이름 (Tom Lane)이 아닙니다.

    이것은 문서화 된 동작에 동의하며, 가능성이있는 권한 실패를 피합니다.역할 설정또는세션 승인 설정세션이 시작된 이후로 완료되었습니다. 혼란을 방지하기 위해 행동 할 역할 이름이 이제 비밀번호 프롬프트에 포함되어 있습니다.

  • inPSQL및 기타 고객 프로그램, 호출을 피하십시오getText ()Control-C 신호 핸들러 (Tom Lane)에서

    보고 된 실패는이 실수로 추적되지 않았지만 안전한 일이 될 가능성은 거의 없을 것 같습니다.

  • 초기 비밀번호 프롬프트 취소 허용PG_RECEIVEWALPG_RECVLOGICAL(Tom Lane, Nathan Bossart)

    이전에는 암호를 추구하는 동안 Control-C를 통해 이러한 프로그램을 종료하는 것은 불가능했습니다.

  • 수정pg_dump의 사용자 정의 캐스트에 대한 덤프 순서 (Tom Lane)

    드문 경우에, 출력 스크립트는 생성되기 전에 사용자 정의 캐스트를 참조 할 수 있습니다.

  • 오류의 오류를 잘못보고 할 수있는 수정pg_dumpPG_BASEBACKUP(Tom Lane)

    이전 코드는 일부 커널 호출의 오류를 확인하지 못했고 다른 경우 잘못된 errno 값을보고 할 수 있습니다.

  • 인덱스 전용 스캔 결과 수정contrib/btree_gistindexes onchar (N)열 (Tom Lane)

    인덱스 전용 스캔은 후행 공간이 제거 된 경우 열 값을 반환했습니다. 이는 예상되는 동작이 아닙니다. 그것은 데이터가 인덱스에 저장된 방식이기 때문에 일어났습니다.char (N)예상되는 공간 패딩 양이있는 값. 그러한 지수의 동작은 귀하가하지 않으면 즉시 변경되지 않습니다Reindexit; 그렇지 않으면 업데이트 중에 시간이 지남에 따라 공간 스트리핑 값이 점차적으로 대체됩니다.

  • 변경구성Python 's를 사용하려면Sysconfig더 이상 사용되지 않는 모듈Distutils모듈, pl/python을 구축하는 방법을 결정하려면 (Peter Eisentraut, Tom Lane, Andres Freund)

    Python 3.10을 사용하면 피해구성-시간 경고에 대한DistutilsPython 3.12에서 감가 상각되고 예정되어 있습니다. 아마도 3.12가 나면configure-with-python완전히 실패합니다. 이 미래 방지는 비용이 듭니다 :SysconfigPython 2.7 이전에 또는 Python 3 지점에서 3.2 이전에 존재하지 않았으므로 더 이상 장거리 Python 버전에 대해 PL/Python을 구축 할 수 없습니다.

  • perl 5.28 이상이있는 Windows에서 Pl/Perl 컴파일 실패 수정 (Victor Wagner)

  • Python 3.11 이상으로 Pl/Python 컴파일 고장 수정 (Peter Eisentraut)

  • Visual Studio 2022 (Hans Buschmann)로 구축에 대한 지원 추가

  • 허용.BATMSVC 빌드 시스템의 래퍼 스크립트는 디렉토리 (Anton Voloshin, Andrew Dunstan)을 먼저 변경하지 않고 호출 할 수 있습니다.