Postgresql 9.4.26 문서화 | |||
---|---|---|---|
이전 | up | 부록 E. 토토 꽁 머니 노트 | 다음 |
출시 날짜 : 2018-11-08
이 토토 꽁 머니에는 9.4.19의 다양한 수정 사항이 포함되어 있습니다. 9.4 주요 토토 꽁 머니의 새로운 기능에 대한 자세한 내용은 참조섹션 E.27.
9.4.x.를 실행하는 사람들에게는 덤프/복원이 필요하지 않습니다.
그러나 9.4.18 이전 버전에서 업그레이드하는 경우 참조섹션 E.9.
코너 케이스 실패 수정has_foo_privilege ()
기능 가족 (Tom Lane)
유효하지 않은 개체 OID가 제공 될 때 오류를 던지지 않고 널 리턴 NULL. 이 기능 중 일부는 이미 그 사실을 제대로 얻었지만 전부는 아닙니다.has_column_privilege ()
일부 플랫폼토토 꽁 머니 추가로 충돌 할 수있었습니다.
방지 O (n^2) 긴 줄에 정규 표현식 일치/분할 함수의 둔화 (Andrew Gierth)
O (N^3) 긴 문자열에 대한 Lexer의 둔화를 피하십시오+또는-캐릭터 (Andrew Gierth)
외부 쿼리가 뒤로 스캔 될 때 하위 계획의 잘못 실행을 수정합니다 (Andrew Gierth)
실패 수정업데이트/삭제 ... 현재의 위치 ...참조 커서 (Tom Lane)를 되 감는 후
여러 관계 (특히 상속 트리)를 스캔하는 커서는 이전 관계로 다시 wound 경우 잘못된 동작을 일으킬 수 있습니다.
수정평가 플랜 Qual
조건부토토 꽁 머니 실행 된 이니시 이플란드를 올바르게 처리하려면 (Andrew Gierth, Tom Lane)
이로 인해 상관되지 않은 하위와 같은 코드가 포함 된 경우 동시 업데이트에서 충돌이 발생하기 어려운 충돌 또는 잘못된 답변이 발생했습니다.select내부CASE구성.
u+ffff 위의 유니 코드 문자에 대한 Windows에 대한 문자 클래스 검사 수정 수정 (Tom Lane, Kenji Uno)
이 버그는 전체 텍스트 검색 작업에 영향을 미쳤습니다.Contrib/ltreeandContrib/PG_TRGM.
외국 테이블이 소유 한 시퀀스가 처리되는지 확인하십시오Alter Owner테이블 위 (Peter Eisentraut)
소유권 변경은 그러한 시퀀스로도 전파되어야하지만 이것은 외국 테이블토토 꽁 머니 누락되었습니다.
공간의 과도한 할당 수정array_out ()
의 결과 문자열 (keiichi hirobe)
반복 된 SP-Gist 인덱스 스캔에서 메모리 누출 수정 (Tom Lane)
SP-Gist를 사용하는 제외 제약 조건이 단일 명령토토 꽁 머니 많은 새로운 인덱스 항목을받는 경우에만 중요한 것으로 알려져 있습니다..
ApplyLogicalMappingFile ()
완료되면 매핑 파일을 닫습니다 (Tomas vondra)
이전에, 파일 디스크립터가 유출되어 결국 논리적 디코딩 중에 고장이 발생했습니다.
맵핑 된 카탈로그 테이블이 반복적으로 다시 작성되는 경우를 처리하려면 논리 디코딩 수정 (예 : 에 의해진공 Full(Andres Freund)
서버 시작 방지Wal_level기존 복제 슬롯 (Andres Freund)을 지원하기 위해 너무 낮은 값으로 설정
유틸리티 명령이 무한 재귀를 일으키는 경우 충돌을 피하십시오 (Tom Lane)
핫 스탠드를 초기화 할 때 마스터의 2 상 트랜잭션으로 인한 중복 XID에 대처하십시오 (Michael Paquier, Konstantin Knizhnik)
무작위 화random ()
부트 스트랩 및 독립형 백엔드의 시드 및 ininitdb(Noah Misch)
이 변화의 주요 실질적인 효과는 시나리오를 피하는 것입니다.initdb항상 동일한 임의의 시드를 사용하여 발생하는 이름 충돌로 인해 Posix 공유 메모리를 사용할 수 없다고 실수로 결론을 내릴 수 있습니다.
DSM 할당이 중단되도록 허용 (Chris Travers)
WAL (Alexander Korotkov, Sivasubramanian Ramasubramanian)에서 진 페이지 재생을 재생할 때 가능한 버퍼 오버런을 피하십시오.
Replication 슬롯 디렉토리의 FSYNC를 놓친 수정 (Konstantin Knizhnik, Michael Paquier)
사용시 예기치 않은 시간 초과 수정Wal_Sender_Timeout느린 서버에서 (Noah Misch)
핫 대기 프로세스가 올바른 WAL 일관성 지점 (Alexander Kukushkin, Michael Paquier)을 사용하는지 확인하십시오.
이것은 대기 서버가 WAL Replay 동안 일관된 데이터베이스 상태에 도달 한 직후 오해를 방지합니다.
서비스 할 때 Atexit 콜백을 실행하지 마십시오Sigquit(Heikki Linnakangas)
외국 서버 사용자 매핑을 확장 회원으로 기록하지 마십시오 (Tom Lane)
if사용자 매핑 만들기확장 스크립트토토 꽁 머니 실행되며, 사용자 매핑에 대한 확장 종속성이 생성되었으며, 이는 예상치 못한 것입니다. 역할은 확장 멤버가 될 수 없으므로 사용자 매핑도 아닙니다.
CSV 로그 파일을 여는 데있어 실패에 대해 Syslogger를 더 강력하게 만듭니다 (Tom Lane)
가능한 불일치 수정pg_dump's의 다른 개체 이름의 분류 (Jacob Champion)
PG_RESTORE방출시 테이블 이름을 윌 스키마-토토 꽁 머니피비활성화/트리거 활성화명령 (Tom Lane)
이것은 제한적인 검색 경로로 복원하는 새로운 실행 정책으로 인한 실패를 피합니다.
수정pg_upgrade이벤트 트리거를 올바르게 처리하려면 (Haribabu Kommi)
pg_upgrade이벤트 트리거의 확장 회원 상태를 보존하지 못했습니다.
수정pg_upgrade의 클러스터 상태 검사 대기 서버 (Bruce Momjian)토토 꽁 머니 올바르게 작동하는지
시행 유형큐브의 차원 제한Contrib/Cube기능 (Andrey Borodin)
이전에 일부 큐브 관련 함수는 거부 될 값을 구성 할 수 있습니다cube_in ()
, 덤프/재 장전 실패로 이어집니다.
수정Contrib/Unaccent'sUnaccent ()
사용 함수Unaccent함수와 동일한 스키마에있는 텍스트 검색 사전 (Tom Lane)
이전에는 검색 경로를 사용하여 사전을 찾아 보려고했는데, 검색 경로에 제한적인 값이 있으면 실패 할 수 있습니다..
MacOS 10.14 (Mojave) (Tom Lane)토토 꽁 머니 빌드 문제를 해결합니다.
조정구성추가하려면-isysroot전환CPPFLAGS; 이 없으면 PL/PERL 및 PL/TCL은 MACOS 10.14를 구성하거나 빌드하지 못합니다.PG_SYSROOT인수의 변수구성또는make.
이제 Perl 관련 확장이 쓰기가 권장됩니다$ (perl_includespec)대신-i $ (perl_archlibexp)/core컴파일러 플래그토토 꽁 머니. 후자는 대부분의 플랫폼토토 꽁 머니 계속 작동하지만 최근에는 MacOS가 아닙니다.
또한 더 이상 지정할 필요는 없습니다-with-tclconfig수동으로 PL/TCL이 최근 MACOS 토토 꽁 머니를 구축하도록합니다.
최근 Perl 버전 (Andrew Dunstan)에서 작동하도록 MSVC 빌드 및 회귀 테스트 스크립트 수정
Perl은 더 이상 기본적으로 검색 경로에 현재 디렉토리를 포함하지 않습니다. 그 주위토토 꽁 머니 일하십시오.
Visual Studio 2015 또는 Visual Studio 2017 (Michael Paquier, Haribabu Kommi)을 사용하여 Windows에서 구축을 지원합니다.
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)
이것은 한 스파이 기능이 다른 것을 호출 할 때 가능한 간섭을 방지합니다.
제공allocset_default_size및 뒷사각의 형제 매크로 (Tom Lane)
이 매크로는 9.6 이후 이후 존재했지만, 분기 별 코딩없이 확장이 그들에게 의존 할 수 있도록 구형 지점에 추가하라는 요청이있었습니다..
잠재적으로 정렬 된 페이지 버퍼 (Tom Lane) 사용하지 마십시오.
새로운 노동 조합 유형 발명pgalignedBlockandpgalignedxLogBlock, 이들을 일반 숯 어레이 대신 사용하여 컴파일러가 버퍼를 잘못 정렬 된 시작 주소에 놓을 수 없도록합니다. 이것은 정렬-냉담한 플랫폼에서 잠재적 인 핵심 덤프를 수정하고 오정렬을 허용하는 플랫폼에서도 성능을 향상시킬 수 있습니다.
makesrc/port/snprintf.cC99 표준의 정의에 따르면snprintf ()
의 결과 값 (Tom Lane)
이 코드가 사용되는 플랫폼 (주로 Windows)에서 C99 이전의 동작은 호출 코드가 C99 시맨틱을 가정하면 버퍼 오버런을 감지하지 못할 수 있습니다..
Clang컴파일러, 요구-msse2사용하려면 (Andres Freund)
이것은 부동 소수점 오버플로 점검을 놓친 문제를 피합니다.
수정구성의 결과 유형 감지strerror_r ()
(Tom Lane)
이전 코딩은 |ICCLinux (및 아마도 다른 경우)토토 꽁 머니libpq시스템보고 오류에 대한 유용한 오류 메시지를 반환하지 않습니다.
시간대 데이터 파일 업데이트TZDATA칠레, 피지, 모로코 및 러시아의 DST 법률 변경을위한 2018G, 중국, 하와이, 일본, 마카오 및 북한의 역사적 교정을위한 2018G