Nordic Pgday 2022는 Hilton Helsinki의 핀란드 헬싱키에서 개최됩니다. 2022 년 3 월 22 일 Strand Hotel. CFP는 2021 년 12 월 31 일까지 문을 엽니 다.여기
pgroonga 2.3.4 모든 언어를위한 전체 텍스트 검색 플랫폼,릴리스.
PGPOOL-II 4.2.6, 4.1.9, 4.0.16, 3.7.21 및 3.6.28, 연결 풀러 및 명령문 복제 시스템 Postgre스포츠 토토 베트맨,re l ea S ed.
ORA2PG 23.0, Oracle 데이터베이스를 PostgreSQL로 마이그레이션하는 도구, 릴리스https : //github.com/darold/ora2pg/blob/master/changelog
Biganimal, Azure의 관리되는 PostgreSQL 데이터베이스,릴리스.
PGADMIN4 6.2, PostgreSQL의 웹 및 기본 GUI 제어 센터,릴리스.
https : //archives.postgresql.org/pgsql-jobs/2021-11/
Planet Postgresql :https : //planet.postgresql.org/
Postgresql 주간 뉴스는 이번 주 David Fetter에 의해 제공됩니다
일요일 오후 3시에 PST8pdt로 David@fetter.org.
Robert Haas PUSH :
BBSINK_THROTTLE_MANIFEST_CONTENTS에서 Thinko를 수정하십시오. 보고 및 진단 드미트리 돌고프. 논의:http : //postgr.es/m/20211115162641.dmo6l32fklh64gnw@localhost https : //git.postgresql.org/pg/commitdiff/1b098da2009362e0e8d9a1d0a6aac2f2bd3e2f0b
initxLoginsert ()를 initxLogaccess ()에서 baseInit ()로 이동합니다. 현재, RocketinProgress ()를 호출 해야하는 서류 코딩 규칙이 있습니다. 또는 시도하기 전에 initxLoginsert ()에게 전화를 걸어 다른 일을하십시오. WAL을 작성합니다. 그렇지 않으면 WAL 구조 버퍼는 초기화되지 않으며 실패가 발생합니다. 상태 문의에 의존하는 것이 좋지 않기 때문에 초기화의 부작용을 가진 reackinginprogress ()와 같은 기능 임계 데이터 구조는 대신 초기화 이어 실러를 수행 할 때 백엔드가 먼저 시작됩니다. 나에 의한 패치. Nathan Bossart와 Michael이 검토했습니다 Paquier. 논의:http : //postgr.es/m/ca+tgmoy7b65qrjzhn_twuk8b4sjqk1vj1d31uepvzmgpnzkelg@mail.gmail.com https : //git.postgresql.org/pg/commitdiff/e51c46991f0ee99cca22305619dee5543a1290a
Amit Kapila 추진 :
복제 아이덴티티 인덱스를 변경할 때 relcache를 무효화합니다. 변경할 때 복제 ID 인덱스에 대한 복제 아이덴티티 인덱스는 대상 테이블의 relcache가 아닙니다. 무효화되고 있습니다. 이로 인해 업데이트/삭제 작업 중 작업이 발생합니다 가입자쪽에 해당하는 열로 적용하십시오. 행이 기록되지 않습니다. 저자 : Tang Haiying, Hou Zhijie 검토 : Euler Taveira, Amit Kapila Backpatch-Strough : 10 토론 :https : //postgr.es/m/os0pr01mb6113ca11630dae45bc6ad95fb939@os0pr01mb6113.jpnprd01.prod.outlook.com https : //git.postgresql.org/pg/commitdiff/354a1f8d220fbbb07b0ded32c5ade72646afb801
가장 오래된 Xmin이 발전하지 못하는 병렬 작업을 수정하십시오. 하는 동안 XID 지평을 결정하면 진공 청소기가 발생하는 백엔드를 건너 뜁니다. 우리 또한 인덱스 생성 동시에 또는 동시에 인덱스 생성을 무시하십시오. 진공을위한 Xmin을 계산하는 목적. 그러나 우리는 깃발을 설정하지 않았습니다 병렬로 수행 될 때 이러한 작업에 해당합니다. XID Horizon이 발전하는 것을 막고있었습니다. 관련 최적화 인덱스를 동시에 건너 뛰거나 Reindex가 동시에 작동했습니다 PG-14에서 구현되었지만 수정은 병렬 진공에 대해서도 동일합니다. 따라서 PG-13까지 역전되었습니다. 저자 : Masahiko Sawada 검토 : Amit Kapila 백파치 스루 : 13 토론 :https : //postgr.es/m/cad21aoclqqgm1sxh9brdfq0uzd3rbfki=vfo6cjjkodm0onr5w@mail.gmail.com https : //git.postgresql.org/pg/commitdiff/0f0cfb494004befb0f6e89d3129347869420c509
Álvaro Herrera 푸시 :
Michaël Paquier 추진 :
xlog.c.에서 글로벌 변수 "lastrec"를 제거하십시오. 이 변수는 만 사용됩니다 startupxlog () 지금, 코드를 단순화하기 위해 로컬로 만들어 봅시다. 저자 : Amul SUL 검토-바이 : Tom Lane, Michael Paquier 토론 :https : //postgr.es/m/caaj_b96qd023iterbrn9z7p2sandt3cyvgumo8rxwndvnn6z7g@mail.gmail.com https : //git.postgresql.org/pg/commitdiff/f975fc3a3542005ed0dd689bdb5bd9ed4e1f4d52
pg_upgrade에서 이진 호환성 검사를위한 회귀 테스트에 테이블을 추가하십시오. 이 커밋은 메인 회귀 테스트 스위트 스위트에 모든 코어 내 데이터 유형 (일부 예외가 적용됨). 이 테이블은 삭제되지 않습니다 pg_upgrade는 유형의 이진 호환성을 확인할 수 있습니다. 테이블에서 추적되었습니다. 새 유형이 코어에 추가되면 테스트 의이 부분은 새로 고침이 필요하지만 테스트는 그렇다면 실패하도록 설계되었습니다. 일어나다. 이것은 업그레이드에 유용하며 객체에 의존한다는 기존 버전의 회귀 테스트 스위트에서 생성 된 백파치로 12로 줄어든다. 호환되지 않는 변화가 이루어졌습니다 (7C15CEF). 이것은 희망적으로 충분할 것입니다 새로운 버전의 개발 중에 무언가가 깨지는 지 알아 봅니다. postgres, pg_upgrade 자체에서 조치를 취할 수 있도록 CASE (SQL_Identifier의 경우 0CCFC28과 같은). 아직 다루지 않은 지역은입니다 외부 모듈과 관련하여 자체 유형을 만들 수 있습니다. 테스트 pg_upgrade의 인프라는 아직 외부 모듈과 통합되지 않았습니다. Core (src/test/modules/또는 contrib/에 저장되며 모두 동일한 데이터베이스 이름을 사용합니다. 그들의 시험의 경우 겹치는 것이있을 것입니다). 이것은에서 개선 될 수 있습니다 미래. 저자 : Justin Pryzby Reviewed-by : Jacob Champion, Peter Eisentraut, Tom Lane, Michael Paquier 토론 :https : //postgr.es/m/20201206180248.gi24052@telsasoft.comBackpatch-Strough : 12https : //git.postgresql.org/pg/commitdiff/835bcba8b8d72a00cecc5431b67e70bea93f947
업그레이드 이진 호환성 점검을 위해 테이블에서 ACL 품목의 인용 수정. 당 BuildFarm 멤버 Prion, 역할 이름으로 회귀 테스트를 실행합니다. 하이픈을 사용합니다. 835BCBA가 도입 한 문제. 논의:https : //postgr.es/m/yzw4mvzcz+hq34vw@paquier.xyzBackpatch-Strough : 12https : //git.postgresql.org/pg/commitdiff/ac1c7458b17633d1e53a01393d12774c10cb6a91
변환, 도메인 및 시퀀스에 대한 P스포츠 토토 베트맨 탭 완료 개선. 그만큼 다음과 같은 개선 사항이 완료되었습니다 .- 생성을위한 일부 탭 완료 추가 도메인. - 변환을 위해 일부 탭 완료를 추가합니다. - 추가 시퀀스를 작성하려면 완료를 입력하십시오. 저자 : Ken Kato 검토 : Kyotaro Horiguchi, Michael Paquier 토론 :https : //postgr.es/m/8d370135aef066659eef8e8e8fbfa6315b@oss.nttdata.com https : //git.postgresql.org/pg/commitdiff/0cd6d3b3c5aec81903aa7de92e406f8567898a2
Peter Eisentraut 추진 :
Daniel Gustafsson이 추진했습니다 :
DOC : 발행물을 만들기 위해 참조 참조를 추가하십시오. "또한"섹션 출판물 작성에 대한 참조 페이지는 Cross References와 일치하지 않았습니다. 구독 및 대체 대응 물을 만듭니다. XREF를 추가하여 수정했습니다 구독 페이지 작성 및 변경. Backpatch를 V10까지 내려 놓습니다 출판물이 소개되었습니다. 저자 : Peter Smithsmithpb2250@gmail.com검토 바이 : Masahiko Sawadasawada.mshk@gmail.com토론 :https : //postgr.es/m/cahut+pvgwd3-ktn96c-z6uq-8tgvvp=tpokeovkefntoo2mrhw@mail.gmail.comBackpatch-Strough : 10https : //git.postgresql.org/pg/commitdiff/3374a87b62cc53fa65f57ade019dcf3104ae639
게시 오류 메시지 향상. Commit 81D5995B4B 더 많은 소개 출판을위한 잘못된 relkinds에 대한 세분화 된 오류 동일한 메시지를 사용하여 예상 및 임시 테이블이보고되었습니다. 이것 이러한 유형의 상환에 대한 별도의 오류 메시지를 제공합니다. 작가: Bharath Rupireddybharath.rupireddyforpostgres@gmail.com검토 : Peter eisentrautpeter.eisentraut@enterprisedb.com검토 바이 : Jeevan Ladhejeevan.ladhe@enterprisedb.com검토 바이 : Euler Taveiraeuler@eulerto.com토론 :https : //postgr.es/m/calj2acw9s=aswyqhjto6wmcsergmkcbttzxgrm8dx26dzfetlq@mail.gmail.com https : //git.postgresql.org/pg/commitdiff/aa12781b039d93e1a851ece4bc75c3746cbd43
Tom Lane 추진 :
insert/select에서 스포츠 토토 베트맨 표준 함수의 인수 표시 수정. 경우 a 스포츠 토토 베트맨-Standard Function Body에는 인서트가 포함되어 있습니다 ... Select 문, SELECT 내에서 참조 된 기능 매개 변수는 항상 $ N에서 인쇄되었습니다. 매개 변수 이름을 사용하는 대신 스타일. 엄격하게는 아닙니다 틀린, 이것은 의도가 아니었고, 그 방식과 일치하지 않습니다. 이러한 매개 변수는 다른 종류의 진술로 인쇄됩니다. 원인은 get_insert_query_def에서 get_query_def에 대한 재귀가 무시되었습니다 컨텍스트- 네임 스페이스 목록을 전달하여 대신 일정하게 전달하십시오. 이것은 매우 고대의 감독이지만, afaict는 전에 눈에 띄는 결과가 없었습니다. 커밋 e717a9a18 기능 매개 변수가있는 가장 바깥 쪽 네임 스페이스를 추가했습니다. 우리 인서트를 허용하지 마십시오 ... 최상위 수준을 제외하고 하위 쿼리로 선택하십시오. 조항, 필요할 수있는 외부 참조를 포함 할 수없는 조항 상단 네임 스페이스에 액세스하십시오. 그래서 그것은 틀림없이 버그이지만 나는 아무것도 보이지 않습니다. V14 전에 변경하는 것을 가리 킵니다. 통과하면 추가 된 코드를 강화하십시오 get_parameter by e717a9a18로 param_extern param이면 충돌하지 않도록 예상치 못한 곳에 나타납니다. Erki Eessaar의 보고서 당. 코드 수정 나, Masahiko Sawada의 회귀 테스트 사례. 논의:https : //postgr.es/m/am9pr01mb8268347bed3444848555167fafe949@am9pr01mb8268.eurprd01.prod.exchangelabs.com https : //git.postgresql.org/pg/commitdiff/a8d8445a7b2f80f6d0bfe97b19f90bd2cbef8759
PG_DUMP 및 PG_BASEBACKUP에서 더 강력하게 근접한 () 고장을 처리합니다. 은폐 실패한 GZCLOSE 이후에 get_gz_error를 적용하는 것을 불평했습니다. pg_basebackup에 배치하면 안전하지 않습니다. 나는 그것이 옳다고 생각합니다 : 그것은 전적으로 가능성이 높습니다 전화가 해방 된 메모리에 닿아 있습니다. 우리가하는 것처럼 Errno를 검사하도록 변경하십시오 다른 gzclose 호출. 또한 Errno를 0으로 초기화하도록주의하십시오 오류 상태에 관심이있는 곳에서 gzclose () 호출 직전에. (우리가 이미 실패했기 때문에 우리가하지 않는 곳에 전화가 있습니다. 이전 단계.) 이것은 우리가 오해의 소지가없는 것을 얻지 못하도록합니다. 오류 코드 gzclose ()가 Errno를 설정하지 않는 방식으로 실패하면. 우리는 일할 수 있습니다 더 어렵지만 모든 경우처럼 보입니다. 우리가 Zlib를 오용하지 않으면 happen 할 수 없으므로 추가 가치가 없습니다. 요구되는 표기법 cruft. 또한 간단한 여러 장소를 수정하십시오 근접 시간 오류를 확인하지 못했습니다. 닫기 또는 gzclose 자체; 그리고 확인했지만 귀찮게하지 않은 한 곳 Errno를보고하십시오. v12로 백 패치. 이러한 실수는 그보다 나이가 많지만 v12에서 발생한 프론트 엔드 로깅 API 변경과 사실 사이 그 프론트 엔드 코드는 그 전에 %m에 의존 할 수 없으므로 패치는 필요할 것입니다. 오래된 지점에서 일하기위한 상당한 개정. 가치있는 것 같지 않습니다 관련 필드 불만이 부족한 문제. 나에 의한 패치; 감사해요 검토를 위해 Michael Paquier에게. 논의:https : //postgr.es/m/1343113.1636489231@sss.pgh.pa.us https : //git.postgresql.org/pg/commitdiff/3cac2c8caaeefc642332e694ce80032cc7d4cfdf
pg_basebackup의 walmethods.c에서 오류 처리를 정리하십시오. 오류 처리 근본적으로 나쁜 디자인의 결과로 (Errno에 의존하는) 그 가치를 가정하기에 안전한 것보다 훨씬 길게 유지하려면) 오류를 전혀 알아 차리고보고에 대한 평범한 경사 Errno를 수정하십시오. 또한 최근 LZ4 압축의 추가로 인해 문제가 발생했습니다 LIBLZ4는 Errno를 사용하여 오류를보고하지 않기 때문에 완전히. 향상 문제, DirectoryMethodData 또는 TarmethodData의 오류 상태를 유지합니다. errno를 설정하지 않는 케이스를 처리 할 수 있도록 문자열 필드를 구조화하고 추가하십시오. (TAR 방법에는 이미 버전이 있었지만 더 많이 할 수 있습니다. 효율적 으로이 모든 경우가 일정한 오류 문자열을 사용하므로 DIR를 만듭니다. 그리고 TAR 방법은 기본적으로 동일한 방식으로 오류를 처리했지만 그렇지 않았습니다. 전에. 이를 위해 조금 지루하지만, 우리가 임시를 제거 할 수 있다는 미덕이 있습니다. 여러 곳에서 errno를 저장하고 복원하는 코드 ... Errno를 저장/복원해야했지만 무시 해야하는 다른 장소를 수정합니다. 지나 가면 평범한 로컬로 무의미하게 정적 버퍼를 고치십시오. 변수. 오류를 처리하는 방법에 대한 문제가 남아 있습니다. fsync ()이지만 자체 패치의 재료처럼 보입니다. LZ4 동안 문제는 새롭고 나머지는 오래된 버그에 대한 수정이므로 Backpatch v10 Walmethods.c가 도입 된 곳. 나에 의한 패치; Michael Paquier에게 감사합니다 검토를 위해. 논의:https : //postgr.es/m/1343113.1636489231@sss.pgh.pa.us https : //git.postgresql.org/pg/commitdiff/248c3a937dd018a72095f407cff727c9f08db0c1
Starting_with ()에 대한 플래너 지원 함수 추가. 이것은 약간의 간격을 채 웁니다 Starting_with () 및 동등한 ^@ 연산자에 대한 플래너 지원 : * a "TextCol ^@ Constant"와 같은 조건은 이제 일반 BTREE 인덱스를 사용할 수 있습니다. 인덱스의 콜레이션이 C 인 한 sp-gist 색인 만 "foo%'와 같은 TextCol과 마찬가지로.) *"StartCol (TextCol, Constant)은 "TextCol ^@ constant"와 동일하게 최적화되었습니다. * 고정식 준비와 같은 및 정규식 패턴은 이제 다른 방식으로 starts_with ()와 비슷합니다. spgist-Indexed 열, ^@을 사용하여 인덱스 조건을 얻을 수 있습니다. = 및 <가있는 두 가지 인덱스 조건. Shay Rojansky의 불만에 따라. 나에 의한 패치; 검토 해 주신 Nathan Bossart에게 감사드립니다. 논의:https : //postgr.es/m/232599.163800229@sss.pgh.pa.us https : //git.postgresql.org/pg/commitdiff/A148F8BC04B9980F019EA0D4B89311CF0BDC22B7
^c에 의해 중단 될 수있는 Simple_Prompt ()의 변형을 제공합니다. 지금까지 Control-C (또는 Sigint의 다른 지역 철자). 이것은 매우 사용자 친화적이므로 개선하십시오 그것. 그렇게하려면 pg_get_line.c에서 제공하는 함수를 수정해야합니다. 하지만 PSQL의 Sigint Handler 설정을 엉망으로 만들고 싶지 않으므로 API를 제공합니다. 해당 핸들러로 인해 취소가 발생합니다. 이것은 가정에 의존합니다 우리는 fgets ()에서 longjmp'ing으로 큰 해를 끼치 지 않을 것입니다. 그건 그렇습니다 분명히 약간 흔들리는데, 우리는 오랫동안 주요 입력에서 같은 가정을 가졌습니다. 루프 및 몇 가지 문제 가보고되었습니다. PSQL에는 다른 단순한 _prompt ()에 있습니다. 같은 방식으로 유용하게 개선 될 수있는 전화; 지금은 그냥 다루십시오 \비밀번호. Nathan Bossart, Min Tweaks By Me 토론 :https : //postgr.es/m/747443.1635536754@sss.pgh.pa.us https : //git.postgresql.org/pg/commitdiff/5f1148224bd78bcf3bf7d916b8fe85dd820c52c6
비트 코드를 컴파일 할 때 적절한 -wno -warning 스위치를 사용하십시오. 우리는 "Clang"을 사용합니다. LLVM Inlining 용 비트 코드 파일을 컴파일하려면 그것은 다른 것과 다를 수 있습니다 빌드의 메인 C 컴파일러이므로 자체 컴파일러 플래그 세트가 필요합니다. 에게 구성 단순화, 우리는 해당 플래그 세트에 -W 스위치를 추가하는 것을 귀찮게하지 않습니다. 메인 빌드가 우리에게 경고를 보여주기 때문에 필요는 거의 없습니다. 하지만, 원치 않는 경고를보고 싶지 않다면 여전히 추가해야합니다. -Wno 경고 스위치는 일반적으로 Clang과 함께 사용합니다. 이것은 탈출 한 통지입니다 Commit 9ff47EA41을 추가하기 전에 추가하려고했습니다 -wno 컴파운드-스플릿 별 매크로; 일치하지 않는 CC를 사용하여 건축 된 동물 동물 클랜은 여전히 그 경고를 보여 주었다. 왜 우리가 어떤 효과도 본 적이 없는지 잘 모르겠습니다 -wno-uniused-command-line-line-line-line-rgument의 부족으로부터 -wall에 의해 활성화). Clang은 현재 -wno-format-trunction을 지원하지 않습니다 또는 미래 방지의 이익에도 불구하고 -wno-stringop-trunction 일관성 나는 그것에 대한 테스트를 포함시켰다. 우리가 시작한 곳에서 V11로 백 패치 비트 코드 파일 구축. 논의:https : //postgr.es/m/2921539.1637254619@sss.pgh.pa.us https : //git.postgresql.org/pg/commitdiff/276517a96484f9e39a7a1095ab39fa76ef1ee8cc
PSQL의 Simple_Prompt ()의 다른 용도가 ^c에 의해 방해 할 수 있도록 허용합니다. 이것은 채워진다 이 작업에서 5F1148224에 의해 설명되지 않았습니다. \ 프롬프트는 지금부터 취소 할 수 있습니다. \ connect 동안 발행 된 암호 프롬프트도 가능합니다. (우리는 할 필요가 없습니다 아직 시작 중에 발행 된 비밀번호 프롬프트에 대한 모든 것. 그 시점에서 Sigint를 포획합니다.) Nathan Bossart 토론 :https : //postgr.es/m/747443.1635536754@sss.pgh.pa.us https : //git.postgresql.org/pg/commitdiff/46d665bc26ce57b5afecbc218c8fc3c68211d8
이진 호환 사례에 대한 SP-Gist 스캔 초기화 로직 수정. 저지르다 AC9099FC1은 인덱스를 결정하는 spggetCache ()의 논리를 재정렬했습니다. atttype (공칭 입력 데이터 유형) 및 LeafType (잎에 저장된 실제 유형 색인 튜플). (a) 실제 입력 데이터 유형은 공칭 유형과 다릅니다 (b) OPCLASS 구성 함수 잎 LeafType leafType가 기본적으로 표시되고 (c) OpClass에는 "압축"이 없습니다. 기능. (b) 실제 입력 데이터 유형을 LeafType로 할당하게했고 그런 다음 Atttype가 아니기 때문에 "압축"기능이 필수의. 비 폴리 모르 픽 OPClass의 경우, 조건 (A)이 발생합니다 Varchar 열에 sp-gist text_ops를 사용하는 것과 같은 이진 호환 케이스, 또는 공칭 입력 유형을 통해 도메인의 OPCLASS를 사용합니다. 수정하고 사용합니다 인덱스의 선언 된 열 유형이 다를 때 LeafType의 AttType 그러나 Atttype와 이진 호환. 기본 잎 유형에서만이 작업을 수행하십시오 사례, OPCLASS가 작성한 명시 적 선택을 무시하지 않습니다. 버그 당 Ilya Anfimov의 #17294. v14로 백 패치. 논의:https : //postgr.es/m/17294-8f6c7962ce877edc@postgresql.org https : //git.postgresql.org/pg/commitdiff/f4e7ae2b8a67ad680172653a024a3306716ef80
DOC : 최소 테스트와 관련된 몇 가지 사항을 업데이트하십시오 :: more 버전. 감독 405F32FC4 커밋. 또한, Test :: 최근 Linux 플랫폼에서 회귀 테스트를 통과하려면 0.98 개 이상입니다.https : //git.postgresql.org/pg/commitdiff/92e70796e91e2f9086fad0156e0e91513e54a66b
PG_RECEIVEWAL, PG_RECVLOGICAL : 초기 비밀번호를 취소 할 수 있습니다. 이전에는 Control-C를 통해 이러한 프로그램을 종료하는 것이 불가능했습니다. 그들은 비밀번호를 홍보하고있었습니다. 우리는 그 것을 사소하게 고칠 수 있습니다 초기 비밀번호 프롬프트 초기 getConnection () 호출 직후. 이 수정 사항은 그렇지 않습니다 나중에 리 프롬프트에서 탈출하는 것이 허용되지만, 그것들은 매우 드문 일이어야합니다. 사용자의 비밀번호 또는 서버의 인증 설정이 그 동안 바뀌 었습니다. 우리는 Commit과 유사한 수정 사항을 적용하는 것을 고려했습니다 46d665bc2이지만 가치가있는 것보다 더 복잡해 보였습니다. 게다가, 이 방법은 역전 가능합니다. 오작동은 모두 존재합니다 지원되는 버전이므로 모든 사람에게 백 패치. Tom Lane과 Nathan Bossart 논의:https : //postgr.es/m/747443.1635536754@sss.pgh.pa.us https : //git.postgresql.org/pg/commitdiff/282b6d00abf5cebece6f94c796a4ed80176db
Andres Freund 추진 :
Andrew Dunstan 추진 :