이 문서는 지원되지 않는 버전의 토토 결과 용입니다.
당신은에 대해 같은 페이지를 볼 수 토토 결과현재버전 또는 위에 나열된 다른 지원되는 버전 중 하나입니다.

E.50. 릴리스 9.1

출시 날짜 : 2011-09-12

E.50.1. 개요

이 릴리스를 보여줍니다토토 결과전통을 넘어서 움직입니다 새롭고 획기적인 획기적인 관계자가있는 관계형-대사 기능 고유 한 기능토토 결과. 스트리밍 복제 릴리스 9.0에 도입 된 기능은 크게 향상됩니다 동기 재현 옵션 추가, 스트리밍 백업 및 모니터링 개선. 주요 개선 사항은 다음과 같습니다.

위 항목은 섹션에서 자세히 설명합니다. 아래에.

E.50.2. 버전 9.1로의 마이그레이션

덤프/복원 사용pg_dump또는 사용pg_upgrade, 원하는 사람들에게는 필요합니다 이전 릴리스에서 데이터를 마이그레이션하려면

버전 9.1에는 영향을 줄 수있는 여러 가지 변경 사항이 포함되어 있습니다. 이전 릴리스와의 호환성. 다음을 관찰하십시오 비 호환성 :

E.50.2.1. 문자열

  • 기본값 변경 Standard_Conforming_stringson (Robert Haas)

    기본적으로 백 슬래시는 이제 일반 문자입니다 문자리 문자, 탈출 문자가 아닙니다. 이 변화 SQL과의 장기 비 호환성을 제거합니다 기준. Escape_string_warning수년간이 사용법에 대한 경고를 제작했습니다.e ''줄은 적절한 방법입니다 Backslash는 끈으로 빠져 나와 이것의 영향을받지 않습니다 변화.

    경고

    이 변경은 응용 프로그램을 중단 할 수 있습니다 그것을 기대하지 않고 자신의 스트링을 탈출합니다 이전 규칙에 따르면. 결과 SQL 주입을 도입하는 것만 큼 심각 할 수 있습니다 보안 구멍. 응용 프로그램을 테스트하십시오 신뢰할 수없는 입력에 노출되어이를 확인합니다 그들은 단일 따옴표를 올바르게 처리합니다 텍스트 문자열의 백 슬래시.

E.50.2.2. 주조

  • 기능 스타일 및 속성 스타일 데이터 유형을 허용하지 않습니다 복합 유형을위한 캐스트 (Tom Lane)

    예를 들어, 허용composite_value.Textand텍스트 (composite_value). 이 구문의 의도하지 않은 사용은 자주 사용됩니다 버그 보고서가 발생했습니다. 버그는 아니지만 그러한 표현을 거부하는 것이 더 나은 것 같습니다. 그만큼캐스트and::구문은 여전히 ​​사용할 수 있습니다 전체 복합 값의 캐스트가 실제로 예정된.

  • 배열에 따라 도메인에 대한 주조 점검을 조입니다 (Tom Lane)

    도메인이 배열 유형을 기반으로하면 허용됩니다. 에게"봐"도메인 유형 유형은 첨자를 포함하여 배열 요소에 액세스 할 수 토토 결과 요소를 가져 오거나 할당하는 도메인 값. 그러한 도메인 값의 요소에 대한 할당, via 인스턴스업데이트 ... 세트 Domaincol [5] = ..., 이제 다시 회복됩니다 도메인 유형의 제약 조건은 점검되기 전에 건너 뛰었습니다.

E.50.2.3. 배열

  • 변경String_to_array ()반환하려면 제로 길이 문자열의 빈 배열 (Pavel Stehule)

    이전에는 널 값을 반환했습니다.

  • 변경String_to_array ()aNULL분리기는 문자열을 들어냅니다 캐릭터 (Pavel Stehule)

    이전에는 Null 값을 반환했습니다.

E.50.2.4. 객체 수정

  • 트리거 전/후에 부적절한 점검을 수정하십시오 (Tom 레인)

    트리거는 이제 세 가지 경우에 해고 될 수 토토 결과 :, 이후또는대신일부 행동. 방아쇠 기능 저자는 자신의 논리가 동작을 확인해야합니다 세 가지 사례 모두에서 산으로.

  • 슈퍼 유저 요구 또는Createrole설정을위한 권한 역할에 대한 의견 (Tom Lane)

E.50.2.5. 서버 설정

  • 변경pg_last_xlog_receive_location ()따라서 결코 뒤로 이동 (Fujii Masao)

    이전에,pg_last_xlog_receive_location ()할 수 토토 결과 스트리밍 복제가있을 때 뒤로 이동하십시오 다시 시작.

  • 복제 연결 로깅 명예log_connections(Magnus Hagander)

    이전에 복제 연결은 항상있었습니다 로그인.

e.50.2.6. Postgre토토 사이트 : 문서 : 9.2 : PL/PG토토 사이트 -토토 사이트 절차 언어서버 측 언어

  • PL/PGSQL 변경Rain매개 변수가없는 명령 첨부 된 예외 블록 (piyush newe)

    이전Rain코드 블록은 항상 첨부 된 예외 블록으로 스코핑되었습니다. 같은 범위에서는 타당 할 수 없었습니다.

  • PL/PGSQL의 오류 줄 번호 코드를 조정하십시오 다른 pls (Pavel Stehule)와 일치

    이전에 PL/PGSQL은 빈을 무시합니다 (카운트가 아님) 기능 본문의 시작 부분에 라인. 이것은 그랬기 때문에 다른 모든 언어, 특별한 경우와 일치하지 않습니다 제거되었습니다.

  • PL/PGSQL이 상충되는 것에 대해 불평합니다 매개 변수 이름 (Tom Lane)

    이전에는 충돌이 감지되지 않았으며 이름이 감지되었습니다 Out 매개 변수 만 조용히 참조합니다.

  • PL/PGSQL 변수의 유형 수정자가 이제 볼 수 토토 결과 SQL 파서 (Tom Lane)

    유형 수정 자 (예 : varchar 길이 한계) PL/PGSQL 변수에 첨부 된 것은 이전에 시행되었습니다 과제 중에는 다른 모든 것에 대해 무시되었습니다 목적. 이러한 변수는 이제 테이블과 비슷합니다 동일한 수정 자로 선언 된 열. 이것은 아닙니다 대부분의 경우 눈에 띄는 차이를 만들 것으로 예상되며 그러나 일부 SQL의 미묘한 변화가 발생할 수 있습니다. pl/pgsql 함수에 의해 발행 된 명령.

