출시 날짜 :2025-02-13
이 릴리스에는 17.2의 다양한 스포츠 토토 결과 사항이 포함되어 있습니다. Major Release 17의 새로운 기능에 대한 정보는 참조하십시오.범퍼카 토토 PostgreSQL : 문서 : 17 : E.5. 릴리스 17.
덤프/복원은 17.x를 실행하는 사람들에게는 필요하지 않습니다.
그러나 17.1 이전 버전에서 업그레이드하는 경우 참조PostgreSQL : 문서 : 17 : E.4. 롤 토토 17.1.
HardenPQescapestring
및 유효하지 않은 입력 문자열에 대한 동맹 기능 (Andres Freund, Noah Misch)§ § § § § §
Data-Quoting 함수에 의해 제공libpq이제 입력의 인코딩 유효성을 완전히 확인하십시오. 잘못된 문자가 감지되면 가능한 경우 오류를보고합니다. 오류 반환 규칙이없는 경우, 출력 문자열은 서버가 유효하지 않은 인코딩을보고하고 단일 견적, 백 슬래시 등과 일치 할 수있는 바이트에 의해 개입 처리가 바보가되지 않도록 조정됩니다.
이 변경의 목적은 이러한 기능 중 하나가 제작 된 입력을 인용하는 데 사용되는 경우 가능한 SQL 주입 공격을 방지하는 것입니다. 결과 문자열이 a로 직접 전송 될 때 위험이 없습니다.postgresql서버 (어쨌든 인코딩을 확인할 것임)이지만 통과 할 때 위험이 있습니다PSQL또는 기타 클라이언트 측 코드. 역사적으로 그러한 코드는 신중하게 인코딩을 조사하지 않았으며, 많은 경우 그러한 문제를 감지했을 때 어떻게 해야하는지 명확하지 않습니다.
이 스포츠 토토 결과은 데이터 인용 기능, 서버 및 중간 처리가 사용되는 문자 인코딩에 동의하는 경우에만 효과적입니다. 신뢰할 수없는 입력을 SQL 명령에 삽입하는 응용 프로그램은 그것이 사실인지 확인하기 위해 특별한주의를 기울여야합니다.
이것들을 사용하지 않고 신뢰할 수없는 입력을 견적하는 응용 프로그램 및 드라이버libpq기능은 비슷한 문제의 위험에 처할 수 있습니다. 먼저 서버에서 예상되는 인코딩에서 데이터가 유효한지 확인해야합니다.
thepostgresqlProject Thanks Thanks Stephen이 문제를보고하는 데 더 적은 사람입니다. (CVE-2025-1094)
연결 요청 (Nathan Bossart)에 나타나는 데이터베이스 및 사용자 이름의 자동 처리 복원§
이것은 일부 사용자에게 문제를 일으키는 V17 변경 사항을 되 찾습니다. 오버 길이의 이름은 인코딩 인식 방식으로 잘라야하지만 지금은 맹인 절단의 이전 행동으로 돌아갑니다지명 된 ATALEN-1
바이트.
연결 권한 검사 및 제한에서 병렬 작업자 제외 (Tom Lane)§
확인하지 마십시오datallowconn
, rolcanlogin
및acl_connect
병렬 작업자를 시작할 때의 권한은 리더 프로세스가 원래 비슷한 점검을 통과하기에 충분하다고 가정합니다. 예를 들어, 리더가 로그인 권한이없는 역할로 실행중인 경우 병렬 쿼리의 예기치 않은 실패를 피합니다. 같은 맥락에서, 시행예비 연결
, datconnlimit
및rolconnlimit
정기적 인 백엔드에 대한 제한 만 제한을하고 한도가 이미 도달했는지 확인하는 동안 정기적 인 백엔드 만 계산합니다. 이러한 제한은 일반 백엔드에 대한 프로세스 슬롯의 과도한 소비를 방지하기위한 것이지만, 평행 작업자 및 기타 특수 프로세스에는 자체 한계 점검이있는 자체 프로세스 슬롯 풀이 있습니다..
드롭“잠금”LWLOCK 대기 이벤트 이름 (Bertrand Drouvot)의 접미사§
의도하지 않은 원인pg_stat_activity
잠금 관련 대기 이벤트 이름을 표시하려면보기“잠금”접미사.pg_wait_events
.
scalararrayop (로 btree 색인 스캔을 위해 일치하는 모든 튜플을 반환하는 데 실패 할 수 있습니다.= Any
) 조건 (Peter Geoghegan)§
Window Agregates (David Rowley)에서 오래된 결과를 재사용 할 수있는 스포츠 토토 결과§
a의 창 집계“실행 조건”최적화 및 추천 결과 유형이 새로운 계산을 수행하는 대신 이전 파티션에서 결과를 잘못 반환 할 수 있습니다..
유지TransactionXmin
MyProc- xmin
(Heikki Linnakangas)§
이 감독은 프로세스가 이미 진공 청소 된 데이터에 액세스하려고 시도 할 수 있습니다. 알려진 결과 중 하나는 일시적입니다“거래 상태에 액세스 할 수 없음”오류.
카탈로그 캐시 목록 (Heikki Linnakangas)에 새로 삽입 된 카탈로그 항목을 추가하지 못할 수있는 레이스 조건을 스포츠 토토 결과하십시오.§
예를 들어 기존 세션 내에서 새로 만들어진 함수를 사용하지 않으면 발생할 수 있습니다.
시스템 카탈로그가 업데이트 (Noah Misch)와 동시에 진공 상태로 진공 상태로 발생할 때 가능한 카탈로그 손상 방지§ §
관계 자리가 실패 할 때 데이터 손상 스포츠 토토 결과 (Thomas Munro)§ § §
관계 자리를 수행하는 데 필요한 파일 시스템 호출은 실패 할 수 있으며, 디스크에 일관성이없는 상태를 남깁니다 (예 : 삭제 된 데이터를 효과적으로 부활). 우리는 실제로 그것을 막을 수는 없지만, 그러한 실패를 당황에 빠뜨리는 것을 통해 복구 할 수 있으므로, 잘라 내기 직전까지 WAL에서 재생하여 일관성이 회복됩니다. 이것은 매우 바람직한 행동은 아니지만, 그러한 실패는 허용되는 해결책처럼 보일 정도로 드물다.
관계 자르기 중에 체크 포인트가 시작되는 것을 방지합니다 (Robert Haas)§
이것은 체크 포인트를 완료하기 전에 스포츠 토토 결과 된 파일이 fsync'm을 얻지 못하는 경주 조건을 피하기 때문에 곧 운영 체제가 충돌하면 데이터 손상의 위험이 발생합니다..
업데이트를 잃지 않으면pg_database
.datfrozenxid
언제진공
a와 동시에 실행됩니다.소유 한 재 설계
그 데이터베이스 소유자 (Kirill Reshke)를 변경합니다§
잘못된 스포츠 토토 결과TG_UPDATEDCOLS
값이 전달 됨업데이트 후
트리거 (Tom Lane)§
경우에 따라TG_UPDATEDCOLS
비트 맵은 같은 트랜잭션에서 이전 명령에 의해 업데이트 된 열 세트를 설명 할 수 있으며, 트리거가 잘못된 일을 속이는 데 속이는 것입니다..
또한 너무 많은 사본을 만들어서 메모리 부풀어 오른 방지TG_UPDATEDCOLS
비트 맵.
파티션 된 테이블 (Amul Sul)을 참조하는 자체 외국 키 제약 조건이있는 파티션의 분리 스포츠 토토 결과§
이 경우 외래 키는 분할 된 테이블의 최상위 레벨에 정의됩니다. 그러나 대신 파티션에 정의되고 분할 된 테이블을 참조하고 참조 파티션이 분리되면 관련pg_constraint
항목이 잘못 업데이트되었습니다. 이로 인해와 같은 오류가 발생했습니다.“삽입에서 찾을 수 없음 외국 키 제약 조건”.
스포츠 토토 결과pg_get_constraintdef
의 지원NOT NULL
도메인의 제약 (Álvaro Herrera)§
의 잘못 처리 스포츠 토토 결과TO_TIMESTAMP
'sff
형식 코드 (Tom Lane)§n
직전의 정수 형식 코드ff
사용 가능한 모든 숫자를 소비 할 것입니다.n
ff
.n
DEPARSING a통과
SQL/JSON 쿼리 함수의 조항은 필요할 때 가변 이름이 두 배로 인용되어 있는지 확인하십시오 (Dean Rasheed)§
DEPARSING anxmltable ()
expression, XML 네임 스페이스 이름이 필요할 때 두 배로 인용되도록하십시오 (Dean Rasheed)§
사전 소개의 계획 스포츠 토토 결과Union
입력 열 데이터 유형이 모두 일치하지 않는 경우 (David Rowley)§
이 오류는 잘못된 정렬 연산자와 데이터를 정렬 할 수 있으며, 그 결과가 눈에 띄는 문제에서 핵심 덤프에 이르기까지 다양합니다.
합병하지 마십시오Union
열이 일관되지 않은 경우 작동 (Tom Lane)§
이전에 우리는 병합하기에 안전한지 결정할 때 콜라주를 무시했습니다Union
단일 n- 웨이로 들어가Union
작동. 이것은 비 결정적 콜라주가 도입되기 전에 논란의 여지가 있었지만, 사용중인 콜라이트가 독창성의 정의에 영향을 줄 수 있기 때문에 더 이상은 아닙니다..
예방19488_19491잘못된 varnullingrels”OUTER JOIN (Tom Lane) 아래에있는 하위 쿼리를 끌어 올린 후 플래너 오류§ §
통계를 찾을 때 무시 무시 무시 무시 (Richard Guo)§
이 감독은 표현에 대한 관련 통계를 사용하지 않거나“부패한 mvndistinct entry”오류.
파티션 가지 치기 단계에 대한 놓친 표현 처리 스포츠 토토 결과 (Tom Lane)§
이 감독은로 이어질 수 있습니다.“인식되지 않은 노드 유형”파티션 된 테이블에 액세스하는 쿼리에서 오류 및 기타 문제.
Slotsync 작업자 프로세스 자체 프로세스 슬롯 (Tom Lane, Hou Zhijie)§
이것은 Slotsync 작업자의 추가에서 간과되었으며, 결과적으로 프로세스 슬롯이 일반 백엔드 프로세스를위한 풀에서 효과적으로 나왔습니다. 이로 인해 작업자를 시작하지 못하거나 구성된 설정에 따라 성공 해야하는 연결 요청의 후속 실패가 발생할 수 있습니다.max_connections
.
dshash 테이블이 1GB를 지나서 성장할 수 있습니다 (Matthias van de Meent)§
이것은 같은 오류를 피합니다“잘못된 DSA 메모리 Alloc 요청 크기”. 예를 들어 수백만 개의 테이블을 처리하는 트랜잭션에서 발생할 수 있습니다.
가능한 정수 오버플로를 피하십시오BringetBitMap ()
(James Hunter, Evgeniy Gorbanyov)§
결과는 통계적 목적으로 만 사용되기 때문에이 오류의 효과는 대부분 미용 적이었습니다.
SLRU BANK 번호의 잘못 계산 스포츠 토토 결과 (Yura Sokolov)§
이 오류는 의도 한 것보다 적은 수의 은행을 사용하여 더 많은 경합을 유발하지만 기능적인 오해는 없습니다..
이미 설정된 프로세스 래치가 우체국이 소켓 이벤트에 알아 차리지 못하도록하지 않도록하십시오 (Thomas Munro)§
퇴직 한 근로자와 근로자를 빠져 나가는 극도로 많은 백업이 포스트 마스터가 적시에 들어오는 클라이언트 연결에 응답하지 못하게 할 수 있습니다.
Pages를 가로 지르는 WAL 레코드를 읽을 때 스트리밍 대기 서버가 무한대로 반복되는 것을 방지합니다 (Kyotaro Horiguchi, Alexander Kukushkin)§
이것은 레코드의 연속이 다른 WAL 소스에서 읽어야하는 페이지에있을 때 발생합니다.
초기 프로세스 스타트 업 (Noah Misch) 동안 공황 상태에 대한 의도하지 않은 치명적인 오류 홍보 스포츠 토토 결과§
이것은 가능성이없는 몇 가지 사례를 스포츠 토토 결과하여“panic : proc_exit () 아동 과정에서 호출”.
운영자 제품군 운영자 또는 지원 절차가 매달려있는 참조 (Tom Lane)가 될 수있는 케이스를 스포츠 토토 결과합니다§ §
경우에 따라 OID에 대한 참조가 여전히 남아있는 동안 데이터 유형을 삭제할 수 있습니다PG_AMOP
또는pg_amproc
. 그로 인해 즉각적인 문제가 발생하지는 않지만 소유 사업자 제품군을 떨어 뜨리려는 시도는 실패하고pg_dump운영자 제품군을 버릴 때 가짜 출력을 생성합니다. 이 스포츠 토토 결과은 운영자 패밀리/클래스의 생성 및 스포츠 토토 결과을 유발하여 필요한 종속성 항목을 추가하여 데이터 유형을 삭제하면 종속 운영자 제품군 요소도 떨어집니다. 그것은 기존 사전 운영자 가족이 취약한 데 도움이되지 않으므로 반창고도 추가되었습니다.드롭 운영자 가족
회원이 매달려있는 가족을 떨어 뜨릴 때 실패를 방지합니다.
논리적 디코딩 출력에서 다중 메모리 누출 스포츠 토토 결과 (Vignesh C, Masahiko Sawada, Boyu Yang)§ § §
업데이트 할 때 작은 메모리 누출 스포츠 토토 결과Application_Name
또는cluster_name
설정 (Tofig aliev)§
백그라운드 프로세스가 새로운 값을 확인하려고 할 때 충돌을 피하십시오synchronized_standby_slots
(Álvaro Herrera)§
테스트하는 동안 정수 오버플로를 피하십시오WAL_SKIP_THRESHOLD
조건 (Tom Lane)§
매우 큰 관계를 창출 한 트랜잭션은 실수로 관계를 fsync'ing 대신 WAL에 복사하여 내구성을 보장하기로 결정하여의 지점을 부정합니다.WAL_SKIP_THRESHOLD
. (이것은 만 중요합니다Wal_level
최소
, 그렇지 않으면 WAL 사본이 필요합니다.)
캐시 조회 중 안전하지 않은 작동 순서 스포츠 토토 결과 (Noah Misch)§
유일한 알려진 결과는 일반적으로 harmless입니다.“당신은 type exclusivelock의 잠금을 소유하지 않습니다”경고 중그랜트 테이블 스페이스
.
병렬 진공 상태에서 잠재적 인 사용을 피하십시오 (Vallimaharajan G, John Naylor)§
이 버그는 표준 빌드에서는 아무런 영향을 미치지 않는 것 같습니다. 그러나 이론적으로 위험입니다.
가능한 스포츠 토토 결과“이름을 해결하지 못했습니다”오래된 ARM 플랫폼에서 JIT를 사용할 때의 실패 (Thomas Munro)§
이것은 기본 설정에 대한 불일치의 결과로 발생할 수 있습니다-moutline-acomics
GCC와 Clang 사이. 적어도 Debian과 Ubuntu는 ARMV8-A를 대상으로하지만 기본적으로 개요 원자의 사용에 따라 GCC 및 Clang 컴파일러를 배송하는 것으로 알려져 있습니다.
어설 션 실패 스포츠 토토 결과재귀와 ... Union
쿼리 (David Rowley)§
정해진 조작 잎 쿼리에 설정된 작업이 포함 된 경우 규칙 퇴직에서 어설 션 실패를 피하십시오 (Man Zeng, Tom Lane)§
병렬 쿼리 시작 (Tom Lane)에서 에지 케이스 어설 션 실패 방지§
통계 파일 (Michael Paquier)을 작성할 때 종료시 어설 션 실패 스포츠 토토 결과§
String Hashing Code (John Naylor)에 대한 Valgrind 불만을 피하십시오§
innullif ()
, 데이터 유형의 평등 함수 (Tom Lane)에 대한 읽기짜리 확장 객체 포인터를 전달하지 마십시오.§
평등 함수는 객체가 읽기 쓰기 포인터가 주어지면 개체를 스포츠 토토 결과하거나 삭제할 수 있습니다.nullif ()
결과. 내장 평등 함수에는 문제가 없지만 PL/PGSQL에 코딩 된 하나의 실패를 쉽게 입증하기가 쉽습니다.
표현 전처리가 기본 널 값에 적용되는지 확인하십시오.삽입
(Tom Lane)§
29697_30030
이미 데이터가 포함 된 관계 포크에 대량 쓰기를 시작할 때 데이터 손실을 피하십시오 (Matthias van de Meent)§
기존 데이터는 제로로 덮어 썼습니다. 이것은 핵심 문제가 아닙니다PostgreSQL, 결코 그렇게하지 않습니다. 그러나 일부 확장은 원하는 것입니다.
서버 프로세스가 생성하지 않은 공유 라디습니다 (Masahiko Sawada)을 반복하려고 시도한 경우 충돌을 피하십시오.§
Core에는 코드가 없습니다PostgreSQL이것이 그렇게하지만 확장이 원할 수도 있습니다.
PL/Python (Mat Arye, Tom Lane)에서 메모리 누출 수리§
반복 사용plyplan.execute
또는plpy.cursor
호출 PL/Python 함수 기간 동안 메모리 누출이 발생했습니다.
TCL 9 (Peter Eisentraut)로 컴파일하려면 pl/tcl을 스포츠 토토 결과합니다.§
inECPG사전 처리기, 소외된 변수 (Tom Lane)를 참조하는 커서의 오해를 스포츠 토토 결과합니다.§
inECPG, 지원되지 않은 사용에 대한 컴파일 타임 경고 스포츠 토토 결과복사 ... Stdin에서
(Ryo Kanbayashi)§
이전에, 오타로 인해 의도 된 경고가 발행되지 않았습니다.
고정PSQLSJIS (Tom Lane)에서 인코딩 된 파일 경로 이름을 안전하게 처리하려면§
sjis의 일부 2 바이트 문자는 Ascii backslash (와 같은 두 번째 바이트가 있습니다.\
). 이 문자는 경로 이름 정규화에 의해 손상되어 이름이 포함 된 파일에 대한 액세스를 방지합니다.
addPSQL탭 완료COPY (merge inter)
(Jian HE)§
잘못된 버전의 사용 스포츠 토토 결과pqsignal ()
inpgbenchandPSQL(Fujii Masao, Tom Lane)§
이 오류는를 사용할 때 오류가 발생할 수 있습니다.-t
옵션pgbench또는\ watch
명령에서PSQL
중첩 된 일부의 미성분 스포츠 토토 결과\ if
구성pgbench(Michail Nikolaev)§
an\ if
거짓 내에 나타나는 명령 (사제가 아닙니다)\ if
지점이와 동일하게 잘못 처리되었습니다\ elif
.
inpgbench, 테이블 초기화 동안 진행중인 진행 메시지의 실수 오류 스포츠 토토 결과 (Yushi Ogiwara, Tatsuo Ishii, Fujii Masao)§ §
만들기PG_CONTROLDATA손상된 것에 대한 더 강력한PG_CONTROL
파일 (Ilyasov Ian, Anton Voloshin)§
이후PG_CONTROLDATA의 내용을 인쇄하려고 시도합니다PG_CONTROL
CRC 검사가 실패하더라도 잘못된 필드 값을 잘못 행동하지 않아야합니다. 이 패치는 유효하지 않은 타임 스탬프와 분명히 음성 WAL 세그먼트 크기로 트리거 된 일부 문제를 스포츠 토토 결과합니다.
가능한 충돌 스포츠 토토 결과pg_dumpExtension Members (Tom Lane) 인 테이블에 첨부 된 ID 시퀀스가있는§
메모리 누출 스포츠 토토 결과PG_RESTOREZSTD- 압축 데이터 (Tom Lane)§
누출은 응축당 수술 이었으므로 많은 테이블이나 큰 물체를 포함하는 덤프에서 가장 눈에 띄게 될 것입니다.
스포츠 토토 결과PG_BASEBACKUP올바르게 처리하려면PG_WAL.TAR
Windows에서 2GB를 초과하는 파일 (Davinder Singh, Thomas Munro)§ §
선언문에서 SQL 표준 기능 본문 사용Contrib/Earthdistance
의 SQL 언어 함수 (Tom Lane, Ronan Dunklau)§
이 변경 사항은 참조를 허용합니다Contrib/Cube
확장 생성 중에 해결하려면 검색-경로 기반 실패 및 가능한 공격의 위험을 줄입니다.
특히, 이것은 생성 된 열과 같은 상황에서 유용성을 복원합니다.PostgreSQLv17은 보안 기반의 검색 경로를 제한합니다. 우리는 그로 인해 V17로 업그레이드되지 않은 데이터베이스에 대한 보고서를 받았습니다. 이 패치는 해결 방법을 제공하기 위해 v16에 포함되었습니다. 업데이트Earthdistance
이 버전으로의 확장 사전에 업그레이드가 성공할 수 있어야합니다.
간에 버전 불일치 감지Contrib/PageInspect
의 SQL 선언 및 기본 공유 라이브러리 (Tomas Vondra)§
이전에, 그러한 불일치로 인해 전화하는 동안 충돌이 발생할 수 있습니다brin_page_items ()
. 대신 확장 업데이트를 권장하는 오류를 던지십시오.
원격 쿼리를 취소하려고 할 때Contrib/Postgres_FDW
, 아무것도하지 않는 것처럼 보이면 취소 요청을 몇 번 다시 발행하십시오 (Tom Lane)§
이것은 원격 서버가 처리하기 시작하기 전에 방금 쿼리를 취소하려고 시도 할 수있는 레이스 조건을 스포츠 토토 결과하여 초기 취소 요청이 무시되도록합니다..
ARM CRC 명령어에 액세스하는 데 필요한 컴파일러 스위치를 결정하는 구성 프로브 업데이트 (Tom Lane)§
기준 CPU 대상에 CRC 지침이 부족한 ARM 플랫폼에서 AR ARM 플랫폼에서 A를 제공해야합니다-march
컴파일러를 설득하여 그러한 지침을 컴파일하도록 설득하십시오. 최근 버전의 GCC는 우리가 시도한 가치를 거부하여 Software CRC로 조용히 떨어지게됩니다.
Windows에서 오래된 OpenSSL 라이브러리를 지원하기위한 Meson 빌드 시스템 스포츠 토토 결과 (Darek Slusarczyk)§
레거시 라이브러리 이름에 대한 지원 추가SSLEAY32
andlibeay32
.
Meson을 사용하여 Windows 빌드에서 모든 libcommon 및 libpgport 함수가 내보야하는지 확인하십시오 (Vladlen Popolitov, Heikki Linnakangas)§ §
이것은 스포츠 토토 결과“해결되지 않은 외부 기호”확장에 대한 오류 구축.
OSSP를 올바르게 감지하려면 Meson 구성 프로세스 스포츠 토토 결과uuid.h
MSVC (Andrew Dunstan)의 헤더 파일§
Meson으로 빌드 할 때 installpgevent
inpkglibdir
아님bindir
(Peter Eisentraut)§
이것은 Make Build 시스템과 이전 MSVC 빌드 시스템의 동작과 일치합니다.
Meson으로 빌드 할 때 installsepgsql.sql
undershare/contrib/
notshare/extension/
(Peter Eisentraut)§
이것은 Make Build 시스템이하는 일과 일치합니다.
시간대 데이터 파일 업데이트TZDATAParaguay의 DST 법률 변경을위한 릴리스 2025A 및 필리핀의 역사적 교정 (Tom Lane)§
문서에 올바른 것이 없다면 일치하지 않습니다. 특정 기능에 대한 귀하의 경험 또는 추가 설명이 필요합니다. 사용이 양식문서 문제를보고하려면