Commitfest PG19-4 (2026-01-01 – 2026-01-31)

No reviewers My patches My reviews New patch
Text Status Target version Tag (type to search) Author (type to search) Reviewer (type to search)
Clear


Status summary: Needs review: 184. Waiting on Author: 19. Ready for Committer: 20. Committed: 21. Moved to next CF: 13. Withdrawn: 1. Total: 258.

Active patches

Patch ID Status Tags Ver CI status Stats Author Reviewers Committer Num cfs Latest mail
Bug Fixes
pg_ctl start may return 0 even if the postmaster has been already started on Windows 4573 Waiting on Author Needs rebase! Kyotaro Horiguchi (horiguti) Hayato Kuroda (ha-kun), Yasir Shah (yasir.hussain.shah.gmail.com) 11 1 month ago
Historic snapshot doesn't track txns committed in BUILDING_SNAPSHOT state 5029 Needs review Bugfix Logical Replication 10/10 +110−6 ChangAo Chen (chenchangao) harinath kanchu (harinath001), Lilian Ontowhee (ontowhee), haiyang li (ocean-li) 8 3 weeks ago
Incorrect error message for cancellation triggered by statement_timeout & flaky test 5070 Ready for Committer Bugfix Flakyfix stable 10/10 +16−5 Jelte Fennema-Nio (jeltef) Akshat Jaimini (akshatj) 9 9 months ago
Fix rare checksum failure in EXEC_BACKEND LocalProcessControlFile() 5124 Waiting on Author Needs rebase! Thomas Munro (macdice) Noah Misch (nmisch) 7 8 months ago
DirtySnapshot index scan skips concurrently updated tuples leading to lost updates/deletes in logical replication 5151 Needs review Bugfix Logical Replication stable 10/10 +612−46 Michail Nikolaev (nkey), Mihail Nikalayeu (mihailnikalayeu) Luan Silva (luansilva) 7 4 weeks ago
problems with toast.* reloptions 5839 Waiting on Author stable Needs rebase! Nathan Bossart (bossartn) 4 4 months ago
Decouple C++ support in Meson's PGXS from LLVM enablement 5885 Waiting on Author Good First Review stable 8/10 +30−15 Tristan Partin (tristan957) Josef Šimánek (retro), Jelte Fennema-Nio (jeltef) Peter Eisentraut (petere) 3 1 month ago
Fixing the btree_gist inet mess 5944 Needs review 19 10/10 +117−7 Tom Lane (tgl) Peter Eisentraut (petere), Matthias van de Meent (mmeent) 3 4 months ago
disallow alter individual column if partition key contains wholerow reference 5988 Waiting on Author Bugfix Backport 18 10/10 +36−0 Jian He (stayreal) Sergey Dudoladov (sdudoladov), Matt Dailis (mattdailis) 3 1 month ago
Fix ALTER TABLE DROP EXPRESSION with ONLY option 5992 Ready for Committer Bugfix stable 2/10 +6−6 Jian He (stayreal) Peter Eisentraut (petere) Peter Eisentraut (petere) 3 1 month ago
UPDATE with invalid domain constraint 6031 Needs review Bugfix Backport stable 10/10 +114−0 Jian He (stayreal) 2 3 months ago
let ALTER TABLE DROP COLUMN drop whole-row referenced object 6055 Needs review Bugfix Backport stable 10/10 +492−3 Jian He (stayreal) 2 2 months ago
meson: Fix libpq search order 6056 Needs review Needs rebase! Thomas Munro (macdice) Mario Gonzalez (gonzalemario) 2 1 month ago
Preserve index stats during ALTER TABLE ... TYPE ... 6118 Needs review Bugfix 19 9/10 +576−4 Bertrand Drouvot (bertranddrouvot.pg) 2 1 month ago
avoid call ATPostAlterTypeCleanup twice 6121 Needs review Bugfix Backport stable 10/10 +88−0 Jian He (stayreal) 2 1 month ago
Fix orphaned backend processes on Windows using Job Objects 6201 Needs review Bugfix 19 10/10 +366−0 Bryan Green (lispyone) 1 3 weeks ago
Windows relation extension failure at 2GB and 4GB 6204 Needs review Bugfix 19 10/10 +298−8 Bryan Green (lispyone) 1 1 week ago
Fix socket handle inheritance on Windows 6207 Needs review Bugfix 10/10 +154−2 Bryan Green (lispyone) 1 1 month ago
Avoid overflow (src/backend/utils/adt/formatting.c) 6209 Needs review Bugfix 19 10/10 +5−2 Ranier Vilela (raniervilela) 1 1 month ago
001_password.pl fails with --without-readline 6238 Needs review Bugfix Testing 19 2/10 +20−5 Oleg Tselebrovskiy (oleg.tselebrovskiy.pgpro) 1 1 month ago
Fix ARM64/MSVC atomic memory ordering issues on Win11 by adding explicit DMB ​barriers 6243 Ready for Committer Bugfix 19 10/10 +67−18 Dave Cramer (dcramer), Greg Burd (gregburd) 1 20 hours ago
Visibility bug in tuple lock 6253 Needs review Bugfix 19 9/10 +130−6 David Geier (geidav) Heikki Linnakangas (heikki) 1 1 month ago
Fix crash during recovery when redo segment is missing 6279 Needs review Bugfix Backport 2/10 +120−1 Nitin Jadhav (nitinjadhav11) 1 3 days ago
Incorrect historic snapshot may be serialized to disk during fast-forwarding 6304 Needs review Bugfix 10/10 +12−9 ChangAo Chen (chenchangao), haiyang li (ocean-li) 1 2 weeks ago
Clients
Improve tab completion for various SET/RESET forms 5810 Needs review 19 10/10 +74−11 Dagfinn Ilmari Mannsåker (ilmari) Shinya Kato (shinyakato) 3 1 month ago
Add prompt option to display read-only and read/write states in psql 5872 Needs review psql 19 10/10 +66−0 Jim Jones (jimus) Fujii Masao (masaofujii), Nathan Bossart (bossartn), Srinath Reddy (srinath-reddy-sadipiralla) 4 1 month ago
libpq: Bump protocol version to version 3.2 at least until the first/second beta 6157 Needs review libpq 1/10 +144−29 Jelte Fennema-Nio (jeltef) Jacob Champion (jchampion) Jacob Champion (jchampion) 2 1 month ago
pg_dump flag for dumping tables data in multiple chunks, for huge tables can often give near-linear speedup when parallelized 6219 Needs review stable 10/10 +130−36 Hannu Krosing (hannukrosing) Pavel Stehule (okbobcz) 1 2 weeks ago
psql: add \dcs to list all constraints 6220 Needs review 19 10/10 +499−2 Tatsuro Yamada (tatsuro_yamada) 1 1 month ago
psql: tab completion for ALTER ROLE ... IN DATABASE ... 6244 Needs review psql 19 10/10 +64−2 Ian Barwick (barwick), Vasu M (vasu01) Surya Poondla (spoondla) 1 1 week ago
Adds two new modifiers for \dt[Oo] and \di[Oo]. This helps inspect large deployments where relation size is important. 6258 Ready for Committer psql My First Patch 19 10/10 +25−3 M.Atıf CEYLAN (ceylani) Mahmoud Ayman (mahmoudayman) 1 2 weeks ago
Proposal to allow setting cursor options on Portals 6292 Needs review libpq 2/10 +399−6 Dave Cramer (dcramer) Jelte Fennema-Nio (jeltef) 1 17 hours ago
Code Comments
Change comment in `contrib/amcheck` regression suite 6287 Needs review Help - Bikeshedding 10/10 +2−2 Kirill Reshke (reshke) 1 6 days ago
Fix typo 586/686 in atomics/arch-x86.h 6295 Needs review 19 10/10 +1−1 Jakub Wartak (jakub.wartak.tomtom) 1 2 weeks ago
Documentation
Document NULL Concepts and Behaviors 5086 Ready for Committer Docs Only 18 10/10 +1281−160 David Johnston (polobo) 8 3 weeks ago
Streaming Replication vs Logical 5296 Ready for Committer 10/10 +31−22 Paul Jungwirth (pjungwir) Robert Treat (xzilla) 4 9 months ago
pg_restore documentation and --create/--single-transaction limitation 5676 Ready for Committer Docs Only 18 10/10 +6−1 Ashutosh Bapat (ashutoshbapat) Laurenz Albe (laurenz) 4 2 months ago
docs: Update protocol changes checklist with 3.2 changes 5863 Waiting on Author Docs Only 18 10/10 +138−84 Dave Cramer (dcramer), Jelte Fennema-Nio (jeltef) 4 4 months ago
Doc: add XML ID attributes to <varlistentry> tags for create_foreign_table, alter_foreign_table 6071 Ready for Committer Docs Only stable 10/10 +63−63 Jian He (stayreal) Zongliang Quan (quanzl) 2 3 weeks ago
Clarify EXPLAIN ANALYZE docs on fractional rows and parallelism 6090 Needs review 9/10 +76−4 Tom Lane (tgl), Maciek Sakrejda (msakrejda) Ilia Evdokimov (ilidock95) 2 1 month ago
refactor func-matching.sgml, make regexp* function more readable 6144 Needs review Docs Only 19 10/10 +114−76 Jian He (stayreal) 2 1 month ago
Remove ctid from self-join examples in UPDATE and DELETE docs 6246 Needs review Docs Only 19 10/10 +8−11 Bernice Southey (fyrefreez) 1 3 weeks ago
doc: Clarify ANALYZE VERBOSE output 6259 Needs review Docs Only stable 10/10 +2−1 Shinya Kato (shinyakato) 1 1 month ago
Clarify the scope and intended use of pg_dumpall 6282 Needs review Docs Only 19 10/10 +13−4 Laurenz Albe (laurenz) 1 1 week ago
Miscellaneous
Unlinking Parallel Hash Join inner batch files sooner 4314 Ready for Committer 10/10 +51−0 Thomas Munro (macdice) 10 1 year ago
Support a wildcard in backtrace_functions 4735 Needs review GUC Help - Bikeshedding Needs rebase! Jelte Fennema-Nio (jeltef) Daniel Gustafsson (d_gustafsson), Bharath Rupireddy (bharathrupireddy) Daniel Gustafsson (d_gustafsson) 11 8 months ago
Avoid orphaned objects dependencies, take 3 4942 Needs review 18 Needs rebase! Bertrand Drouvot (bertranddrouvot.pg) 9 1 month ago
Bump soft open file limit (RLIMIT_NOFILE) to hard limit on startup 5570 Needs review Multithreading AIO 10/10 +448−37 Jelte Fennema-Nio (jeltef) Peter Eisentraut (petere) 5 1 month ago
pgindent: improve formatting of multiline comments 5831 Waiting on Author 19 10/10 +5−5 Aleksander Alekseev (a.alekseev) Nathan Bossart (bossartn) 4 15 hours ago
Use enum type replacing #define for exec state of hashjoin and mergejoin 6027 Needs review 10/10 +36−27 Tender Wang (tndrwang) 2 1 month ago
Improving the names generated for indexes on expressions 6059 Needs review 10/10 +265−159 Tom Lane (tgl) 2 1 month ago
incremental autovacuum scheduling improvements 6114 Waiting on Author 19 Needs rebase! Nathan Bossart (bossartn) 2 2 weeks ago
Add Windows support for backtrace_functions (MSVC only) 6116 Needs review My First Patch 19 10/10 +148−2 Bryan Green (lispyone) 2 1 month ago
minor error message enhance: print RLS policy name when only one permissive policy exists 6180 Ready for Committer 19 10/10 +48−39 Jian He (stayreal) Florin Irion (irionr) 2 1 month ago
O_CLOEXEC not honored on Windows - handle inheritance chain 6197 Needs review 19 10/10 +0−0 Bryan Green (lispyone) 2 2 days ago
Refactor how we form HeapTuples for CatalogTuple(Insert|Update) 6221 Needs review Refactoring Only 19 Needs rebase! Greg Burd (gregburd) 1 1 week ago
enhance wraparound warnings 6222 Needs review 19 10/10 +100−18 Nathan Bossart (bossartn) 1 16 hours ago
Add memory usage reporting to VACUUM VERBOSE 6225 Needs review My First Patch 19 10/10 +39−0 Tatsuya Kawata (croissant) 1 1 week ago
Have BackendXidGetPid return pid_t 6229 Needs review 9/10 +2−2 Sami Imseih (simseih) 1 3 weeks ago
misleading error message in DefineIndex 6231 Needs review stable 10/10 +31−31 Jian He (stayreal) 1 3 weeks ago
parallel pgbench -i 6242 Needs review Performance 7/10 +420−35 Mircea Cadariu (mcadariu) 1 3 weeks ago
Avoid pallocs in async.c's "critical section" 6248 Needs review 9/10 +153−170 Joel Jacobson (joeljacobson) 1 2 weeks ago
Use ROLERECURSE_PRIVS in is_admin_of_role() 6251 Needs review Good First Review 2/10 +1−1 ChangAo Chen (chenchangao) 1 2 weeks ago
Static assertion implementation improvements 6261 Needs review Needs rebase! Peter Eisentraut (petere), Thomas Munro (macdice) 1 3 weeks ago
Support getrandom() for pg_strong_random() source 6283 Needs review 19 Needs rebase! Masahiko Sawada (masahikosawada) 1 1 month ago
Adding TRIM_SPACE option to COPY 6289 Needs review 19 9/10 +67−3 Tatsuya Kawata (croissant) 1 2 weeks ago
Make copyObject work in C++ 6291 Needs review Extensions 10/10 +23−18 Jelte Fennema-Nio (jeltef) Akshat Jaimini (akshatj) 1 3 days ago
Safer and easier to use hash table initialization macro 6301 Needs review Refactoring Only Needs rebase! Bertrand Drouvot (bdrouvot), Jelte Fennema-Nio (jeltef) 1 3 days ago
Monitoring & Control
relfilenode statistics 5007 Needs review 18 Needs rebase! Bertrand Drouvot (bertranddrouvot.pg) 9 4 weeks ago
Vacuum statistics 5012 Waiting on Author 19 Needs rebase! Andrei Lepikhov (lepikhov), Andrei Zubkov (zubkov), Alena Rybakina (alenka) Ilia Evdokimov (ilidock95) 9 2 months ago
Logging plan of the currently running query 5330 Needs review Monitoring 18 10/10 +645−34 Atsushi Torikoshi (atsushitorikoshi) Hironobu Suzuki (suzuki_hironobu), Akshat Jaimini (akshatj), Sadeq Dousti (msdousti) 7 2 weeks ago
Add storage I/O tracking to EXPLAIN BUFFERS 5526 Needs review Monitoring 18 10/10 +1156−34 Atsushi Torikoshi (atsushitorikoshi) Jelte Fennema-Nio (jeltef) 5 1 month ago
Expose internal MultiXact member count function for efficient monitoring 5811 Needs review 19 0/10 +344−6 Naga Appani (naga.appani) Atsushi Torikoshi (atsushitorikoshi) 4 5 days ago
Support for basic ALTER TABLE progress reporting. 5873 Needs review Monitoring 10/10 +83−6 Jiří Kavalík (jkavalik) Jian He (stayreal) 3 4 months ago
Report bytes and transactions actually sent downtream 5877 Needs review Monitoring Logical Replication 10/10 +452−190 Ashutosh Bapat (ashutoshbapat) 4 yesterday
Adding locks statistics 5942 Needs review 19 Needs rebase! Bertrand Drouvot (bertranddrouvot.pg) 3 3 months ago
Adding per backend commit and rollback counters 5947 Needs review 19 10/10 +296−2 Bertrand Drouvot (bertranddrouvot.pg) 3 3 months ago
Per backend relation statistics tracking 5958 Needs review 19 9/10 +261−2 Bertrand Drouvot (bertranddrouvot.pg) 3 3 months ago
Termination of Background Workers for ALTER/DROP DATABASE 6102 Needs review 10/10 +245−6 Aya Iwata (iwata.aya) Pavel Stehule (okbobcz) 2 3 weeks ago
Report oldest xmin source when autovacuum cannot remove tuples 6188 Waiting on Author Monitoring 19 6/10 +388−30 Shinya Kato (shinyakato) Fujii Masao (masaofujii), Sami Imseih (simseih) 2 3 weeks ago
Add sampling statistics to autoanalyze log output 6288 Needs review Monitoring 19 9/10 +106−38 Tatsuya Kawata (croissant) 1 5 days ago
Add pg_current_vxact_id() function to expose virtual transaction IDs 6298 Needs review Good First Review Monitoring 19 8/10 +99−1 Pavlo Golub (pasha_golub) 1 4 days ago
Add last_executed timestamp to pg_stat_statements 6308 Needs review Extensions Good First Review Monitoring 19 10/10 +286−4 Pavlo Golub (pasha_golub) 1 yesterday
Performance
Index Prefetching 4351 Waiting on Author 10/10 +3096−1571 Peter Geoghegan (pgeoghegan), Tomas Vondra (fuzzycz) 13 yesterday
[CREATE|RE] INDEX CONCURRENTLY with single heap scan 4971 Needs review Performance 19 Needs rebase! Michail Nikolaev (nkey), Mihail Nikalayeu (mihailnikalayeu) Matthias van de Meent (mmeent) 8 1 week ago
Asynchronous MergeAppend Execution 5129 Needs review 10/10 +961−38 Alexander Pyhalov (a.pyhalov) 7 3 weeks ago
Parallel heap vacuum 5326 Needs review Needs rebase! Masahiko Sawada (masahikosawada) Hayato Kuroda (ha-kun) 7 2 months ago
Pull-up subquery if INNER JOIN-ON contains refs to upper-query 5487 Needs review Performance 19 10/10 +1487−46 Alena Rybakina (a.rybakina) Ilia Evdokimov (ilidock95) 5 2 months ago
Expanding HOT updates for expression and partial indexes 5556 Needs review Performance 19 10/10 +2327−511 Greg Burd (gregburd) 4 2 weeks ago
Reduce timing overhead of EXPLAIN ANALYZE using rdtsc 5622 Needs review 10/10 +418−44 Andres Freund (andresfreund), Lukas Fittl (lfittl), David Geier (geidav) 4 1 week ago
Create DATA dump objects for partitioned tables too 5692 Needs review 10/10 +223−41 Tom Lane (tgl) 4 7 months ago
Accounting for metapages in genericcostestimate() 5727 Needs review 10/10 +55−13 Tom Lane (tgl) 4 7 months ago
Improve hash join's handling of tuples with null join keys 5738 Waiting on Author 9/10 +381−71 Tom Lane (tgl) Chao Li (chaol) 4 3 months ago
Improve the performance of Unicode Normalization Forms. 5802 Ready for Committer 10/10 +55763−12827 Alexander Borisov (lexborisov) Victor Yegorov (vyegorov) 4 2 weeks ago
Eliminate xl_heap_visible to reduce vacuum and COPY FREEZE WAL volume 5841 Needs review 19 2/10 +792−801 Melanie Plageman (melanieplageman) 4 yesterday
Automatically sizing the IO worker pool 5913 Needs review 19 Needs rebase! Thomas Munro (macdice) 2 4 months ago
Eagerly evict bulkwrite strategy ring 5919 Needs review 19 10/10 +482−137 Melanie Plageman (melanieplageman) 4 3 weeks ago
Speed up COPY FROM text/CSV parsing using SIMD 5952 Needs review 19 9/10 +147−5 Shinya Kato (shinyakato) Nathan Bossart (bossartn), Ayoub Kazar (kaz) Nathan Bossart (bossartn) 2 2 days ago
Stack-based tracking of per-node WAL/buffer usage 6023 Needs review 19 10/10 +751−368 Lukas Fittl (lfittl) 3 1 month ago
Improve read_local_xlog_page_guts by replacing polling with latch-based waiting 6024 Needs review Performance Logical Replication 19 9/10 +59−11 Xuneng Zhou (dylanzhou) 2 3 weeks ago
Checkpointer write combining 6043 Needs review 10/10 +1018−204 Melanie Plageman (melanieplageman) 2 3 weeks ago
Optimize LISTEN/NOTIFY 6078 Needs review 10/10 +1009−186 Joel Jacobson (joeljacobson) Tom Lane (tgl) 2 2 weeks ago
use SIMD in GetPrivateRefCountEntry() 6101 Needs review 19 10/10 +87−16 Nathan Bossart (bossartn) 2 1 month ago
pgstattuple: Use streaming read API in pgstatindex functions 6125 Ready for Committer Extensions AIO 19 10/10 +48−9 Xuneng Zhou (dylanzhou) Shinya Kato (shinyakato) 2 1 month ago
postgres_fdw: Use COPY to speed up batch inserts 6137 Needs review 10/10 +298−3 Matheus Alcantara (matheus.alcantara) 2 2 weeks ago
Optimization of the is_normalized() function. 6152 Needs review Performance 19 10/10 +6626−8086 Alexander Borisov (lexborisov) 2 1 month ago
Batching in executor, part 1: add batch variant of table AM scan API 6176 Waiting on Author Help - Benchmarks Performance 19 0/10 +2669−28 Amit Langote (amitlan) 2 1 month ago
Write Notifications Through WAL 6205 Needs review Performance 10/10 +1288−458 Rishu Bagga (rishub) 1 2 weeks ago
Reduce unnecessary locking of pruned partitions when reusing cached plans 6216 Needs review Performance 19 10/10 +963−85 Amit Langote (amitlan) 1 2 weeks ago
tuple radix sort 6217 Needs review Needs rebase! John Naylor (john.naylor) Chengpeng Yan (chengpeng.yan) 1 4 days ago
Bypassing cursors in postgres_fdw to enable parallel plans 6233 Needs review postgres_fdw Performance 19 1/10 +19064−201 Rafia Sabih (rafia.sabih) 1 1 week ago
Better Performance for PostgreSQL with large INSERTs 6266 Needs review Performance GUC 19 10/10 +24−14 Filip Januš (fjanus) 1 1 week ago
Add a greedy join search algorithm to handle large join problems 6274 Needs review 9/10 +0−0 Chengpeng Yan (chengpeng.yan) 1 19 hours ago
New grouping strategy - Index Aggregate 6299 Needs review Performance stable 8/10 +3580−535 Sergey Solovev (ashblade) 1 2 days ago
Expose checkpoint reason to completion log messages. 6306 Needs review Extensions 19 2/10 +17−5 Soumya S Murali (soumyamurali) 1 1 week ago
Expose checkpoint timestamp and duration in pg_stat_checkpointer 6307 Needs review Extensions 19 Needs rebase! Soumya S Murali (soumyamurali) 1 1 week ago
Procedural Languages
declarative session variables, LET command 1608 Needs review 9/10 +2951−38 Pavel Stehule (okbobcz) Fabien Coelho (calvin), Julien Rouhaud (rjuju), Gilles Darold (darold), Laurenz Albe (laurenz), Dmitry Dolgov (erthalion), Justin Pryzby (justinpryzby), Brian Faherty (scrummyin), Philippe BEAUDOIN (beaud76), Asif Rehman (asifrana), remi duval (remduv), Jim Jones (jimus), newtglobal postgresql_contributors (newtpostgrescontributors) 39 3 days ago
Refactoring
SendProcSignal(), SetLatch() → SendInterrupt() 5118 Needs review Needs rebase! Heikki Linnakangas (heikki), Thomas Munro (macdice) 4 4 months ago
Refactor SLRU to always use long file names 5250 Ready for Committer Needs rebase! Aleksander Alekseev (a.alekseev) Rustam ALLAKOV (rustam.allakov) 7 3 months ago
Don't dirty pages while they are getting flushed out 5483 Needs review 10/10 +2082−836 Andres Freund (andresfreund) 4 1 week ago
Beautify read stream "per buffer data" APIs 5617 Needs review 10/10 +90−16 Thomas Munro (macdice) 4 1 month ago
Make numeric type accessible to third-party code. 5623 Needs review stable 9/10 +290−285 Ed Behn (edbehn) Jelte Fennema-Nio (jeltef) 4 2 months ago
Refactor bytea_sortsupport(), take two 5889 Needs review 19 10/10 +239−41 Aleksander Alekseev (a.alekseev) John Naylor (john.naylor) 3 2 weeks ago
ternary reloption type 6021 Needs review 19 10/10 +314−130 Nikolay Shaplov (nataraj) Álvaro Herrera (alvherre) 3 2 months ago
Get rid of pgstat_count_backend_io_op*() functions 6025 Needs review Performance 19 10/10 +31−57 Bertrand Drouvot (bertranddrouvot.pg) 2 2 months ago
refactor CreateStatsStmt 6106 Needs review 19 Needs rebase! Jian He (stayreal) Álvaro Herrera (alvherre) 2 4 weeks ago
Little refactoring of portalcmds.c 6113 Needs review Refactoring Only 10/10 +16−24 Aleksander Alekseev (a.alekseev) 2 1 month ago
Implement pg_add_size_overflow() and friends 6235 Needs review Refactoring Only 19 9/10 +0−0 Jacob Champion (jchampion) 1 2 weeks ago
quoteOneName() inconsistency with quote_all_identifiers — replacement API proposed: appendStringInfoIdentifier 6240 Needs review Refactoring Only 19 Needs rebase! Chao Li (chaol) 1 3 weeks ago
Idea to enhance pgbench by more modes to generate data (multi-TXNs, UNNEST, COPY BINARY) 6245 Needs review Performance My First Patch 19 7/10 +598−33 Boris Mironov (bmironov) 1 2 weeks ago
Reorganize pqcomm.h a bit 6247 Needs review Refactoring Only 19 9/10 +0−0 Jacob Champion (jchampion) 1 2 weeks ago
Minor refactor of ExecScanExtended() 6255 Needs review Refactoring Only Good First Review 10/10 +6−9 ChangAo Chen (chenchangao) 1 1 month ago
Cleanup shadows variable warnings 6262 Needs review Refactoring Only 19 10/10 +658−667 Chao Li (chaol) 1 1 week ago
Remove unused function parameters, part 1: contrib 6263 Needs review 19 10/10 +50−80 Bertrand Drouvot (bertranddrouvot.pg) 1 1 week ago
Remove unused function parameters, part 2: replication 6264 Needs review 19 9/10 +44−44 Bertrand Drouvot (bertranddrouvot.pg) 1 1 week ago
<stdatomic.h> 6268 Needs review Needs rebase! Thomas Munro (macdice) 1 2 weeks ago
split tablecmds.c 6269 Waiting on Author 19 Needs rebase! Nathan Bossart (bossartn) 1 1 week ago
Safer hash table initialization macro 6276 Needs review 19 Needs rebase! Bertrand Drouvot (bertranddrouvot.pg) 1 3 days ago
refactor ExecInitPartitionInfo 6280 Needs review stable 9/10 +13−23 Jian He (stayreal) 1 2 weeks ago
Give StartReadBuffers() a more robust interface. 6297 Needs review AIO 19 9/10 +0−0 Thomas Munro (macdice) Xuneng Zhou (dylanzhou) 1 2 months ago
Mark function arguments of type "T *" as "const T *" where possible 6302 Needs review 19 10/10 +1322−1039 Bertrand Drouvot (bertranddrouvot.pg) 1 yesterday
refactor handling optional argument in system functions 6303 Needs review Refactoring Only 19 9/10 +56−159 Mark Wong (markwkm) 1 2 days ago
Fix and improve allocation formulas 6310 Needs review 19 10/10 +755−755 Bertrand Drouvot (bertranddrouvot.pg) 1 4 hours ago
Replication & Recovery
Return pg_control from pg_backup_stop(). 4997 Needs review 19 9/10 +178−28 David Steele (dsteele) 9 4 months ago
Enable logical decoding when wal_level = 'replica' without a server restart 5479 Needs review 2/10 +1573−145 Masahiko Sawada (masahikosawada) Dilip Kumar (dilip.kumar), Hayato Kuroda (ha-kun) 6 2 days ago
Support existing publications in pg_createsubscriber. 6028 Ready for Committer 19 9/10 +130−25 Shubham Khanna (skhanna) Euler Taveira (eulerto), Peter Smith (smithpb2250) 2 4 days ago
Optimize SnapBuildPurgeOlderTxn: use in-place compaction instead of temporary array 6141 Needs review Performance Logical Replication Refactoring Only 19 10/10 +222−72 Xuneng Zhou (dylanzhou) Kirill Reshke (reshke) 2 1 month ago
pg_recvlogical: Prevent flushed data from being re-sent after restarting replication 6147 Waiting on Author Logical Replication 8/10 +89−1 Fujii Masao (masaofujii) Mircea Cadariu (mcadariu) 2 2 weeks ago
Optimize SnapBuild by maintaining committed.xip in sorted order 6187 Needs review Performance Logical Replication 19 10/10 +85−24 Xuneng Zhou (dylanzhou) 2 1 month ago
Introduce a new GUC to allow logical walsender to shutdown immediately without waiting for a response from the client. 6234 Needs review Backport GUC Logical Replication 2/10 +235−0 Andrey Silitskiy (andrey-silitskiy) Fujii Masao (masaofujii) 1 2 weeks ago
Allow GUC settings in CREATE SUBSCRIPTION CONNECTION to take effect on publisher's walsender 6239 Needs review Logical Replication 2/10 +59−12 Fujii Masao (masaofujii) 1 1 week ago
Proposal: Conflict log history table for Logical Replication 6252 Needs review Logical Replication 19 2/10 +1381−128 Dilip Kumar (dilip.kumar) 1 3 hours ago
Add WALRCV_CONNECTING state to walreceiver 6311 Needs review Monitoring 19 10/10 +13−3 Xuneng Zhou (dylanzhou) 1 8 hours ago
Security
Extension security improvement: Add support for extensions with an owned schema 5018 Needs review Security Extensions 10/10 +517−130 Jelte Fennema-Nio (jeltef) Sadeq Dousti (msdousti), Artem Gavrilov (artem.gavrilov) 9 3 months ago
Server Features
Sequence Access Methods, round two 4677 Needs review Needs rebase! Michael Paquier (michael-kun) 11 4 weeks ago
using index to speedup add not null constraints to a table 5444 Needs review 18 Needs rebase! Jian He (stayreal) Tanzeel Khan (tanzeelk) Álvaro Herrera (alvherre) 5 1 month ago
refactor AlterDomainAddConstraint (alter domain add constraint) 5455 Waiting on Author 18 10/10 +101−6 Jian He (stayreal) Peter Eisentraut (petere) 4 9 months ago
Extended Statistics set/restore/clear functions 5517 Needs review 10/10 +3263−384 Corey Huinker (coreyh) Michael Paquier (michael-kun) Michael Paquier (michael-kun) 5 4 days ago
add function argument name to substring and substr 5524 Waiting on Author Needs rebase! Jian He (stayreal) David Johnston (polobo) 4 1 month ago
support fast default for domain with constraints 5641 Needs review Needs rebase! Jian He (stayreal) 4 3 months ago
support ALTER COLUMN SET EXPRESSION over virtual generated column with check constraint 5645 Needs review 10/10 +48−27 Jian He (stayreal) 4 5 months ago
support create index on virtual generated column. 5667 Needs review Needs rebase! Jian He (stayreal) 4 4 months ago
virtual generated column as partition key 5720 Needs review 19 2/10 +640−64 Jian He (stayreal) 4 3 weeks ago
finish TODOs in to_json_is_immutable, to_jsonb_is_immutable also add tests on it 5759 Needs review 19 9/10 +309−31 Jian He (stayreal) 4 1 month ago
ALTER DOMAIN ADD NOT NULL NOT VALID 5768 Needs review 19 9/10 +214−26 Jian He (stayreal) 4 2 months ago
make ALTER DOMAIN VALIDATE CONSTRAINT no-op when constraint is validated 5769 Needs review 19 10/10 +22−19 Jian He (stayreal) Peter Eisentraut (petere) 3 2 months ago
foreign key on virtual generated column 5782 Needs review 19 10/10 +315−93 Jian He (stayreal) Srinath Reddy (srinath-reddy-sadipiralla) 4 1 month ago
alter check constraint enforceability 5796 Waiting on Author 19 9/10 +477−66 Jian He (stayreal) Robert Treat (xzilla) 3 4 days ago
Support for 8-byte TOAST values (aka the TOAST infinite loop problem) 5830 Needs review 19 Needs rebase! Michael Paquier (michael-kun) Tom Lane (tgl), Nikhil Kumar Veldanda (nikhilkumarv) 4 3 days ago
no table rewrite when set column type to constrained domain 5907 Needs review 19 Needs rebase! Jian He (stayreal) 3 3 months ago
implement CAST(expr AS type FORMAT 'template') 5957 Needs review 19 10/10 +881−10 Jian He (stayreal) 3 4 months ago
Import Statistics in postgres_fdw before resorting to sampling. 5959 Needs review 19 10/10 +864−4 Corey Huinker (coreyh) 3 15 hours ago
ALTER COLUMN SET EXPRESSION [GENERATED|STORED] 6010 Needs review 19 Needs rebase! Jian He (stayreal) 3 1 month ago
NOT NULL NOT ENFORCED 6029 Needs review 19 10/10 +783−97 Jian He (stayreal) Álvaro Herrera (alvherre) 2 2 months ago
let ALTER COLUMN SET DATA TYPE cope with POLICY dependency 6054 Needs review 19 9/10 +546−55 Jian He (stayreal) 2 2 months ago
CREATE TABLE LIKE INCLUDING POLICIES 6064 Needs review 19 9/10 +475−46 Jian He (stayreal) 2 2 months ago
let ALTER COLUMN SET DATA TYPE cope with trigger dependency 6089 Needs review 19 10/10 +500−157 Jian He (stayreal) 2 2 months ago
Migrate pg_commit_ts directory to the new node during an upgrade 6119 Ready for Committer 19 Needs rebase! Sergey Levin (lsv) Hayato Kuroda (ha-kun), Maxim Orlov (m.orlov) 2 1 month ago
Alow ALTER COLUMN TYPE when dependent generated column has SET EXPRESSION 6146 Needs review 19 10/10 +130−21 Chao Li (chaol) 2 1 month ago
Add GoAway protocol message for graceful but fast server shutdown/switchover 6156 Needs review libpq 2/10 +262−19 Jelte Fennema-Nio (jeltef) 2 1 month ago
Add pg_get_role_ddl() functions for role recreation 6166 Needs review 10/10 +555−1 Mario Gonzalez (gonzalemario), Bryan Green (lispyone) 2 1 month ago
Add pretty formatting to pg_get_triggerdef 6203 Needs review 10/10 +139−43 Phil Alger (paalger) 1 1 month ago
Add pg_get_subscription_ddl() function 6208 Ready for Committer My First Patch 19 9/10 +458−0 Vaibhav Dalvi (vaibhavdalvi) 1 2 weeks ago
Move instrumentation structs 6210 Needs review Refactoring Only My First Patch 9/10 +219−189 Mario Gonzalez (gonzalemario) 1 1 month ago
pg_get_domain_ddl: DDL reconstruction function for CREATE DOMAIN statement 6212 Needs review Good First Review 19 9/10 +796−1 Florin Irion (irionr), Tim Waizenegger (tim.waizenegger.edb) 1 3 weeks ago
Add pg_get_database_ddl() function to reconstruct CREATE DATABASE statement 6215 Needs review 10/10 +392−0 Akshay Joshi (akshay.joshi) 1 23 hours ago
Give Plugins control at the end of CHECKPOINT to store their state 6224 Needs review Extensions 19 10/10 +215−0 Andrei Lepikhov (lepikhov), Asif Rehman (asifrana) 1 3 weeks ago
Adding callback support for custom statistics kinds 6228 Needs review 8/10 +523−21 Sami Imseih (simseih) 1 10 hours ago
IS JSON predicate support for domain base type as JSON/JSONB/BYTEA/TEXT 6237 Needs review 19 10/10 +356−9 Jian He (stayreal) 1 3 weeks ago
extend JSON_TABLE top level path expression 6260 Needs review 19 10/10 +238−105 Jian He (stayreal) 1 2 weeks ago
Add MODE parameter to WAIT FOR LSN command 6265 Needs review 19 10/10 +662−127 Xuneng Zhou (dylanzhou) 1 1 week ago
UPDATE run check constraints for affected columns only 6270 Needs review 19 10/10 +131−11 Jian He (stayreal) 1 1 week ago
Qual push down to table AM 6271 Needs review 10/10 +1932−170 Julien Tachoires (julmon) 1 2 days ago
PoC: Simplify recovery after dropping a table by LOGGING the restore LSN 6272 Needs review GUC My First Patch 19 0/10 +799−19 Dmitry Lebedev (dmitrylebedev) 1 1 week ago
domain for WITHOUT OVERLAPS 6281 Needs review 19 10/10 +250−8 Jian He (stayreal) 1 1 week ago
explain plans for foreign scans 6285 Needs review 19 10/10 +964−9 dinesh salve (dinesh-salve) 1 1 week ago
SQL-level pg_datum_image_equal 6309 Needs review 9/10 +59−0 Matthias van de Meent (mmeent) 1 yesterday
SQL Commands
Add SPLIT PARTITION/MERGE PARTITIONS commands 3659 Needs review 2/10 +8262−46 Dmitry Koval (d.koval) stephane tachoires (sttachoires) Alexander Korotkov (smagen) 17 yesterday
Add XMLCanonicalize function 4237 Ready for Committer 19 8/10 +436−0 Jim Jones (jimus) Pavel Stehule (okbobcz), Oliver Ford (ojford), newtglobal postgresql_contributors (newtpostgrescontributors) 14 4 months ago
Implement row pattern recognition feature 4460 Needs review 19 10/10 +4358−39 Tatsuo Ishii (ishii) Vik Fearing (xocolatl), Jacob Champion (jchampion), Ningwei Chen (chen-5033) 13 1 week ago
Make COPY format extendable: Extract COPY TO format implementations 4681 Needs review Needs rebase! Kouhei Sutou (kou) Masahiko Sawada (masahikosawada), Zhao Junwang (zhjwpku), Yong Li (yoli) 9 3 weeks ago
COPY TO json 4716 Needs review 10/10 +408−67 Joe Conway (jconway) Masahiko Sawada (masahikosawada) Joe Conway (jconway) 9 1 week ago
SQL Property Graph Queries (SQL/PGQ) 4904 Needs review 10/10 +14037−211 Peter Eisentraut (petere), Ashutosh Bapat (ashutoshbapat) Vik Fearing (xocolatl), Zhao Junwang (zhjwpku), Hannu Krosing (hannukrosing) 9 3 days ago
Add OR REPLACE option to CREATE MATERIALIZED VIEW 5099 Needs review 19 10/10 +694−98 Erik Wienhold (ewie) newtglobal postgresql_contributors (newtpostgrescontributors) 7 4 months ago
Add XMLCast (SQL/XML X025) 5110 Needs review 19 10/10 +2492−13 Jim Jones (jimus) Vik Fearing (xocolatl), newtglobal postgresql_contributors (newtpostgrescontributors) 9 1 week ago
SQL:2023 JSON simplified accessor support 5214 Ready for Committer 19 10/10 +1904−205 Alexandra Wang (alexandrawang) Peter Eisentraut (petere), Vik Fearing (xocolatl), Jelte Fennema-Nio (jeltef), Chao Li (chaol) 8 2 months ago
Add XMLSerialize: version (SQL/XML X076), explicit declaration (SQL/XML X078) 5279 Needs review 19 9/10 +1490−59 Jim Jones (jimus) newtglobal postgresql_contributors (newtpostgrescontributors) 7 1 month ago
Add XMLDocument (SQL/XML X030) 5431 Ready for Committer 19 10/10 +258−1 Jim Jones (jimus) Pavel Stehule (okbobcz), newtglobal postgresql_contributors (newtpostgrescontributors) 6 4 months ago
Add XMLNamespaces option to XMLElement 5456 Ready for Committer 19 9/10 +1206−39 Pavel Stehule (okbobcz), Jim Jones (jimus) Pavel Stehule (okbobcz), Umar Hayat (pgwizard), newtglobal postgresql_contributors (newtpostgrescontributors) 6 4 months ago
CAST(... ON DEFAULT) - WIP build on top of Error-Safe User Functions 5941 Needs review 19 Needs rebase! Jian He (stayreal) Peter Eisentraut (petere) 3 yesterday
CREATE SCHEMA ... CREATE DOMAIN support 5985 Needs review 19 Needs rebase! Jian He (stayreal) 3 3 months ago
CREATE TABLE LIKE INCLUDING TRIGGERS 6087 Needs review 19 7/10 +628−144 Jian He (stayreal) 2 2 months ago
create table like including storage parameter 6088 Needs review 19 10/10 +199−2 Jian He (stayreal) Nathan Bossart (bossartn) 2 1 month ago
ON CONFLICT DO SELECT 6109 Needs review 19 10/10 +1786−296 Viktor Holmberg (rutchkiwi) Dean Rasheed (deanr) 2 1 week ago
COPY FROM with RLS 6178 Needs review 19 10/10 +238−14 Jian He (stayreal) 2 1 month ago
ago(interval) → timestamptz 6202 Needs review 19 10/10 +25−0 Florents Tselai (florentst) 1 1 month ago
implement GRANT/REVOKE ... GRANTED BY 6218 Needs review 19 10/10 +68−28 Nathan Bossart (bossartn) 1 4 weeks ago
Add support for partial incremental matview refresh using REFRESH ... WHERE 6305 Needs review My First Patch 19 10/10 +1477−74 Adam Brusselback (tostino) 1 2 days ago
System Administration
log_min_messages per backend type 5447 Waiting on Author GUC 19 10/10 +383−56 Euler Taveira (eulerto) 6 yesterday
Include extension path on pg_available_extensions 6067 Needs review Extensions 9/10 +145−39 Matheus Alcantara (matheus.alcantara) Rohit Prasad (rohitprasad) 2 4 weeks ago
Testing
CI: Add task that runs pgindent 6148 Needs review CI 10/11 +40−2 Jelte Fennema-Nio (jeltef) 2 1 month ago
Fix fragile walreceiver test. 6206 Needs review Bugfix 19 Needs rebase! Bryan Green (lispyone) 1 1 month ago
Let's add a test for NLS translation of PRI* macros 6300 Needs review 10/10 +308−1 Tom Lane (tgl) 1 2 days ago