E.50.2.7. Contrib

  • 모든 Contrib 모듈이 이제에 설치되었습니다.생성 확대수동으로 호출하는 대신 SQL 스크립트 (Dimitri Fontaine, Tom Lane)

    9.0이 포함 된 기존 데이터베이스를 업데이트하려면 Contrib 모듈의 버전, 사용확장 생성 ... 포장되지 않은to 기존 Contrib 모듈의 객체를 확대. Pre-9.0 버전에서 업데이트 할 때는 오래된 제거 스크립트를 사용하여 모듈의 객체를 Contrib 그런 다음 사용확장 생성.

E.50.2.8. 기타 비 호환성

  • 만들기PG_STAT_RESET ()모든 데이터베이스 레벨을 재설정합니다 통계 (Tomas vondra)

    일부PG_STAT_DATABASE카운터가 재설정되지 않았습니다.

  • 일부 수정PostgreSQL : 문서 : 9.2 : 토토 꽁열 새 SQL 표준 이름과 일치하는 이름 (Dean Rasheed)

  • 취급ECPG커서 사례에 민감하지 않은 이름 (Zoltan Boszormenyi)

E.50.3. 변화

아래에 변경 사항에 대한 자세한 설명이 있습니다. 사이토토 결과9.1 및 이전 주요 릴리스.

E.50.3.1. 섬기는 사람

E.50.3.1.1. 성능

  • 미등록옵션생성 테이블(Robert Haas)

    이러한 테이블은보다 업데이트 성능이 향상됩니다 일반 테이블이지만 충돌 안전은 아닙니다 : 내용 서버 충돌의 경우 자동으로 지워집니다. 그들의 내용은 복제 노예로 전파되지 않습니다. 어느 하나.

  • 허용전체 외부 조인해시 조인으로 구현되었으며 a 허용왼쪽 외부 조인또는오른쪽 외부 조인해시 (Tom 레인)

    이전전체 외부 조인MERGE 조인으로 만 구현할 수 있으며왼쪽 외부 조인and오른쪽 외부 조인만 해시 만 할 수 있습니다 가입의 무효면. 이러한 변경 사항은 제공합니다 추가 쿼리 최적화 가능성.

  • 병합 중복 fsync 요청 (Robert Haas, Greg 스미스)

    이것은 무거운 쓰기에서 성능을 크게 향상시킵니다 잔뜩.

  • 성능 향상Commit_Siblings(Greg Smith)

    이것은를 사용할 수 토토 결과Commit_Siblings오버 헤드가 적습니다.

  • 큰 ISPELL의 메모리 요구 사항을 줄입니다 사전 (Pavel Stehule, Tom Lane)

  • 후에 데이터 파일을 열어 두지 않으면"Blind Writes"(Alvaro Herrera)

    이것은 백엔드가 보유 할 수있는 시나리오를 수정합니다 파일이 삭제 된 후 오랫동안 열려서 방지합니다 디스크 공간 재생 커널.

E.50.3.1.2. Optimizer

  • 상속 테이블 스캔을 반환 할 수 있습니다 의미있게 분류 된 토토 결과 (Greg Stark, Hans-Jurgen Schonig, Robert Haas, Tom Lane)

    이것은 사용하는 쿼리를 더 잘 최적화 할 수 토토 결과주문, Limit또는Min/max상속 테이블.

  • 진 인덱스 스캔 비용 추정 개선 (Teodor sigaev)

  • 집계 및 창에 대한 비용 추정을 향상시킵니다 함수 (Tom Lane)

E.50.3.1.3. 입증

  • 호스트 이름 및 호스트 접미사 지원 (예 :.example.com) inPG_HBA.conf(Peter Eisentraut)

    이전에 전용 호스트IP주소 및CIDR값이 지원되었습니다.

  • 키 단어 지원allin 의 호스트 열PG_HBA.conf(Peter Eisentraut)

    이전에 사용 된 사람들0.0.0.0/0또는::/0this.

  • 거부Localin토토 베이 : 문서 :그렇지 않은 플랫폼에서 Unix-Socket 연결 지원 (Magnus Hagander)

    이전에는 그러한 선이 조용히 무시되었습니다 놀랍습니다. 이것은 행동을 더 비슷하게 만듭니다 기타 지원되지 않는 경우.

  • 허용GSSAPI익숙해 져야합니다 를 통해 서버에 인증SSPI(Christian Ullrich)

    특히 UNIX 기반을 허용합니다GSSAPI클라이언트를 할 수 토토 결과SSPI인증 Windows 서버와 함께.

  • ID로컬에 대한 인증 소켓은 이제로 알려져 토토 결과.피어(Magnus Hagander)

    이전 용어는 여전히 뒤로 허용됩니다 호환성이지만 두 가지 방법은 이후입니다 근본적으로 다르면 채택하는 것이 더 좋았습니다 그들을위한 다른 이름.

  • 다시 쓰기피어피하기위한 인증 자격 증명 제어 메시지 사용 (Tom Lane)

    이 변경은 피어 인증 코드를 만듭니다 더 간단하고 성능이 향상됩니다. 그러나 필요합니다 제공하는 플랫폼getPeereid함수 또는 이와 동등한 소켓 작동. 알려진 한, 유일한 플랫폼 어떤 동료 인증이 이전과 지금까지 작동했는지 5.0 Pre-5.0 NetBsd가 아닙니다.

