Postgresql 9.4.26 문서화 | |||
---|---|---|---|
이전 | up | 부록 E. 범퍼카 토토 노트 | 다음 |
출시 날짜 : 2019-02-14
이 범퍼카 토토에는 9.4.20의 다양한 수정 사항이 포함되어 있습니다. 9.4 주요 범퍼카 토토의 새로운 기능에 대한 자세한 내용은 참조섹션 E.27.
thePostgreSQL커뮤니티는 2020 년 2 월 9.4.x 릴리스 시리즈의 업데이트 출시를 중단 할 것입니다. 사용자는 곧 새로운 릴리스 지점으로 업데이트하는 것이 좋습니다.
9.4.x.를 실행하는 사람들에게는 덤프/복원이 필요하지 않습니다.
그러나 9.4.18 이전 버전에서 업그레이드하는 경우 참조섹션 E.9.
기본적으로, 이후에 재 시도하는 대신 공황fsync ()
실패, 가능한 데이터 손상을 피하기 위해 (Craig Ringer, Thomas Munro)
일부 인기있는 운영 체제는 쓸 수 없을 때 커널 데이터 버퍼를 폐기하여 이것을보고fsync ()
실패. 우리가 재발행한다면fsync ()
요청은 성공할 것이지만 실제로 데이터가 손실되었으므로 계속되는 위험 데이터베이스 손상이 손상됩니다. 대신 공황 상태를 높이면 WAL에서 재생할 수 있습니다. WAL은 그러한 상황에서 나머지 데이터 사본을 포함 할 수 있습니다.
새로운 서버 매개 변수data_sync_retry이것을 제어하기 위해 추가되었습니다. 그러한 시나리오에서 커널이 더러운 데이터 버퍼를 폐기하지 않는다고 확신하면 설정할 수 있습니다.data_sync_retrytoon오래된 행동을 복원하려면.
각 주요 릴리스 브랜치의 범퍼카 토토 노트를 해당 지점에 대한 문서에만 해당 지점에 포함시키고 나중에 모든 것 (Tom Lane)을 포함시킵니다.
이전 정책에 의해 유발 된 복제는 손을 떼고있었습니다. 우리의 계획은 프로젝트 웹 사이트에서 범퍼카 토토 노트의 전체 아카이브를 제공하는 것이지만 각 릴리스 내에 복제하지는 않습니다.
다중 버퍼 잠금 장치를 얻을 때 가능한 교착 상태를 피하십시오 (Nishant FNU)
핫 스탠드 쿼리와 진 인덱스 삭제의 재생 사이의 교착 상태를 피하십시오 (Alexander Korotkov)
인덱스 표현식 또는 전임자가 사용 중일 때 논리적 복제에서 가능한 충돌 수정 (Peter Eisentraut)
테이블 재 작성 중에 토스트 데이터의 쓸모없고 값 비싼 논리적 디코딩을 피하십시오 (Tomas Vondra)
동기 복제가 활성화 될 때 WAL 발신자의 서브 세트를 중지하기위한 로직 수정 (Paul Guo, Michael Paquier)
튜플 Deletion Wal Record (Stas Kelvich)에 잘못된 복제 아이덴티티 필드를 쓰지 마십시오.
충돌을 피하십시오libxml2NULL 오류 메시지를 반환합니다 (Sergio Conde Gómez)
Collation 할당의 일관되지 않은 처리로 인한 가짜 그룹 관련 파서 오류 수정 (Andrew Gierth)
경우에 따라 일치하는 것으로 간주되어야하는 표현식이 일치하는 것으로 간주되지 않았습니다. 콜라이트 가능한 데이터 유형에 대한 작업이 포함되어 있으면
비교 기능이 기본이되는지 확인최소 ()
또는greatest ()
(Tom Lane)이라고 가정하기보다는 누출이 있습니다.
BTREE 비교 함수에서 실제 정보 유출은 일반적으로 자발적이지만 원칙적으로는 일어날 수 있습니다.
외국 테이블 스캔 (Tom Lane)에서 측면 참조를 평가 해야하는 쿼리의 잘못된 계획 수정
합병 조인 비용의 코너 케이스 과소 평가 (Tom Lane)
플래너는 외부 키 범위가 내부 키 범위보다 훨씬 작을 때 합병 조인을 선호 할 수 있습니다. 내면에 너무 많은 중복 키가있어서 이것이 열악한 선택이더라도.
쿼리에 수천 개의 색인 성 조항 (Tom Lane)이 포함되어있을 때 O (n^2) 시간 성장을 피하십시오.
개선분석의 동시에 업데이트 된 행의 취급 (Jeff Janes, Tom Lane)
이전에, 진행중인 트랜잭션으로 삭제 된 행은 생략되었습니다분석의 샘플이지만, 이는 그들을 포함하는 것보다 더 많은 불일치로 이어지는 것으로 밝혀졌습니다. 사실상 샘플은 이제의 MVCC 스냅 샷에 해당합니다.분석의 시작 시간.
makeTruncate다른 세션의 임시 테이블 인 상속 자식 테이블을 무시합니다 (Amit Langote, Michael Paquier)
이것은 가져옵니다Truncate다른 명령의 행동과 일치합니다. 이전에는 그러한 사례가 일반적으로 실패로 끝났습니다.
허용Unlisten뜨거운 스탠드 비 모드 (Shay Rojansky)
이것은 반드시 NO-OP입니다.듣기핫 스탠드 모드에서는 허용되지 않습니다. 그러나 더미 작업을 허용하면 클라이언트의 세션 상태 리 세트 로직이 단순화됩니다.
일부 스키마 및 데이터 유형 권한 목록 (Tom Lane)의 역할 종속성 누락 수정
경우에 따라 권한이 부여 된 역할을 삭제할 수있었습니다. 이로 인해 즉각적인 문제는 발생하지 않았지만 후속 덤프/재 장전 또는 업그레이드는 실패 할 수 있으며, 모든 수평선 역할 이름에 특권을 부여하려는 시도와 관련된 증상.
제약 조건 이름 변경 후 관계 캐시가 올바르게 업데이트되도록하십시오 (Amit Langote)
남은 임시 테이블을 제거하는 것에 대해 Autovacuum을 더 공격적으로 만들고 동안 남은 임시 테이블을 제거하십시오.Temp(Álvaro Herrera)
이것은 추락 된 세션의 잔재물이 더 즉시 정리되도록하는 데 도움이됩니다.
빈 진 인덱스 페이지가 너무 빨리 회수되는 것을 방지하여 동시 검색의 실패 (Andrey Borodin, Alexander Korotkov)
Float-to-Integer 강제의 에지 사례 고장 (Andrew Gierth, Tom Lane)
최대 유효한 정수 값보다 약간 높은 값은 거부되지 않은 다음 오버플로하여 대신 최소 유효한 정수를 생성합니다. 또한 최소 또는 최대 정수 값으로 반올림 해야하는 값이 잘못 거부 될 수 있습니다.
허용 설정client_min_messages보다 높음오류(Jonah Harris, Tom Lane)
이전 에이 변수를 설정할 수있었습니다치명적또는panic, 클라이언트에 대한 일반 오류 메시지의 전송을 억제하는 효과가 있습니다. 그러나 그것은에 주어진 보증과 상반됩니다.PostgreSQL와이어 프로토콜 사양, 일부 클라이언트가 매우 혼란스러워졌습니다. 해제 된 지점에서는 그러한 설정을 의미로 조용히 처리 하여이 문제를 해결하십시오.오류대신. 버전 12 이상은 그 대안을 모두 거부 할 것입니다.
수정ecpglib사용하려면Uselocale ()
또는_configthreadlocale ()
선호하는setLocale ()
(Michael Meskes, Tom Lane)
이후setLocale ()
는 스레드 로컬이 아니며 스레드-안전이 아닐 수도 있습니다. 이전 코딩은 다중 스레드에서 문제를 일으켰습니다ECPG응용 프로그램.
숫자 데이터에 대한 잘못된 결과 수정ECPG SQLDA(SQL 디스크립터 영역) (Daisuke Higuchi)
선행 제로가있는 값은 올바르게 복사되지 않았습니다.
makePSQL의 라텍스 출력 형식은 특수 문자를 올바르게 렌더링합니다 (Tom Lane)
Backslash 및 기타 ASCII 구두점 문자가 올바르게 렌더링되지 않았으므로 출력의 문서 구문 오류 또는 잘못된 문자로 이어집니다..
수정pg_dump의 기본 키 (Tom Lane)에 대한 간접 종속성으로 구체화 된 뷰 처리
이로 인해 그러한 뷰의 덤프 아카이브 항목이 잘못 표지되어 무해한 경고가 발생했습니다."올바른 섹션 순서가 아닌 아카이브 항목"; 덜 무해한,와 같은 레이블에 따라-섹션, 잘못 행동 할 수 있습니다.
일부 플랫폼에서 널 포인터-언급 충돌을 피하십시오pg_dump또는PG_RESTORE오류를보고하려고합니다 (Tom Lane)
수정Contrib/Hstore빈의 올바른 해시 값을 계산하려면hstore버전 8.4 또는 그 이전 (Andrew Gierth)에서 생성 된 값
이전 코딩은 빈과 동일한 결과를 제공하지 않았습니다hstore최신 버전으로 생성 된 값이므로 해시 조인 또는 해시 집계에서 잘못된 결과가 발생할 수 있습니다. 구축 된 해시 인덱스를 다시 알리는 것이 좋습니다hstore열, 테이블에 원래 8.4까지 저장된 데이터가 포함되어 있고 그 이후로 덤프/다시로드되지 않은 데이터가 포함될 수 있습니다.
큰 입력이 큰 충돌 및 과도한 런타임을 피하십시오Contrib/Intarray'sgist__int_ops색인 지원 (Andrew Gierth)
조정구성의 선택 스레딩 관련 컴파일러 플래그 및 라이브러리 선택은 나중에 일치합니다PostgreSQL범퍼카 토토 DO (Tom Lane)
9.4 및 9.5 지점에서 이전에 사용 된 코딩은 일부 새로운 플랫폼에서 완전히 실패하므로 9.6 이상이 수행 한 작업과 동기화됩니다..
새로운 MakeFile 변수 지원PG_CFLAGS, pg_cxxflags및PG_LDFLAGSinPGXS빌드 (Christoph Berg)
이것은 확장 빌드 프로세스의 사용자 정의를 단순화합니다.
가정하지 않도록 Perl-Coded 빌드 스크립트 수정"."최근 Perl 버전에는 포함되지 않기 때문에 검색 경로에 있습니다 (Andrew Dunstan)
OpenBSD (Tom Lane)에서 문제를 해결하는 서버 명령 줄 옵션 수정
시간대 데이터 파일 업데이트TZDATAKazakhstan, Metlakatla 및 Sao Tome 및 Principe의 DST 법률 변경에 대한 2018i 출시. Kazakhstan의 Qyzylorda Zone은 2로 나뉘어 일부 지역이 UTC 오프셋을 변경하지 않았기 때문에 새로운 구역 아시아/Qostanay를 만듭니다.