릴리스 노트

PostgreSQL

E.18. 릴리스 10.6

출시 날짜 :2018-11-08

이 릴리스에는 10.5의 다양한 수정 사항이 포함되어 있습니다. Major Release 10의 새로운 기능에 대한 정보는 참조섹션 E.24.

E.18.1. 버전 10.6으로의 마이그레이션

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

그러나 사용하는 경우pg_stat_statementsExtension, 아래의 ChangeLog 항목을 참조하십시오.

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

E.18.2. 변화

  • 전환 테이블 이름을 올바르게 인용 할 때pg_dump방출트리거 생성 ... 참조명령 (Tom Lane)

    이 감독은 다음 덤프/reload 또는 동안 슈퍼 유행어 권한을 얻기 위해 비할 수없는 사용자가 이용할 수 있습니다.pg_upgrade실행. (CVE-2018-16850)

  • 코너 케이스 실패 수정has_foo_privilege ()기능 가족 (Tom Lane)

    유효하지 않은 개체 OID가 제공 될 때 오류를 던지지 않고 널 리턴 NULL. 이 기능 중 일부는 이미 그 사실을 제대로 얻었지만 전부는 아닙니다.has_column_privilege ()일부 플랫폼토토 사이트 추천 추가로 충돌 할 수있었습니다.

  • 수정pg_get_partition_constraintdef ()잘못된 관계 OID (Tom Lane)를 통과했을 때 실패하기보다는 NULL을 반환하려면

  • 방지 o (n^2) 긴 줄의 정규 표현식 일치/분할 함수의 둔화 (Andrew Gierth)

  • 즉시 댓글을 받거나 표준 다중 문자 연산자의 구문 분석 수정+또는-(Andrew Gierth)

    이 감독은 구문 분석 오류 또는 우선 순위의 잘못된 할당으로 이어질 수 있습니다.

  • 방지 o (n^3) 긴 문자열에 대한 Lexer의 둔화+또는-캐릭터 (Andrew Gierth)

  • 외부 쿼리가 뒤로 스캔 될 때 하위 계획의 잘못 실행을 수정합니다 (Andrew Gierth)

  • 실패 수정업데이트/삭제 ... 현재 위치 ...참조 커서 (Tom Lane)를 되 감는 후

    여러 관계 (특히 상속 트리)를 스캔하는 커서는 이전 관계로 다시 wound 경우 잘못된 동작을 일으킬 수 있습니다.

  • 수정평가 플랜 쿠아조건부에 실행 된 이니시 이플란드를 올바르게 처리하려면 (Andrew Gierth, Tom Lane)

    이로 인해 상관되지 않은 하위와 같은 코드가 포함 된 경우 동시 업데이트에서 충돌이 발생하기 어려운 충돌 또는 잘못된 답변이 발생했습니다.select내부CASE구성.

  • 부모 테이블 (Amit Langote)에 첨부 된 트리거토토 사이트 추천 파티션 생성을 방지합니다.

    이상적으로 우리는 그것을 허용 할 것이지만, 순간적으로 충돌을 피하기 위해 차단해야합니다.

  • 적용 문제 해결on Commit Delete 행분할 된 임시 테이블 (Amit Langote)

  • U+FFFF 위의 유니 코드 문자에 대한 Windows에서 실패하지 않도록 문자 클래스 검사를 수정합니다 (Tom Lane, Kenji Uno)

    이 버그는 전체 텍스트 검색 작업에 영향을 미쳤습니다.Contrib/ltreeandContrib/PG_TRGM.

  • 밀어 붙이는 서브selects 윈도우 함수를 포함하는 s,Limit또는오프셋병렬 작업자에게 (Amit Kapila)

    이러한 경우는 다른 근로자가 다른 답변을 얻기 때문에 일관되지 않은 행동을 초래할 수 있습니다..

  • 외국 테이블이 소유 한 시퀀스가 ​​처리되는지 확인하십시오Alter Owner테이블 위 (Peter Eisentraut)

    소유권 변경은 그러한 시퀀스로도 전파되어야하지만 이것은 외국 테이블토토 사이트 추천 누락되었습니다.

  • 서버가 이미 수신을 처리하는지 확인Notifyandsigterm클라이언트 입력을 기다리기 전에 인터럽트 (Jeff Janes, Tom Lane)

  • 공간의 과도한 할당 수정array_out ()의 결과 문자열 (keiichi hirobe)

  • Query-Lifetime 메모리 누출 방지xmltable(Andrew Gierth)

  • 반복 된 SP-Gist 인덱스 스캔에서 메모리 누출 수정 (Tom Lane)

    SP-Gist를 사용하는 제외 제약 조건이 단일 명령토토 사이트 추천 많은 새로운 인덱스 항목을받는 경우에만 중요한 것으로 알려져 있습니다..

  • ApplyLogicalMappingFile ()완료하면 매핑 파일을 닫습니다 (Tomas vondra)

    이전에, 파일 디스크립터가 유출되어 결국 논리적 디코딩 중에 고장이 발생했습니다.

  • 맵핑 된 카탈로그 테이블이 반복적으로 다시 작성되는 경우, 예를 들어를 처리하려면 논리적 디코딩을 수정합니다.진공 Full(Andres Freund)

  • 서버 시작 방지Wal_level기존 복제 슬롯 (Andres Freund)을 지원하기 위해 너무 낮은 값으로 설정

  • 유틸리티 명령이 무한 재귀를 일으키는 경우 충돌을 피하십시오 (Tom Lane)

  • 핫 스탠드를 초기화 할 때 마스터의 2 상 트랜잭션으로 인한 중복 XID에 대처하십시오 (Michael Paquier, Konstantin Knizhnik)

  • 중첩을 다루기위한 이벤트 트리거 수정Alter Table명령 (Michael Paquier, Álvaro Herrera)

  • 상위 프로세스의 거래 및 명세서 전파 타임 스탬프를 병렬 작업자에게 시작합니다 (Konstantin Knizhnik)

    이것은 다음과 같은 함수의 오작동을 방지합니다transaction_timestamp ()근로자토토 사이트 추천 처형 될 때.

  • 정렬이 보존되도록 확장 된 데이텀을 병렬 작업자로 전송하여 정렬-픽키 플랫폼 (Tom Lane, Amit Kapila)의 충돌을 방지합니다

  • 대기 서버 (Michael Paquier)에서 올바르게 작동하도록 WAL 파일 재활용 로직 수정

    설정에 따라archive_mode, 대기는 제거 할 수있는 일부 왈 파일을 제거하지 못할 수 있습니다.

  • 회복 중 커밋 타이어 스탬프 추적 처리 수정 (Masahiko Sawada, Michael Paquier)

    커밋 타임 스탬프 추적이 켜지거나 꺼지는 경우 기록되지 않은 트랜잭션에 대한 커밋 타임 스탬프를 가져 오기 위해 복구가 실패 할 수 있습니다..

  • 무작위 화random ()부트 스트랩 및 독립형 백엔드의 시드 및 ininitdb(Noah Misch)

    이 변화의 주요 실질적인 효과는 시나리오를 피하는 것입니다initdb항상 동일한 임의의 시드를 사용하여 발생하는 이름 충돌로 인해 Posix 공유 메모리를 사용할 수 없다고 잘못 결론을 내릴 수 있습니다.

  • DSA 논리에서 가능한 공유 메모리 부패 수정 (Thomas Munro)

  • DSM 할당이 중단되도록 허용 (Chris Travers)

  • init 함수 (Thomas Munro) 내토토 사이트 추천 시스템 캐시에 액세스하려는 확장을로드 할 때 병렬 작업자의 실패를 피하십시오

    우리는 그것을 좋은 확장 코딩 연습으로 생각하지 않지만 대부분 병렬 쿼리 전에 작동하므로 지금은 계속 지원하십시오..

  • 적절하게 핸들링full_page_writes동적으로 (Kyotaro Horiguchi)

  • 이중으로 인한 가능한 충돌 수정free ()SP-Gist Rescan (Andrew Gierth) 중

  • ELF 기반 BSD 플랫폼토토 사이트 추천 SRC/포트 및 SRC/공통 기능의 잘못된 연결 방지 및 HP-UX 및 Solaris (Andrew Gierth, Tom Lane)

    백엔드 주소 공간에로드 된 공유 라이브러리는 의도 한대로 자체 사본이 아닌 백엔드 버전의 이러한 기능을 사용할 수 있습니다. 두 기능 세트의 동작이 동일하지 않기 때문에 실패로 이어졌습니다.

  • WAL (Alexander Korotkov, Sivasubramanian Ramasubramanian)에서 진 페이지 재생을 재생할 때 가능한 버퍼 오버런을 피하십시오.

  • 해시 색인의 메타지 오버런을 피하십시오blcksz기본값보다 작습니다 (Dilip Kumar)

  • 해시 인덱스에서 누락 된 페이지 체크섬 업데이트 수정 (Amit Kapila)

  • Replication 슬롯 디렉토리의 FSYNC를 놓친 수정 (Konstantin Knizhnik, Michael Paquier)

  • 사용할 때 예기치 않은 시간 초과 수정Wal_Sender_Timeout느린 서버에서 (Noah Misch)

  • 핫 대기 프로세스가 올바른 WAL 일관성 지점 (Alexander Kukushkin, Michael Paquier)을 사용하는지 확인하십시오.

    이것은 대기 서버가 WAL Replay 동안 일관된 데이터베이스 상태에 도달 한 직후 가능한 오해를 방지합니다.

  • Postmaster가 데이터베이스 시작을 완료하기 전에 빠른 다운 요청을받을 때 배경 작업자가 제대로 중지되도록하십시오 (Alexander Kukushkin)

  • Page All-Visible/Frozen 플래그 변경 (Álvaro Herrera)의 WAL 재생 중 여유 공간지도 업데이트

    이전에 우리는 이것에주의를 기울이지 않았으며, FSM이 어쨌든 중요한 데이터가 아니라고 추론했습니다. 그러나, 충분히 오래된 것이면 대기가 1 차로 홍보 된 후에도 상당한 성능 저하가 발생할 수 있습니다.

  • 쿼리 종료 또는 튜플 카운트 한계에 도달 할 때 병렬 쿼리 리소스의 조기 릴리스를 피하십시오 (Amit Kapila)

    발신자가 후진 스캔을 요구할 수 없다면이 시점토토 사이트 추천 집행자를 종료해도 괜찮습니다.

  • 서비스 할 때 Atexit 콜백을 실행하지 마십시오Sigquit(Heikki Linnakangas)

  • 외국 서버 사용자 매핑을 확장 회원으로 기록하지 마십시오 (Tom Lane)

    if사용자 매핑 만들기확장 스크립트토토 사이트 추천 실행되며, 예상치 못한 사용자 맵핑에 대한 확장 종속성이 생성되었습니다. 역할은 확장 멤버가 될 수 없으므로 사용자 매핑도 아닙니다.

  • CSV 로그 파일을 여는 데있어 실패에 대해 Syslogger를 더 강력하게 만듭니다 (Tom Lane)

  • 언제libpq여러 대상 호스트 이름이 주어지고, 한 번에 한 번에 하나씩 DNS를 조회하십시오 (Tom Lane)

    이것은 목록의 이전 서버 중 하나에 연결을 성공적으로 수행 할 때 불필요한 실패 또는 느린 연결을 방지합니다.

  • 수정libpq'호스트 이름 또는 IP 주소 (Tom Lane) 당 올바르게 적용되도록 연결 시간 초과 처리 처리

    이전에, 일부 코드 경로는 새 대상 호스트로 전환 할 때 타이머를 다시 시작하지 못하여 조기 시간 초과를 초래할 수 있습니다..

  • 수정PSQL및 문서 예제도 전화 할pqconsumeInput ()각각pqnotifies ()전화 (Tom Lane)

    이것은 케이스를 수정합니다PSQLa를보고하지 않을 것입니다Notify다음 명령이 끝날 때까지 메시지.

  • 수정pg_dump's--공개출판물 테이블을 무시할 수있는 옵션 (Gilles Darold)

  • inpg_dump, 부모 테이블이 덤프토토 사이트 추천 제외 될 때 ID 시퀀스 제외 (David Rowley)

  • 가능한 불일치 수정pg_dump의 비 유사 객체 이름의 분류 (Jacob Champion)

  • PG_RESTORE방출시 테이블 이름을 윌 스키마-릴리피비활성화/트리거 활성화명령 (Tom Lane)

    이것은 제한적인 검색 경로로 복원하는 새로운 정책으로 인해 실패를 피합니다.

  • 수정pg_upgrade이벤트 트리거를 올바르게 처리하려면 (Haribabu Kommi)

    pg_upgrade이벤트 트리거의 확장 대회 상태를 보존하지 못했습니다.

  • 수정pg_upgrade의 클러스터 상태 검사 대기 서버 (Bruce Momjian)토토 사이트 추천 올바르게 작동하는지

  • 시행 유형큐브의 차원 제한Contrib/Cube기능 (Andrey Borodin)

    이전에 일부 큐브 관련 함수는 거부 될 값을 구성 할 수 있습니다cube_in (), 덤프/재 장전이 발생합니다.

  • incontrib/pg_stat_statements, 금지pg_read_all_stats실행 역할pg_stat_statements_reset ()(Haribabu Kommi)

    pg_read_all_stats는 통계를 변경하지 않고 읽을 수있는 권한을 부여하기위한 것이므로이 보조금이 잘못되었습니다.

    이 변경 사항이 적용 되려면 실행ALTER EXTENSION PG_STAT_STATEMENTS 업데이트각 데이터베이스토토 사이트 추천pg_stat_statements설치되었습니다.

  • inContrib/Postgres_FDW, 가변 무료 배송을 시도하지 마십시오주문 by원격 서버에 대한 조항 (Andrew Gierth)

  • 수정Contrib/Unaccent'sUnaccent ()사용 기능Unaccent함수와 동일한 스키마에있는 텍스트 검색 사전 (Tom Lane)

    이전에는 검색 경로를 사용하여 사전을 찾아 보려고했는데, 검색 경로에 제한적 값이 있으면 실패 할 수 있습니다..

  • MacOS 10.14 (Mojave) (Tom Lane)토토 사이트 추천 빌드 문제를 해결합니다.

    조정구성추가하려면-isysroot전환CPPFLAGS; 이 없으면 PL/PERL 및 PL/TCL은 MACOS 10.14를 구성하거나 빌드하지 못합니다.PG_SYSROOT인수의 변수구성또는만들기.

    이제 Perl 관련 확장이 쓰기가 권장됩니다$ (perl_includespec)보다는-i $ (perl_archlibexp)/core컴파일러 플래그토토 사이트 추천. 후자는 대부분의 플랫폼토토 사이트 추천 계속 작동하지만 최근에는 MacOS가 아닙니다.

    또한 더 이상 지정할 필요는 없습니다-with-tclconfig수동으로 PL/TCL이 최근 MACOS 릴리스를 구축하도록합니다.

  • 최근 Perl 버전 (Andrew Dunstan)에서 작동하도록 MSVC 빌드 및 회귀 테스트 스크립트 수정

    Perl은 더 이상 기본적으로 검색 경로에 현재 디렉토리를 포함하지 않습니다. 그 주위토토 사이트 추천 일하십시오.

  • Windows에서 관리자 계정 (Andrew Dunstan)에서 회귀 테스트를 실행할 수 있습니다.

    이 작업을 안전하게 수행하려면pg_regress이제 스타트 업토토 사이트 추천 그러한 권한을 포기합니다.

  • btree 비교 함수가 반환하도록 허용int_min(Tom Lane)

    지금까지, 우리는 데이터 유형별 비교 기능이 반환되는 것을 금지했습니다int_min, 발신자가 비교 결과를 무효화하여 정렬 순서를 반전 할 수 있습니다. 그러나 이것은의 결과를 직접 반환하는 비교 기능에 안전하지 않았습니다.memcmp (), strcmp ()등, Posix는 그러한 함수에 그러한 제한을 두지 않기 때문에. 최소한 최근의memcmp ()반환 할 수 있습니다int_min, 잘못된 정렬 순서를 유발합니다. 따라서이 제한을 제거했습니다.invert_compare_result ()정렬 순서를 뒤집으려면 매크로.

  • 공유 불균형 메시지 처리 (Tom Lane)의 재귀 위험 수정

    이 오류는 예를 들어 방금 처리 된 시스템 카탈로그 또는 인덱스에 액세스하지 못할 수 있습니다진공 Full.

    이 변경 사항은 새로운 결과 코드를 추가합니다Lockacquire,이 기능의 외부 발신자에게 영향을 줄 수 있지만 매우 특이한 사용 패턴 만 문제가 될 수 있습니다. APIlockacquireeextended도 변경되었습니다.

  • SPI의 글로벌 변수를 저장 및 복원하는 동안SPI_CONNECT ()andspi_finish ()(Chapman Flack, Tom Lane)

    이것은 한 스파이 기능이 다른 것을 호출 할 때 가능한 간섭을 방지합니다.

  • 잠재적으로 정렬 된 페이지 버퍼 (Tom Lane) 사용을 피하십시오

    새로운 노조 유형 발명pgalignedBlockandpgalignedxlogblock그리고 이들을 일반 숯 어레이 대신 사용하여 컴파일러가 오른쪽으로 정렬 된 시작 주소에 버퍼를 배치 할 수 없도록합니다. 이것은 정렬-냉담한 플랫폼에서 잠재적 인 핵심 덤프를 수정하고 오정렬을 허용하는 플랫폼에서도 성능을 향상시킬 수 있습니다.

  • 만들기src/port/snprintf.cC99 표준의 정의에 따르면snprintf ()의 결과 값 (Tom Lane)

    이 코드가 사용되는 플랫폼 (주로 Windows)에서 C99 이전의 동작은 호출 코드가 C99 시맨틱을 가정하면 버퍼 오버런을 감지하지 못할 수 있습니다..

  • i386을 구축 할 때Clang컴파일러, 요구-msse2사용하려면 (Andres Freund)

    이것은 부동 소수점 오버플로 점검을 놓친 문제를 피합니다.

  • 수정구성의 결과 유형 감지strerror_r ()(Tom Lane)

    이전 코딩은 구축 할 때 잘못된 답변을 얻었습니다ICCLinux (및 다른 경우)에서libpq시스템보고 오류에 대한 유용한 오류 메시지를 반환하지 않습니다.

  • 시간대 데이터 파일 업데이트TZDATA칠레, 피지, 모로코 및 러시아의 DST 법률 변경을위한 2018G, 중국, 하와이, 일본, 마카오 및 북한의 역사적 교정을위한 2018G