E.50.3.1.4. 모니터링

  • RestartPoints의 로깅에 세부 사항을 추가합니다 체크 포인트,log_checkpoints(Fujii Masao, Greg Smith)

    새로운 세부 사항 포함Wal파일 및 동기화 활동.

  • addlog_file_mode권한을 제어합니다 로깅 수집기 (Martin)가 만든 로그 파일에 pihlak)

  • 기본 최대 선 길이 감소Syslog900 로그인 바이트 + 접두사 (Noah Misch)

    이것은 syslog에서 긴 로그 라인의 잘림을 피합니다 오히려 1KB 길이 제한이있는 구현 더 일반적인 2KB보다

E.50.3.1.5. 통계적 견해

  • addclient_hostname열 topg_stat_activity(Peter Eisentraut)

    이전에는 클라이언트 주소 만보 고되었습니다.

  • addPG_STAT_XACT_*통계 기능 및보기 (Joel Jacobson)

    데이터베이스 전체 통계 카운터와 같습니다 뷰이지만 반영은 전류 만 계산합니다 거래.

  • 데이터베이스 레벨에서 마지막 재설정 시간을 추가하십시오 배경 작가 통계보기 (Tomas Vondra)

  • 진공 및 분석 수를 보여주는 열을 추가하십시오 운영PG_STAT _*_ TABLES보기 (Magnus Hagander)

  • addbuffers_backend_fsync열 toPG_STAT_BGWRITER(Greg Smith)

    이 새로운 열은 백엔드 횟수를 계산합니다. fsyncs 버퍼.

E.50.3.1.6. 서버 설정

  • 자동 조정 제공Wal_buffers(Greg Smith)

    기본적으로Wal_buffers이제 자동으로 선택되었습니다 의 값에 따라shared_buffers.

  • 최대 값 증가Deadlock_timeout, log_min_duration_statement log_autovacuum_min_duration(Peter eisentraut)

    이러한 각 매개 변수의 최대 값은 다음과 같습니다 이전에는 약 35 분 밖에 걸리지 않았습니다. 훨씬 더 큰 값 이제 허용됩니다.

E.50.3.2. 복제 및 복구

E.50.3.2.1. 스트리밍 복제 및 연속 보관

  • 허용동기 복제(Simon Riggs, Fujii Masao)

    기본 서버가 대기를 기다릴 수 있습니다. 이전에 디스크에 거래의 정보를 작성합니다 커밋을 인정합니다. 한 번에 하나의 대기가 가능합니다 제어 된대로 동기 대기의 역할을 수행하십시오 에 의해 synchronous_standby_names설정. 동기 복제를 활성화 할 수 토토 결과 를 사용하여 전환별로 비활성화synchronous_commit설정.

  • 파일 시스템 백업 전송에 대한 프로토콜 지원 추가 스트리밍 복제를 사용하여 대기 서버 네트워크 연결 (Magnus Hagander, Heikki Linnakangas)

    이것은 수동으로 전송 해야하는 요구 사항을 피합니다 대기를 설정할 때 파일 시스템 백업 섬기는 사람.

  • addReplication_timeout설정 (Fujii Masao, Heikki Linnakangas)

    더 이상 유휴 상태 인 복제 연결 그만큼Replication_timeout간격이 자동으로 종료됩니다. 이전에는 a 실패한 연결이 일반적으로까지 감지되지 않았습니다 TCP 타임 아웃이 경과하여 불편하게 길어집니다 많은 상황.

  • 명령 줄 도구 추가pg_basebackup생성을위한 새로운 대기 서버 또는 데이터베이스 백업 (Magnus Hagander)

  • A 추가PostgreSQL : 문서 :역할 (Magnus Hagander)

    스트리밍에 사용되는 읽기 전용 권한입니다 복제. 비 슈퍼 루저 역할을 사용할 수 있습니다 복제 연결 용. 이전에는 슈퍼 사용자 만 복제 연결을 시작할 수 있습니다. 슈퍼업자 여전히 기본적 으로이 허가를받습니다.

E.50.3.2.2. 복제 모니터링

  • 시스템보기 추가pg_stat_replication의 활동을 표시하는Wal발신자 프로세스 (Itagaki Takahiro, Simon Riggs)

    이것은 모든 연결된 대기의 상태를보고합니다 서버.

  • 모니터링 기능 추가PG_LAST_XACT_REPLAY_TIMESTAMP ()(fujii Masao)

    이것은 1 차 생성 된 시간을 반환합니다 가장 최근의 커밋 또는 중단 기록 대기.

E.50.3.2.3. 뜨거운 대기

  • 구성 매개 변수 추가 hot_standby_feedbackto 대기는 오래된 행 버전의 정리를 연기 할 수 있도록합니다 1 차 (Simon Riggs)

    이것은 장기 실행 쿼리를 취소하는 것을 피하는 데 도움이됩니다 대기.

  • 추가PG_STAT_DATABASE_CONFLICTS표시 할 시스템보기 취소 된 쿼리와 이유 (Magnus Hagander)

    삭제로 인해 취소가 발생할 수 있습니다 테이블 스페이스, 잠금 시간 초과, 오래된 스냅 샷, 고정 버퍼 및 교착 상태.

  • A 추가갈등카운트 에게PG_STAT_DATABASE(Magnus Hagander)

    이것은 데이터 베이스.

  • 최대 값 증가 max_standby_archive_delay max_standby_streaming_delay

    이러한 각 매개 변수의 최대 값은 다음과 같습니다 이전에는 약 35 분 밖에 걸리지 않았습니다. 훨씬 더 큰 값 이제 허용됩니다.

  • adderrcode_t_r_database_dropped오류 감소로 인한 복구 충돌을보고하는 코드 데이터베이스 (tatsuo ishii)

    이것은 연결 풀링 소프트웨어에 유용합니다.

