PostgreSQL 15 Open Items

== Open Issues ==
NOTE: Please place new open items at the end of the list.
== Decisions to Recheck Mid-Beta ==
== Older bugs affecting stable branches ==
=== Live issues ===
* RecoveryConflictInterrupt() is unsafe in a signal handler
** This seems to explain buildfarm failures in 031_recovery_conflict.pl
** Affects all stable branches.
* REINDEX on a system catalog can leave index with two index tuples whose heap TIDs match
** In other words, there is a rare case where the HOT invariant is violated. Same HOT chain is indexed twice due to confusion about which precise heap tuple should be indexed.
** Unclear what the user impact is.
** Affects all stable branches.
* memory leak with JIT inlining
** Another report of (same?) issue and reproducer
** Another report
** Another report
* Non-replayable WAL records through overflows and >MaxAllocSize lengths
** In other words; we can write xlog records that we can't read (plus potentially actual WAL corruption); making the instance unrecoverable, and blocks any replication.
** Exploitation seems limited to WAL records of 2PC and logical replication, and extension-generated WAL.
** Affects all stable branches.
* TOAST fetches could perhaps occur after the needed data has been removed
** The symptom originally reported in the thread was fixed by , but nobody is very happy with the status quo in this area. Do we need to do more now?
** Affects all stable branches.
=== Fixed issues ===
* CLUSTER sort on abbreviated expressions is broken
** Affects all stable branches.
** Fixed by: 
* Records missing from Primary Key index when doing REINDEX INDEX CONCURRENTLY
** Affects v14
** Fixed by: 
* -c min_dynamic_shared_memory now triggers an assertion
** Affects v14
** Fixed by: 
* Extension pg_trgm, permissions and pg_dump order
** Affects all stable branches.
** Fixed by 
== Non-bugs ==
== Resolved Issues ==
=== resolved before 15.0 ===
* pgstat: START_REPLICATION SLOT assertion failure
** Owner: Andres Freund
** Fixed by: 
=== resolved before 15rc2 ===
* Memory leak in single-column sorts
** Fixed by: 
* PQsslAttribute not behaving as documented
** Fixed by: 
* GROUP BY optimization patch is too broken to ship
** Owner: Tomas Vondra (db0d67db2)
** Fixed by: 
* psql \g misbehaves with multiple commands
** Fixed by: 
=== resolved before 15rc1 ===
* recovery fails with recovery_prefetch=on and maintenance_io_concurency=0
** Fixed by: 
* FailedAssertion("TransactionIdIsValid(xmax)
** Fixed by: 
* pg_publication_tables view is busted
** Fixed by: 
* replaying wal_compression=lz4/zstd on a server which doesn't support it exposes an elog() which includes no information about the failure
** Owner: Michael Paquier (4035cd5)
** Fixed by: 
* syntax error in MERGE docs
** Fixed by: 
* pg_upgrade generated files in subdir follow-up
** Fixed by: 
* pg_basebackup's --gzip switch misbehaves
** Fixed by: 
* Assertion failure in WaitForWALToBecomeAvailable state machine
** Fixed by: 
* Possible to create database with incompatible ICU and encoding settings
** Peter Eisentraut (f2553d43060edb210b36c63187d52a632448e1d2)
** Fixed by: 
* startup process says "recovering NNN" after it's done recovering NNN
** Fixed by: 
* why can't a table be part of the same publication as its schema
** Owner: Amit Kapila
** Fixed by: 
=== resolved before 15beta4 ===
* MERGE fails if inside a CTE
** Fixed by: 
* Materialized view rewrite is broken when there is an event trigger
** Owner: Michael Paquier (b0483263dda0824cc49e3f8a022dab07e1cdf9a7)
** Fixed by: 
* CREATE DATABASE STRATEGY WAL_LOG crash and memory corruption
** Owner: Robert Haas (9c08aea6a3090a396be334cc58c511edab05776a)
* crash in parallel vacuum
** Fixed by: 
* Crash in ICU for global collation
** Peter Eisentraut (f2553d43060edb210b36c63187d52a632448e1d2)
** One issue has been fixed in 36f729e2bc3539e777cda698dc441b8ccec42142 but we still have a problem with pg_collation.colliculocale not getting dumped
** Fixed by: 
* PANIC during standby promotion
** Fixed by: 
* GROUP BY optimization defeated partitionwise tests
** Possibly-related complaint here
** Owner: Tomas Vondra (db0d67db2)
** Fixed by: 
=== resolved before 15beta3 ===
* tuplesort Generation memory contexts don't play nicely with index builds
** Owner: David Rowley
** Fixed by: 
* Repeatability of installcheck for test_oat_hooks
** Owner: Andrew Dunstan
** Fixed by: 
* Revert debugging added due to 019_replslot_limit
** Owner: Andres Freund
** Reverted: 
* PG15 beta1 sort performance regression due to Generation context change
** Owner: David Rowley
* pg_parameter_aclcheck() and trusted extensions
** Owner: Tom Lane (a0ffa885e478f5eeacc4e250e35ce25a4740c487)
** Fixed by: 
* Unprivileged user can induce crash by using an SUSET param in PGOPTIONS
** Owner: Tom Lane (a0ffa885e478f5eeacc4e250e35ce25a4740c487)
** Fixed by: 
* wrong filename used in pg_ident_file_mapping infrastructure
** Owner: Michael Paquier (a2c84990bea7beadb599d02328190e2a763dcb86)
** Fixed by: 
* Endless loop with UNIQUE NULLS NOT DISTINCT and INSERT ... ON CONFLICT
** Owner: Peter Eisentraut (94aa7cc5f707712f592885995a28e018c7c80488)
** Fixed by: 
* XX000 error caused by window function run conditions
** Owner: David Rowley
** Fixed by: 
* large objects lost on upgrade
** Owner: Robert Haas (9a974cbcba005256a19991203583a94b4f9a21a9)
** Fixed by: 
=== resolved before 15beta2 ===
* pgbench --partitions=0
** Owner; Michael Paquier (6f164e6d17616a157ea5d9e34dbb1b211c080c41)
** Fixed by: 
* psql now shows zero elapsed time after an error
** Owner: Peter Eisentraut
** Fixed by: 
* Regression in 15beta1 when filtering subquery including row_number window function
** Owner: David Rowley (9d9c02ccd1aea8e9131d8f4edb21bf1687e40782)
** Fixed by: 
* Safety of subtrans ID caching
** Owner: Michael Paquier (06f5295af673df795e8e70e28c43d61c2817b6df)
** Fixed by: 
* pg_upgrade test writes to source directory
** Owner: Michael Paquier (322becb6085cb92d3708635eea61b45776bf27b6)
** Fixed by: 
* pg_upgrade is not idempotent, even with --check
** Owner: Michael Paquier (38bfae36526636ef55daf7cf2a3282403587cb5b)
** Fixed by: 
* bogus: logical replication rows/cols combinations
** Owner: Amit Kapila
** Fixed by: 
* Ignoring BRIN for HOT udpates seems broken
** Owner: Tomas Vondra (5753d4ee320b)
** Fixed by: 
* psql no longer reports NOTICE messages promptly
** Owner: Peter Eisentraut (7844c9918)
** Fixed by: 
* amcheck is using a wrong macro to check compressed-ness
** Owner: Robert Haas (bd807be6935929bdefe74d1258ca08048f0aafa3)
** Fixed by: 
* COPY WITH (HEADER MATCH) broken with custom attribute list
** Owner: Peter Eisentraut (072132f04e55c1c3b0f1a582318da78de7334379)
** Fixed by: 
* PG15 beta1 fix pg_stats_ext/pg_stats_ext_exprs view manual
** Tomas Vondra
** Fixed by: 
* Incorrect version check for datlocprovider in pg_upgrade
** Owner: Peter Eisentraut (f2553d43060edb210b36c63187d52a632448e1d2)
** Fixed by: 
* Failure in TAP tests for IP address support in SANs with LibreSSL
** Owner: Peter Eisentraut (c1932e542863f0f646f005b3492452acc57c7e66)
** Fixed by: 
=== resolved before 15beta1 ===
* libpq: duplicate error message after connection loss
** Fixed by: 
* MERGE: ERROR: variable not found in subplan target lists
** Fixed by: 
* Buildfarm warnings
** pg_basebackup.c:1261:35: warning: storing the address of local variable archive_filename in progress_filename [-Wdangling-pointer=]
** new in 23a1c6578 - looks like a real error @Robert Haas
** Fixed at: 
* pg_basebackup serverside compression broken with stdout and manifests
** Fixed at: 
* pg_basebackup: bbstreamer_lz4.c:172: bbstreamer_lz4_compressor_content: Assertion `mystreamer->base.bbs_buffer.maxlen >= out_bound' failed. 
** basebackup LZ4 to stdout
** Owner: Robert Haas (dab298471ff2f91f33bc25bfb73e435d3ab02148)
** Fixed at: 
* Incorrect reset timestamp in stats after crash recovery
** Owner: Andres Freund (5891c7a8ed8f2d3d577e7eea34dacff12d7b6bbd)
** Fixed at: 
* Fixes for compression options of pg_receivewal and refactoring of backup_compression.{c,h}
** Owner: Michael Paquier (babbbb595d2322da095a1e6703171b3f1f2815cb)
** Fixed at: 
* Remove compatibility from pg_basebackup?
** Fixed at: 
* Timing-dependent failure in 002_archiving.pl
** Owner: Michael Paquier (46dea2419ee7895a4eb3d048317682e6f18a17e1)
** Fixed at: , 
* qsort performance regression
** Owner: John Naylor (6974924347c908335607a4a2f252213d58e21b7c)
** Fixed at: 
* Small issues with CLUSTER on partitioned tables
** Owner: Alvaro Herrera (cfdd03f45e6afc632fbe70519250ec19167d6765)
** Fixed at: , 
* asynchronous execution crash in trivial_subqueryscan()
** Owner: Etsuro Fujita (c2bb02bc2e858ba345b8b33f1f3a54628f719d93)
** Fixed at: 
* Corruption due to relfilenode reuse
** pg_upgrade can corrupt data with the new OIDs preservation feature
*** Fixed at: 
** the ProcSignalBarrier solution this builds on also turns out to have a small race/hole
*** Fixed at: 
** Owner: Thomas Munro, Robert Haas
* Some issues with the TAP tests of pg_upgrade
** Owner: Michael Paquier
** Fixed at: 
* Crash in _outPathTarget
** Owner: Peter Eisentraut
** Fixed at: 
* Instability of regression test of pg_walinspect
** Owner: Jeff Davis
** Fixed at: 
* crash with JSON constructors and window functions
** Owner: Andrew Dunstan (f4fb45d15c59d7add2e1b81a9d477d0119a9691a)
** Fixed at: , 
* 013_partition.pl failing
** Fixed at: 
* Avoid garbage logs with postgres -C on runtime-computed GUCs
** Fixed at: 
** Owner: Michael Paquier
* Some issues with mark_pgdllimport.pl
** Fixed at: 
** Owner: Robert Haas
* Crash in new pgstats code
** Initially reported issue was fixed by , but there may be more to do here.
** Owner: Andres Freund
* TRAP: FailedAssertion("tabstat->trans == trans", File: "pgstat_relation.c", Line: 508
** Fixed at: 
** Owner: Andres Freund
* limitations of GetMaxBackends()
** Fixed at: , , 
** Owner: Robert Haas (aa64f23b02924724eafbd9eadbf26d85df30a12b, and 4567596316d186c6e61c72df013797266fcac2f7)
== Won't Fix ==
* InvokeNamespaceSearchHook calls need to be moved
** Re: New Object Access Type hooks
** Problem showed by 90efa2f5565d28054c30c18f6a2f17f94fdff91e.
* Reduce amount of logs generated by TAP tests of pg_upgrade?
** Owner: Michael Paquier
** Other thread: here
** The problem is wider than just the upgrade tests, as all the runs of pg_regress would be impacted. We may want a more centralized solution for this older problem.
* Assertion failure on PG15 with modified test_shm_mq test
** Owner: Andres Freund
** on the thread, andres says that doesn't seem realistic to fix this, extensions will need to work around it
* PG 15 (and to a smaller degree 14) regression due to ExprEvalStep size
** Owner: Andrew Dunstan
** Feature reverted. Fixes will be made in a future release.
== Important Dates ==
Current schedule:
* Feature Freeze: April 7, 2022 (Last Day to Commit Features)
* Beta 1: May 19, 2022
* Beta 2: June 30, 2022
* Beta 3: August 11, 2022
* Beta 4: September 8, 2022
* RC 1: September 29, 2022
* RC 2: October 6, 2022
* GA: October 13, 2022
== See also ==
* Release Management Team
Category:Open_Items