출시 날짜 :2019-06-20
이 릴리스에는 11.3의 다양한 수정 사항이 포함되어 있습니다. Major Release 11의 새로운 기능에 대한 정보는 참조토토 사이트 PostgreSQL : 문서 : 11 : E.23. 릴리스 11.
덤프/복원은 11.x.를 실행하는 사람들에게는 필요하지 않습니다.
그러나 11.1 이전 버전에서 업그레이드하는 경우 참조PostgreSQL : 문서 : 11 : E.22. 범퍼카 토토 11.1.
SCRAM VERIFIER PARSING의 버퍼 오버 플로우 위험 수정 (Jonathan Katz, Heikki Linnakangas, Michael Paquier)
인증 된 사용자는 자신의 비밀번호를 목적으로 만들어진 값으로 변경하여 스택 기반 버퍼 오버플로를 유발할 수 있습니다. 충돌하는 능력 외에도postgresql서버, 이것은 임의 코드를postgresql운영 체제 계정
비슷한 오버플로 위험이 존재했습니다libpq, 로그 서버가 클라이언트를 충돌 시키거나 클라이언트의 운영 체제 계정으로 임의 코드를 실행할 수 있습니다.
thepostgresql프로젝트 감사합니다.이 문제를보고 한 Alexander Lakhin. (CVE-2019-10164)
런타임 파티션 가지 치기 로직에서 다양한 오류 수정 (Tom Lane, Amit Langote, David Rowley)
이러한 실수는 파티션 된 테이블의 쿼리에서 정답에 대한 답변으로 이어질 수 있습니다. 가지 치기에 사용되는 비교 값이 동적으로 결정되거나 여러 범위 분류 된 열이 가지 치기 결정에 관여하거나 안정된 (안정되지 않은) 비교 연산자가 관련된 와이즈 토토.
새로운 파티션 (Tom Lane)에 트리거 정의를 복사하는 동안 가능한 충돌 수정
실패 수정ALTER 테이블 ... ALTER 열 유형
테이블에 부분 제외 제약 조건 (Tom Lane)이있는 와이즈 토토
실패 수정댓글
도메인 제약 조건에 대한 댓글 명령 (Daniel Gustafsson, Michael Paquier)
해시 집계의 해시 키 목록 (Andrew Gierth)에 중복 열이있을 때 가능한 메모리 클로버 방지
제로 또는 다중 인수가있는 골재의 부분 집계 중에 잘못된 인수를 고치고 있습니다 (David Rowley, Kyotaro Horiguchi, Andres Freund)
결함이있는 병합-임대 계획의 생성 (Tom Lane)
이 실수로 이어질 수 있습니다“정렬 할 PathKey 항목을 찾을 수 없습니다”오류.
중복 조인 이름 (Philip Dubé)으로 쿼리의 잘못된 인쇄 수정
이 감독은 그러한 쿼리를 포함하는 뷰에 대한 덤프/복원 실패를 일으켰습니다.
JSON 문자 리터럴을 JSON 형 출력 열로 변환JSON_TO_RECORD ()
andjson_populate_record ()
(Tom Lane)
그러한 와이즈 토토는 문자를 독립형 JSON 값으로 생성해야하지만, 리터럴에 탈출이 필요한 문자가 포함 된 와이즈 토토 코드가 잘못 행동했습니다..
오해 최적화 수정{1,1}
정규 표현식의 정량 자 (Tom Lane)
그러한 정량자는 NO-OPS로 취급되고 최적화되었다; 그러나이 문서는 비가 부적절한 변형의 와이즈 토토 욕심이나 욕구를 부과한다는 것을 명시합니다.1,1?
, 그들이 첨부 된 서브 표현에서, 그리고 이것은 일어나지 않았다. 오작동은 하위 표현이 괄호 캡처 또는 역전을 포함하는 와이즈 토토에만 발생했습니다.
페이지 분할 (Peter Geoghegan) 중에 열을 포함하는 동안 실패가 발생할 가능성이 낮은 와이즈 토토에 유효하지 않은 빈 BTREE 인덱스 페이지 작성을 피하십시오.
잘못된 페이지는 일반 인덱스 작업에 영향을 미치지 않지만 후속 진공 상태에서 실패를 일으킬 수 있습니다. 인덱스 중 하나에 발생한 와이즈 토토 인덱스를 다시 표시하여 복구하십시오.
새로운 프로세스를 초기화하는 동안 가능한 고장을 피하십시오pg_stat_activity
데이터 (Tom Lane)
SSL 인증서에서 추출한 문자열을 데이터베이스 인코딩으로 변환하는 것과 같이 실패 할 수있는 특정 작업은 임계 섹션 내에서 수행되었습니다. 실패 공유의 액세스 프로토콜을 위반하여 데이터베이스 전체 잠금이 발생합니다pg_stat_activity
데이터.
경쟁 조건을 수정하여 상충되는 Postmaster (Tom Lane)에 의해 기존 공유 메모리 세그먼트가 여전히 사용되고 있는지 확인하십시오.
Walreceiver의 신호 핸들러 (Tom Lane)에서 안전하지 않은 코딩 수정
이것은 walreceiver 프로세스가 종료하라는 명령을 내릴 때 충돌하거나 교착 상태에있는 드문 문제를 피합니다.
특정 데이터베이스에 연결되지 않은 프로세스 (Vignesh C, Andres Freund)에 대한 매개 변수 체크인에 대한 데이터베이스 액세스를 시도하지 마십시오.
이 오류는와 같은 실패를 초래할 수 있습니다.“데이터베이스를 선택하지 않고 PG_CLASS를 읽을 수 없습니다”.
가능한 교수형을 피하십시오libpqSSL을 사용하고 OpenSSL의 보류 데이터 버퍼를 사용하는 와이즈 토토 정확한 배수 256 바이트 (David Binderman)가 포함되어 있습니다.
개선initdb의 시스템 시간대 (Tom Lane, Andrew Gierth)에 대한 여러 동등한 이름의 처리
makeinitdb검사/etc/localtime
그것이 존재하는 와이즈 토토, 시스템 시간대와 동등한 이름 사이의 관계를 끊는 것입니다. 이것은initdb여러 동일한 시간 영역이있을 때 사용자가 기대할 시간 영역 이름을 선택할 가능성이 높습니다. 동작을 바꾸지 않을 것입니다/etc/localtime
| 영역 데이터 파일에 대한 Symlink가 아니거나 시간대가에서 결정된 와이즈 토토TZ
환경 변수.
별도로, 선호UTC
해당 시간대의 다른 철자 위에, 어느 쪽도TZ
NOR/etc/localtime
힌트를 제공하십시오. 이것은에 의해 소개 된 성가심을 수정합니다.TZDATA2019a의 변화를위한 변화UCT
andUTC
영역 이름에 해당합니다 :initdb그런 다음 선호UCT
, 거의 아무도 원하지 않는 것입니다.
주문 수정그랜트
명령에 의해 배출 된 명령pg_dumpandpg_dumpall데이터베이스 및 테이블 스페이스 (Nathan Bossart, Michael Paquier)
계단식 보조금이 발행 된 와이즈 토토로 인해 복원이 실패 할 수 있습니다.그랜트
상호 의존성을 존중하지 않는 순서로 제공되는 명령.
makepg_dump|테이블 생성
the파티션 첨부
파티션
창조 명령에서 (Álvaro Herrera, David Rowley)
이것은 부모와 일치하도록 파티션의 열 순서가 변경 될 수있는 문제를 피합니다. 또한, 부모 테이블이 복원되지 않더라도 덤프 (독립형 테이블)에서 파티션이 복원 가능합니다.첨부
실패하지만 무시할 수 있습니다.
오도 오류 보고서 수정ReindexDB(Julien Rouhaud)
Vacuumdb평행 작업을 사용하는 동안 오류가 발생하면 올바른 상태를 반환합니다 (Julien Rouhaud)
수정Contrib/Auto_explain
병렬 쿼리 (Tom Lane)에서 문제를 일으키지 않으려면
이전에, 병렬 작업자는 상위 쿼리가 로그인되지 않더라도 쿼리를 기록하려고 시도 할 수 있습니다auto_explain
. 이것은 때때로 효과가 있지만 혼란스럽고 어떤 와이즈 토토에는와 같은 실패가 발생했습니다.“shm toc에서 키 n을 찾을 수 없습니다”.
또한, 샘플링 속도가 1.0으로 설정된 와이즈 토토에도 모든 쿼리를 반드시 로그인하는 것은 아닙니다..
inContrib/Postgres_FDW
, Local의 가능한 데이터 수정을 설명행 전 업데이트 전
트리거 (Shohei Mochizuki)
트리거가 그렇지 않으면 변경되지 않은 열을 수정 한 경우업데이트
, 새 값은 원격 서버로 전송되지 않았습니다.
Windows에서 데이터베이스 인코딩이 SQL_ASCII로 설정된 경우 실패를 피하고 ASCII가 아닌 문자열 (Noah Misch)을 기록하려고 시도합니다.
코드는 그러한 문자열이 UTF-8에 있어야한다고 가정했으며, 유효하게 인코딩되지 않은 와이즈 토토 오류가 발생합니다. 이제, 번역되지 않은 바이트를 로그로 전송합니다.
makepl/pgsql의 헤더 파일 C ++-안전 (George Tarasov)