E.50.3.2.4. 복구 제어

  • 스트리밍 복제를 제어하기위한 기능 추가 리플레이 (Simon Riggs)

    새로운 기능은 pg_xlog_replay_pause (), pg_xlog_replay_resume ()상태 기능 PG_IS_XLOG_REPLAY_PAUSD ().

  • add복구 .conf설정pause_at_recovery_targetto Target (Simon Riggs)에서의 회복 일시 중지

    이것은 복구 서버를 쿼리 할 수 ​​토토 결과. 회복 지점이 원하는지 여부.

  • |pg_create_restore_point ()(Jaime 카사노바)

    이 명명 된 복원 지점은 다음과 같이 지정할 수 있습니다 새로운를 사용한 복구 목표복구 .conf설정복구 _target_name.

  • 대기 복구가 새 타임 라인으로 전환하도록 허용합니다 자동으로 (Heikki Linnakangas)

    이제 대기 서버는 아카이브 디렉토리를 스캔합니다 새로운 타임 라인이 정기적으로.

  • add RETART_AFTER_CRASH자동 서버 재시작을 비활성화하는 설정 백엔드 충돌 (Robert Haas)

    이를 통해 외부 클러스터 관리 소프트웨어가 가능합니다 데이터베이스 서버가 다시 시작되는지 여부를 제어합니다 아니다.

  • 허용복구 .conf동일하게 사용하려면 행동 인용토토 결과.conf(Dimitri Fontaine)

    이전에 모든 값을 인용해야했습니다.

E.50.3.3. 쿼리

  • True 추가직렬화 가능 격리 수준(Kevin Grittner, Dan Ports)

    이전에 직렬화 가능한 분리를 요구합니다 단일 MVCC 스냅 샷이 사용될 수 있음을 보장합니다. 전체 트랜잭션의 경우, 확실한 허용 문서화 된 이상. 오래된 스냅 샷 격리 동작 요청하여 여전히 사용할 수 있습니다반복 가능한 읽기격리 레벨.

  • Data-Modification 명령 허용 (삽입/업데이트/삭제) inwithClauses (Marko Tiikkaja, Hitoshi 하라다)

    이 명령은 사용할 수 토토 결과반환데이터를 전달하려면 쿼리 포함.

  • 허용with클로즈가 첨부 될삽입, 업데이트, 삭제진술 (Marko Tiikkaja, Hitoshi Harada)

  • 허용그룹 by쿼리 대상의 열 기본 키가에 지정된 경우 나열그룹 by절 (Peter Eisentraut)

    SQL 표준은이 동작을 허용합니다 기본 키, 결과는 모호하지 않습니다.

  • 키워드 사용 허용별도의inUnion/Intersect/제외Clauses (Tom Lane)

    별도의기본값입니다 행동 이므로이 핵심 단어의 사용은 중복되지만 SQL 표준이 허용됩니다.

  • 규칙을 사용하여 일반 쿼리를 수정하여 동일하게 사용하십시오 스냅 샷 동작으로설명 분석(Marko Tiikkaja)

    이전분석쿼리에 약간 다른 스냅 샷 타이밍을 사용했습니다 규칙 포함. 그만큼설명 분석행동이 더 논리적으로 판단되었습니다.

E.50.3.3.1. 문자열

  • 콜럼 당 추가Collation지원 (Peter 아이젠트라 우트, 톰 레인)

    이전에 Collation (텍스트의 정렬 순서 문자열)는 데이터베이스 생성에서만 선택할 수있었습니다. 이제 콜로레이션은 열, 도메인, 인덱스 또는 표현, SQL 표준을 통한Collate절.

E.50.3.4. 객체 조작

  • addPostgreSQL : 문서 : 9.2 : 관련 객체를 토토 핫자로 포장추가 포장을 단순화하는토토 결과(Dimitri Fontaine, Tom 레인)

    확장자는 NEW에 의해 제어됩니다생성/Alter/드롭 확대명령. 이것은 임시 방법을 대체합니다 A에 추가되는 그룹화 객체토토 결과설치.

  • 지원 추가외국 테이블(Shigeru Hanada, Robert Haas, Jan Urbanski, Heikki Linnakangas)

    이것은 데이터베이스 외부에 저장된 데이터를 허용합니다 네이티브처럼 사용토토 결과-임업 데이터. 외국의 그러나 현재 테이블은 읽기 전용입니다.

  • 기존 열거 유형에 새 값을 추가하도록 허용 을 통해PostgreSQL(Andrew Dunstan)

  • addAlter Type ... ADD/DROP/ALTER/RENAME 기인하다(Peter Eisentraut)

    이것은 복합 유형을 수정할 수 토토 결과.

e.50.3.4.1.Alter개체

  • add제한/캐스케이드toALTER 유형유형 테이블에서의 작업 (Peter eisentraut)

    이것은 컨트롤add/드롭/Alter/이름 바꾸기 기인하다계단식 행동.

  • 지원Alter Table이름of |타입(Noah Misch)

    이 구문을 사용하면 독립형 테이블을 만들 수 있습니다 유형 테이블 또는 유형 테이블로 만들어 독립형.

  • 더 많은 객체 유형에 대한 지원 추가Alter ... Set Schema명령 (Dimitri 폰테인)

    이 명령은 이제 전환을 위해 지원되었습니다. 운영자, 운영자 클래스, 운영자 패밀리, 텍스트 검색 구성, 텍스트 검색 사전, 텍스트 검색 파서 및 텍스트 검색 템플릿.

