윈 토토 노트

윈 토토

E.26. 윈 토토 9.4.1

출시 날짜 : 2015-02-05

이 윈 토토에는 9.4.0의 다양한 수정 사항이 포함되어 있습니다. 9.4 주요 윈 토토의 새로운 기능에 대한 자세한 내용은 참조섹션 E.27.

E.26.1. 버전 9.4.1로의 마이그레이션

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

그러나 Windows 사용자이고 사용중인 경우"노르웨이 (Bokmål)"로케일, 업그레이드 후 수동 조치가 필요합니다"노르웨이 (Bokmål) _norway"또는"Norwegian-Bokmal"로케일 이름에 저장된윈 토토일반 ASCII alias와 함께 시스템 카탈로그"Norwegian_norway". 자세한 내용은 참조변경

E.26.2. 변화

  • 버퍼 오버런 수정to_char ()(Bruce Momjian)

    언제to_char ()다수의 숫자를 요구하는 숫자 형식 템플릿을 처리합니다.윈 토토버퍼 끝을 지나서 읽을 것입니다. 제작 된 타임 스탬프 서식 템플릿을 처리 할 때윈 토토버퍼의 끝을 지나서 쓸 것입니다. 두 경우 모두 서버가 충돌 할 수 있습니다.

  • 교체에서 오버런 수정*printf ()함수 (Tom Lane)

    윈 토토교체 구현 포함printf및 관련 기능. 이 코드는 플로팅 포인트 번호를 형식화 할 때 스택 버퍼를 오버런합니다 (변환 지정자e, E, f, F, g또는G) 정밀도가 약 500보다 큰 정밀도로 서버에 충돌하며, 우리는 특권 에스컬레이션으로 이어지는 공격의 가능성을 배제하지 않았습니다. 데이터베이스 사용자는를 통해 이러한 버퍼 오버런을 트리거 할 수 있습니다.to_char ()SQL 함수. 그것이 유일한 영향을받는 핵심이지만윈 토토기능, 인쇄 가족 기능을 사용하는 확장 모듈도 위험에 처할 수 있습니다.

    이 문제는 주로 영향을 미칩니다윈 토토Windows에서.윈 토토다른 현대 플랫폼에있는 적절한 경우 이러한 기능의 시스템 구현을 사용합니다. (CVE-2015-0242)

  • 버퍼 오버런 수정​​Contrib/Pgcrypto(Marko Tiikkaja, Noah Misch)

    메모리 크기 추적의 오류pgcrypto모듈 허용 스택 버퍼 오버런 및 초기화되지 않은 메모리의 내용에 대한 부적절한 의존성. 버퍼 오버런 케이스는 서버에 충돌 할 수 있으며 권한 에스컬레이션으로 이어지는 공격 가능성을 배제하지 않았습니다.

  • 오류 후 프론트 엔드/백엔드 프로토콜 동기화 가능한 손실 수정 (Heikki Linnakangas)

    서버가 클라이언트의 프로토콜 메시지를 읽는 중에 서버가 발생하는 동안 오류가 발생하면 동기화를 잃고 메시지 데이터의 일부를 새로운 프로토콜 메시지로 잘못 해석하려고 시도 할 수 있습니다. 명령 매개 변수 내에 제작 된 바이너리 데이터를 제출할 수있는 공격자는 이런 식으로 자신의 SQL 명령을 주입하는 데 성공할 수 있습니다.

  • 제약 범위 오류 메시지 (Stephen Frost)를 통해 정보 누출 수정

    일부 서버 오류 메시지는 고유 한 제약 조건과 같은 제약 조건을 위반하는 열의 값을 보여줍니다. 사용자가없는 경우select테이블의 모든 열에서 권한은 사용자가 볼 수없는 값을 드러내는 것을 의미 할 수 있습니다. 값이 SQL 명령에서 나왔거나 사용자가 선택할 수있는 경우에만 표시되도록 코드를 조정하십시오.

  • Windows에서 회귀 테스트의 임시 설치 잠금 (Noah Misch)

    SSPI 인증을 사용하여 테스트 스위트를 시작한 OS 사용자의 연결을 허용합니다. This closes on Windows the same vulnerability previously closed on other platforms, namely that other users might be able to connect to the test postmaster.

  • Windows Locale에 대처하는"노르웨이 (Bokmål)"(Heikki Linnakangas)

    비 ASCII 로케일 이름은 그들이 어떤 인코딩을 표현 해야하는지 명확하지 않기 때문에 문제가됩니다. 번거로운 로케일 이름을 일반 ASCII 별칭에 매핑하십시오"Norwegian_norway".

    9.4.0 귀찮은 이름을 매핑"Norwegian-Bokmal", 그러나 모든 Windows 구성에서 작동하지 않는 것이 밝혀졌습니다."Norwegian_norway"대신 권장됩니다.

  • 평가 계획 처리 (Tom Lane)에서 준비된 프레드 메모리 문제 수정

    inCommitted 읽기모드, 최근 업데이트 된 행을 잠그거나 업데이트하는 쿼리는이 버그의 결과로 충돌 할 수 있습니다.

  • 평가 플랜 쿼트 처리에서 튜플 잠금 장치를 얻으려고하는 동안 가능한 교착 상태를 피하십시오 (Álvaro Herrera, Mark Kirkwood)

  • 거래가 A를 취득하려고 할 때 대기하지 않는 수정주요 독점 없음튜플 잠금, 여러 다른 거래가 현재 보유for shareLocks (Álvaro Herrera)

  • 성능 향상설명광범위한 테이블 (Tom Lane)

  • 수정JSONB유니 코드 탈출 처리 및 결과적으로\ u0000(Tom Lane)

    이전에 JSON 유니 코드 탈출\ u0000는 받아 들여졌으며 그 여섯 자로 저장되었습니다. 그러나 그것은 입력에 대해 저장된 것과 구별 할 수 없습니다\\ u0000, 모호성을 초래합니다. 또한 텍스트 출력이 예상되는 경우->>연산자, 시퀀스는로 인쇄되었습니다.\ u0000, JSON 이스케이프가 제거 될 것이라는 기대에 부응하지 않습니다. (일관된 행동은 제로 바이트를 방출해야하지만윈 토토텍스트 문자열에 내장 된 제로 바이트를 지원하지 않습니다.) 9.4.0 JSON 출력 변환 규칙을 조정 하여이 상황을 개선하려는 악의적 인 시도가 포함되었습니다. 그러나 물론 그것은 근본적인 모호성을 고칠 수 없었으며 유니 코드 탈출 시퀀스의 다른 사용을 깨뜨리는 것으로 판명되었습니다.\ u0000inJSONB입력.

    if aJSONB열이 포함되어\ u00009.4.0으로 저장된 가치는 마치 마치 마치 읽을 것입니다\\ u0000,이 경우 9.4.0에 의해 저장된 데이터에 대한 다른 유효한 해석입니다.

    theJSON유형에는 스토리지-반응성 문제가 없었지만 일관되지 않은 텍스트 출력 문제가 발생했습니다. 그러므로\ u0000이제 거부 될 예정JSON값은 탈퇴 형 양식으로 변환 될 때 값이 필요합니다. 이 변화는 저장 능력을 깨뜨리지 않습니다\ u0000inJSON값에 대해 처리가 수행되지 않는 한 열. 이것은 데이터베이스 인코딩이 UTF8이 아닐 때 비 ASCII 유니 코드 탈출이 허용되는 경우와 정확히 유사합니다.

  • 네임 스페이스 처리 수정xpath ()(Ali Akbar)

    이전에XMLanxpath ()네임 스페이스 선언이 입력에서 조상 요소에 첨부 된 경우 콜은 네임 스페이스 선언이 없습니다XML반환되는 특정 요소가 아닌 값. 고립 된 고려할 때 결과가 정확하도록 조상 선언을 전파하십시오.

  • 범위 운영자 선택성 추정 (EMRE HASEGELI)에서 다양한 감독 수정

    이 패치는 코너 케이스를 수정합니다"예기치 않은 운영자 NNNN"플래너 오류 및 다른 경우에는 선택성 추정치가 향상됩니다.

  • 진 인덱스 품목의 최대 크기의 의도하지 않은 감소 (Heikki Linnakangas)

    9.4.0이 실패 할 수 있습니다"인덱스 행 크기는 최대"를 초과합니다이전 버전에서 받아 들일 데이터의 오류.

  • 반복 진 인덱스 구조 (Heikki Linnakangas) 중 쿼리 기간 메모리 누출 수정

  • 0이 아닌 것을 사용할 때 가능한 충돌 수정gin_fuzzy_search_limit(Heikki Linnakangas)

  • 논리 디코딩을위한 다양한 수정 (Andres Freund)

  • WAL 매개 변수 변경 레코드의 잘못된 재생 수정Wal_log_hints설정 (Petr Jelinek)

  • 변경"PGSTAT 대기 시간 초과"로그 레벨로 경고하고 더 이해하기 쉬워지고 (Tom Lane)

    이 메시지는 원래는 본질적으로 인식 할 수없는 경우라고 생각되었지만, 느린 BuildFarm 멤버에서는 귀찮은 일이되기에 충분합니다. 로그 레벨로 줄이고 문구에 약간의 노력을 소비합니다. 이제 읽습니다"통계 수집기가 응답하지 않기 때문에"현재 통계 대신 오래된 통계 사용 ".

  • MacOS의 경우 경고setLocale ()Postmaster (Noah Misch) 내부에서 원치 않는 추가 스레드를 시작합니다

  • 수정libpq의 행동/etc/passwd읽을 수 없음 (Tom Lane)

    pqsetdblogin (), libpq대부분의 UNIX 플랫폼에서 읽기가 포함되는 사용자의 운영 체제 이름을 확인하려고 시도합니다/etc/passwd. 9.4 년 현재, 그렇게하지 않은 것은 어려운 오류로 취급되었습니다./etc/passwd파일.

  • 구문 분석의 일관성 향상PSQL의 특수 변수 (Tom Lane)

    변형 철자 허용onandOFF(예 :1/0) forecho_hiddenandon_error_rollback. 인식되지 않은 값에 대한 경고를보고comp_keyword_case, echo, echo_hidden, histControl, on_error_rollbackVerbosity. 이러한 모든 변수에 대한 모든 값을 사례에서 인식합니다.

  • 수정pg_dump실패하지 않고 이벤트 트리거에 대한 의견을 처리하려면 (Tom Lane)

  • 병렬 허용pg_dump사용하려면-서리화할 수있는(Kevin Grittner)

  • 웨이브 파일 방지PG_BASEBACKUP -X/-X대기가 홍보 될 때 다시 아카이브 된 상태 (Andres Freund)

  • 예상치 못한 쿼리 결과, 특히 널리Contrib/TableFunc'sConnectby ()(Michael Paquier)

    Connectby ()Null 키 값이 발생하면 이전에 충돌했습니다. 이제 그 행을 인쇄하지만 더 이상 되풀이되지 않습니다.

  • Coverity 정적 코드 분석기 (Andres Freund, Tatsuo Ishii, Marko Kreen, Tom Lane, Michael Paquier)의 수많은 경고 정리

    이러한 변경 사항은 대부분 미용 적이지만 경우에 따라 코너 케이스 버그를 수정합니다. 예를 들어 메모리 외 실패 후 적절한 오류 보고서가 아닌 충돌. 보안 문제를 나타내는 것으로 여겨지지 않습니다.

  • 허용cflagsFrom구성의 환경을 자동으로 제공하는 환경cflags(Tom Lane)

    이전,구성사용자 지정의 끝에 자체 어코드를 선택한 스위치를 추가 할 것입니다cflags문자열. 대부분의 컴파일러 프로세스는 왼쪽에서 오른쪽으로 전환되므로 Configure의 선택은 충돌의 경우 사용자 지정 플래그를 무시할 수 있음을 의미합니다.

  • makepg_regress성공적인 출구시 생성 된 임시 설치 제거 (Tom Lane)

    이로 인해 디스크 공간 사용이 매우 상당히 줄어 듭니다체크 세계 만들기, 해당 시퀀스에는 수많은 임시 설치가 포함되므로

  • 시간대 약어 목록에 CST (중국 표준 시간) 추가 (Tom Lane)

  • 시간대 데이터 파일 업데이트TZDATA칠레와 멕시코의 DST 법률 변경에 대한 2015a와 아이슬란드의 역사적 변화를위한 출시.