2025 년 7 월 17 일 : | Postgresql 18 베타 2 윈 토토!
이 문서는 지원되지 않는 버전의 PostgreSQL을위한 것입니다.
당신은에 대해 같은 페이지를 보려고 할 수 있습니다현재버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

E.22. 릴리스 9.1.3

출시 날짜 : 2012-02-27

이 릴리스에는 9.1.2의 다양한 수정 사항이 포함되어 있습니다. 을 위한 9.1 주요 릴리스의 새로운 기능에 대한 정보 참조스포츠 토토 결과 PostgreSQL : 문서 : 9.1 : 릴리스 9.1.

E.22.1. 버전 9.1.3으로의 마이그레이션

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

그러나, 더 일찍 버전에서 업그레이드하는 경우 9.1.2, 참조PostgreSQL : 문서 : 9.1 : 스포츠 토토 사이트 9.1.2.

E.22.2. 변화

  • 트리거 함수에 대한 권한을 실행해야합니다.트리거 만들기(Robert Haas)

    이 누락 된 수표는 다른 사용자가 위조 된 입력 데이터를 사용하여 기능을 설치하여 트리거 기능을 트리거합니다 그가 소유 한 테이블에. 이것은 단지 중요합니다 트리거 기능 표시보안 정의, 그렇지 않으면 트리거 함수가 어쨌든 테이블 소유자. (CVE-2012-0866)

  • 공통 이름의 길이에서 임의의 제한을 제거합니다 SSL 인증서 (Heikki Linnakangas)

    둘 다libpq와 서버는 SSL에서 추출한 공통 이름을 잘 렸습니다 32 바이트의 인증서. 일반적윈 토토 이것은 아무것도 발생하지 않습니다 예상치 못한 검증 실패보다 나쁘지만 거기에 있습니다 다소 불쾌한 시나리오가 될 수 있습니다 한 인증서 보유자가 다른 인증서를 가장합니다. 그만큼 피해자는 정확히 32 바이트의 공통 이름이 있어야합니다. 길고 공격자는 신뢰할 수있는 CA를 설득해야 할 것입니다. 공통 이름이있는 인증서를 발행하려면 접두사로 문자열. 서버를 가장합니다 클라이언트를 리디렉션하려면 추가 악용이 필요합니다 사이. (CVE-2012-0867)

  • 신형 이름을 쓰여진 이름의 공간윈 토토 변환pg_dump댓글 (Robert 하스)

    pg_dump는 불쾌했습니다 SQL 내에서 방출되는 객체 이름을 소독합니다 출력 스크립트의 주석. Newline이 포함 된 이름 적어도 스크립트를 구문 적윈 토토 부정하게 만들 것입니다. 악의적윈 토토 제작 된 개체 이름은 SQL을 나타낼 수 있습니다 주입 위험 스크립트가 다시로드 될 때. (CVE-2012-0868)

  • 삽입 동시 삽입에서 Btree 지수 손상을 수정하십시오 진공 청소기 (Tom Lane)

    삽입윈 토토 인한 인덱스 페이지 분할 때로는 동시에 탑승하는 원인진공인덱스 항목 제거를 그리워합니다 제거해야합니다. 해당 테이블 행 후 제거 된 인덱스 항목은 오류가 발생합니다 (와 같은"블록 n을 읽을 수 없습니다 파일 ... ") 또는 더 나쁘고 조용히 잘못된 쿼리 결과 관련이없는 행은 현재없는 테이블에 다시 삽입됩니다 위치. 이 버그는 릴리스 8.2 이후에 존재했지만 지금까지 진단되지 않았기 때문에 너무나도 너무나 발생합니다. 당신이 당신의 데이터베이스, 영향을받는 인덱스가 고정됩니다 것들.

  • WAL 동안 공유 버퍼의 과도 제로화를 수정하십시오 리플레이 (Tom Lane)

    재생 로직은 때때로 0을 보이고 리필합니다 내용물이 일시적윈 토토 공유되는 버퍼 유효하지 않은. 핫 대기 모드에서는 쿼리가 발생할 수 있습니다. 쓰레기 데이터를 보는 것은 병렬로 실행됩니다. 다양한 증상은 그로 인해 발생할 수 있지만 가장 흔한 증상"유효하지 않은 메모리 alloc 요청 크기 ".

  • 데이터 수정 처리 수정with서브 플랜트읽기 헌신적인다시 확인 (Tom Lane)

    awith조항 포함삽입/업데이트/삭제부모가 충돌하는 경우업데이트또는삭제명령이 필요했습니다 동시 업데이트로 인해 하나 이상의 행으로 재평가 안에Committed 읽기모드.

  • SSI 트랜잭션 정리에서 코너 케이스 수정 (Dan 포트)

    읽기 제기 직렬화 가능한 트랜잭션을 완료 할 때, 남아있는 모든 활성 직렬화가 가능한 경우 충돌이 발생할 수 있습니다 거래는 읽기 전용입니다.

  • 핫 스탠드 후 다시 시작하려면 Postmaster를 수정하십시오 충돌 (Tom Lane)

    로직 오류로 인해 우체국 장이 종료되었습니다 백엔드 프로세스가있는 경우 클러스터를 다시 시작하려고 시도하는 것보다 핫 스탠드 모드에서 작동하는 동안 충돌했습니다.

  • 수정클러스터/진공 Full소유 한 토스트 값의 처리 최근 업데이트 된 행 (Tom Lane)

    이 감독은로 이어질 수 있습니다."중복 키 값은 고유 한 것입니다 강제"토스트에 대해보고 된 오류 이 명령 중 하나 동안 테이블의 색인.

  • 테이블 당뿐만 아니라 콜럼 당 권한 업데이트 권한, 테이블 소유자를 변경할 때 (Tom Lane)

    이 작업에 실패했다는 것은 이전에 부여 된 것을 의미했습니다 열 권한은 여전히 승인 된 것으로 나타났습니다 오래된 주인에 의해. 이것은 새로운 소유자도 없음을 의미했습니다 슈퍼업자는 이제 추적 할 수없는 테이블 소유자를 취소 할 수 있습니다 권한.

  • 외국 데이터 포장지 및 외국 서버 지원소유 한 reassign(알바로 Herrera)

    이 명령이 실패했습니다"예상치 못한 classid "소유권을 변경 해야하는 경우 오류 그러한 대상 중.

  • 일부 설정에 대해 존재하지 않는 값을 허용사용자/데이터베이스 세트 변경(Heikki Linnakangas)

    허용default_text_search_config, default_tablespacetemp_tablespaces이름으로 설정됩니다 알려지지 않았습니다. 그들은 그들이 다른 사람에게서 알려져 있기 때문입니다 설정을 사용하려는 데이터베이스 또는 테이블 스페이스는 테이블 스페이스가 아니기 때문에 아직 만들어졌습니다. 동일한 문제가 이전에 인정되었습니다search_path및 이러한 설정 이제 그렇게 행동하십시오.

  • 수정"지원되지 않은 노드 유형"오류로 인한 오류Collatein삽입Expression (Tom Lane)

  • 테이블을 삭제하는 데 문제가있을 때 충돌을 피하십시오 커미트 후 파일 (Tom Lane)

    테이블을 떨어 뜨리면 기본이 삭제됩니다 디스크 파일 트랜잭션이 저지른 후에 만 파일. 발생하는 경우 그런 다음 실패 (예 : 잘못된 파일로 인해 권한) 코드는 단지 경고를 방출해야합니다. 메시지를 보내고 계속하십시오. 거래. 이 논리는 릴리스 8.4에서 깨졌습니다. 그러한 상황을 유발하여 공황과 불가능한 데이터베이스.

  • WAL 재생 중에 발생하는 오류에서 복구드롭 테이블 스페이스(Tom Lane)

    Replay는 테이블 스페이스를 제거하려고 시도합니다 디렉토리이지만 이것이 왜 그런지에 대한 여러 가지 이유가 있습니다 실패 (예 : 잘못된 소유권 또는 권한에 대한 권한 그 디렉토리). 이전에는 재생 코드가 당황했고 매뉴얼없이 데이터베이스를 검증 할 수없는 데이터베이스를 렌더링합니다 간섭. 문제를 기록하는 것이 더 낫습니다 제거 실패의 유일한 결과이므로 계속하십시오 디렉토리는 낭비 된 디스크 공간입니다.

  • accessexclusivelocks 로깅에서 레이스 조건을 수정하십시오 핫 대기 (Simon Riggs)

    때로는 자물쇠가 보유하고있는 것윈 토토 기록됩니다"트랜잭션 제로". 이것은 슬레이브 서버에서 어설 션 실패를 생성하는 것윈 토토 알려지지 않은 더 심각한 문제의 원인 일 수 있습니다.

  • WAL 재생 중에 OID 카운터를 올바르게 추적합니다 주위를 감싸면 (Tom Lane)

    이전의 OID 카운터는 높은 상태로 갇혀있을 것입니다. 시스템이 재생 모드를 종료 할 때까지 값. 실용 그 결과는 일반적으로 nil이지만 있습니다 홍보 된 대기 서버가있는 시나리오 마스터가 OID 카운터를 값이 필요하면 합리적인 값.

  • 오도 방지 방지"일관된 복구 상태 도달"로그 충돌 복구 시작시 (Heikki Linnakangas)

  • 초기 값 수정pg_stat_replication.Replay_Location(Fujii Masao)

    이전에 표시된 값은 AT까지 잘못되었습니다 최소 하나의 WAL 레코드가 재생되었습니다.

  • 정규 표현식 수정*첨부 (Tom Lane)

    정확한 문자열 일치를 시행하는 대신 코드 만족하는 문자열을 효과적윈 토토 받아 들일 것입니다 역 참조에 의해 참조 된 패턴 하위 표현 상징.

    비슷한 문제는 여전히 역 참조를 고난합니다 대신 더 큰 정량화 된 발현에 포함됩니다 정량 자의 즉각적인 주제입니다. 이것은 될 것입니다 미래에 주소PostgreSQL윈 토토.

  • 최근에 소개 된 메모리 누출 수정inet/CIDR값 (Heikki Linnakangas)

    2011 년 12 월 윈 토토의 패치PostgreSQL메모리 누출이 발생했습니다 이러한 작업은 시나리오에서 중요 할 수 있습니다 그러한 열에 btree 지수를 구축하는 것과 같은.

  • 고정 플래너의 인덱스 표현을 추진할 수있는 능력을 고정하십시오 를 통한 제한Union All(Tom Lane)

    이 유형의 최적화는 실수로 비활성화되었습니다 9.1.2의 다른 문제에 대한 수정.

  • 계획 수정with조항 참조업데이트/삭제상속 테이블 (Tom Lane)

    이 버그는"계획을 찾을 수 없었습니다 CTE "실패.

  • 처리 할 진 비용 추정 수정열인 (...)색인 조건 (Marti raudsepp)

    이 감독은 일반적윈 토토 그러한 경우 충돌로 이어질 것입니다. 조건은 진 지수와 함께 사용할 수 있습니다.

  • AN과 세션을 종료 할 때 어설 션 실패 방지 오픈, 실패 트랜잭션 (Tom Lane)

    이 버그 활성화.

  • 끊는 포인터 수정 후생성 테이블 as/선택a SQL 언어 기능 (Tom Lane)

    대부분의 경우 이것은 단지 주장 실패로 이어졌습니다. Assert 지원 빌드이지만 더 나쁜 결과는 보입니다 가능한.

  • syslogger에서 파일 핸들의 이중 닫기를 피하십시오 Windows (Maumau)

    일반적 으로이 오류는 보이지 않았지만 유발할 것입니다 디버그 버전에서 실행할 때의 예외 Windows.

  • PLPGSQL에서 I/O 개수 관련 메모리 누출 수정 (Andres Freund, Jan Urbanski, Tom Lane)

    특정 작업이 끝날 때까지 메모리 누출이 발생합니다 현재 기능.

  • Perl의 SVPVUTF8 () 함수 (Andrew 던 스탄)

    이 함수는 TypeGlob 또는 확실한 상태에서 충돌합니다 와 같은 읽기 전용 객체$^V. Plperl을 전달하지 않도록하십시오.

  • inpg_dump, 덤프하지 마십시오 Extension의 구성 테이블의 내용 인 경우 확장자 자체가 덤프되지 않습니다 (Tom Lane)

  • 개선pg_dump's 상속 테이블 열 처리 (Tom Lane)

    pg_dump자식 열에 다른 기본값이있는 상황 부모 열보다 표현. 기본값이있는 경우 부모의 기본값과 텍스트로 동일하지만 그렇지 않습니다 실제로 동일합니다 (예 : 스키마 검색으로 인해 경로 차이)) 다른 것으로 인식되지 않을 것입니다. 덤프 및 복원 후 아이가 허용됩니다. 부모의 기본값을 상속받습니다. 자식 기둥NOT NULL부모가 아닌 곳 미묘하게 잘못 복원 될 수 있습니다.

  • 수정PG_RESTORE's 인서트 스타일 테이블 데이터를위한 직접-대사 모드 (Tom 레인)

    직접-다이버스는 아카이브 파일에서 복원-inserts또는-Column-Inserts옵션을 사용할 때 옵션 실패PG_RESTORE릴리스에서 2011 년 9 월 또는 12 월의 결과 다른 문제에 대한 수정에서 감독. 아카이브 파일 그 자체는 잘못이 아니며 텍스트 모드 출력이 괜찮습니다.

  • Teachpg_upgradeto 의 이름 변경 처리Plpython의 공유 도서관 (Bruce Momjian)

    Plython이 포함 된 Pre-9.1 데이터베이스 업그레이드 이 감독 때문에 실패 할 것입니다.

  • 허용pg_upgradeTO 포함 된 프로세스 테이블Regclass열 (Bruce Momjian)

    이후pg_upgrade지금 보존하기 위해 조심pg_classoids, 더 이상 그 이유가 없었습니다 제한.

  • 만들기libpq무시Enotdir찾을 때의 오류 SSL 클라이언트 인증서 파일 (Magnus Hagander)

    이것은 SSL 연결을 설정할 수 있습니다 사용자의 홈 디렉토리에도 인증서가 없으면 와 같은 것윈 토토 설정됩니다./dev/null.

  • 더 많은 필드 정렬 문제 수정ECPG의 SQLDA 지역 (Zoltan Boszormenyi)

  • 허용at옵션ECPG 딜 로이징진술 (Michael Meskes)

    이를 지원하기위한 인프라가 있습니다 잠시이지만 감독을 통해 여전히 오류가있었습니다. 사건 거부 확인.

  • Varchar를 정의 할 때 변수 이름을 사용하지 마십시오. ECPG (Michael Meskes)의 구조

  • 수정Contrib/Auto_explain's 유효한 JSON (Andrew Dunstan)을 생성하려는 JSON 출력 모드

    출력은 상단 레벨에서 괄호를 사용했습니다. 중괄호를 사용 했어야 했어.

  • 오류 수정Contrib/Intarray'sint [] & int []운영자 (Guillaume lelarge)

    가장 작은 정수가 있으면 두 입력 배열이 있습니다. 공통은 1이고, 배열에 더 작은 값이 있으며, 그러면 1은 결과에서 잘못 생략됩니다.

  • 오류 감지 수정contrib/pgcrypto'sEncrypt_iv ()decrypt_iv ()(Marko Kreen)

    이러한 기능은 특정 유형의보고에 실패했습니다 유효하지 않은 입력 오류가 아니며 대신 무작위로 반환됩니다 잘못된 입력에 대한 쓰레기 값.

  • 1 바이트 버퍼 오버런 수정contrib/test_parser(Paul Guyot)

    코드는 하나 이상의 바이트를 읽으려고합니다. 코너 케이스에서 충돌합니다. 부터contrib/test_parser만 예제 코드입니다. 이것은 그 자체로 보안 문제가 아니라 나쁜 예입니다. 코드는 여전히 나쁘다.

  • use__sync_lock_test_and_set ()스핀 록 팔에, 가능한 경우 (Martin Pitt)

    이 함수는 이전의 사용을 대체합니다SWPB지시입니다 ARMV6 이상에서는 더 이상 사용되지 않습니다. 보고서 이전 코드가 명백한 방식으로 실패하지 않는다고 제안합니다. 최근 암 보드이지만 단순히 연동 동시에 연락하지 않습니다 접근하여 다중 프로세스에서 기괴한 실패로 이어집니다 작업.

  • use-fexcess-precision = Standard이를 허용하는 GCC 버전으로 빌드 할 때 옵션 (앤드류 던 스탄)

    이것은 최근 버전에서 분류 된 시나리오를 방지합니다 GCC의 창의적인 결과를 생성 할 것입니다.

  • freebsd (Chris Rees)에서 스레드 파이썬 사용 허용

    우리의 구성 스크립트는 이전에 이것을 믿었습니다 조합은 작동하지 않을 것입니다. 그러나 freebsd는 문제를 해결했습니다. 따라서 해당 오류 확인을 제거하십시오.

  • Mingw 빌드가 표준 이름이 지정된 OpenSSL을 사용하도록 허용합니다 도서관 (Tomasz Ostrowski)