| PostgreSQL 9.3.25 문서 | ||||
|---|---|---|---|---|
| 스포츠 토토 결과 PostgreSQL : 문서 : 9.3 : 릴리스 9.3.6 | PostgreSQL : 문서 : 9.3 : 메이저 토토 사이트 노트 | 부록 E. 토토 베이 참고 | 토토 사이트 순위 : 문서 : 9.3 : 릴리스 9.3.4 | |
출시일: 2014-07-24
이 릴리스에는 9.3.4의 다양한 토토 베이 사항이 포함되어 있습니다. 을 위한 9.3 주요 릴리스의 새로운 기능에 대한 자세한 내용은 참조토토 사이트 순위 PostgreSQL : 문서 : 9.3 : 릴리스 9.3.
9.3.X를 실행하는 경우 덤프/복원이 필요하지 않습니다.
그러나 이번 토토 베이에서는 논리 오류가 수정되었습니다.pg_upgrade및 색인 손상 일부 GiST 인덱스에 문제가 있습니다. 처음 두 개의 변경 로그 항목을 참조하세요. 아래에서 귀하의 설치가 영향을 받았는지 확인하고 그렇다면 어떤 조치를 취해야 할까요?
또한 9.3.4 이전 버전에서 업그레이드하는 경우, 보다토토 사이트 순위 : 문서 : 9.3 : 릴리스 9.3.4.
에pg_upgrade, 제거pg_multixact다음 사람이 남긴 파일initdb(브루스 몸지안)
9.3.5 이전 버전을 사용한 경우pg_upgrade데이터베이스 클러스터를 다음으로 업그레이드합니다. 9.3, 파일이 남아 있을 수 있습니다.$PGDATA/pg_multixact/offsets/0000그러면 안 됩니다 거기에 있고 결국 문제를 일으킬 것입니다.진공. 그러나, 일반적인 경우 이 파일은 실제로 유효하므로 유효하지 않아야 합니다. 제거됨.귀하의 설치에 이것이 있는지 확인하려면 문제가 발생하면 다음 데이터베이스에서 슈퍼유저로 이 쿼리를 실행하세요. 무리:
WITH 목록(파일) AS (SELECT * FROM pg_ls_dir('pg_multixact/offsets'))
SELECT EXISTS (SELECT * FROM 목록 WHERE 파일 = '0000') AND
존재하지 않음(SELECT * FROM 목록 WHERE 파일 = '0001') AND
존재하지 않음(SELECT * FROM 목록 WHERE 파일 = 'FFFF') AND
존재함(SELECT * FROM 목록 WHERE 파일 != '0000')
AS 파일_0000_removal_required;
이 쿼리가 반환되는 경우t, 수동으로 파일을 제거하세요$PGDATA/pg_multixact/offsets/0000. 다음과 같은 경우에는 아무것도 하지 마세요. 쿼리가 반환됩니다.f.
다음에서 패딩 바이트를 올바르게 초기화합니다.contrib/btree_gist색인비트열(Heikki Linnakangas)
이 오류는 값으로 인해 잘못된 쿼리 결과를 초래할 수 있습니다. 동등하다고 여겨지지 않고 동등하다고 비교되어야합니다. GiST 사용자 인덱스비트또는비트 다양함열은 다음과 같습니다REINDEX그들 이 업데이트를 설치한 후 색인이 생성됩니다.
GIN 목록 페이지를 삭제할 때 찢어진 페이지로부터 보호합니다(Heikki 린나캉가스)
이 토토 베이은 시스템 충돌 시 발생할 수 있는 색인 손상을 방지합니다. 페이지 업데이트가 디스크에 기록되는 동안 발생합니다.
재생하는 동안 GiST 인덱스 페이지의 오른쪽 링크를 지우지 마세요 WAL(Heikki Linnakangas)의 업데이트
이 오류는 GiST의 일시적인 잘못된 답변으로 이어질 수 있습니다. Hot Standby에서 인덱스 스캔이 수행됩니다.
SP-GiST에 삽입하는 동안 코너 케이스 무한 루프 토토 베이 텍스트 인덱스(Tom Lane)
SP-GiST 색인 검색에서 잘못된 답변을 토토 베이하세요-|-(범위 인접) 연산자(Heikki 린나캉가스)
다음에 대한 랩어라운드 처리 토토 베이pg_multixact/members(알바로 에레라)
잘라내기pg_multixact중 체크포인트, 도중이 아님진공(알바로 헤레라)
이 변경으로 인해 다음이 보장됩니다.pg_multixact세그먼트는 제거할 수 없습니다. 충돌 후 WAL 재생 중에 여전히 필요합니다.
WAL 이후에 모두 표시되는 플래그의 불일치 가능성 토토 베이 회복(Heikki Linnakangas)
중첩된 호출 중 부정확할 수 있는 캐시 무효화 토토 베이ReceiveSharedInvalidMessages(안드레스
프로인트)
다음에 의해 동시에 잠긴 튜플을 업데이트할 때 경쟁 조건 토토 베이 다른 프로세스(Andres Freund, Álvaro Herrera)
토토 베이"경로키 항목을 찾을 수 없습니다 종류"플래너 실패유니온 모두상속이 있는 테이블에서 읽는 하위 쿼리에 대해 어린이(톰 레인)
다음이 있는 경우 하위 쿼리의 출력이 고유하다고 가정하지 마십시오. 대상 목록의 집합 반환 함수(David Rowley)
이러한 감독은 다음과 같은 구조의 잘못된 최적화로 이어질 수 있습니다.WHERE x IN (SELECT y, generate_series(1,10) FROM t GROUP BY y).
다음의 상수-NULL 입력을 삭제하도록 플래너 개선그리고/또는가능하다면 (톰 레인)
이 변경 사항은 보다 공격적인 매개변수가 사용되는 일부 경우를 토토 베이합니다. 9.2 이상에서 수행된 대체는 다음보다 더 나쁜 계획으로 이어질 수 있습니다. 이전 버전이 생산되었습니다.
기획자가 동등한 내용을 볼 수 있는지 확인VARIADIC및 비-VARIADIC동등한 함수 호출(Tom Lane)
예를 들어 이 버그로 인해 표현식을 사용하지 못할 수 있습니다. 가변 함수와 관련된 인덱스. 필요할 수도 있습니다 이러한 인덱스를 다시 생성하거나 Variadic을 포함한 뷰를 다시 생성합니다. 토토 베이 사항은 인덱스와 일치해야 하는 함수 호출입니다. 기존 9.3 설치에 효과적입니다.
중첩 처리 토토 베이JSON객체json_populate_recordset()그리고 친구들
(마이클 파퀴어, 톰 레인)
중첩된JSON객체는 다음과 같은 결과를 가져올 수 있습니다. 상위 개체의 이전 필드가 표시되지 않습니다. 산출.
입력 유형 카테고리 식별 토토 베이to_json()그리고 친구들(톰 레인)
이로 인해 부적절한 인용이 발생한 것으로 알려져 있습니다.돈필드JSON결과, 다른 데이터 유형에 대해서는 잘못된 결과가 있을 수 있습니다. 잘.
복합 요소의 필드 삭제 실패 문제 토토 베이 구조화된 유형(Tom Lane)
이것은 TOAST 포인터가 복사될 수 있는 경우를 토토 베이합니다 역참조되지 않고 다른 테이블. 원본 데이터가 다음과 같은 경우 나중에 삭제하면 다음과 같은 오류가 발생합니다."토스트 값에 대한 청크 번호 0이 누락되었습니다 ..."때 지금 매달려 있는 포인터가 사용됩니다.
토토 베이"레코드 유형이 없습니다. 등기"출력에 대한 전체 행 참조 실패 계획 노드 추가(Tom Lane)
사용자 정의 함수를 호출할 때 발생할 수 있는 충돌 토토 베이 커서 되감기(Tom Lane)
인수를 평가하는 동안 쿼리 수명 메모리 누수 토토 베이 함수에 대해발신(톰 레인)
정규 표현식의 세션 수명 메모리 누수 토토 베이 처리(Tom Lane, Arthur O'Dwyer, Greg Stark)
다음의 데이터 인코딩 오류 토토 베이헝가리어.stop(톰 레인)
다음과 같은 경우 OIDS를 사용하여 외부 테이블이 생성되지 않도록 방지default_with_oids맞습니다(후지타 에츠로)
현재에 삽입된 행에 대한 활성 검사 토토 베이 트랜잭션이 롤백된 하위 트랜잭션에 의해 삭제되었습니다. (안드레스 프로인드)
이것은 문제를 일으킬 수 있습니다(적어도 허위 경고 및 최악의 경우 무한 루프) if색인 생성또는클러스터나중에 같은 작업이 수행되었습니다. 거래.
지우기pg_stat_activity.xact_start중준비하세요 거래(안드레스 프로인드)
이후준비, 원본 세션은 더 이상 트랜잭션에 속하지 않으므로 계속해서 진행되어서는 안 됩니다. 거래 시작 시간을 표시합니다.
토토 베이소유 재지정텍스트에 실패하지 않으려면 검색 개체(Álvaro Herrera)
방지pg_class.relminmxid동안 뒤로 이동하는 값진공 가득 참(알바로 에레라)
규칙/뷰 덤프에서 들여쓰기를 줄여 가독성을 높이고 과도한 공백을 피하세요(Greg Stark, Tom Lane)
이 변경으로 인해 중첩된 들여쓰기 양이 줄어듭니다. 사용자가 아마도 그렇지 않은 경우를 포함하여 구성 UNION 목록과 같이 중첩된 것으로 생각하십시오. 이전에는 깊게 중첩되었습니다. 구문은 다음과 같이 증가하는 공백의 양으로 인쇄되었습니다. O(N^2), 이는 성능 문제와 심지어 다음과 같은 위험을 야기했습니다. 메모리 부족 오류. 이제 들여쓰기가 모듈로 40으로 줄어들었습니다. 처음에는 보기에 이상하지만 가독성을 유지하는 것 같습니다. 단순히 들여쓰기를 제한하는 것보다 낫습니다. 많은 UNION 목록의 괄호도 줄어들었습니다.
나중에 열을 추가할 때 규칙/뷰 덤핑 토토 베이 a와 일치하는 입력 열이 여러 개 생성되었습니다.사용 중사양(톰 레인)
기능과 관련된 일부 경우에 대한 수리 보기 인쇄발신복합 유형을 반환하는 삭제된 열 포함(Tom Lane)
포스트마스터 시작 중 신호 차단(톰 레인)
이것은 우편 담당자가 이후에 적절하게 정리하도록 보장합니다. 예를 들어 수신하는 경우 자체적으로SIGINT아직 시작하는 동안.
처리 시 클라이언트 호스트 이름 조회 토토 베이pg_hba.conf대신 호스트 이름을 지정하는 항목 IP 주소(Tom Lane)
대신 역방향 DNS 조회 실패가 보고되는지 확인하십시오. 그런 항목과 자동으로 일치하지 않습니다. 또한 우리가 역방향 DNS 조회 시도는 연결당 한 번이 아니라 연결당 한 번만 시도됩니다. 호스트 이름 항목(조회 시 이전에 발생한 일) 시도가 실패했습니다.
루트 사용자가 사용하도록 허용포스트그레스 -C 변하기 쉬운그리고포스트그레스 --설명-구성(마우마우)
루트로 서버를 시작하는 것을 금지하는 것은 필요하지 않습니다 이러한 작업으로 확장하고 완화하면 실패를 방지할 수 있습니다.pg_ctl일부 시나리오에서는.
임시 포스트마스터의 보안 Unix 도메인 소켓이 시작되었습니다. 동안확인하세요(노아 미쉬)
소켓 파일에 접근할 수 있는 모든 로컬 사용자는 다음과 같이 연결할 수 있습니다. 서버의 부트스트랩 수퍼유저가 임의 실행을 진행합니다. 테스트를 실행하는 운영 체제 사용자로 코드를 작성합니다. 이전에 CVE-2014-0067에서 언급되었습니다. 이 변화는 이를 방어합니다. 서버 소켓을 임시 모드 0700에 두어 위험을 감수합니다. 하위 디렉토리/tmp. 위험은 남아있다 그러나 Unix 소켓이 지원되지 않는 플랫폼에서는 특히 그렇습니다. Windows, 임시 포스트마스터는 로컬을 수락해야 하기 때문입니다. TCP 연결.
이 변경의 유용한 부작용은 단순화하는 것입니다.확인하세요재정의하는 빌드에서 테스트 중DEFAULT_PGSOCKET_DIR. 기본값이 아닌 인기 있는 다음과 같은 값/var/run/postgresql종종 빌드 사용자가 쓸 수 없으므로 해결 방법이 필요합니다. 더 이상 필요하지 않습니다.
Windows에서 작동하도록 테이블스페이스 생성 WAL 재생 토토 베이 (마우마우)
Windows에서 소켓 생성 실패 감지 토토 베이(Bruce 몸지안)
Windows에서는 새 세션이 PGC_BACKEND 값을 흡수하도록 허용합니다. 매개변수(예:log_connections) 구성 파일에서(Amit Kapila)
이전에는 이러한 매개변수가 파일에서 변경된 경우 시작 후에는 변경 사항이 적용되지 않습니다.
Windows에서 실행 가능한 경로 이름을 올바르게 인용하십시오(Nikhil 데쉬판데)
이러한 감독으로 인해 다음이 발생할 수 있습니다.initdb그리고pg_upgradeWindows에서는 실패합니다. 설치 경로에는 공백과가 모두 포함되어 있습니다.@표시.
연결 토토 베이libpython켜짐 macOS(톰 레인)
이전에 사용한 방법은 Python 라이브러리에서 실패할 수 있습니다. Xcode 5.0 이상에서 제공됩니다.
버퍼 팽창 방지libpq서버가 클라이언트가 할 수 있는 것보다 지속적으로 더 빠르게 데이터를 보내는 경우 흡수해 (모리타 신이치, 톰 레인)
libpq강제될 수 있음
메모리가 부족해질 때까지 입력 버퍼를 확장합니다(이렇게 되면
다음과 같이 오해의 소지가 있는 신고를 합니다."잃어버린
서버와 동기화"). 일반적인 상황에서
데이터가 지속적으로 전송될 수 있다는 것은 매우 불가능합니다.
그보다 더 빨리recv()루프 가능
흡수하지만 이는 내담자가 다음과 같은 경우에 관찰되었습니다.
스케줄러 제약으로 인해 인위적으로 속도가 느려졌습니다.
LDAP 조회가 시도되는지 확인libpq의도한 시간 초과(Laurenz Albe)
토토 베이ecpg옳은 일을 하기 위해 배열일 때문자 *다음의 대상입니다. 둘 이상의 행과 다른 행을 반환하는 FETCH 문 배열 처리 토토 베이 사항(Ashutosh Bapat)
토토 베이pg_dump에 대처하기 위해 테이블의 기본 키에 의존하는 구체화된 뷰(Tom 레인)
이것은 보기의 쿼리가 기능 종속성에 의존하는 경우 발생합니다. a를 축약하다그룹별목록.pg_dump충분히 혼란스러워졌습니다 구체화된 뷰를 일반 뷰로 버렸습니다.
분석 토토 베이pg_dumpall's-i스위치(톰 레인)
토토 베이pg_restore님의 처리 중 구식 대형 객체 주석(Tom Lane)
다음에 의해 생성된 아카이브 파일에서 데이터베이스로 직접 복원 9.0 이전 버전pg_dump아마도 일반적으로 아카이브에 다음과 같은 댓글이 몇 개 이상 포함되어 있으면 실패합니다. 큰 물체.
토토 베이pg_upgrade다음의 경우 새 서버에서는 TOAST 테이블을 생성하지만 이전 버전에서는 그렇지 않았습니다. (브루스 몸지안)
이 드문 상황은 다음과 같이 나타납니다."관계 OID 불일치"오류.
에pg_upgrade, 보존pg_database.datminmxid그리고pg_class.relminmxid이전 클러스터의 값을 사용하거나 다음과 같은 경우 합리적인 값을 삽입하세요. 9.3 이전에서 업그레이드; 또한 불합리한 가치에 대해 방어합니다. 코어 서버(Bruce Momjian, Álvaro Herrera, Tom Lane)
이러한 변경 사항은 autovacuum이 고집할 수 있는 시나리오를 방지합니다. 시작하자마자 전체 클러스터의 내용을 즉시 스캔할 때 새 클러스터 또는 고정 해제된 MXID 값을 추적하면 완전히 비활성화됩니다.
방지contrib/auto_explain에서 사용자의 출력 변경설명(톰 레인)
만약auto_explain활성 상태이므로 그럴 수도 있습니다. 원인은설명(분석, 타이밍 꺼짐)그럼에도 불구하고 타이밍 정보를 인쇄하는 명령입니다.
쿼리 수명 메모리 누수 토토 베이기여/dblink(MauMau, 조 콘웨이)
에contrib/pgcrypto기능, 보장 민감한 정보는 스택 변수에서 삭제되기 전에 삭제됩니다. 복귀(마코 크린)
이미 해제된 메모리 사용 방지contrib/pgstattuple'spgstat_heap()(노아 미쉬)
에contrib/uuid-ossp, 상태를 캐시합니다. 호출 전반의 OSSP UUID 라이브러리(Tom Lane)
이것은 UUID 생성의 효율성을 향상시키고 에서 끌어낸 엔트로피의 양/dev/urandom, 해당 기능이 있는 플랫폼에서.
다음으로 시간대 데이터 파일 업데이트tzdata2014e 토토 베이에 대한 DST 법률 변경 사항 크리미아, 이집트, 모로코.
| 이전 | 배트맨 토토 : 문서 : 9.3 : 배트맨 토토 9.3.25 문서화 | 다음 |
| 릴리스 9.3.6 | PostgreSQL : 문서 : 9.3 : 메이저 토토 사이트 노트 | 릴리스 9.3.4 |