출시 날짜 :2025-02-13
이 릴리스에는 15.10의 다양한 토토 사이트 사항이 포함되어 있습니다. 주요 릴리스 15의 새로운 기능에 대한 정보는 참조토토 캔 PostgreSQL : 문서 : 15 : E.13. 릴리스 15.
15.x.를 실행하는 사람들에게는 덤프/복원이 필요하지 않습니다.
그러나 15.9 이전 버전에서 업그레이드하는 경우 참조PostgreSQL : 문서 : 15 : E.4. 토토 캔 15.9.
HardenPQescapestring
및 유효하지 않은 입력 문자열에 대한 동맹 기능 (Andres Freund, Noah Misch)§ § § § § §
Data-quoting 함수에 의해 제공libpq이제 입력의 인코딩 유효성을 완전히 확인하십시오. 잘못된 문자가 감지되면 가능한 경우 오류를보고합니다.
이 변경의 목적은 이러한 기능 중 하나가 제작 된 입력을 인용하는 데 사용되는 경우 가능한 SQL 주입 공격을 방지하는 것입니다. 결과 문자열이 a로 직접 전송 될 때 위험이 없습니다.PostgreSQL서버 (어쨌든 인코딩을 확인할 것임)이지만 통과 할 때 위험이 있습니다PSQL또는 기타 클라이언트 측 코드. 역사적으로 그러한 코드는 신중하게 인코딩을 조사하지 않았으며, 많은 경우 그러한 문제를 감지했을 때 어떻게 해야하는지 명확하지 않습니다.
이 토토 사이트은 데이터 인용 기능, 서버 및 중간 처리가 사용되는 문자 인코딩에 동의하는 경우에만 효과적입니다. 신뢰할 수없는 입력을 SQL 명령에 삽입하는 응용 프로그램은 그것이 사실인지 확인하기 위해 특별한주의를 기울여야합니다.
이들을 사용하지 않고 신뢰할 수없는 입력을 인용하는 응용 프로그램 및 드라이버libpq기능은 비슷한 문제의 위험에 처할 수 있습니다. 먼저 서버에서 예상되는 인코딩에서 데이터가 유효한지 확인해야합니다.
thePostgreSQLProject Thanks Thanks Stephen이 문제를보고하는 데 더 적은 사람입니다. (CVE-2025-1094)
연결 권한 검사 및 한계에서 병렬 작업자 제외 (Tom Lane)§
확인하지 마십시오datallowconn
, rolcanlogin
및acl_connect
병렬 작업자를 시작할 때의 특권 대신 리더 프로세스가 원래 비슷한 수표를 통과하기에 충분하다고 가정합니다. 예를 들어, 리더가 로그인 권한이없는 역할로 실행중인 경우 병렬 쿼리의 예기치 않은 실패를 피합니다.예비 연결
, datconnlimit
및rolconnlimit
정기적 인 백엔드에 대한 제한 만 제한을하고, 한도에 이미 도달했는지 확인하는 동안 정기적 인 백엔드 만 계산합니다. 이러한 제한은 일반 백엔드에 대한 프로세스 슬롯의 과도한 소비를 방지하기위한 것이지만, 평행 작업자 및 기타 특수 프로세스에는 자체 한계 점검이있는 자체 프로세스 슬롯 풀이 있습니다..
Window Agregates (David Rowley)에서 오래된 결과를 재사용 할 수있는 토토 사이트§
a가있는 창 집계“실행 조건”최적화 및 추천 결과 유형이 새로운 계산을 수행하는 대신 이전 파티션에서 결과를 잘못 반환 할 수 있습니다..
유지TransactionXmin
와 동기화MyProc-> Xmin
(Heikki Linnakangas)§
이 감독은 프로세스가 이미 진공 청소 된 데이터에 액세스 할 수 있도록 허용 할 수 있습니다. 알려진 결과 중 하나는 일시적입니다“거래 상태에 액세스 할 수 없음”오류.
카탈로그 캐시 목록 (Heikki Linnakangas)에 새로 삽입 된 카탈로그 항목을 추가하지 못할 수있는 레이스 조건을 토토 사이트합니다.§
예를 들어 기존 세션 내에서 새로 만들어진 기능을 사용하지 못한 경우
시스템 카탈로그가 업데이트 (Noah Misch)와 동시에 진공 상태로 진공 상태로 발생할 때 가능한 카탈로그 손상 방지§
관계 자리가 실패 할 때 데이터 손상 토토 사이트 (Thomas Munro)§ § §
관계 자르기를 수행하는 데 필요한 파일 시스템 호출은 실패 할 수 있으며, 디스크에 일관성이없는 상태를 남깁니다 (예 : 삭제 된 데이터를 효과적으로 부활). 우리는 실제로 그것을 막을 수는 없지만, 그러한 실패를 당황에 빠뜨리는 것을 통해 복구 할 수 있으므로, 잘라 내기 직전까지 WAL에서 재생하여 일관성이 회복됩니다.
관계 자르기 중에 체크 포인트가 시작되는 것을 방지합니다 (Robert Haas)§
이것은 체크 포인트를 완료하기 전에 토토 사이트 된 파일이 fsync를 얻지 못할 수있는 레이스 조건을 피하기 때문에 곧 운영 체제가 충돌하면 데이터 손상의 위험이 생깁니다..
useRename ()
notlink ()
/Unlink ()
파일 이름 바꾸기 (Nathan Bossart)§
이전 코딩은 작업이 실수로 기존 파일을 덮어 쓸 수 없도록하기위한 것입니다. 그러나 실패는 존재하는 동일한 파일에 두 개의 링크를 남겨두고 후속 작업을 혼란스럽게하고 데이터 손상의 위험을 야기 할 수 있습니다.
업데이트를 잃지 않으면PG_DATABASE
.datfrozenxid
when진공
A와 동시에 실행됩니다소유 한 재 설계
그 데이터베이스 소유자 (Kirill Reshke)를 변경합니다§
잘못된 토토 사이트TG_UPDATEDCOLS
값이 전달 됨업데이트 후
트리거 (Tom Lane)§
경우에 따라TG_UPDATEDCOLS
비트 맵은 같은 트랜잭션에서 이전 명령에 의해 업데이트 된 열 세트를 설명 할 수 있으며, 트리거가 잘못된 일을 속이는 데 속이는 것입니다.
또한 너무 많은 사본을 만들어 메모리 부풀어 오른 방지TG_UPDATEDCOLS
비트 맵.
파티션 된 테이블 (Amul Sul)을 참조하는 자체 외국 키 제약 조건이있는 파티션의 분리 토토 사이트§
이 경우 외래 키는 분할 된 테이블의 최상위에 정의됩니다. 그러나 대신 파티션에 정의되고 분할 된 테이블을 참조하고 참조 파티션이 분리되면 관련pg_constraint
항목이 잘못 업데이트되었습니다. 이로 인해와 같은 오류가 발생했습니다.“삽입에서 찾을 수 없음 외국 키 제약 조건”.
의 잘못 처리 토토 사이트to_timestamp
'sff
형식 코드 (Tom Lane)§n
직전의 정수 형식 코드ff
사용 가능한 모든 숫자를 소비하고n
ff
.n
퇴거 할 때xmltable ()
expression, XML 네임 스페이스 이름이 필요할 때 두 배로 인용되도록하십시오 (Dean Rasheed)§
합병하지 마십시오Union
열이 일관되지 않은 경우 작동 (Tom Lane)§
이전에 우리는 병합하기에 안전한지 결정할 때 콜라주를 무시했습니다Union
단일 n- 웨이로 들어가Union
작동. 이것은 비 결정적 콜라주가 도입되기 전에 논란의 여지가 있었지만, 사용중인 콜라이트가 독창성의 정의에 영향을 줄 수 있기 때문에 더 이상은 아닙니다..
파티션 가지 치기 단계에 대한 놓친 표현 처리 토토 사이트 (Tom Lane)§
이 감독은로 이어질 수 있습니다.“인식되지 않은 노드 유형”파티션 된 테이블에 액세스하는 쿼리에서 오류 및 기타 문제.
dshash 테이블이 1GB를 지나서 성장할 수 있습니다 (Matthias van de Meent)§
이것은와 같은 오류를 피합니다.“잘못된 DSA 메모리 Alloc 요청 크기”. 예를 들어 수백만 개의 테이블을 처리하는 트랜잭션에서 발생할 수 있습니다.
가능한 정수 오버플로를 피하십시오BringetBitMap ()
(James Hunter, Evgeniy Gorbanyov)§
결과는 통계적 목적으로 만 사용 되므로이 오류의 효과는 대부분 미용 적이었습니다.
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)§ § §
실패 검사가 누락되어 메모리 외부의 낮은 확률 충돌을 피하십시오malloc ()
(Karina Litskevich)§
테스트하는 동안 정수 오버플로를 피하십시오Wal_skip_threshold
조건 (Tom Lane)§
매우 큰 관계를 창출 한 트랜잭션은 실수로 관계를 fsync'ing 대신 WAL에 복사하여 내구성을 보장하기로 결정하여의 지점을 부정합니다.Wal_skip_threshold
. (이것은 만 중요합니다Wal_level
로 설정되었습니다최소
, 그렇지 않으면 WAL 사본이 필요합니다.)
캐시 조회 중 안전하지 않은 작동 순서 토토 사이트 (Noah Misch)§
유일한 알려진 결과는 일반적으로 harmless입니다.“당신은 type exclusivelock의 잠금을 소유하지 않습니다”경고 중그랜트 테이블 스페이스
.
가능한 토토 사이트“이름을 해결하지 못했습니다”오래된 ARM 플랫폼에서 JIT를 사용할 때의 실패 (Thomas Munro)§
이것은 기본 설정에 대한 불일치의 결과로 발생할 수 있습니다-moutline-acomics
GCC와 Clang 토토 사이트. 적어도 Debian과 Ubuntu는 ARMV8-A를 대상으로하지만 기본적으로 개요 원자의 사용에 따라 GCC 및 Clang 컴파일러를 배송하는 것으로 알려져 있습니다.
WindPostgreSQLOrigin (Thomas Munro)§ §
이전,initdb데이터 디렉토리 경로에 확장이없는 접합 지점이 포함되어 있으면 실패합니다.“Drive Absolute”형식, 또는 확장이 다른 정션 지점을 가리키는 지점.
어설 션 실패 토토 사이트재귀와 ... Union
쿼리 (David Rowley)§
정해진 조작 잎 쿼리에 설정된 작업 (Man Zeng, Tom Lane)이 포함 된 경우 규칙 퇴직에서 어설 션 실패 방지§
병렬 쿼리 시작 (Tom Lane)에서 에지 케이스 어설 션 실패 방지§
통계 파일 (Michael Paquier)을 작성할 때 종료시 어설 션 실패 토토 사이트§
innullif ()
, 데이터 유형의 평등 함수 (Tom Lane)에 대한 읽기 write 확장 된 객체 포인터를 전달하지 마십시오.§
평등 함수는 객체가 읽기 쓰기 포인터가 주어지면 개체를 토토 사이트하거나 삭제할 수 있습니다.nullif ()
결과. 내장 평등 함수에는 문제가 없지만 PL/PGSQL에 코딩 된 하나의 실패를 쉽게 입증하기가 쉽습니다.
표현 전처리가 기본 널 값에 적용되는지 확인하십시오.삽입
(Tom Lane)§
대상 열이 도메인 유형 인 경우 플래너는 널 상수가 아니라 코이스-도메인 단계를 삽입해야하며,이 표현식은 필요한 처리 단계를 거치게됩니다. 핵심 데이터 유형을 기반으로 도메인에는 알려진 결과는 없지만 이론적으로는 확장 유형을 기반으로 도메인에서 오류가 발생할 수 있습니다.
PL/Python (Mat Arye, Tom Lane)의 메모리 누출 수리§
반복 사용plyplan.execute
또는또는
호출 PL/Python 기능 기간 동안 메모리 누출이 발생했습니다.
TCL 9 (Peter Eisentraut)로 컴파일하려면 pl/tcl 토토 사이트§
inECPG사전 처리기, 소외된 변수 (Tom Lane)를 참조하는 커서의 오해 할 수있는 토토 사이트§
inECPG, 지원되지 않은 사용에 대한 컴파일 타임 경고 토토 사이트COPY ... From Stdin
(Ryo Kanbayashi)§
이전에, 의도 된 경고는 오타로 인해 발행되지 않았습니다.
토토 사이트PSQLSJIS (Tom Lane)에서 인코딩 된 파일 경로 이름을 안전하게 처리하려면§
SJI의 일부 2 바이트 문자는 ASCII BackSlash (와 동일한 두 번째 바이트가 있습니다.\
). 이 문자는 경로 이름 정규화에 의해 손상되어 이름이 포함 된 파일에 대한 액세스를 방지합니다.
잘못된 버전의 사용 토토 사이트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_BASEBACKUP올바르게 처리하려면pg_wal.tar
Windows에서 2GB를 초과하는 파일 (Davinder Singh, Thomas Munro)§ §
ARM CRC 명령어 (Tom Lane)에 액세스하는 데 필요한 컴파일러 스위치를 결정하는 구성 프로브 업데이트§
기준 CPU 대상에 CRC 지침이 부족한 ARM 플랫폼에서를 공급해야합니다-march
컴파일러를 설득하여 그러한 지침을 컴파일하도록 설득하십시오. 최근 버전의 GCC는 우리가 시도한 가치를 거부하여 Software CRC로 조용히 떨어지게됩니다.
동안구성, C23 컴파일러가 감지되면 C17 (Thomas Munro)을 요청하십시오.§
PostgreSQLV16 이전의 버전은 C23 규칙에 따라 컴파일하지 않습니다. 선택한 컴파일러가 기본적으로 C23 이상으로 기본적으로 a를 추가 해보십시오.-std = gnu17
전환하여 변경합니다. (컴파일러에 대해 작동하지 않으면 수동으로 지정cflags
적절한 스위치 포함.)
시간대 데이터 파일 업데이트tzdataParaguay의 DST 법률 변경을위한 릴리스 2025A 및 필리핀의 역사적 교정 (Tom Lane)§
문서에 올바르지 않은 내용이 있으면 일치하지 않습니다.이 양식문서 문제를보고하려면