Closed patches

Patch ID Status Tags Ver CI status Stats Author Reviewers Committer Num cfs Latest mail
Bug Fixes
Issues with ON CONFLICT UPDATE and REINDEX CONCURRENTLY 5160 Committed Bugfix stable Needs rebase! Michail Nikolaev (nkey), Mihail Nikalayeu (mihailnikalayeu) Álvaro Herrera (alvherre) 7 13 hours ago
bt_index_parent_check false alarm for indexes created concurrently 5438 Committed Bugfix Backport 10/10 +70−40 Michail Nikolaev (nkey), Mihail Nikalayeu (mihailnikalayeu) Andrey Borodin (x4m) Álvaro Herrera (alvherre) 6 5 days ago
Fix LTREE subpath with negative offset 6199 Moved to different CF Needs rebase! Marcus Gartner (mgartner) Tom Lane (tgl) 2 1 month ago
fix corner cases involving failed DSM registry entry initialization and leaked LWLock tranches 6211 Moved to different CF stable 10/10 +49−12 Nathan Bossart (bossartn) Nathan Bossart (bossartn) 2 4 weeks ago
transformJsonFuncExpr pathspec cache lookup failed 6232 Moved to different CF Bugfix Backport stable Needs rebase! Jian He (stayreal) Amit Langote (amitlan) 2 2 weeks ago
Rewrites CTEs only once to prevent a spurious error 6254 Committed My First Patch Bugfix Needs rebase! Bernice Southey (fyrefreez) Dean Rasheed (deanr) 1 1 week ago
Fix PrivateRefCount hash table key size 6273 Committed stable 10/10 +1−1 Bertrand Drouvot (bertranddrouvot.pg) Nathan Bossart (bossartn) Nathan Bossart (bossartn) 1 1 week ago
Improve robustness of CORR() and related aggregates 6278 Committed 10/10 +247−66 Tom Lane (tgl) Tom Lane (tgl) 1 5 days ago
Clients
Centralize exit() checks for libpq into a shared Perl script used by both Makefile and Meson; unify platform handling and use nm detected at configure time 6296 Committed Missing Tests PL/Perl libpq My First Patch 19 10/10 +2−1 Vasu M (vasu01) Michael Paquier (michael-kun) 1 2 days ago
Code Comments
remove obsolete autovacuum comment 6213 Moved to different CF 19 9/10 +0−5 Nathan Bossart (bossartn) Nathan Bossart (bossartn) 2 4 weeks ago
Fix text in comment of copyto.c 6290 Committed Comments Only 19 Not processed Tatsuya Kawata (croissant) Michael Paquier (michael-kun) 1 1 month ago
Documentation
fix documentation for insert vacuum formula 6236 Moved to different CF 18 2/10 +7−3 Nathan Bossart (bossartn) Nathan Bossart (bossartn) 2 3 weeks ago
Miscellaneous
postgresql.conf.sample tab width 6223 Moved to different CF stable Needs rebase! Nathan Bossart (bossartn) Nathan Bossart (bossartn) 2 3 weeks ago
gen_guc_tables.pl: Validate required GUC fields before code generation 6226 Moved to different CF 19 10/10 +46−0 Chao Li (chaol) Mahmoud Ayman (mahmoudayman) Peter Eisentraut (petere) 2 2 weeks ago
vacuumdb: add --dry-run 6230 Committed 19 10/10 +89−47 Corey Huinker (coreyh) Nathan Bossart (bossartn) Nathan Bossart (bossartn) 1 3 days ago
better handle errors in dsm registry functions 6250 Moved to different CF stable 10/10 +78−69 Nathan Bossart (bossartn) Nathan Bossart (bossartn) 2 2 weeks ago
show size of DSAs and dshash tables in pg_dsm_registry_allocations 6257 Committed 19 10/10 +53−25 Nathan Bossart (bossartn) Nathan Bossart (bossartn) 1 1 week ago
use LW_SHARED in dsa_get_total_size() 6275 Committed 19 10/10 +2−2 Nathan Bossart (bossartn) Nathan Bossart (bossartn) 1 1 week ago
More const-marking cleanup 6284 Committed 10/10 +255−136 Tom Lane (tgl) Tom Lane (tgl) 1 6 days ago
Select PG_PRINTF_ATTRIBUTE separately for C and C++ 6293 Committed 10/10 +169−12 Tom Lane (tgl) Tom Lane (tgl) 1 5 days ago
Fix a minor typo in the comment of read_stream_start_pending 6294 Committed AIO 19 10/10 +1−1 Xuneng Zhou (dylanzhou) Heikki Linnakangas (heikki) 1 2 days ago
Monitoring & Control
Add mode and reason columns to pg_stat_progress_vacuum 5969 Committed Monitoring 19 10/10 +179−10 Shinya Kato (shinyakato) Nathan Bossart (bossartn), Sami Imseih (simseih) Masahiko Sawada (masahikosawada) 3 2 days ago
Performance
Returning nbtree posting list TIDs in DESC order during backwards scans 5824 Committed 10/10 +53−41 Peter Geoghegan (pgeoghegan) Mircea Cadariu (mcadariu) Peter Geoghegan (pgeoghegan) 2 yesterday
Making jsonb_agg() faster 5930 Committed Needs rebase! Tom Lane (tgl) Tom Lane (tgl) 3 5 days ago
Refactoring
Removing BTScanPosUnpinIfPinned idiom from nbtree, simplifying mark/restore support 5816 Withdrawn 10/10 +133−78 Peter Geoghegan (pgeoghegan) 2 6 months ago
minor refactor on src/test/modules/test_ddl_deparse/sql/alter_table.sql 6001 Committed 19 10/10 +36−32 Jian He (stayreal) Heikki Linnakangas (heikki) 3 3 months ago
Instead of dynamically allocating a StringInfo instance and then throwing it away or destroying it at the end of the function, use a stack-allocated StringInfoData. 6200 Moved to different CF Refactoring Only stable 10/10 +344−124 Mats Kindahl (mkindahl) David Rowley (davidrowley) 2 1 month ago
backend/nodes cleanup: Move loop variables definitions into for statement 6227 Moved to different CF Refactoring Only 19 10/10 +20−35 Chao Li (chaol) Peter Eisentraut (petere) 2 2 weeks ago
Remove useless casts to (void *) 6241 Moved to different CF 19 9/10 +0−0 Bertrand Drouvot (bertranddrouvot.pg) Peter Eisentraut (petere) 2 2 weeks ago
Remove useless casting to the same type 6249 Committed 19 10/10 +80−80 Bertrand Drouvot (bertranddrouvot.pg) Nathan Bossart (bossartn) Peter Eisentraut (petere) 1 1 week ago
Remove unused struct fields 6256 Moved to different CF 19 10/10 +2−6 Bertrand Drouvot (bertranddrouvot.pg) Nathan Bossart (bossartn) 2 2 weeks ago
Use func(void) for functions with no parameters 6277 Committed 19 10/10 +11−11 Bertrand Drouvot (bertranddrouvot.pg) Nathan Bossart (bossartn) 1 1 week ago
Moving _bt_readpage and _bt_checkkeys into a new .c file 6286 Committed 19 10/10 +3813−3777 Peter Geoghegan (pgeoghegan) Peter Geoghegan (pgeoghegan) 1 3 days ago
Replication & Recovery
Add stats related to slot sync skip 6082 Committed Needs rebase! Shlok Kyal (shlokkyal) Amit Kapila (amitkapila) 2 1 week ago
Add support for COPY TO in tablesync for partitioned tables. 6214 Moved to different CF Logical Replication 19 10/10 +3−2 Ajin Cherian (ajinc) Masahiko Sawada (masahikosawada) 2 3 weeks ago
New patch