e.50.3.4.2. 생성/alter 테이블

  • addALTER 테이블 ... 추가 인덱스를 사용하는 고유/기본 키(Gurjeet Singh)

    이것은 기본 키 또는 고유 한 제약 조건을 허용합니다. a를 포함한 기존 고유 인덱스를 사용하여 정의됩니다 동시에 독특한 색인을 만들었습니다.

  • 허용Alter Table추가합니다 검증이없는 외국 키 (Simon Riggs)

    새 옵션이입니다.유효한. 제약의 상태는 나중에있을 수 토토 결과 수정검증및 검증 점검이 수행되었습니다. 이것들은 함께 당신을 허용합니다 읽기에 미치는 영향을 최소화하고 외국 키를 추가하려면 작업 쓰기.

  • 허용스포츠 토토 베트맨 PostgreSQL :to 적절한 경우에 테이블을 다시 쓰지 않도록하십시오 (Noah Misch, 로버트 하스)

    예를 들어 A 변환Varchar열 to텍스트더 이상 재 작성이 필요하지 않습니다 테이블. 그러나 a의 길이 제약을 증가시킵니다.Varchar열은 여전히 ​​필요합니다 테이블 다시 쓰기.

  • addPostgreSQL : 문서구문 (Robert Haas)

    오류를 일으키지 않고 테이블 생성이 가능합니다 테이블이 이미 존재하는 경우.

  • 가능한 수정"동시에 튜플 업데이트 된 "두 개의 백엔드가 추가하려고 시도한 오류 동시에 같은 테이블에 상속 자식 (Robert Haas)

    스포츠 토토 베트맨 PostgreSQL이제 더 강해집니다 세션이 할 수 없도록 부모 테이블을 잠그십시오. 동시에 업데이트하십시오.

E.50.3.4.3. 객체 권한

  • A 추가보안 레이블명령 (kaigai 코헤이)

    보안 레이블을 할당 할 수 있습니다 사물.

E.50.3.5. 유틸리티 운영

  • 트랜잭션 수준 추가자문 잠금(Marko Tiikkaja)

    이들은 기존 세션 수준과 유사합니다 자문 잠금 장치이지만 이러한 자물쇠는 자동으로 해제됩니다 트랜잭션 종료시.

  • 만들기PostgreSQL : 문서 : 9.2 : 스포츠다시 시작합니다 트랜잭션으로 시퀀스 (Steve Singer)

    이전에는 카운터가 남았을 수 있습니다 동기화 on-commit 사이에 백엔드가 충돌 한 경우 잘린 활동 및 커밋 완료.

e.50.3.5.1. COPY

  • add인코딩옵션복사(Hitoshi Harada, Itagaki Takahiro)

    이것은의 인코딩을 허용합니다copy파일을 별도로 지정합니다 클라이언트 인코딩에서.

  • 양방향 추가COPY프로토콜 지원 (Fujii Masao)

    이것은 현재 스트리밍에 의해서만 사용됩니다 복제.

e.50.3.5.2. 설명

  • makeVerbose 설명쇼 a의 함수 호출 표현식functionscan노드 (Tom Lane)

e.50.3.5.3. 진공

  • 출력에 대한 추가 세부 정보 추가진공 충전 말 수가 많은클러스터 말 수가 많은(Itagaki Takahiro)

    새로운 정보에는 라이브 및 데드 튜플이 포함됩니다 계산 및 여부클러스터IS 재건축을 위해 색인 사용.

  • 예방autovacuum테이블 잠금을 얻을 수없는 경우 대기합니다 (Robert 하스)

    나중에 그 표를 진공 청소치하려고합니다.

e.50.3.5.4. 클러스터

  • 허용클러스터정렬하려면 인덱스를 스캔하는 대신 테이블 저렴할 가능성이 높습니다 (Leonardo Francalanci)

E.50.3.5.5. 인덱스

  • 가장 가까운 이웃 (주문별로) 검색을 추가합니다 에게gist인덱스(Teodor Sigaev, 톰 레인)

    이것은 허용gist인덱스를 신속하게 반환하려면N쿼리에서 가장 가까운 값Limit. 예를 들어

    선택 * 위치별로 주문 <- 포인트 '(101,456)'Limit 10;

    주어진 대상에 가장 가까운 10 개의 장소를 찾습니다 가리키다.

  • 허용gin인덱스index null 및 빈 값 (Tom Lane)

    이것은 전체 허용gin인덱스 스캔 및 다양한 수정 진 스캔이 실패하는 코너 케이스.

  • 허용gin인덱스더 잘 인식하려면 중복 검색 항목 (Tom Lane)

    이것은 특히 인덱스 스캔 비용을 줄입니다 불필요한 전체 인덱스 스캔을 피하는 경우

  • 고정gist인덱스완전하게 충돌-안전 (Heikki Linnakangas)

    이전에 A가 드문 경우가있었습니다.Reindex필요할 것입니다 (당신은 그럴 것입니다 잘 아는).

E.50.3.6. 데이터 유형

  • 허용숫자더 많이 사용하려면 일반적인 경우에 작고 2 바이트 헤더 (Robert 하스)

    이전에 모두숫자값 4 바이트 헤더가있었습니다. 이 변경은 디스크를 절약합니다 저장.

  • 나누기 지원 추가MoneybyMoney(Andy Balholm)

  • 타입에서 바이너리 I/O 허용void(Radoslaw Smogura)

  • 기하학적 hypotenuse 계산 개선 운영자 (Paul Matthews)

    이것은 불필요한 오버플로를 피할 수 토토 결과 더 정확합니다.

  • 지원 해싱 배열 값 (Tom Lane)

    이것은 추가 쿼리 최적화를 제공합니다 가능성.

  • 복합 유형을 모두 정렬 가능한 것으로 취급하지 마십시오 열 유형은 정렬 가능합니다 (Tom Lane)

    이것은 가능하지 않습니다"할 수 없습니다 비교 함수를 식별 "실패 런타임, 쿼리를 구현할 수있는 경우 정렬. 또한,분석시도하지 않을 것입니다 부적절한 통계 수집 방법을 사용합니다 그러한 복합 유형의 열.

