Postgresql 9.4.26 문서화 | |||
---|---|---|---|
이전 | up | 부록 E. 사설 토토 사이트 노트 | 다음 |
출시 날짜 : 2015-05-22
이 사설 토토 사이트에는 9.4.1의 다양한 수정 사항이 포함되어 있습니다. 9.4 주요 사설 토토 사이트의 새로운 기능에 대한 자세한 내용은 참조섹션 E.27.
9.4.x.를 실행하는 사람들에게는 덤프/복원이 필요하지 않습니다.
그러나 사용하는 경우Contrib/Citext'sregexp_matches ()
함수, 아래의 ChangeLog 항목을 참조하십시오.
또한 9.4.1 이전 버전에서 업그레이드하는 경우 참조섹션 E.26.
인증 타임 아웃이 만료되기 직전에 클라이언트가 단절 될 때 충돌이 발생하지 않으면 (Benkocs Norbert Attila)
타임 아웃 인터럽트가 세션 종료 시퀀스를 통해 파트 웨이를 발사 한 경우 SSL 관련 상태는 두 번 자유롭게되므로 일반적으로 충돌이 발생하여 다른 세션에 대한 서비스 거부입니다. 실험에 따르면 무단 원격 공격자가 버그를 다소 일관되게 트리거 할 수 있으므로 보안 문제로 취급 할 수 있습니다.
시스템 용도 고장 탐지 개선 (Noah Misch)
우리의 교체 구현snprintf ()
기본 시스템 라이브러리 호출에 의해보고 된 오류를 확인하지 못했습니다. 놓칠 수있는 주요 사례는 메모리 외 상황입니다.
일부 호출이 가능합니다*printf ()
오해가 잘못된 시간에 메모리 외 오류가 발생하면 기능 공개에 취약합니다. 우리는 위험이 크지 않다고 판단하지만이 분야사설 토토 사이트 계속 분석 할 것입니다.
incontrib/pgcrypto, 균일하게 해독 실패를 |"잘못된 키 또는 손상된 데이터"(Noah Misch)
이전에, 일부 키가 잘못된 암호 해독 사례로 인해 다른 오류 메시지 텍스트를보고 할 수 있습니다. 오류 보고서의 이러한 차이는 공격자가 다른 시스템에서 키를 복구하는 데 도움이 될 수 있음이 밝혀졌습니다.pgcrypto의 구체적인 동작도 마찬가지로 악용 가능합니다. 하나의 크기에 맞는 메시지를 사용하여 위험을 피하는 것이 더 낫습니다. (CVE-2015-3167)
다중 핵심 회원 ID의 랩 어라운드 (Álvaro Herrera, Robert Haas, Thomas Munro)
특정 사용 패턴에 따라, 이에 대한 기존 방어는 불충분 할 수 있습니다.PG_MULTIXACT/회원파일이 너무 일찍 제거되어 데이터 손실이 발생합니다. 이에 대한 수정에는 서버 수정이 포함되는 트랜잭션에 실패하여 구형 Multixact Member ID 데이터를 덮어 쓰고 Autovacuum을 개선하여 트랜잭션 ID 랩 어라운드와 마찬가지로 다중 공장 멤버 ID 랩 어라운드를 방지하기 위해 사전에 작용할 수 있도록 Autovacuum을 개선하는 것이 포함됩니다..
잘못된 선언 수정Contrib/Citext'sregexp_matches ()
함수 (Tom Lane)
이 기능은 반환해야합니다텍스트 설정 [], 핵심 함수와 마찬가지로 래퍼; 그러나 그들은 단지 돌아 오는 것으로 잘못 선언되었습니다텍스트 []. 이 실수에는 두 가지 결과가있었습니다. 첫째, 일치하지 않으면 스칼라 널 결과를 얻었지만, 얻어야 할 것은 빈 세트 (제로 행)입니다.g플래그는 효과적으로 무시되었습니다. 여러 경기가 있더라도 하나의 결과 배열 만 얻을 수 있기 때문입니다.
후자의 동작은 분명히 버그이지만, 이전 행동에 따라 응용 프로그램이있을 수 있습니다. 따라서 함수 선언은 기본적으로 변경되지 않습니다.PostgreSQL9.5. 9.5 이전 지점에서 구식 동작은의 버전 1.0에 존재합니다.citext확장, 버전 1.1사설 토토 사이트 수정 된 선언을 제공 한 반면 (not기본적으로 설치). 9.5 이전 지점에서 수정을 채택하려면 executeAlter Extension Citext 업데이트 '1.1'각 데이터베이스사설 토토 사이트citext가 설치되었습니다. (당신도 할 수 있습니다"업데이트"이를 취소 해야하는 경우 1.0으로 돌아갑니다.) 업데이트 방향 중 하나가 사용하는 뷰 나 규칙을 삭제하고 재현해야한다는 것을 알고 있어야합니다.citext'sregexp_matches ()
기능.
무한 날짜와 타임 스탬프 렌더Infinity로 변환 할 때JSON, 오류를 던지지 않고 (Andrew Dunstan)
수정JSON/JSONB'spopulate_record ()
andto_record ()
빈 입력을 올바르게 처리하는 기능 (Andrew Dunstan)
핫 업데이트 후 지연된 제외 제약 조건의 잘못된 점검 (Tom Lane)
잠재적으로 지연된 배제 제약 조건을 위반하는 새 행이 핫 업데이트 된 경우 (즉, 색인화 된 열 변경이없고 동일한 테이블 페이지에 다시 저장 될 수 있음) 나중에 동일한 트랜잭션사설 토토 사이트 동일한 트랜잭션사설 토토 사이트 배제 제약 조건이 최종적으로 충돌했을 때 예외 제약을 위반 한 것으로보고 될 것입니다.
외국 키 제약 조건을 변경할 때 동작 수정ALTER 테이블 ... ALTER SURPLEATIANT(Tom Lane)
같은 세션 또는 동시 세션사설 토토 사이트 나중에 운영이 상태 변경을 신속하게 존중하지 않을 수 있습니다.
Star-Schema 스타일 쿼리의 계획 수정 (Tom Lane)
때로는 큰 테이블을 효율적으로 스캔하려면 하나 이상의 다른 테이블 (일반적으로 큰 사실 테이블을 색인하기 위해 키가 필요한 치수 테이블)사설 토토 사이트 인덱스 매개 변수를 제공해야합니다. 플래너는 그러한 계획을 찾을 수 있어야하지만 지나치게 제한적인 검색 휴리스틱을 방해했습니다.
안티 조인의 부적절한 재주문 (결합되지 않음)과 다른 외부 조인 (Tom Lane)
플래너에 대한이 감독은 원인으로 관찰되었습니다"주어진 링 디드에 대한 reploptinfo를 찾을 수 없습니다"오류이지만 때로는 잘못된 쿼리 계획이 해당 일관성 검사를 지나서 조용한 쿼리 출력을 초래할 수 있습니다..
외부 결합 계획 노드 (Tom Lane)에서 하위 표현의 잘못된 일치 수정
이전에, 텍스트가 동일한 비 스트릭 하위 표현이 외부 결합 위와 아래에 모두 사용 된 경우, 플래너는 결합 아래에 계산 된 값을 재사용하려고 시도 할 수 있습니다.
Join Order Heuristic (Tom Lane)의 실패에 대처하려면 GEQO 플래너 수정
이 감독은로 이어지는 것으로 보입니다."모든 관계에 참여하지 못했습니다"쿼리의 오류측면, 그리고 그것은 다른 경우에도 일어날 수 있습니다.
AN의 대상이있을 때 행 잠금이 제대로 발생하는지 확인하십시오.업데이트또는삭제는 보안 배리어보기 (Stephen Frost)입니다.
데이터베이스 시작 중에 복제 슬롯 데이터를 동기화 할 때 읽기/쓰기에 열린 파일 사용 (Andres Freund)
일부 플랫폼에서 이전 코딩은와 같은 오류가 발생할 수 있습니다."fsync 파일"pg_replslot/... ": 불량 파일 설명 자".
시작시 가능한 교착 상태 수정max_prepared_transactions너무 작습니다 (Heikki Linnakangas)
타임 라인 스위치 (Heikki Linnakangas) 후에 쓸모없는 Preallocated Wal 파일을 보관하지 마십시오.
재귀 적으로fsync ()
충돌 후 데이터 디렉토리 (Abhijit Menon-Sen, Robert Haas)
이것은 곧 다른 충돌이 발생하면 일관성을 보장합니다. (두 번째 충돌은 문제가 있기 때문에 데이터베이스 충돌뿐만 아니라 시스템 수준 충돌이어야합니다.)
Sigterm (Álvaro Herrera)을받은 후 오류가 발생하면 Autovacuum 런처가 종료되지 않은 상태로 수정하십시오.
세션 시작 초기에 시스템 카탈로그에 대한 무효화 메시지를 처리하지 못하는 수정 (Tom Lane)
이 감독은 A와 동시에 시작하는 세션사설 토토 사이트 실패를 초래할 수 있습니다진공 Full시스템 카탈로그사설 토토 사이트
충돌 수정backendidgetTransactionIds ()
방금 종료 된 백엔드 프로세스에 대한 상태를 얻으려고 할 때 (Tom Lane)
예기치 않은 신호에 대처LockbufferforCleanup ()
(Andres Freund)
이 감독은 가짜 오류가 발생할 수 있습니다"Pincount를 기다리려고 시도하는 다중 뒷면 1".
수행시 충돌 수정복사전체 열 참조 (Tom Lane)를 포함하는 확인 제약 조건이있는 테이블에
알려진 실패 케이스는 9.4 이상사설 토토 사이트만 충돌하지만 9.3과 9.2에는 매우 유사한 코드가 있으므로 해당 분기도 뒤로 옮깁니다..
사용자와 관련하여 읽기 전용 트랜잭션을 커밋하는 동안 WAL 플러시 또는 동기 복제 대기를 피하십시오 (Andres Freund)
이전에, 핫 페이지 치기로 인해 WAL을 작성한 거래에서 커밋에서 지연이 발생할 수 있었으며, 모든 동기 복제본이 다운되면 스타트 업에 갇히는 것과 같은 바람직하지 않은 효과를 초래할 수 있습니다. 동기식 복제를 사용할 때 캐치 업 인터럽트 처리에 갇힌 세션도 관찰되었습니다.
바쁘게 바쁘게 기다리는 피하십시오reacky_min_apply_delay값 (Andres Freund)
임시 테이블에서 해시 인덱스를 조작 할 때 충돌 수정 (Heikki Linnakangas)
다른 프로세스가 인덱스를 동시에 수정하는 경우 해시 인덱스 버킷 분할 중 가능한 고장 수정
진 인덱스 진공 (Heikki Linnakangas)에서 메모리 누출 수정
인덱스 표현식을 분석하는 동안 인터럽트를 확인하십시오 (Jeff Janes)
분석인덱스 표현식을 여러 번 실행합니다. 그러한 표현에 느린 기능이 있다면를 취소 할 수있는 것이 바람직합니다.분석그 루프가 끝나기 전에.
보장Tableoida의 외국 테이블이 올바르게보고됩니다.Committed 읽기행을 잠그면 재창조가 발생합니다업데이트 선택, 업데이트또는삭제(Etsuro Fujita)
대상 서버의 이름 추가 객체에 대한 설명 외부 서버 사용자 매핑을위한 문자열 (Álvaro Herrera)
변환을위한 객체 아이덴티티 문자열에 스키마 이름 포함 (Álvaro Herrera)
설정 권장Include_Realmkerberos/gssapi/sspi 인증을 사용할 때 1 ~ 1
이 없으면 다른 영역의 동일한 이름을 가진 사용자를 구별 할 수 없습니다. 현재 이것은 문서 변경 일 뿐이지 만의 기본 설정이됩니다.PostgreSQL 9.5.
IPv4와 일치하는 코드 제거pg_hba.confIPv4-in-IPV6 주소 입력 (Tom Lane)
이 핵은 2003 년에 일부 Linux 커널이 IPv4 연결에 IPv4-in-IPV6 주소가있는 것으로보고한다는 보고서에 대한 응답으로 2003 년에 추가되었습니다. 그러나 논리는 실수로 9.0에서 깨졌습니다.pg_hba.conf작품, 사소한 사설 토토 사이트에서 할 일이 좋지 않은 것으로 보입니다.)
실제로 시작된 적이없는 종료 된 배경 근로자에 대한 상태보고 수정 (Robert Haas)
데이터베이스 충돌 후에는 표시되는 배경 작업자를 다시 시작하지 마십시오BGW_NEVER_RESTART(Amit Khandekar)
보고서 WAL FLUSH, 삽입, 위치식별 _system복제 명령 (Heikki Linnakangas)
이것은 가능한 시작 실패를 피합니다PG_RECEIVEXLOG.
Windows에서 서비스를 종료하는 동안 서비스 제어 관리자에게 상태 업데이트를 보내서 서비스가 너무 빨리 죽지 않도록합니다. 그리고PG_CTL셧다운을 기다릴 것입니다 (Krystian bigaj)
사용할 때 네트워크 교착 상태의 위험 감소libpq의 비 블로킹 모드 (Heikki Linnakangas)
다량의 데이터를 전송할 때 서버가 출력을 차단할 수있는 충분한 응답 데이터를 보낼 수있는 충분한 응답 데이터를 보낸 경우에도 입력 버퍼를 너무 자주 배출하는 것이 중요합니다. (일반적인 시나리오는 서버가 동안 통지 스트림을 보내고 있다는 것입니다.stdin에서 복사.) 이것은 일반 차단 모드에서 제대로 작동했지만 비 블로킹 모드에서는 그리 많지 않습니다. 우리는 수정했습니다libpq가능할 때 기회 적으로 배출되지만이 문제에 대한 완전한 방어에는 응용 프로그램 협력이 필요합니다. 응용 프로그램은 소켓이 읽기 준비가 될뿐만 아니라 쓰기 준비 조건을 감시해야합니다.pqconsumeInput ()
read-ready.
inlibpq, URI 연결 문자열에서 빈 값의 기타를 수정 (Thomas Fanghaenel)
배열 처리 수정ECPG(Michael Meskes)
수정PSQL첫 번째 매개 변수로 Uris와 Conninfo 문자열을 SALELLY 처리하려면\ connect(David Fetter, Andrew Dunstan, Álvaro Herrera)
이 구문은 오랫동안 허용되었지만 문서화되지 않은 (문서화되지 않은), 이전에는 일부 매개 변수가 주어진 문자열 대신 이전 연결에서 가져올 수 있으며, 이는 바람직하지 않은 것으로 동의했습니다..
잘못된 불만을 억제PSQL쓰기에 실패한 일부 플랫폼사설 토토 사이트~/.psql_history출구에서 (Tom Lane)
이 오해는 매우 오래된 (2006 년 이전) 버전의 버그에 대한 해결 방법에 의해 발생했습니다.libedit. 우리는 해결 방법을 제거하여이를 수정했는데, 이는 여전히 그러한 버전의를 사용하는 사람에게도 비슷한 실패가 나타납니다.libedit. 권장 사항 : 해당 라이브러리 업그레이드 또는 사용libreadline.
수정pg_dump의 규칙은 덤프하지 말아야 할 시스템이 제공하는 캐스트를 결정하는 규칙 (Tom Lane)
inpg_dump, 수정 실패-z압축 레벨 옵션과 함께-fd(Michael Paquier)
makepg_dump덤프 순서를 선택하는 동안 확장 구성 테이블 간의 외국 키 관계를 고려합니다 (Gilles Darold, Michael Paquier, Stephen Frost)
이 감독은 외국의 주요 제약 조건이 일시적으로 위반되어 다시로드되지 않는 덤프를 생성 할 수 있습니다.
가능하지 않음pg_dump동시 세션이 임시 기능을 생성하고 삭제하는 경우 실패 (Tom Lane)
그냥 뷰의 덤핑 수정값 (...)그러나 열 별명 (Tom Lane)이 있습니다.
보기의 복제 아이덴티티가 올바르게 설정되어 있는지 확인하십시오아무것도덤프/복원 중 (Marko Tiikkaja)
이전에, 뷰가 원형 의존성에 관여 한 경우, 잘못된 복제 아이덴티티 속성이 잘못 될 수 있습니다..
inpg_upgrade, 새로운 클러스터의 힘 타임 라인 1 (Bruce Momjian)
이 변경 사항이 WAL 이력 파일 누락에 대한 가짜 불만으로 인한 업그레이드 실패를 방지합니다.
inpg_upgrade, 진행하기 전에 부적절하게 연결할 수없는 데이터베이스를 확인하십시오 (Bruce Momjian)
inpg_upgrade, 생성 된 내용의 인용 디렉토리 경로delete_old_cluster스크립트 (Bruce Momjian)
inpg_upgrade, 데이터베이스 레벨 동결 정보를 올바르게 보존하십시오 (Bruce Momjian)
이 감독은 내 테이블에 대한 누락 된 파일 오류를 유발할 수 있습니다Postgresandtemplate1데이터베이스.
runpg_upgradeandPG_RESETXLOGWindows에 제한된 특권이있는 경우 관리자 (Muhammad Asif Naeem)가 실행할 때 실패하지 않도록
처리 개선readdir ()
디렉토리를 스캔 할 때의 실패initdbandPG_BASEBACKUP(Marco Nenciarini)
느린 정렬 알고리즘 수정Contrib/Intarray(Tom Lane)
SPARC V8 머신의 컴파일 고장 수정 (Rob Rowan)
침묵의 일부 빌드 경고 (Tom Lane)
시간대 데이터 파일 업데이트TZDATA이집트, 몽골 및 팔레스타인의 DST 법률 변경을위한 2015d 출시, 캐나다와 칠레의 역사적 변화. 또한 미국/Adak Zone (HST/HDT Not Hast/Hadt)에 대한 개정 구역 약어를 채택합니다.