E.22. 범퍼카 토토 13.1

출시일: 2020-11-12

이 릴리스에는 13.0의 다양한 범퍼카 토토 사항이 포함되어 있습니다. 주요 릴리스 13의 새로운 기능에 대한 자세한 내용은 다음을 참조하세요.스포츠 토토 PostgreSQL : 문서 : 13 : E.21. 릴리스 13.

E.22.1. 버전 13.1로 마이그레이션

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

E.22.2. 변경사항

  • 차단커서 선언 ... 보류 상태및 인덱스 표현식 및 구체화된 뷰 쿼리 내에서 지연된 트리거 실행(Noah Misch)§

    이것은 본질적으로 누출입니다.보안 제한 작업샌드박스 메커니즘. 임시가 아닌 SQL 개체를 생성할 권한이 있는 공격자는 이 유출을 활용하여 임의의 SQL 코드를 슈퍼유저로 실행할 수 있습니다.

    포스트그레SQL프로젝트는 이 문제를 보고한 Etienne Stalmans에게 감사드립니다. (CVE-2020-25695)

  • 복잡한 연결 문자열 매개변수 사용 범퍼카 토토pg_dump, pg_restore, 클러스터DB, reindexdb그리고vacuumdb(톰 레인)§ §

    -d매개변수pg_dump그리고pg_restore또는--유지보수-db언급된 다른 프로그램의 매개변수는 다음과 같습니다.연결 문자열단순한 데이터베이스 이름이 아닌 여러 연결 매개변수가 포함되어 있습니다. 이러한 프로그램이 병렬 처리 또는 여러 데이터베이스 처리와 같은 추가 연결을 시작해야 하는 경우 연결 문자열을 잊어버리고 기본 연결 매개변수(데이터베이스 이름, 호스트, 포트 및 사용자 이름)만 추가 연결에 사용되었습니다. 연결 문자열에 기본이 아닌 SSL 또는 GSS 매개변수와 같은 다른 필수 정보가 포함된 경우 연결이 실패할 수 있습니다. 더 나쁜 것은 연결이 성공했지만 의도한 대로 암호화되지 않거나 의도한 연결 매개변수로 방지할 수 있는 중간자 공격에 취약할 수 있다는 것입니다. (CVE-2020-25694)

  • 언제psql\연결명령은 연결 매개변수를 재사용합니다. 이전 연결 문자열에서 재정의되지 않은 모든 매개변수가 재사용되는지 확인하세요(Tom Lane)§

    이것은 기본이 아닌 SSL 또는 GSS 옵션과 같은 관련 매개변수의 누락으로 인해 재연결이 실패할 수 있는 경우를 방지합니다. 더 나쁜 것은 재연결이 성공했지만 의도한 대로 암호화되지 않거나 의도한 연결 매개변수로 방지할 수 있는 중간자 공격에 취약할 수 있다는 것입니다. 이는 방금 인용한 문제와 대체로 같은 문제입니다.pg_dump외, 하지만psql9500_9616

  • 방지psql\gset특별히 처리된 변수 범퍼카 토토 명령(Noah Misch)§

    \gset접두사가 없으면 서버가 지시한 모든 변수를 덮어쓰게 됩니다. 따라서 손상된 서버는 다음과 같이 특별히 처리된 변수를 설정할 수 있습니다.PROMPT1, 사용자 세션에서 임의의 셸 코드를 실행할 수 있는 기능을 제공합니다.

    PostgreSQL프로젝트는 이 문제를 보고한 Nick Cleaton에게 감사드립니다. (CVE-2020-25696)

  • 복제 프로토콜의 의도하지 않은 파손 범퍼카 토토(Álvaro Herrera)§ §

    walsender가 다음에 대한 두 가지 명령 완료 이벤트를 보고합니다.START_REPLICATION. 이는 문서화되지 않았으며 의도하지 않은 것으로 보입니다. 그래서 우리는 13.0의 후반 변경으로 인해 중복 이벤트가 제거되었다는 사실을 알아차리지 못했습니다. 그러나 Walreceiver는 일부 코드 경로에서 추가 이벤트를 요구하는 것으로 나타났습니다. 가장 실용적인 해결 방법은 추가 이벤트가 프로토콜의 일부임을 선언하고 이벤트 생성을 재개하는 것입니다.

  • 체크포인트 중에 SLRU 디렉토리가 제대로 fsync'되었는지 확인하세요(Thomas Munro)§

    이는 후속 운영 체제 충돌 시 발생할 수 있는 데이터 손실을 방지합니다.

  • 범퍼카 토토역할 변경다음 사용자의 경우BYPASSRLS속성 (톰 레인, 스티븐 프로스트)§

    BYPASSRLS속성은 수퍼유저만 변경할 수 있지만 기타역할 변경비밀번호 변경과 같은 작업은 일반적인 권한 확인을 통해서만 허용되어야 합니다. 이전 코딩에서는 해당 역할에 대한 모든 변경 사항을 슈퍼유저로 잘못 제한했습니다.

  • 허용하지 않음테이블만 변경... 표현식 삭제하위 테이블이 있는 경우(Peter Eisentraut)§

    현재 구현에서는 이 경우를 올바르게 처리할 수 없으므로 지금은 금지하십시오.

  • 다음을 확인하세요테이블만 변경...트리거 활성화/비활성화하위 테이블로 재귀하지 않음(Álvaro Herrera)§

    이전에는플래그가 무시되었습니다.

  • 허용락 테이블자기 참조적 관점에서 성공하기 위해 (Tom Lane)§

    이전에는 무한 재귀에 대해 불평하는 오류가 발생했지만 해당 사례를 허용하지 않을 필요는 없어 보입니다.

  • 전체 인덱스에 대한 통계 유지동시에 REINDEX(마이클 파퀴에르, 파브리지오 데 로예스 멜로)§

    비동시 재인덱싱은 항상 이러한 통계를 보존했습니다.

  • 다음의 잘못된 진행 보고 범퍼카 토토동시에 REINDEX(Matthias van de Meent, Michael Paquier)§

  • 다음을 확인하세요생성됨열은 의존하는 열이 규칙이나 업데이트 가능한 보기를 통해 업데이트될 때 업데이트됩니다(Tom Lane)§

    이 범퍼카 토토사항은 이러한 경우 열별 트리거 실행 실패 가능성도 처리합니다.

  • 데이터 정렬 종속 파티션 경계 표현식 오류 범퍼카 토토(Tom Lane)§

  • 텍스트 배열 해싱 지원 (Peter Eisentraut)§

    배열 요소 유형이 조합 가능한 경우 배열 해싱이 실패했습니다. 특히 이로 인해 텍스트 배열 열을 파티션 키로 사용하여 해시 파티셔닝을 사용할 수 없게 되었습니다.

  • 교차 유형 날짜/시간 비교에서 내부 오버플로 방지(Nikita Glukhov, Alexander Korotkov, Tom Lane)§

    이전에는 날짜가 타임스탬프의 유효한 범위를 벗어나면 날짜를 타임스탬프와 비교하는 데 실패했습니다. 시간대 회전 중에 한계에 가까운 타임스탬프 값의 오버플로와 관련된 특수 사례도 있었습니다.

  • 음수 연도를 BC 날짜로 하나씩 변환하는 문제 범퍼카 토토to_date()그리고to_timestamp()(Dar Alathar-Yemen, 톰 레인)§

    또한 음수 연도와 명시적 연도의 조합을 준비하십시오.BC표시를 취소하고 AD를 생성합니다.

  • 허용jsonpath .datetime()ISO 8601 형식 타임스탬프를 허용하는 방법(Nikita Glukhov)§ §

    이것은 SQL에서 요구되지는 않지만 우리의 이후로는 적절해 보입니다.to_json()함수는 Javascript 호환성을 위해 해당 타임스탬프 형식을 생성합니다.

  • 다음 경우에 대기 서버가 WAL 타임라인 기록 파일을 보관하는지 확인하세요.archive_mode다음으로 설정됨항상(그리고리 스몰킨, 후지이 마사오)§

    이러한 감독으로 인해 후속 PITR 복구 시도가 실패할 수 있습니다.

  • 다음을 사용하는 플랫폼에서 포스트마스터의 조기 사망을 감지하는 극단적인 경우 범퍼카 토토kqueue()(토마스 먼로)§ §

  • 정렬 키가 휘발성 표현식인 경우 잘못된 증분 정렬 계획 생성 방지(James Coleman)§

  • GEQO 계획 중 파티션별 조인을 고려할 때 발생 가능한 충돌 범퍼카 토토(Tom Lane)§

  • TOAST 압축 해제 시 발생할 수 있는 무한 루프 또는 손상된 출력 데이터 범퍼카 토토(Tom Lane)§ §

  • 정리 전용 동안 B-트리 인덱스의 항목 수 계산 문제 범퍼카 토토진공s (피터 거게건)§

  • BRIN 인덱스에 삽입되기 전에 데이터가 삭제되었는지 확인하세요(Tomas Vondra)§

    색인 항목은 라인 외부 TOAST 포인터를 포함해서는 안 되지만 BRIN은 해당 메모를 받지 못했습니다. 이로 인해 다음과 같은 오류가 발생할 수 있습니다.토스트 값 NNN에 대한 청크 번호 0 누락. (기존 인덱스에서 이러한 오류가 발생하는 경우,REINDEX문제를 해결하기에 충분할 것입니다.)

  • 인덱스에 열이 포함되어 있을 때 작동하도록 버퍼링된 GiST 인덱스 빌드 범퍼카 토토(Pavel Borisov)§

  • 이식할 수 없는 사용 범퍼카 토토getnameinfo()pg_hba_file_rules보기(톰 레인)§

    FreeBSD 11 및 기타 플랫폼에서는 뷰의주소그리고넷마스크이 오류로 인해 열은 항상 null이었습니다.

  • 다음의 경우 충돌을 피하세요debug_query_string병렬 작업자를 시작할 때 NULL입니다(Noah Misch)§

  • 다음의 경우 실패를 피하십시오.행 업데이트 전트리거는 다음을 반환합니다.오래된떨어진 테이블의 행 또는누락열(Amit Langote, Tom Lane)§ §

    업데이트를 억제하는 이 방법은 예상치 못한 충돌을 초래할 수 있습니다.확인제약조건 실패 또는 올바르지 않음복귀 중출력, 왜냐하면누락열은 이러한 목적으로 NULL로 읽혀집니다. (열은누락이 목적으로 추가된 경우테이블 변경 열 추가NULL은 아니지만 상수 기본값입니다.) 삭제된 열도 문제를 일으킬 수 있습니다.

  • 범퍼카 토토설명의 증분 정렬 계획 출력은 XML 출력 모드에서 올바른 태그 중첩을 갖습니다(Daniel Gustafsson)§

  • 공유 메모리 대기열을 통해 매우 큰 페이로드를 전송할 때 불필요한 오류를 방지합니다(Markus Wanner)§

  • SQL 언어 함수에서 일부 경우 결과 데이터 유형 강제 누락 범퍼카 토토(Tom Lane)§

    관련 데이터 유형에 따라 잘못된 결과나 충돌이 발생할 수 있습니다.

  • JIT 코드 생성 시 템플릿 함수 속성의 잘못된 처리 범퍼카 토토(Andres Freund)§ §

    이로 인해 충돌이 발생하는 것으로 나타났습니다.s390x, 그리고 다른 플랫폼에는 다른 경우가 있을 가능성이 높습니다.

  • PPC에서 Compare_exchange 및 fetch_add 작업을 위해 생성된 코드 개선(Noah Misch)§ §

  • RLS 정책으로 관계 캐시 메모리 누수 범퍼카 토토(Tom Lane)§

  • 에지 케이스 메모리 누수 범퍼카 토토index_get_partition()(저스틴 프리즈비)§

  • SIGHUP 처리에서 재시작 없이는 새로운 GUC 변수 값을 적용할 수 없다고 결정할 때 작은 메모리 누수 범퍼카 토토(Tom Lane)§

  • 메모리 누수 범퍼카 토토PL/pgsql's전화처리 중 (Pavel Stehule, Tom Lane)§

  • libpqWindows의 경우 전화하세요WSA스타트업()프로세스당 한 번 및WSACleanup()전혀 아님 (톰 레인, 알렉산더 라킨)§

    이전에는,libpq호출됨WSA스타트업()연결 시작 시 및WSACleanup()연결 정리 시. 그러나 전화하는 것 같습니다WSACleanup()다른 프로그램 작업을 방해할 수 있습니다. 특히 예상되는 출력을 stdout으로 내보내는 데 드물게 실패하는 것을 관찰했습니다. 통화를 생략해도 아무런 부작용이 없는 것 같으니 그렇게 하세요. (이는 또한 프로그램이 일련의 데이터베이스 연결을 수행할 때 반복되는 DLL 로드 및 언로드로 인한 성능 문제를 제거합니다.)

  • 범퍼카 토토ecpgWindows용 라이브러리의 스레드별 초기화 논리(Tom Lane, Alexander Lakhin)§

    멀티 스레드ecpg잘못된 잠금으로 인해 애플리케이션이 드물게 오작동을 겪을 수 있습니다.

  • 범퍼카 토토ecpg의 잘못된 처리B'...'그리고엑스'...'리터럴(왕 선하오)§ §

  • Windows에서는 makepsql바이너리 모드가 아닌 텍스트 모드에서 백틱 명령의 출력 읽기(Tom Lane)§

    이것은 개행 문자의 적절한 처리를 보장합니다.

  • 다음을 확인하세요pg_dump확장 구성 테이블에 대한 열별 정보 수집(Fabrízio de Royes Mello, Tom Lane)§ §

    이렇게 하지 않으면 지정할 때 충돌이 발생합니다.--삽입, 또는 과소 지정됨(일반적으로 정확함)복사사용 시 명령복사테이블의 데이터를 다시 로드합니다.

  • 만들다pg_upgrade대상 클러스터에 테이블스페이스 디렉터리가 있는지 확인하세요(Bruce Momjian)§ §

  • 잠재적인 메모리 누수 범퍼카 토토contrib/pgcrypto(마이클 파퀴에)§

  • 가능성이 낮은 실패 사례에 대한 검사 추가contrib/pgcrypto(다니엘 구스타프손)§

  • 최근 추가된 범퍼카 토토사항timetz미국이 일광 절약 시간을 준수하지 않을 때 작동하도록 테스트 사례(Tom Lane)§

  • 다음으로 시간대 데이터 파일 업데이트tzdata피지, 모로코, 팔레스타인, 캐나다 유콘, 맥쿼리 섬 및 케이시 기지(남극)의 DST 법률 변경에 대한 2020d 릴리스 프랑스, 헝가리, 모나코, 팔레스타인에 대한 역사적 범퍼카 토토이 추가되었습니다. (톰 레인)§ §

  • 시간대 라이브러리 사본을 IANA tzcode 범퍼카 토토 2020d(Tom Lane)와 동기화§ §

    이것은 업스트림의 변화를 흡수합니다.지크의 기본 출력 옵션은지방슬림. 우리가 계속해서지방28087_28146strftime()변하지 않음errno실패하지 않는 한.

범퍼카 토토사항 제출

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