E.50.3.6.1. 주조

  • 사이에 캐스팅에 대한 지원 추가Money숫자56434_56463

  • 캐스팅 지원 추가int4andint8toMoney(Joey Adams)

  • 테이블의 행 유형을 테이블에 캐스트 할 수 있습니다 유형 테이블 인 경우 SuperType (Peter Eisentraut)

    이것은 기존 시설과 유사합니다 행 유형을 Supertable의 행에 캐스트 할 수 있습니다 유형.

e.50.3.6.2. XML

E.50.3.7. 기능

E.50.3.7.1. 객체 정보 기능

  • 추가pg_describe_object ()함수 (Alvaro Herrera)

    이 함수는 사람이 읽을 수있는 것을 얻는 데 사용됩니다 객체를 묘사하는 문자열PG_CLASSOID, Object Oid 및 서브 객체 ID. 해석하는 데 사용될 수 있습니다 의 내용pg_depend.

  • 내장 운영자 및 그 주석을 업데이트합니다 기본 기능 (Tom Lane)

    an을 통해 사용해야 할 함수 관련 연산자가 이제 그와 같이 댓글을 달았습니다.

  • 변수 추가 quote_all_identifiersto 모든 식별자의 인용 강제설명및 시스템 카탈로그 기능 좋다pg_get_viewdef ()(Robert Haas)

    이것은 도구 및 기타로 스키마를 내보낼 수 토토 결과 인용 규칙이 다르기 쉬운 데이터베이스.

  • 열을 추가Information_Schema.Sequences시스템보기 (Peter Eisentraut)

    이전에는보기가 존재했지만 열이 있습니다 시퀀스 매개 변수에 대해 구현되었습니다.

  • 허용publicas 의사-롤 이름에서has_table_privilege ()및 관련 기능 (Alvaro Herrera)

    이것은 공공 권한을 확인할 수 토토 결과.

E.50.3.7.2. 기능과 트리거 창조

  • 지원대신전망대 트리거 (Dean Rasheed)

    이 기능을 사용하여 완전히 구현할 수 있습니다 업데이트 가능한 뷰.

E.50.3.8. 서버 측 언어

e.50.3.8.1. pl/pgsql서버 측 언어

  • add 배열의 foreachto PL/PGSQL (Pavel Stehule)

    이것은 이전보다 더 효율적이고 읽을 수 있습니다 배열의 요소를 통해 반복하는 방법 값.

  • 허용Raine같은 장소에서 잡을 수있는 매개 변수 잡기오류 상승에서 같은 위치 (Piyush Newe)

    이전 코딩은 블록에서 오류를 던졌습니다 활성 예외 처리기가 포함되어 있습니다. 새로운 행동은 다른 DBM과 더 일치합니다 제품.

e.50.3.8.2. pl/perl서버 측 언어

  • pl/perl 함수에 일반 레코드 인수를 허용합니다 (앤드류 던 스탄)

    pl/perl 함수는 이제 유형을 수락하도록 선언 할 수 있습니다레코드. 행동은 동일합니다 명명 된 복합 유형의 경우

  • pl/perl 배열 인수를 Perl 어레이로 변환합니다 (Alexey Klyukin, Alex Hunsaker)

    문자열 표현은 여전히 ​​사용 가능합니다.

  • pl/perl 복합 유형 인수를 Perl로 변환합니다 해시 (Alexey Klyukin, Alex Hunsaker)

    문자열 표현은 여전히 ​​사용 가능합니다.

e.50.3.8.3. pl/python서버 측 언어

  • PL/Python에 대한 테이블 기능 지원 (Jan Urbanski)

    pl/python은 이제 다중 반환를 반환 할 수 있습니다.out매개 변수 및 레코드 세트.

  • PL/Python (Jan Urbanski)에 유효성 검사기 추가

    PL/Python 함수가 구문 확인을 허용합니다 기능 생성 시간에.

  • pl/python (Jan Urbanski)

    SQL 생성 예외 오류에 대한 액세스가 가능합니다 PL/Python Exception Blocks의 코드.

  • PL/Python에 명시 적 하위 트랜잭션 추가 (Jan Urbanski)

  • 인용 문자열을위한 pl/python 함수 추가 (Jan Urbanski)

    이 기능은입니다.plpy.quote_ident, plpy.quote_literalplpy.quote_nullable.

  • PL/Python 오류에 트레이스 백 정보 추가 (Jan Urbanski)

  • 반복자의 PL/Python 오류 보고서ply_elog(Jan Urbanski)

  • Python 3을 사용한 예외 처리 수정 (Jan Urbanski)

    예외 클래스는 이전에 사용할 수 없었습니다plpy파이썬 아래 3.

E.50.3.9. 클라이언트 응용 프로그램

  • MarkPostgreSQLandDroplang이제 더 이상 사용되지 않았습니다 그들은 단지 확장 명령을 호출합니다 (Tom Lane)

e.50.3.9.1. PSQL

  • addPSQL명령\ conninfo전류를 표시하려면 연결 정보 (David Christensen)

  • addPSQL명령\ sf함수를 표시하려면 정의 (Pavel Stehule)

  • addPSQL명령\ dl언어를 나열합니다 (Fernando Ike)

  • 추가S ("시스템") 옵션PSQL's\ dn(List Schemas) 명령 (Tom 레인)

    \ dn없음S이제 시스템 스키마를 억제합니다.

  • 허용PSQL's\ eand\ ef줄 번호를 수락하도록 명령합니다 편집기에 커서를 배치하는 데 사용됩니다 (Pavel 스타 룰)

    이것은에 따라 편집자에게 전달됩니다PSQL_EDITOR_LINENUNBER_ARG환경 변수.

  • PSQL운영 체제 로케일의 클라이언트 인코딩 기본값 (Heikki Linnakangas)

    이것은 만 발생합니다pgclientencoding환경 변수입니다 설정되지 않습니다.

  • 만들기\ d고유 한 인덱스 및 고유 한 제약 조건 (Josh Kupershmidt)

  • make\ dt+보고서pg_table_size대신pg_relation_size언제 9.0 이상 서버 (Bernd Helmle)와 대화

    이것은 테이블 크기의 더 유용한 척도이지만 이전과 동일하지 않음에 유의하십시오. 동일한 디스플레이에보고되었습니다.

  • 추가 탭 완료 지원 (Itagaki Takahiro, Pavel Stehule, Andrey Popp, Christoph Berg, David Fetter, Josh Kupershmidt)

