출시 날짜 :2019-11-14
이 릴리스에는 11.5의 다양한 수정 사항이 포함되어 있습니다. Major Release 11의 새로운 기능에 대한 정보는 참조토토 사이트 PostgreSQL : 문서 : 11 : E.23. 릴리스 11.
11.x.를 실행하는 사람들에게는 덤프/복원이 필요하지 않습니다.
그러나 사용하는 경우Contrib/Intarray
GIST 인덱스를 사용한 확장 및 인덱스 검색에 의존합니다<@
운영자, 아래의 항목을 참조하십시오.
또한 11.1 이전 버전에서 업그레이드하는 경우 참조PostgreSQL : 문서 : 11 : E.22. 범퍼카 토토 11.1.
고장 실패Alter Table Set
사용자 정의 관계 옵션 (Michael Paquier)
모든 상위 테이블이 변경되지 않은 경우 곱하기 열의 열 변경을 허용하지 않습니다 (Tom Lane)
이전에, 이것은 허용되었는데, 지금은 동시대가 아닌 부모의 쿼리가 실패 할 것입니다.
실패 방지 동일한 대상 테이블이 AN메이저 토토 사이트 두 번 지정된 경우분석
트랜잭션 블록 내부의 명령 (Tom Lane)
예방진공
여전히 실행중인 거래와 관련된 오래된 다단계 ID를 동결 시키려고 시도한 것입니다 (Nathan Bossart, Jeremy Schneider)
이 사건은로 이어질 것입니다.진공
이전 트랜잭션이 종료 될 때까지 실패합니다.
제약 세트 설정 ... 연기
파티션 된 테이블메이저 토토 사이트 실패하여 트리거 부족에 대해 잘못 불평합니다 (Álvaro Herrera)
파티션에 대한 인덱스를 생성 할 때 실패 수정, 부모 파티션 테이블에 삭제 된 열 (Michael Paquier)이 포함 된 경우
사례 폴드 문자에 대한 플래너의 테스트 수정ilike
ICU Collation (Tom Lane)
이 실수는 플래너가 패턴의 많은 부분을 고정 접두사로 취급하여메이저 토토 사이트 파생 된 인덱스 스캔이되었습니다.ilike
조항은 그들이 찾을 수있는 항목을 놓칠 수 있습니다.
오프셋 표현식 확인창
쿼리의 표현이 조작 될 때 (Andrew Gierth) 조항이 처리됩니다.
이 감독은 오프셋이 사소한 표현 일 때 분류가 발생할 수 있습니다. 한 가지 예는 함수가 상환되면 그러한 표현식메이저 토토 사이트 함수 매개 변수 참조가 실패한다는 것입니다.
전체 열 변수의 처리 수정확인 옵션
표현 및 행 수준 보안 정책 표현 (Andres Freund)
이전에, 그러한 사용으로 인해 행 유형 불일치에 대한 가짜 오류가 발생할 수 있습니다.
Postmaster 실패 방지 Postmaster 실패 방지 Postmaster 실패 방지 Postmaster 아동 프로세스 배열 슬롯이없는 경우 병렬 쿼리가 배경 작업자에게 요청하는 경우 (Tom Lane)
a이면 가능한 이중 무료 방지업데이트 전
트리거는 이전 튜플을 반환합니다.
크래시 수정 if
또는 관련 작업에는 Constant-Null Array (Tom Lane)가 포함되어 있습니다.x
= Any (배열
)
수정“예상치 못한 Relkind”쿼리가 토스트 테이블에 액세스하려고 할 때의 오류 (John HSU, Michael Paquier, Tom Lane)
오류는 허가가 거부되었다고 말하지만 코드 리팩토링 중에이 사건이 깨졌습니다.
병렬 작업자 시작 중에 GUC 매개 변수를 설정하는 동안 오류가 발생할 때 관련 오류 컨텍스트 줄을 제공합니다.
직렬화 가능한 모드메이저 토토 사이트는 행의 올바른 버전 (Thomas Munro, Heikki Linnakangas)메이저 토토 사이트 로우 레벨 술어 잠금 장치가 획득되었는지 확인하십시오.
행의 가시 버전이 핫 업데이트 된 경우 잠금 장치가 현재 중독자에서 취해져서 직렬화를 보장하는 미묘한 실패가 발생할 수 있습니다..
fsync ()
열기/쓰기 파일에만 적용됩니다 (Andres Freund, Michael Paquier)
일부 코드 경로는 파일을 읽은 후이를 수행하려고 시도했지만 일부 플랫폼메이저 토토 사이트“불량 파일 디스크립터”또는 유사한 오류.
인코딩 변환이 이전보다 더 긴 문자열에서 성공하도록 허용 (Álvaro Herrera, Tom Lane)
이전에는 입력 문자열에 0.25GB의 단단한 제한이 있었지만 이제 변환 된 출력이 1GB를 초과하지 않는 한 작동합니다..
힙 상태 치기 중에 불필요한 카탈로그 조회를 피하십시오 (Thomas Munro)
여기메이저 토토 사이트 더 이상 보지 않은 인덱스를 확인할 필요가 없으며 점검으로 일부 워크로드메이저 토토 사이트 중요한 성능 문제가 발생했습니다. 최소한 교착 상태의 이론적 가능성도있었습니다.
창 함수를위한 불필요하게 불필요한 튜플 매장 생성을 피하십시오 (Andrew Gierth)
경우에 따라 튜플 스토리지에는 쿼리에 필요한 것뿐만 아니라 소스 테이블의 모든 열이 포함됩니다..
해시 테이블 그룹화에 대한 JIT 컴파일 평등 비교에 대한 실패 수정, 성능 손실 (Andres Freund)
허용Repalloc ()
큰 덩어리가 크기가 줄어들 때 공간을 돌려주는 것 (Tom Lane)
아카이브 복구가 끝날 때 임시 WAL 및 히스토리 파일이 제거되는지 확인하십시오 (Sawada Masahiko)
아카이브 복구에 실패를 피하십시오복구 _min_apply_delay
활성화 (Fujii Masao)
복구 _min_apply_delay
일반적 으로이 구성에 사용되지는 않지만 작동해야합니다.
게시자와 가입자가 테이블의 복제 아이덴티티 칼럼에 대한 다른 아이디어를 가지고있을 때 논리적 복제 실패 수정 (Jehan-Guillaume de Rorthais, Peter Eisentraut)
가입자에 대한 복제 아이덴티티의 일부로 열을 선언하는 것은 게시자에 전혀 존재하지 않을 때“음수 비트 맵 세트 멤버가 허용되지 않음”오류.
논리적 복제 Walsender (Craig Ringer, Álvaro Herrera)의 종료 중에 원치 않는 지연을 피하십시오.
논리적 복제에서의 시간 초과 처리 수정 Walreceiver 프로세스 (Julien Rouhaud)
잘못된 논리 방지Wal_Receiver_Timeout
논리적 복제 배포 작업메이저 토토 사이트.
논리적 디코딩을위한 시간-스탬프 복제 메시지 (Jeff Janes)
이 감독은 예를 들어과 같은 결과를 초래했습니다.pg_stat_subscription
.last_msg_send_time
보통 NULL로 읽습니다.
논리적 디코딩메이저 토토 사이트 스냅 샷 (Masahiko Sawada)을 재구성 할 때 하위 전환이 올바르게 설명되도록하십시오.
이 오류는 주장 실패로 이어집니다. 생산 구축에 나쁜 영향이 있는지 확실하지 않습니다.
백엔드 종료 중에 레이스 조건을 수정합니다. 백엔드 프로세스가 이전에 동기 복제가 발생하기를 기다렸을 때 (Dongming Liu)
수정Alter System
중복 항목에 대처하려면postgresql.auto.conf
(Ian Barwick)
Alter System
자체는 그러한 상태를 생성하지 않고 수정하는 외부 도구postgresql.auto.conf
그렇게 할 수 있습니다. 대상 변수의 중복 항목이 이제 제거되고 새 설정 (있는 경우)이 끝에 추가됩니다.
구성 파일에 빈 파일 이름이있는 지시문 포함 및 보고서 포함 내용 재귀를보다 명확하게 포함시킵니다 (Ian Barwick, Tom Lane)
PAM 인증을 사용할 때 버려진 연결에 대한 불만을 기록하지 않습니다 (Tom Lane)
LIBPQ 기반 클라이언트는 일반적으로 첫 번째 연결 시도가 실패 할 때까지 사용자에게 암호를 신뢰하지 않기 때문에 비밀번호가 필요할 때 일반적으로 두 개의 연결 시도를합니다. 따라서 서버는 클라이언트가 비밀번호를 요청할 때 연결을 닫을 때 쓸모없는 로그 스팸을 생성하지 않도록 코딩됩니다. 그러나 PAM 인증 코드는 해당 메모를 얻지 못했으며 팬텀 인증 실패에 대한 여러 메시지를 생성 할 것입니다.
불완전한 날짜 사양이 감지되지 않은 경우시간대가있는 시간
입력 (Alexander Lakhin)
시간 변동 UTC 오프셋이있는 시간대가 지정되면 날짜도 오프셋을 해결할 수 있어야합니다. 사용 된 구문에 따라이 점검은 경우에 따라 시행되지 않았으므로 가짜 출력을 생산할 수 있습니다.
의 오작동 수정bitshiftright ()
(Tom Lane)
비트 스트링 오른쪽 시프트 연산자는 비트 스트링 길이가 8의 배수가 아닐 때 결과의 마지막 바이트에 존재하는 패딩 공간을 제로화하지 못했습니다. 대부분의 작업에 보이지 않지만, 비 곤충 비트가 예상치 못한 비교 동작을 초래할 수 있기 때문에 비트 스트링 비교가 항상 비교를 무시하지 않기 때문에.
출력을 저장 한 결과 일치하지 않는 데이터가있는 경우bitshiftright ()
테이블메이저 토토 사이트와 같은 것을 고칠 수 있습니다
MyTab Set BitCol = ~ (~ bitcol) 여기서 bitcol! = ~ (~ bitcol);
as
조항JSON [B] _Populate_Record ()
andjson [b] _populate_recordset ()
(Tom Lane)
레코드 인수가 null이고 복합 유형이 선언되지 않은 경우를 사용해보십시오.as
대신 절. 이것은 권장되는 사용법이 아니지만 작동하는 데 사용되었으며 이제 다시 수행합니다.
네임 스페이스 노드를 선택할 때 충돌을 피하십시오xmltable
(채프먼 플랙)
간격 곱셈 (Yuya Watari)에서 가장자리 케이스 정수 오버플로의 감지 수정
메모리 누출 수정lower ()
, 어퍼 ()
및initcap ()
ICU 콜라이트를 사용할 때의 기능 (Konstantin Knizhnik)
충돌을 피하십시오Ispell
텍스트 검색 사전에는 잘못된 접미사 데이터가 포함되어 있습니다 (Arthur Zakirov)
Gin 게시 목록에 대한 잘못된 압축 로직 수정 (Heikki Linnakangas)
인접한 인덱스 TID 사이의 거리가 16TB를 초과하는 경우 진 게시 목록 항목은 7 바이트가 필요할 수 있습니다. 논리의 한 단계는 그것과 동기화되지 않았으며 값을 6 바이트 버퍼에 쓰려고 시도 할 수 있습니다. 원칙적으로 이것은 스택 오버런을 유발할 수 있지만, 대부분의 아키텍처에서는 다음 바이트가 사용되지 않은 정렬 패딩이 될 가능성이 높아 버그가 무해할 가능성이 높습니다. 어쨌든 버그는 치기가 매우 어려울 것입니다.
KNN-GIST (Alexander Korotkov)의 Infinity, NAN 및 NULL 값의 취급 수정
Query의 출력 순서가 잘못 될 수 있습니다 (일반적인 정렬 결과와 다르면 널 비 컬럼 값에 대해 계산 된 일부 거리가 무한대 또는 Nan이면.
KNN-SP-GIST (Nikita Glukhov)에서 NULL 검색 취급 수정
Windows메이저 토토 사이트의 추가 철자를 인식하십시오“노르웨이 (Bokmål)”로케일 이름 (Tom Lane)
ECPG 클라이언트에 포함 된 경우 실패를 컴파일 피하십시오ecpglib.h
enable_nls
정의 (Tom Lane)
이 위험은 잘못 배치 된 선언에 의해 만들어졌습니다 :ecpg_gettext ()
클라이언트 코드에 표시되지 않아야합니다.
inPSQL, 예기치 않은 연결 손실 및 성공적인 재 연결 후 서버에 대한 내부 상태를 다시 동기화합니다 (Peter Billen, Tom Lane)
일반적으로 이것은 국가가 어쨌든 동일하기 때문에 불필요합니다. 그러나 연결이 여러 서버 중 하나로 이어질 수있는 코너 케이스메이저 토토 사이트는 중요 할 수 있습니다. 이 변화는PSQL예를 들어 SSL이 사용 중인지 여부에 대한 대화식 메시지를 다시 발행하려면
플랫폼-특이 적 널 포인터 dereference inPSQL(Quentin Rameau)
inpg_dump
이전에, 다른 테이블의 두 트리거가 동일한 이름을 가진 경우 OID 기반 순서로 정렬되며 테이블 이름으로 정렬하는 것보다 바람직하지 않습니다. RLS 정책도 마찬가지로.
수정pg_dump8.3 Pre-8.3 소스 서버 (Tom Lane)에서 다시 작업하려면
이전 수정이 발생했습니다pg_dump항상 쿼리를 시도하려면pg_opfamily
, 그러나 해당 카탈로그는 버전 8.3 전에 존재하지 않습니다.
inPG_RESTORE, 취급-f-
의미로“stdout으로 출력”(Álvaro Herrera)
동기화PG_RESTORE의 다른 응용 프로그램과의 동작, 특히 V12 Pre Branch가 버전 12와 유사하게 작동하게합니다PG_RESTORE, 다중메이저 토토 사이트 작동하는 덤프/복원 스크립트의 단순화PostgreSQL버전. 이 변경 전에PG_RESTORE그러한 스위치를 의미와 같은 해석“이름이라는 파일로의 출력-
”, 그러나 그것을 원하는 사람은 거의 없습니다.
개선pg_upgrade'S는와 같은 표현을 변경 한 데이터 유형의 사용에 대한 확인line
(Tomas Vondra)
데이터 유형이 도메인 또는 복합 유형의 저장된 열에 기초한 경우 이전 코딩은 속일 수 있습니다..
파일 감지 중PG_BASEBACKUP(Jeevan Chalke)
inPG_BASEBACKUP, 백업이 끝날 때까지 fsync 출력 파일을하지 마십시오 (Michael Paquier)
fsync가 느려지면 이전 코딩이 타임 아웃 고장을 초래할 수 있습니다.
inpg_rewind온라인 소스 클러스터를 사용하면 타임 아웃을 비활성화합니다.pg_dumpdo (Alexander Kukushkin)
고장메이저 토토 사이트pg_waldumpwith-s
옵션, 연속 WAL 레코드가 페이지 경계 (Andrey Lepikhov)메이저 토토 사이트 정확히 끝나는 경우
inpg_waldump, 포함Newitemoff
Btree Page Split Records의 필드 (Peter Geoghegan)
inpg_waldumpwith--BKP-Details
옵션, 전체 페이지 쓰기 (Andres Freund)와 관련된 WAL 레코드에 대한 추가 최신 라인을 방출하지 마십시오
작은 메모리 누출 수정pg_waldump(Andres Freund)
수정VACUUMDB높음-Jobs
파일 디스크립터를 더 잘 처리하는 옵션 (Michael Paquier)
복합 유형의 교체를 더 잘 처리하려면 PL/PGSQL 수정 (Tom Lane)
복합 유형이 완전히 삭제 된 경우 PL/PGSQL 함수의 실행 사이에 동일한 이름의 새로운 유형이 생성됩니다. 복합 유형의 변수는 이제 새로운 정의와 일치하도록 업데이트됩니다.
수정Contrib/Amcheck
핫 스탠드 비기 동안 미등록 색인을 건너 뛰기 위해 (Andrey Borodin, Peter Geoghegan)
이 맥락메이저 토토 사이트 유효한 데이터가 반드시 포함되지 않으므로 확인하려고 시도하지 마십시오.
수정Contrib/Intarray
의 빈 배열에 대해 실패하지 않는 Gist Opclasses<@
(Tom Lane)
같은 조항
인덱스가 가능한 것으로 간주되지만 인덱스 검색은 빈 배열 값을 찾지 못할 수 있습니다. 물론 그러한 항목은 검색과 사소하게 일치해야합니다.array_column
<@constant_array
이를위한 유일한 실용적인 역전 수정은 만들 필요가 있습니다<@
색인 검색이 전체 색인을 스캔합니다. 이것이이 패치가하는 일입니다. 이것은 불행한 일입니다. 즉, 쿼리 성능이 평범한 순차적 스캔보다 나빠질 수 있음을 의미합니다.
이 변경에 의해 성능이 악영향을받는 응용 프로그램에는 몇 가지 옵션이 있습니다. 그들은이 버그가없는 진 지수로 전환 할 수 있거나 교체 할 수 있습니다
witharray_column
<@constant_array
. 이는 이전과 동일한 성능을 제공 할 것이며, 주어진 상수 배열의 비어 있지 않은 서브 세트를 찾을 수 있습니다. 이는 이전에 쿼리에서 확실하게 기대할 수있는 모든 것입니다..array_column
<@constant_array
및array_column
&& constant_array
수정구성의 최근 Red Hat Releases (Tom Lane)에서 작동하도록 libperl의 존재 테스트
이전에 사용자가 설정하면 실패 할 수 있습니다cflags
to-o0
.
PowerPC (Noah Misch)의 스핀 락에 대한 올바른 코드 생성 보장
이전 스핀 락 코딩을 통해 컴파일러는 해당 레지스터를 허용하지 않는 어셈블리 명령어와 함께 사용하기 위해 레지스터 0을 선택할 수있게하여 빌드 고장이 발생했습니다. 우리는이 버그와 일치하는 오랜 보고서가 하나만 보였지만 수정을 구축하려는 사람들에게는 문제가 발생할 수 있습니다.PostgreSQL비정형 컴파일러 옵션 코드 또는 사용.
PowerPC메이저 토토 사이트 XLC 컴파일러에 따라 피하십시오__fetch_and_add ()
함수 (Noah Misch)
XLC 13 and NEWER는이 기능을 사용량과 호환되지 않는 방식으로 해석하여 사용할 수없는 빌드를 초래합니다.PostgreSQL. 대신 사용자 정의 어셈블리 코드를 사용하여 수정하십시오.
AIX메이저 토토 사이트 컴파일러 옵션을 사용하지 마십시오-QSRCMSG
(Noah Misch)
이것은 컴파일러 오류 메시지의 형식을 변경하는 것 외에 다른 결과는 거의없는 XLC v16.1.0의 내부 컴파일러 오류를 피합니다..
OpenSSL (Andrew Dunstan)의 파일 경로에서 공백에 대처하기 위해 MSVC 빌드 프로세스 수정
시간대 데이터 파일 업데이트TZDATA피지와 노 포크 섬의 DST 법률 변화를위한 2019C, 앨버타, 오스트리아, 벨기에, 브리티시 컬럼비아, 캄보디아, 홍콩, 인디애나 (페리 카운티), 칼리닌그라드, 켄터키, 미시간, 노퍽 섬, 남성 및 터키.