이 문서는 지원되지 않는 PostgreSQL 버전에 대한 것입니다.
당신은 다음과 같은 페이지를 보고 싶을 수도 메이저 토토 사이트.현재버전 또는 위에 나열된 다른 지원 버전 중 하나를 사용하세요.

E.74. 릴리스 9.1.2

출시일: 2011-12-05

이 릴리스에는 9.1.1의 다양한 수정 사항이 포함되어 있습니다. 에 대한 9.1 주요 릴리스의 새로운 기능에 대한 자세한 내용은 참조윈 토토 PostgreSQL : 문서 : 9.3 : 릴리스 9.1.

E.74.1. 버전 9.1.2로 마이그레이션

9.1.X를 실행하는 경우 덤프/복원이 필요하지 않습니다.

그러나 정의에서 오랜 오류가 발견되었습니다 의information_schema.referential_constraints보기. 만약에 해당 보기의 올바른 결과에 의존하는 경우 해당 보기를 바꿔야 합니다. 아래 첫 번째 변경 로그 항목에 설명된 정의입니다.

또한 다음을 사용하는 경우citext데이터 유형 및 다음을 실행하여 이전 주요 릴리스에서 업그레이드했습니다.pg_upgrade, 달려야 해패키되지 않은 상태에서 확장 프로그램 citext 생성피하다 데이터 정렬 관련 실패citext작업. 덤프를 복원하는 경우에도 동일한 작업이 필요합니다. 의 인스턴스를 포함하는 9.1 이전 데이터베이스citext데이터 유형. 이미 실행한 경우확장 프로그램 만들기6974_7105