e.50.3.9.2. pg_dump

  • addpg_dumpandpg_dumpall옵션-Quote-all-Identifiers강제 인용 모든 식별자 (Robert Haas)

  • add디렉토리형식으로pg_dump(Joachim Wieland, Heikki Linnakangas)

    이것은 내부적으로와 유사합니다타르 pg_dump형식.

e.50.3.9.3. PG_CTL

  • 수정PG_CTL따라서 아니오 더 오래 서버가 아니라고 잘못보고합니다 달리기 (Bruce Momjian)

    이전에는 서버가 발생한 경우 발생할 수 있습니다 달리기하지만PG_CTL인증 할 수 없습니다.

  • 개선PG_CTLStart 's"대기" (-w) 옵션 (Bruce Momjian, Tom Lane)

    대기 모드는 이제 훨씬 더 강력합니다. 그것 비 디폴트 포스트 마스터 포트에 의해 혼란스러워지지 않습니다 숫자, 비 디폴트 유닉스 도메인 소켓 위치, 허가 문제 또는 오래된 우체국 장 마스터 잠금 파일.

  • add홍보옵션PG_CTL스위치 a 기본 (Fujii Masao) 대기 서버

e.50.3.10.개발 도구

e.50.3.10.1. libpq

  • LIBPQ 연결 옵션 추가client_encodingpgclientencoding환경 변수 (Heikki Linnakangas)

    ​​값auto운영 체제를 기반으로 클라이언트 인코딩 장소.

  • addpqlibversion ()함수 LIBPQ 라이브러리 버전 (Magnus Hagander)을 반환합니다

    Libpq 이미pqserverversion ()서버 버전.

  • LIBPQ 사용 클라이언트가 사용자 이름을 확인하도록 허용합니다 Unix-Domain을 통해 연결할 때 서버 프로세스 소켓, 새로운요구 사항연결 옵션 (Peter eisentraut)

    토토 결과이미 서버가 클라이언트 사용자 이름을 확인할 수 있도록 허용했습니다 유닉스 도메인 소켓을 통한 연결.

  • addpqping ()pqpingparams ()to libpq (Bruce Momjian, Tom Lane)

    이러한 기능은 서버를 감지 할 수 있습니다 새 세션을 열지 않고 상태.

e.50.3.10.2. ECPG

  • ECPG가 동적 커서 이름을 수락하도록 허용전류의 위치조항 (Zoltan Boszormenyi)

  • makeecpglib쓰기더블정밀도의 값 15 자리, 이전과 같이 14가 아닌 (Akira Kurosawa)

E.50.3.11. 옵션 빌드

  • use+olibmerrno플래그를 컴파일합니다 HP-UX C 컴파일러를 사용하여 (Ibrar Ahmed)

    이것은 수학 라이브러리 호출의 오해를 피할 수 토토 결과 최근 HP 플랫폼에서.

E.50.3.11.1. makefiles

  • 개선 된 병렬 지원 지원 (Peter eisentraut)

    이것은 더 빠른 컴파일을 허용합니다. 또한,만들기 -K이제 더 일관되게 작동합니다.

  • 요구gnu 만들기3.80 이상 (Peter eisentraut)

    이것은 병렬 메이크로 인해 필요합니다 개량.

  • add유지 관리자 확인Target (Peter Eisentraut)

    이 대상은 다양한 소스 코드를 수행합니다 빌드 또는 그 중 하나에 적합하지 않습니다 회귀 테스트. 현재 : Duplical_oids, SGML 구문 및 탭 점검, NLS 구문 확인.

  • 지원확인inContrib(피터 eisentraut)

    이전에만 해당만들기 installcheck작동했지만 이제는 지원이 있습니다 임시 설치에서 테스트. 최상위체크 월드 만들기지금 대상 테스트 포함Contrib이것 방법.

E.50.3.11.2. Windows

  • Windows에서 허용PG_CTL서비스 등록 자동 시작 또는 주문형 시작 (Quan Zongliang)

  • 수집 지원 추가충돌 우울Windows (Craig Ringer, Magnus Hagander)

    Minidumps지금 할 수 있습니다 비 데그 윈도우 바이너리에 의해 생성되어 분석됩니다 표준 디버깅 도구에 의해.

  • Mingw64 컴파일러 (Andrew 던 스탄)

    이것은 64 비트 창문 바이너리를 구축 할 수 토토 결과 크로스 컴파일을 통한 비 창고 플랫폼.

E.50.3.12. 소스 코드

  • GUC 변수에 대한 API를 수정 할당 후크 (Tom 레인)

    지정 후크의 이전 기능은 이제 분할되었습니다 체크 고리와 고리를 할당 한 후 전자 실패 할 수는 있지만 후자는해서는 안됩니다. 이 변화는 할 것입니다 맞춤 GUC를 정의하는 추가 기능 모듈 매개 변수.

  • 대기 지원을 지원하기 위해 소스 코드에 래치 추가 이벤트 (Heikki Linnakangas)

  • 데이터 수정 권한 검사 중앙화 논리 (Kaigai Kohei)

  • 누락 추가get_개체_oid ()기능 일관성 (Robert Haas)

  • C ++ 컴파일러 사용 능력 향상컴파일 애드온 모듈제거하여 충돌하는 키워드 (Tom Lane)

  • 잠자리에 대한 지원 추가BSD(Rumko)

  • Exposequote_literal_cstr ()백엔드 사용 (Robert Haas)

  • run회귀 테스트기본 인코딩 (Peter Eisentraut)

    회귀 테스트는 이전에 항상 실행되었습니다SQL_ASCII인코딩.

  • addSRC/Tools/GIT_CHANGELOG교체하려면CVS2CLandPGCVSLOG(Robert Haas, Tom Lane)

  • addgit-external-diff스크립트 toSRC/Tools(브루스 Momjian)

    이것은 컨텍스트를 생성하는 데 사용됩니다.

  • 건물에 대한 지원 향상Clang(Peter Eisentraut)

