Postgresql 9.4.26 문서화 | |||
---|---|---|---|
이전 | up | 부록 E. 릴리스 노트 | 다음 |
출시 날짜 : 2017-08-10
이 릴리스에는 9.4.12의 다양한 윈 토토 사항이 포함되어 있습니다. 9.4 주요 릴리스의 새로운 기능에 대한 자세한 내용은 참조섹션 E.27.
9.4.x.를 실행하는 사람들에게는 덤프/복원이 필요하지 않습니다.
그러나 인증을 위해 사용자 비밀번호를 사용하는 외국 데이터 서버를 사용하는 경우 아래의 첫 번째 ChangeLog 항목을 참조하십시오..
또한 9.4.12 이전 버전에서 업그레이드하는 경우 참조섹션 E.15.
가시성을 추가로 제한pg_user_mappings.Umoptions, 사용자 매핑 옵션 (Noah Misch)으로 저장된 비밀번호를 보호하기 위해
CVE-2017-7486의 윈 토토은 잘못되었습니다. 사용자가 자신의 사용자 매핑에서 옵션을 볼 수있었습니다.usage관련 외국 서버에 대한 권한. 이러한 옵션에는 사용자가 아닌 서버 소유자가 제공 한 비밀번호가 포함될 수 있습니다.information_schema.user_mapping_options그러한 경우 옵션이 표시되지 않습니다.pg_user_mappings(CVE-2017-7547)
그 자체로는이 패치는 새로 Intdb'd 데이터베이스의 동작 만 윈 토토합니다. 이 변경 사항을 기존 데이터베이스에 적용하려면 다음을 수행해야합니다.
추가 후 포스트 마스터를 다시 시작합니다allow_system_table_mods = truetopostgresql.conf. (지원하는 버전ALTER SYSTEM,이를 사용하여 구성 변경을 수행 할 수 있지만 여전히 다시 시작해야합니다.)
in각클러스터의 데이터베이스, 다음 명령을 슈퍼업자로 실행합니다 :
set search_path = pg_catalog;
포함하는 것을 잊지 마십시오Template0andtemplate1데이터베이스 또는 취약점은 나중에 작성하는 데이터베이스에 여전히 존재합니다. 윈 토토하려면Template0, 일시적으로 연결을 수락하도록해야합니다. 안에PostgreSQL9.5 이상, 사용할 수 있습니다
allow_connections true를 사용하여 데이터베이스 템플릿을 변경하십시오.
그런 다음 윈 토토 후Template0, UNDO with
allow_connections가있는 Alter Database Template0 Alter Alter Database Template0;
이전 버전에서 대신 사용
업데이트 pg_database set datallowconn = true 위치 datname = 'template0';
마지막으로 제거allow_system_table_mods구성 설정을 다시 시작하고 우체국 장을 다시 시작합니다.
모든 암호 기반 인증 방법 (Heikki Linnakangas)에서 빈 암호를 허용하지 않습니다.
libpq빈 비밀번호 사양을 무시하고 서버로 전송하지 않습니다. 따라서 사용자의 암호가 빈 문자열로 설정된 경우 해당 비밀번호로 로그인하는 것은 불가능합니다.PSQL또는 기타libpq기반 클라이언트. 따라서 관리자는 비밀번호로 비밀번호를 설정하는 것이 비밀번호 로그인을 비활성화하는 것과 동일하다고 생각할 수 있습니다.libpq-기반 클라이언트, 로그인이 가능할 수 있습니다. 특히 가장 일반적인 방법,MD5, 허용 빈 비밀번호. 모든 경우에 빈 비밀번호를 거부하도록 서버를 변경하십시오.
만들기lo_put ()
확인업데이트대상 대상의 특권 (Tom Lane, Michael Paquier)
lo_put ()
반드시와 동일한 권한을 요구해야합니다.lowrite ()
, 그러나 수표가 없어서 모든 사용자가 큰 오브젝트에서 데이터를 변경할 수 있습니다. (CVE-2017-7548)
튜플 업데이트 체인의 동시 잠금 윈 토토 (Álvaro Herrera)
몇 차례의 세션이 오래된 스냅 샷을 사용하여 비 분쇄 잠금 모드로 튜플 업데이트 체인을 동시에 잠그면 모두 성공할 수있었습니다. 그럼에도 불구하고 일부는 레이스 조건으로 인해 실패 할 수있었습니다. 이것은 분명히 존재하지만 동시에 업데이트되고있는 튜플을 보지 못하는 외국 키 점검과 같은 결과를 가져 왔습니다.
Xmax가 여전히 하나의 개입 멤버 (Teodor Sigaev)와 다각적 인 튜플을 동결 할 때 잠재적 데이터 손상 윈 토토
정수 오버플로와 10 억 개 이상의 튜플을 정렬 할 때 충돌을 피하십시오 (Sergey Koposov)
Windows에서 새로운 프로세스 (Tom Lane, Amit Kapila)에서 공유 메모리에 대한 주소 범위를 예약하지 않으면 재 시도 프로세스 생성
이것은 바이러스 백신 제품의 간섭으로 인한 드문 아동 프로세스 출시 실패를 윈 토토해야합니다.
Windows 빌드에서 공유 술어 잠금 해시 테이블의 저렴한 부패 윈 토토 (Thomas Munro, Tom Lane)
연결 재설정 (Michael Paquier)처럼 SSL 연결의 깨끗한 폐쇄를 피하십시오
고객에게 SSL 세션 티켓 발송 방지 (Tom Lane)
이 윈 토토 사항은 티켓 인식 클라이언트 측 SSL 코드로 재 연결 실패를 방지합니다.
설정 코드 윈 토토TCP_KEEPALIVES_IDLEOn Solaris (Tom Lane)
Postmaster 종료 및 즉시 다시 시작 (Tom Lane) 직후에 발행 된 문의 메시지를 기리는 통계 수집가를 윈 토토합니다.
이전 포스트 마스터 셧다운의 0.5 초 이내에 발행 된 통계 문의는 효과적으로 무시되었습니다.
통계 수집가의 수신 버퍼 크기가 100KB 이상인지 확인하십시오 (Tom Lane)
이것은 기본 수신 버퍼 크기가 그보다 적은 기존 플랫폼에서 통계 데이터 삭제 위험을 줄입니다.
대기가 처리 된 직후에 대기가 홍보 될 때 유효하지 않은 WAL 세그먼트의 가능한 생성 윈 토토xlog_switchWal Record (Andres Freund)
윈 토토Walsender클라이언트가 종료를 요청할 때 즉시 종료하려면 (Tom Lane)
윈 토토SighupandSigusR1Walsender 프로세스 처리 (Petr Jelinek, Andres Freund)
셧다운 체크 포인트 중 Walsender 트리거 공황 방지 (Andres Freund, Michael Paquier)
불필요하게 느린 재시작을 윈 토토WalreceiverPostmaster (Tom Lane)의 레이스 조건으로 인한 프로세스
매우 넓은 튜플 (Andres Freund)으로 논리 디코딩 실패 윈 토토
논리적 디코딩은 64KB보다 넓은 튜플에서 충돌했습니다 (압축 후에도 모든 데이터가 인라인). 이 사건은 만 발생합니다.복제 아이덴티티 전체그러한 튜플이 들어있는 테이블에 대해 활성화되어 있습니다.
논리적 디코딩 (Andres Freund) 중에 디스크에 쏟아진 작은 잠수함의 누설 윈 토토
이로 인해 임시 파일이 과도한 디스크 공간을 소비했습니다.
논리적 디코딩 슬롯 (Andres Freund, Petr Jelinek)을 생성하는 동안 스냅 샷을 구축하는 데 필요한 작업을 줄입니다.
이전 알고리즘은 열린 트랜잭션이 많은 서버에서 무자비하게 비싸다.
논리적 디코딩 슬롯의 생성 (Andres Freund, Petr Jelinek)의 생성을 무기한 지연시킬 수있는 레이스 조건을 윈 토토합니다.
SYSCACHE Invalidation Events (Tom Lane) 처리시 오버 헤드 감소
이것은 빈번한 캐시 무효화를 유발하는 논리적 디코딩에 특히 도움이됩니다.
an을 윈 토토하십시오.삽입또는업데이트도메인 오버 배열 유형 (Tom Lane) 인 열의 둘 이상의 요소에 할당
서브에서 창 함수를 사용할 수 있도록 허용select집계 함수 (Tom Lane)의 인수 내에있는
자율적 인 배열 유형을 방해하는 동안Alter ... Rename(Vik Fearing)
이전에, 우리는 충돌하는자가 생성 배열 유형의 이름을 바꾸는 동안Create; 이 윈 토토 사항은 해당 동작이 운영 변경으로 확장됩니다.
ALTER USER ... SET모든 구문 변형을 허용합니다.변경 역할 ... 세트do (Peter Eisentraut)
데이터 유형을 변경할 때 종속성 정보를 올바르게 업데이트합니다 I/O 인수 또는 반환 유형에서opaque올바른 유형 (Heikki Linnakangas)
유형 만들기업데이트 I/O 기능은이 긴 관찰 스타일로 선언되었지만 유형에 대한 종속성을 기록하는 것을 잊어 버렸습니다.드롭 타입깨진 기능 정의를 남겨 두려면.
아마도 메모리 사용을 줄이면분석프로세스 atsvector열 (Heikki Linnakangas)
곱하거나 나누는 경우 불필요한 정밀 손실 및 조잡한 반올림 윈 토토Money정수 또는 부유물 별 값 (Tom Lane)
식별자를 구문 분석하는 함수의 공백 검사를 조여regprocedurein ()
(Tom Lane)
우세한 로케일에 따라, 이러한 함수는 멀티 바이트 문자의 조각을 공백으로 잘못 해석 할 수 있습니다..
관련성 사용#define컴파일하는 동안 Perl의 기호pl/perl(Ashutosh Sharma, Tom Lane)
이것은 이식성 문제를 피하고 일반적으로 A로 나타납니다"핸드 셰이크"라이브러리로드 중 불일치, 최근 Perl 버전으로 작업 할 때
inlibpq, 실패한 연결 시도 후 GSS/SASL 및 SSPI 인증 상태를 재설정합니다 (Michael Paquier)
이 작업을 수행하지 못하면 SSL에서 비 SSL 연결로 떨어질 때 SSL 시도에서 GSS/SASL 실패는 항상 비 SSL 시도가 실패 할 수 있음을 의미합니다. SSPI는 실패하지 않았지만 메모리가 유출되었습니다.
inPSQL, 고장stdin에서 복사키보드 EOF 신호로 끝납니다.stdin에서 복사시도되었습니다 (Thomas Munro)
이 오해는 BSD 유래 플랫폼 (MACOS 포함)에서 관찰되었지만 대부분의 다른 사람들에게는 그렇지 않았습니다.
윈 토토pg_dumpandPG_RESTORE방출 할상쾌한 뷰마지막으로 명령 (Tom Lane)
이것은 구체화 된보기가 다른 사용자가 소유 한 테이블을 말할 때 덤프/복원 중 오류를 방지합니다.
개선pg_dump/PG_RESTORE의 오류 조건에 대한보고Zlib(Vladimir Kunschikov, Álvaro Herrera)
윈 토토pg_dumpwith-Clean예상대로 이벤트 트리거를 떨어 뜨리는 옵션 (Tom Lane)
이제 이벤트 트리거 소유권을 올바르게 할당합니다. 이전에는 복원 스크립트를 실행하는 슈퍼 서서가 소유 한 것으로 복원되었습니다.
윈 토토pg_dump빈 연산자 클래스 (Daniel Gustafsson)에 대해 유효하지 않은 SQL을 방출하지 않음
윈 토토pg_dumpWindows에서 Stdout으로 출력 (Kuntal Ghosh)
STDOUT에 작성된 압축 된 일반 텍스트 덤프에는 파일 디스크립터를 이진 모드에 넣지 않아 부패한 데이터가 포함됩니다.
윈 토토pg_get_ruledef ()
에 대한 올바른 출력을 인쇄하려면ON SELECT열이 바뀌는 뷰의 규칙 (Tom Lane)
일부 코너 케이스에서pg_dump의존pg_get_ruledef ()
덤프 뷰를 위해서는이 오류가 덤프/재 장전 실패를 초래할 수 있습니다.
a와 같은 빈 제약 조건으로 외부 조인의 덤핑 윈 토토자연 왼쪽 조인공통 열이 없음 (Tom Lane)
From표현식이 함수 호출처럼 보이는 무언가로 붕괴되지 않는 경우 조항
윈 토토pg_basebackupWindows에서 Stdout으로 출력 (Haribabu Kommi)
STDOUT에 작성된 백업에는 파일 디스크립터를 이진 모드에 넣지 않아 손상된 데이터가 포함됩니다.
윈 토토pg_upgrade결말 월드 레코드에 없음을 확인하려면Wal_level = 최소(Bruce Momjian)
이 조건은 업그레이드 된 대기 서버를 다시 연결하지 못하게 할 수 있습니다.
inpostgres_fdw, 이후 원격 서버에 대한 연결을 다시 설정Alter Server또는사용자 매핑 변경Commands (Kyotaro Horiguchi)
이렇게하면 연결 매개 변수에 영향을 미치는 옵션 변경이 즉시 적용됩니다.
inpostgres_fdw, 원격 트랜잭션 제어 명령 취소 허용 (Robert Haas, Rafia Sabih)
이 변경 사항은 이전보다 더 많은 경우보다 응답하지 않는 원격 서버를 기다릴 수 있습니다.
증가max_syscache_callbacks확장을위한 더 많은 공간을 제공하려면 (Tom Lane)
항상 사용-fpic, 아님-fpic, GCC (Tom Lane)로 공유 라이브러리를 구축 할 때
이것은 차이를 만드는 플랫폼에서 더 큰 확장 라이브러리를 지원합니다.
최근 Perl 버전 (Andrew Dunstan)의 경고 또는 오류를 피하기 위해 Microsoft MSVC의 빌드 스크립트에서 Unescaped-Braces 문제를 윈 토토하십시오.
MSVC가 구축 된 경우를 처리하는 경우OpenSSL도서관 내에 있지 않음VC하위 디렉토리 (Andrew Dunstan)
MSVC 빌드에서 적절한 포함 경로 추가libxml2헤더 파일 (Andrew Dunstan)
이것은 표준 Windows 설치에서 사물을 움직여야 할 필요성을 윈 토토합니다.libxml2.
MSVC 빌드에서 이름이 지정된 TCL 라이브러리를 인식합니다tcl86.lib(Noah Misch)
MSVC 빌드, 명예provace_flags설정에서vcregress.pl의 명령 줄 (Andrew Dunstan)