E.74.2. 변경사항

  • 버그 수정information_schema.referential_constraints보기 (톰 레인)

    이 보기는 일치에 대한 주의가 충분하지 않았습니다. 종속된 기본 키 또는 고유 키에 대한 외래 키 제약 조건 제약. 이로 인해 외래 키가 표시되지 않을 수 메이저 토토 사이트. 전혀 제약을 두지 않거나 여러 번 표시하거나 실제 제약 조건과 다른 제약 조건에 따라 달라집니다. 그렇습니다.

    보기 정의가 다음에 의해 설치되었으므로initdb, 업그레이드만으로는 문제가 해결되지 않습니다. 문제. 기존 설치에서 이 문제를 해결해야 하는 경우 (수퍼유저로서) 다음을 삭제할 수 있습니다.정보_스키마스키마를 사용하여 다시 생성하세요. 소싱공유디르/information_schema.sql. (달리다pg_config --sharedir불확실한 경우 어디서공유디르is.) 이것은 반드시 수정하기 위해 각 데이터베이스에서 반복됩니다.

  • 만들다기여/citext의 업그레이드 스크립트 데이터 정렬 수정citext열과 색인 (톰 레인)

    기존citext열과 색인은 그렇지 않습니다. 동안 정렬 가능한 데이터 유형으로 올바르게 표시되었습니다.pg_upgrade9.1 이전 서버에서, 또는 다음을 포함하는 9.1 이전 덤프의 경우citext유형이 9.1 서버에 로드되었습니다. 이는 이러한 작업으로 이어집니다. 다음과 같은 오류로 인해 열이 실패함"할 수 없습니다 문자열 비교에 사용할 데이터 정렬 결정". 이 변경으로 인해 동일한 스크립트로 문제를 해결할 수 메이저 토토 사이트. 업그레이드합니다citext모듈을 적절한 9.1로 기간 연장다음에서 확장 citext 생성 포장되지 않음.

    이전에 업그레이드한 데이터베이스에 문제가 있는 경우 이 문제에서 이미 실행했습니다.확장 프로그램 만들기명령을 수동으로 실행할 수 메이저 토토 사이트(예: 수퍼유저) the업데이트다음 위치에서 명령을 찾았습니다. 의 끝공유디르/extension/citext--unpackaged--1.0.sql. (실행)pg_config --sharedir당신이 그렇다면 어디인지 불확실함공유디르입니다.) 거기 확실하지 않은 경우 이 작업을 다시 수행해도 아무런 해가 없습니다.

  • 중 충돌 가능성 수정업데이트또는삭제이는 다음의 출력에 연결됩니다. 스칼라 반환 함수(Tom Lane)

    충돌은 대상 행이 동시에 발생한 경우에만 발생할 수 있습니다. 업데이트되었으므로 이 문제는 간헐적으로만 나타납니다.

  • GIN 인덱스 업데이트에 대한 WAL 레코드의 잘못된 재생 수정(Tom 레인)

    이로 인해 색인 항목을 찾는 데 일시적으로 실패할 수 있습니다. 충돌 후 또는 상시 대기 서버에서. 문제는 다음번에 수리함진공색인의, 그러나.

  • 다음 중 TOAST 관련 데이터 손상 수정CREATE TABLE dest AS SELECT * FROM src또는dest SELECT * FROM src에 삽입(톰 레인)

    테이블이 다음에 의해 수정된 경우테이블 변경 열 추가, 해당 데이터를 다른 데이터에 그대로 복사하려고 시도합니다. 특정 코너 케이스에서는 테이블이 손상된 결과를 생성할 수 있습니다. 는 문제는 8.4 이상에서만 정확한 형식으로 나타날 수 있습니다. 하지만 다른 버전이 있을 경우를 대비해 이전 버전도 패치했습니다. 동일한 버그를 유발할 수 있는 코드 경로입니다.

  • 상시 대기 시작 중 발생할 수 있는 오류 수정(Simon 리그스)

  • 초기 스냅샷이 불완전할 때 상시 대기를 더 빠르게 시작 (사이먼 리그스)

  • 부실 syscache에서 토스트 테이블에 액세스하는 동안 경합 상태 수정 항목(톰 레인)

    일반적인 증상은 다음과 같은 일시적인 오류였습니다."토스트 값 NNNNN에 대한 청크 번호 0이 누락되었습니다. pg_toast_2619", 여기서 인용된 토스트 테이블은 항상 시스템 카탈로그에 속합니다.

  • 매개변수에 사용된 항목에 대한 함수의 종속성을 추적합니다. 기본 표현식(Tom Lane)

    이전에는 참조된 객체를 삭제하지 않고도 삭제할 수 있었습니다. 기능을 삭제하거나 수정하여 오작동을 일으킨 경우 기능이 사용되었습니다. 이 업데이트를 설치하는 것만으로는 누락된 종속성 항목을 수정합니다. 그렇게 하려면 다음을 수행해야 합니다.생성 또는 교체각각의 기능 그 후에. 기본값이 다음에 따라 달라지는 함수가 있는 경우 내장되지 않은 객체라면 그렇게 하는 것이 좋습니다.

  • nestloop에서 자리표시자 변수의 잘못된 관리 수정 조인(톰 레인)

    이 버그는 다음으로 이어지는 것으로 알려져 있습니다."변수가 아님 하위 계획 대상 목록에서 발견됨"플래너 오류로 인해 발생할 수 있음 외부 조인을 수행하면 잘못된 쿼리 출력이 발생할 수 메이저 토토 사이트. 참여했습니다.

  • 다음과 관련된 표현식을 기준으로 정렬하는 창 함수 수정 집계(Tom Lane)

    이전에는 다음과 같은 경우 실패할 수 있었습니다."할 수 없습니다 정렬할 경로 키 항목 찾기"플래너 오류.

  • 수정"MergeAppend 자녀의 대상 목록은 MergeAppend와 일치"플래너 오류(톰 레인)

  • 조합 가능한 연산자와 연산자에 대한 색인 일치 수정 대조할 수 없는 입력(Tom Lane)

    9.1.0에서 대조할 수 없는 색인 생성 가능 연산자 왼쪽 입력 유형과 조합 가능한 오른쪽 입력 유형은 왼쪽 열의 인덱스와 일치하는 것으로 인식되지 않습니다. 안 예는 다음과 같습니다.hstore ? 텍스트연산자.

  • 여러 OUT이 포함된 집합 반환 SQL 함수의 인라인 허용 매개변수(톰 레인)

  • 조인 제거를 위해 지연된 고유 인덱스를 신뢰하지 마십시오(톰 레인 및 마티 Raudsepp)

    지연된 고유성 제약 조건이 유지되지 않을 수 메이저 토토 사이트. 내부 트랜잭션이므로 잘못된 결과를 제공할 수 있다고 가정합니다. 쿼리 결과입니다.

  • 만들다DatumGetInetP()inet 압축 풀기 1바이트 헤더가 있는 데이텀을 생성하고 새 매크로를 추가합니다.DatumGetInetPP(), 그렇지 않습니다(헤이키 린나캉가스)

    이 변경 사항은 핵심 코드에 영향을 미치지 않지만 충돌을 방지할 수 메이저 토토 사이트. 예상되는 추가 기능 코드DatumGetInetP()압축 해제된 데이터를 다음과 같이 생성합니다. 일반적인 규칙에 따라.

  • 로케일 지원 개선유형의 입력 및 출력(Tom Lane)

    모든 표준을 지원하지 않는 것 외에lc_monetary형식 옵션, 입력 및 출력 기능이 일관되지 않았습니다. 즉, 로캘이 있음을 의미합니다. 버린 것값은 다음과 같을 수 없습니다. 다시 읽어보세요.

  • 하지 마세요transform_null_equals영향을 미치다CASE foo NULL일 때 ...구조물 (Heikki Linnakangas)

    transform_null_equals단지 가정된 것입니다 영향을 미치다foo = NULL표현이 작성됨 내부적으로 생성된 동일성 검사가 아닌 사용자가 직접 이런 형태의사례.

  • 더 나은 지원을 위해 외래 키 트리거 생성 순서 변경 자기 참조 외래 키(Tom Lane)

    자체 테이블을 참조하는 계단식 외래 키의 경우 행 업데이트는 둘 다 실행됩니다.업데이트 중트리거 및확인하나로 트리거 이벤트.업데이트 중트리거가 실행되어야 함 먼저, 그렇지 않으면확인확인할 것입니다 행의 최종 상태가 아니며 부적절한 결과가 발생할 수 있음 오류. 그러나 이러한 트리거의 실행 순서는 다음에 의해 결정됩니다. 일반적으로 생성 순서대로 정렬되는 이름입니다. 트리거에는 규칙에 따라 자동 생성된 이름이 있습니다."RI_ConstraintTrigger_NNNN". 적절한 수정하려면 해당 규칙을 수정해야 합니다. 이에 대해서는 다음에서 수행하겠습니다. 9.2이지만 기존 릴리스에서 변경하는 것은 위험해 보입니다. 그래서 이것은 패치는 트리거의 생성 순서를 변경합니다. 사용자 이러한 유형의 오류가 발생하면 해당 오류를 삭제하고 다시 생성해야 합니다. 트리거를 오른쪽으로 가져오기 위한 외래 키 제약 조건 주문하세요.

  • 수정존재하는 경우올바르게 작동하려면드롭 운영자 제품군(로버트 하스)

  • 자체 스크립트 내에서 확장 프로그램 삭제를 허용하지 않음 (톰 레인)

    이것은 잘못된 관리의 경우 이상한 동작을 방지합니다. 확장 종속성.

  • 자동 생성 유형을 확장 멤버로 표시하지 마십시오(로버트 하스)

    관계 행 유형 및 자동 생성된 배열 유형은 자체 확장 멤버십 항목이 있어야 합니다.pg_dependent, 이러한 항목을 생성하는 것은 복잡합니다. 확장 업그레이드에 중요합니다.

  • 잘못된 기존에 대처검색_경로설정 중확장 프로그램 만들기(톰 레인)

  • 버퍼 할당을 추적하는 동안 부동 소수점 언더플로 방지 요율(그레그 매튜스)

    그 자체로는 무해하지만 특정 플랫폼에서는 이로 인해 성가신 커널 로그 메시지에서.

  • 자동 진공 트랜잭션이 직렬화 가능에서 실행되는 것을 방지합니다. 모드(톰 레인)

    Autovacuum은 이전에 클러스터 전체 기본 트랜잭션을 사용했습니다. 격리 수준이지만 더 높은 수준을 사용할 필요는 없습니다. READ COMMITTED보다 SERIALIZABLE을 사용하면 다음과 같은 결과가 발생할 수 있습니다. 다른 프로세스에 불필요한 지연이 발생합니다.

  • walsender 프로세스가 다음에 즉시 응답하는지 확인하세요.SIGTERM(마그누스 하간데르)

  • 제외postmaster.opts기지에서 백업(Magnus Hagander)

  • 다음 경우 구성 파일 이름과 줄 번호 값을 유지합니다. Windows에서 하위 프로세스 시작(Tom Lane)

    이전에는 이것들이 올바르게 표시되지 않았습니다.pg_settings보기.

  • 잘못된 필드 정렬 수정ecpg의 SQLDA 영역(Zoltan Boszormenyi)

  • 명령 내 빈 줄 유지psql의 명령 기록(Robert Haas)

    빈 줄이 있는 경우 이전 동작은 문제를 일으킬 수 있습니다. 예를 들어 문자열 리터럴 내에서 제거되었습니다.

  • 플랫폼별 무한 루프 방지pg_dump(스티브 싱어)

  • 일반 텍스트 출력 형식의 압축 문제 해결pg_dump(아드리안 클라버와 톰 레인)

    pg_dump이력적으로 이해했다-Z아니요-F스위치는 다음을 방출해야 함을 의미합니다. 일반 텍스트 출력의 gzip 압축 버전입니다. 복원하세요 행동.

  • 수정pg_dump덤핑하다 테이블과 같은 자동 생성 유형 간의 사용자 정의 캐스트 행 유형(톰 레인)

  • 외부 서버 이름의 누락된 인용 수정pg_dump(톰 레인)

  • 다음에 대한 다양한 수정 사항pg_upgrade(브루스 몸지안)

    제외 제약 조건을 올바르게 처리하고 실패를 피하십시오. Windows, 8.4에서 토스트 테이블 이름이 일치하지 않는다고 불평하지 마세요. 데이터베이스.

  • PL/pgSQL에서 외부 테이블이 행 유형을 정의하도록 허용합니다(Alexander 소우다코프)

  • PL/Perl 함수 결과 변환 수정(Alex Hunsaker 그리고 톰 레인)

    PL/Perl 함수가 반환하는 9.1 이전 동작을 복원공허마지막 결과 값을 무시합니다. 펄 문; 9.1.0에서는 해당 명령문이 있으면 오류가 발생합니다. 참조를 반환했습니다. 또한 문자열을 반환하는 것이 작동하는지 확인하십시오. 문자열이 유형의 값을 충족하는 한 복합 유형의 값 입력 형식. 또한 Perl을 반환하려고 하면 오류가 발생합니다. 함수의 선언된 결과 유형이 아닌 경우 배열 또는 해시 각각 배열 또는 복합 유형입니다. (9.1 이전 버전보다는 다음과 같은 쓸데없는 문자열을 반환했습니다.ARRAY(0x221a9a0)또는해시(0x221aa90)이러한 경우.)

  • PL/Perl 문자열이 항상 올바르게 UTF8로 인코딩되었는지 확인하세요(Amit Khandekar 및 Alex Hunsaker)

  • 기본 버전 사용xsubppPL/Perl을 빌드하기 위해 반드시 필요한 것은 아닙니다. 운영 체제의 주요 사본(David Wheeler 및 Alex Hunsaker)

  • PL/Python 예외에서 SQLSTATE를 올바르게 전파합니다(Mika Eloranta 및 Jan Urbanski)

  • Python 전공용 PL/Python 확장 파일을 설치하지 마십시오. (Peter Eisentraut)에 대해 구축된 버전이 아닌 다른 버전

  • 모두 변경기여확장 유용한 오류 메시지를 보고하는 스크립트 파일psql(앤드류 던스턴과 톰 레인)

    이것은 사람들에게 새로운 사용 방법을 가르치는 데 도움이 될 것입니다확장 프로그램 만들기이 파일을 로드합니다. 에서 대부분의 경우 스크립트를 직접 소싱하는 것은 어쨌든 실패하지만 해석하기 어려운 메시지가 포함되어 메이저 토토 사이트.

  • 잘못된 코딩 수정contrib/dict_int그리고contrib/dict_xsyn(톰 레인)

    일부 함수는 다음에 의해 반환된 메모리를 잘못 가정했습니다.팔록()0이 보장됩니다.

  • 삭제contrib/sepgsql테스트 일반 회귀 테스트 메커니즘(Tom Lane)

    이 테스트에는 설정을 위해 루트 권한이 필요하므로 자동으로 실행하는 것은 실용적이지 않습니다. 수동 접근 방식으로 전환 대신 이에 도움이 되는 테스트 스크립트를 제공하세요.

  • 여러 가지 오류 수정기여/악센트 없음의 구성 파일을 구문 분석 중입니다(Tom 레인)

  • 명예 쿼리 취소는 즉시 중단됩니다.pgstatindex()(로버트 하스)

  • macOS 시작 스크립트에서 로그 파일 이름의 잘못된 인용 수정 (시다르 로페즈)

  • 의도하지 않은 활성화 되돌리기WAL_DEBUG(로버트 하스)

    다행히도 디버깅 도구 중 이 도구는 매우 저렴합니다. 하지만 기본적으로 활성화되도록 의도된 것은 아니므로 되돌리세요.

  • VPATH 빌드가 모든 서버 헤더 파일을 올바르게 설치하는지 확인하세요. (피터 아이젠트라우트)

  • 장황한 오류 메시지에 보고된 파일 이름 단축(Peter 아이젠트라우트)

    일반 빌드에서는 항상 C 파일 이름만 보고되었습니다. 오류 메시지 호출이 포함되어 있지만 VPATH는 이전에 빌드됩니다. 절대 경로 이름을 보고했습니다.

  • 중미의 Windows 시간대 이름 해석 수정 (톰 레인)

    지도"중앙아메리카 표준시"CST6, 아님CST6CDT, 일반적으로 DST가 관찰되지 않기 때문입니다. 중앙 아메리카 어디든지요.

  • 다음으로 시간대 데이터 파일 업데이트tzdata2011n 릴리스에 대한 DST 법률 변경 사항 브라질, 쿠바, 피지, 팔레스타인, 러시아, 사모아; 또한 역사적 알래스카와 영국령 동아프리카에 대한 수정 사항입니다.