E.50.3.12.1. 서버 후크

  • 권한을 확인하기 위해 소스 코드 후크 추가 (Robert 하스, 스티븐 프로스트)

  • 사용하기 위해 포스트 오브젝트 생성 기능 후크 추가 보안 프레임 워크 (Kaigai Kohei)

  • 클라이언트 인증 후크 추가 (Kaigai Kohei)

E.50.3.13. Contrib

  • modifyContrib모듈 및 신규를 통해 설치할 절차 언어Extension메커니즘 (Tom 레인, 디미트리 폰테인)

  • addPostgreSQL : 문서 :외국 데이터 포장지 (Shigeru Hanada)

    이 외국 데이터 래퍼를 사용하는 외국 테이블 와 매우 유사한 방식으로 플랫 파일을 읽으십시오.COPY.

  • 가장 가까운 이웃 검색 지원 추가Contrib/PG_TRGMcontrib/btree_gist(Teodor sigaev)

  • add스포츠 토토 베트맨 : 문서 : 9지원 동등하지 않은 검색 (Jeff Davis)

  • 수정'slevenshtein ()처리 할 기능 멀티 바이트 캐릭터 (Alexander Korotkov)

  • addssl_cipher ()ssl_version ()함수토토 postgresql :(Robert Haas)

  • 고정PostgreSQL : 문서 :andContrib/Hstore일관성을 제공합니다 인덱스 빈 배열 (Tom Lane)이 포함 된 결과

    이전에 인덱스를 사용한 빈 배열 쿼리 사용한 결과와 다른 결과를 반환 할 수 있습니다 순차적 스캔.

  • 허용PostgreSQL : 문서 :제대로 작동합니다 다차원 배열 (Tom Lane)

  • inPostgreSQL : 문서 :오류를 피하십시오 없는 경우에 널의 존재에 대해 불평 Nulls가 실제로 존재합니다 (Tom Lane)

  • inPostgreSQL : 문서 :, 동작 수정 빈 배열과 관련된 격리 작업자 (Tom 레인)

    빈 배열은 이제 올바르게 고려됩니다 다른 배열에 포함되어 토토 결과.

  • remod토토 사이트 PostgreSQL'의 임의의 제한 수매개 변수=value처리 할 수있는 쌍xslt_process ()(Pavel 스타 룰)

    이전 한도는 10이었습니다.

  • in스포츠 토토 베트맨 : 문서 : 9, 수정 heap_page_item은 32 비트 값으로 그로 마스크를 반환합니다 (Alvaro Herrera)

    이것은 부정적인 값을 반환하지 않습니다 혼란 스럽습니다. 기본 값은 서명되지 않은 16 비트입니다 정수.

E.50.3.13.1. 보안

  • add배트맨 토토 PostgreSQL인터페이스 권한 수표Selinux(Kaigai Kohei)

    이것은 새로운 것을 사용합니다보안 상표시설.

  • Contrib Module 추가auth_delay(Kaigai Kohei)

    이로 인해 서버가 돌아 오기 전에 일시 중지됩니다 인증 실패; 그것은 무차별을 만들도록 설계되었습니다 강제 암호 공격이 더 어렵습니다.

  • adddummy_seclabelContrib 모듈 (Kaigai Kohei)

    이것은 허가 회귀 테스트에 사용됩니다.

E.50.3.13.2. 성능

  • 지원 추가Likeandilike색인 검색으로윈 토토 : 문서 : 9.2(알렉산더 Korotkov)

  • addlevenshtein_less_equal ()함수 to작은 거리에 최적화 (Alexander Korotkov)

  • 인덱스 조회 성능 향상Contrib/Seg열 (Alexander Korotkov)

  • 성능 향상pg_upgrade데이터베이스와 함께 많은 관계 (Bruce Momjian)

  • 플래그 추가PostgreSQL : 문서보고합니다 진술 당 대기 시간 (Florian Pflug)

E.50.3.13.3. fsync 테스트

E.50.3.14. 선적 서류 비치

  • 광범위한ECPG문서 개선 (Satoshi nagayasu)

  • 광범위한 교정 및 문서 개선 (Thom Brown, Josh Kupershmidt, Susanne Ebrecht)

  • 문서 추가exit_on_error(Robert Haas)

    이 매개 변수로 인해 세션이 종료됩니다 오류.

  • 문서 추가pg_options_to_table ()(Josh Berkus)

    이 기능은 테이블 스토리지 옵션을 보여줍니다 읽기 쉬운 양식.

  • 모든 복합재에 액세스 할 수 있음을 문서화하십시오 사용 유형 필드(CompositeVal).*구문 (Peter eisentraut)

  • 문서Translate ()문자 제거From해당하지 않는to캐릭터 (조쉬 Kupershmidt)

  • 문서 병합생성 제약 트리거and생성 방아쇠(Alvaro Herrera)

  • Centralize토토 베이 : 문서 : 9.2 : 권한and스포츠 토토 : 문서 : 9.2 : 스포츠 토토 클러스터 업그레이드문서 (Bruce Momjian)

  • add커널 튜닝 선적 서류 비치Solaris 10 (Josh Berkus)

    이전에는 Solaris 9 커널 튜닝만이있었습니다 문서화.

  • ASCII가 아닌 문자를 일관되게 처리합니다역사파일 (Peter Eisentraut)

    역사파일이 있습니다 영어, 우리는 비 ASCII 편지를 처리해야합니다. 기고자 이름. 이것들은 이제 음역되어 있습니다 그들은 가정없이 합리적으로 읽을 수 있습니다 캐릭터 세트.