범퍼카 토토 노트

범퍼카 토토

E.21. 범퍼카 토토 9.5.5

출시 날짜 : 2016-10-27

이 범퍼카 토토에는 9.5.4의 다양한 수정 사항이 포함되어 있습니다. 9.5 주요 범퍼카 토토의 새로운 기능에 대한 정보는 참조섹션 E.26.

E.21.1. 버전 9.5.5로의 마이그레이션

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

그러나 아래의 첫 번째 ChangeLog 항목에 설명 된 버그의 설치에 영향을받은 경우 업데이트 후 손상된 여유 공간 맵을 수리하기 위해 조치를 취해야 할 수도 있습니다..

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

E.21.2. 변화

  • 관계 여유 공간지도 및 가시성 맵의 잘림의 월 로깅 수정 (Pavan Deolasee, Heikki Linnakangas)

    충돌 복구 중에 이러한 파일을 올바르게 복원하지 못하거나 대기 서버에서 잘못 작성할 수있었습니다. 여유 공간지도의 가짜 항목은 관계 자체에서 잘린 페이지에 액세스하려고 시도 할 수 있으며, 일반적으로와 같은 오류를 생성합니다."블록을 읽을 수 없음xxx: 8192 바이트 " 만 읽기 만 읽기. CheckSumming이 활성화 된 경우 가시성 맵의 체크섬 고장도 가능합니다.

    문제가 있는지 여부를 결정하고 수리하는 경우또는.

  • Big-Endian Machines (Tom Lane)에서 Gin Index Wal 레코드의 잘못된 생성 수정

    전형적인 증상은입니다."예기치 않은 진 리 리프 액션"WAL Replay 동안의 오류.

  • 수정업데이트/공유 선택후속 적용 트랜잭션 (Álvaro Herrera)으로 업데이트 된 튜플을 올바르게 잠그려면

    9.5 세 이후에select때때로 그러한 튜플을 전혀 반환하지 못할 것입니다. 실패는 이전 릴리스에서 발생하는 것으로 입증되지 않았지만 동시 업데이트로 가능할 수 있습니다.

  • CTE 스캔 (Tom Lane)과 관련된 평가 플랜 Qual 수정

    Recheck는 항상 CTE를 반환 노 행으로 볼 수 있으며, 일반적으로 최근 업데이트 된 행을 업데이트하지 못하는 것으로 나타납니다.

  • 백업 할 때 투기 적으로 삽입 된 토스트 튜플의 삭제 수정삽입 ... 충돌(Oskari Saarenmaa)

    두 트랜잭션이 거의 동시에 충돌하는 튜플을 삽입하려고하는 레이스 조건에서 패자는에 실패합니다."보이지 않는 튜플을 삭제하려고 시도했습니다"삽입에 토스트 필드가 포함 된 경우 오류.

  • 자기 분화 삽입에 대한 직렬화 오류를 던지지 마십시오삽입 ... 충돌(Thomas Munro, Peter Geoghegan)

  • 하위 쿼리 (Andrew Gierth)의 해시 집계에서 이전 결과의 부적절한 반복 수정

    집계 상태 값의 이전에 계산 된 해시 테이블을 재사용 할 수 있는지 확인하는 테스트는 외부 쿼리 참조가 집계 인수 표현식에 나타날 가능성을 무시했습니다. 그러한 참조의 가치의 변화는 해시 테이블을 다시 계산해야하지만 그렇지 않았습니다..

  • Query-Lifespan 메모리 누출 수정업데이트a에기본 키또는복제 아이덴티티index (Tom Lane)

  • 수정COPY로드 레벨 보안이 활성화 된 테이블의 열 이름 목록 (Adam Brightwell)

  • 수정설명track_io_timingis on (Markus Winand)

    이전에 XML 출력-형식 옵션이 생성 된 구문 적으로 유효하지 않은 태그. 그것은 이제로 렌더링됩니다..

  • 측정되지 않은 시간 동안 0의 제로 인쇄 억제설명(Maksim Milyutin)

    특정 옵션 조합으로 인해 해당 조합에서 실제로 측정되지 않은 시간에 대해 제로 값을 인쇄했습니다. 우리의 일반 정책설명그러한 필드를 전혀 인쇄하지 않아야합니다.

  • 통계 수정Truncate준비된 거래에서 (Stas Kelvich)

  • 시간 초과 길이 수정진공테이블을 자르기 위해 독점 테이블 잠금을 기다리고 있습니다 (Simon Riggs)

    타임 아웃은 50 밀리 초가되었지만 실제로는 실제로 50 마이크로 초에 불과했습니다.진공의도 한 것보다 훨씬 쉽게 잘린 것을 포기합니다. 의도 한 값으로 설정하십시오.

  • 상속을 병합 할 때 버그 수정check테이블을 만들거나 변경하는 동안 제약 조건 (Tom Lane, Amit Langote)

    동일 허용check순서대로 부모와 자식 테이블에 추가 할 제약 조건. 부모 테이블에서 유효한 제약 조건을 a 병합 방지합니다.유효하지 않음아이의 제약. 마찬가지로 a의 병합 방지상속 없음상속 된 제약을 가진 아동 제약.

  • 현명한 가치 표시pg_settings.Unitformin_wal_sizeandmax_wal_size(Tom Lane)

  • |numeric_in ()andnumeric_recv ()(Tom Lane)

    우리는 스토리지 형식의 한계까지 숫자 값을 허용합니다 (더 이상1E100000), 그래서 상당히 무의미 해 보인다numeric_in ()1000 이상의 과학적 구조 지수를 거부했습니다. 마찬가지로, 그것은 바보였습니다numeric_recv ()입력 값에서 1000 자리 이상을 거부하려면

  • 버퍼 잠금 장치없이 튜플 가시성 테스트로 인한 매우 낮은 확률 데이터 손상 피하십시오 (Thomas Munro, Peter Geoghegan, Tom Lane)

  • 서버 재시작 (Julien Rouhaud, Craig Ringer)에서 커밋 타임 스탬프를 보존합니다

    withtrack_commit_timestamp켜진 켜기, 깔끔한 서버가 다시 시작된 후 오래된 커밋 타임 스탬프가 접근 할 수 없게되었습니다.

  • 서브 트랜잭션의 WAL 출력이 디스크 (Andres Freund)에 유출 될만큼 충분히 큰 경우 논리 WAL 디코딩을 제대로 작동하도록 수정합니다.

  • 약식 키 사용을 중단 할 때 정렬 오류 수정 (Peter Geoghegan)

    최악의 경우, 이로 인해 부패한 btree 지수가 발생할 수 있습니다.Reindex. 그러나 상황은 드물다.

  • 1GB (Andres Freund) 이상의 임시 관계를 자울 때 파일 설명 자 누설 수정

  • |STATDBY_MODE켜져 (Michael Paquier)

    더 많은 WAL 데이터를 가져 오는 WAL 수신기 프로세스가 없기 때문에 유용한 일을 할 수 없습니다. 그리고이 상황을 염두에두고 설계되지 않은 코드의 오해가 발생할 수 있습니다.

  • 이전에 사용 된 슬롯을 재활용 할 때 복제 슬롯 상태를 올바르게 초기화합니다 (Michael Paquier)

    슬롯의 모든 필드를 재설정하지 못하면 방지 할 수 있습니다진공죽은 튜플을 제거하는 것.

  • Linux (Tom Lane)에서 거대한 페이지를 사용하려고 할 때 실제 거대한 페이지 크기의 배수에 대한 라운드 공유 메모리 할당 요청

    이것은 가능한 실패를 피합니다munmap ()비정형 기본 기본 페이지 크기가있는 시스템에서. 충돌 회복 사례를 제외하고 로그 메시지 외에는 악영향이 없었습니다.

  • 동적 공유 메모리 제어 세그먼트의 ID (Robert Haas, Tom Lane)에 더 임의의 값을 사용합니다.

    이전에, 동일한 값이 매번 선택 될 것입니다.random ()그러나Srandom ()아직 호출되지 않았습니다. 상대적으로 무해하지만 이것은 의도 된 행동이 아니 었습니다.

  • Wind

    Windows가 때때로 반환ERROR_ACCESS_DENIED대신error_already_exists기존 세그먼트가있을 때. 이로 인해 전자가 복귀 할 수없는 오류라고 생각하여 우체국 마스터 스타트 업 실패로 이어졌습니다.

  • 수정pl/pgsql유형의 매개 변수 및 로컬 변수로 잘못 행동하지 않으려면int2vector또는oidvector(Tom Lane)

  • 여러 연결에서 SSL 컨텍스트를 공유하려고하지 마십시오libpq(Heikki Linnakangas)

    이것은 특히 다른 연결에 다른 SSL 매개 변수를 사용하려고 할 때 모듬 된 코너 버그가 발생했습니다.

  • 코너 케이스 메모리 누출 방지libpq(Tom Lane)

    보고 된 문제는 중 오류 보고서 누출과 관련이 있습니다pqreset (), 그러나 관련 사례가있을 수 있습니다.

  • makeECPG's-helpand-버전옵션은 다른 실행 파일 (Haribabu Kommi)과 일관되게 작동합니다.

  • 수정pgbench의 평균 대기 시간 계산 (Fabien Coelho)

    있을 때 계산이 잘못되었습니다\ sleep스크립트의 명령 또는 테스트 기간이 총 시간이 아닌 트랜잭션 수에 지정된시기.

  • inpg_upgrade, 이름 순서 (Tom Lane)의 라이브러리로드 가능성 확인

    이것은 언어 변환 모듈에서 기본 언어 및 데이터 유형 모듈에 이르기까지 교차 확장 종속성을 다루는 해결 방법입니다.

  • inpg_dump, 절대 덤프 범위 생성자 함수 (Tom Lane)

    이 감독은로 이어졌습니다.pg_upgrade생성자 함수의 중복 생성으로 인해 범위 유형을 포함하는 확장 기능이있는 고장.

  • inpg_dumpwith-c, 억제테이블 스페이스절의 조항데이터베이스 생성if-No-TableSpaces지정되어 있습니다 (Tom Lane)

  • makePG_RECEIVEXLOG올바르게 작업-synchronous슬롯없는 (Gabriele Bartolini)

  • 두 가지 지정을 허용하지 않음-소스 서버and-소스-타겟옵션pg_rewind(Michael Banck)

  • makepg_rewind끄기synchronous_commit소스 서버의 세션에서 (Michael Banck, Michael Paquier)

    이것은 허용pg_rewind소스 서버가 어떤 이유로 작동하지 않는 동기 복제를 사용하는 경우에도 작동합니다.

  • inpg_xlogdump, 사용시 새로운 WAL 세그먼트를 개설-팔로우옵션 (Magnus Hagander)

    이것은 서버의 다음 세그먼트 생성에 가능한 지연이 가능합니다.

  • 수정pg_xlogdump하나 이상의 페이지 (Pavan Deolasee)에 걸친 연속 레코드로 시작하는 WAL 파일에 대처하려면

  • 수정contrib/pg_buffercacheshared_buffers256GB (kaigai kohei)를 초과합니다

  • 수정Contrib/Intarray/Bench/Bench.pl결과를 인쇄하려면설명주어지면-e옵션 (Daniel Gustafsson)

  • 지원 OpenSSL 1.1.0 (Heikki Linnakangas)

  • 확장 테스트 (Craig Ringer)을 사용할 수 있도록 테스트 인프라를 탭하십시오.

    언제범퍼카 토토-enable-tap-tests, "설치"이제 PGX가 찾을 수있는 탭 테스트 용 Perl 지원 파일을 설치합니다. 이를 통해 비 코어 확장이 사용할 수 있습니다$ (provace_check)추가 테스트없이.

  • MSVC 빌드에서 포함pg_recvlogical클라이언트 전용 설치 (MAUMAU)

  • 최근 Windows 버전 (Michael Paquier)에서 추가 된 시간 영역 이름을 인식하려면 Windows 시간대 맵핑 업데이트

  • 쓸모없는 동적 시간 구역 약어의 실패 방지 (Tom Lane)

    동적 시간 구역 약어가 참조 된 시간대의 항목과 일치하지 않으면 시간대 이름과 동일하게 취급하십시오. 이것은 Iana가 시간대 데이터베이스에서 약어를 제거 할 때 예상치 못한 실패를 피합니다.tzdataRelease 2016F는 앞으로 다시 할 것 같습니다. 결과는 개별 약어를 인식하지 못하는 것으로 제한되지 않았다.PG_TIMEZONE_ABBREVS완전히 실패 할보기.

  • 시간대 데이터 파일 업데이트tzdata팔레스타인과 터키의 DST 법률 변경을위한 2016H, 터키 및 일부 지역의 역사적 교정을위한 2016H 출시. 남극 대륙, 구소련 및 스리랑카의 일부 시간대에 숫자 약어로 전환하십시오.

    Iana Time Zone 데이터베이스는 이전에 모든 시간 영역에 텍스트 약어를 제공했으며 때로는 지역 인구의 통화가 거의 없거나 전혀없는 약어를 구성했습니다. 그들은 영어 약어의 실제 사용에 대한 증거가없는 구역에서 숫자 UTC 오프셋을 사용하는 데 유리하게 해당 정책을 역전시키는 과정에 있습니다.범퍼카 토토타임 스탬프 입력에 대한 그러한 제거 된 약어를 ​​계속 받아 들일 것입니다. 그러나 그들은에 표시되지 않을 것입니다.PG_TIMEZONE_NAMES출력에 사용되거나 사용됩니다.

    이 업데이트에서amt는 더 이상 아르메니아 시간을 의미하는 것으로 표시되지 않습니다. 따라서 우리는를 변경했습니다.기본값약어를 Amazon 시간으로 해석하도록 설정 했으므로 UTC-4 UTC+4가 아닙니다.