postgresql/src/backend
Robert Haas dc47beacaa get_memoize_path: Don't exit quickly when PGS_NESTLOOP_PLAIN is unset.
This function exits early in the case where the number of inner rows
is estimated to be less than 2, on the theory that in that case a
Nested Loop with inner Memoize must lose to a plain Nested Loop.
But since commit 4020b370f2 it's
possible for a plain Nested Loop to be disabled, while a Nested Loop
with inner Memoize is still enabled. In that case, this reasoning
is not valid, so adjust the code not to exit early in that case.

This issue was revealed by a test_plan_advice failure on buildfarm
member skink, where NESTED_LOOP_MEMOIZE() couldn't be enforced on
replanning due to this early exit.

Discussion: http://postgr.es/m/CA+TgmoZUN8FT1Ah=m6Uis5bHa4FUa+_hMDWtcABG17toEfpiUg@mail.gmail.com
2026-03-24 16:17:26 -04:00
..
access Keep newest live XID up-to-date even if page not all-visible 2026-03-24 15:37:18 -04:00
archive Don't include wait_event.h in pgstat.h 2026-03-06 16:24:58 +01:00
backup Add missing deflateEnd() for server-side gzip base backups 2026-03-23 09:04:44 +09:00
bootstrap Reduce header inclusions via execnodes.h 2026-03-16 14:34:57 +01:00
catalog Don't include storage/lock.h in so many headers 2026-03-24 17:11:12 +01:00
commands Don't include storage/lock.h in so many headers 2026-03-24 17:11:12 +01:00
executor Make many cast functions error safe 2026-03-24 12:08:22 +01:00
foreign Reduce header inclusions via execnodes.h 2026-03-16 14:34:57 +01:00
jit Reduce header inclusions via execnodes.h 2026-03-16 14:34:57 +01:00
lib dshash: Make it possible to suppress out of memory errors 2026-03-19 11:51:17 -04:00
libpq ssl: Serverside SNI support for libpq 2026-03-18 12:37:11 +01:00
main Update copyright for 2026 2026-01-01 13:24:10 -05:00
nodes Allow IS JSON predicate to work with domain types 2026-03-17 15:20:22 -04:00
optimizer get_memoize_path: Don't exit quickly when PGS_NESTLOOP_PLAIN is unset. 2026-03-24 16:17:26 -04:00
parser Don't include storage/lock.h in so many headers 2026-03-24 17:11:12 +01:00
partitioning Add some const qualifiers enabled by typeof_unqual change on copyObject 2026-03-19 06:35:54 +01:00
po Update copyright for 2026 2026-01-01 13:24:10 -05:00
port Restore AIX support. 2026-02-23 13:34:22 -05:00
postmaster Report detailed errors from XLogFindNextRecord() failures. 2026-03-24 22:33:09 +09:00
regex Use fallthrough attribute instead of comment 2026-02-19 08:51:12 +01:00
replication Don't include storage/lock.h in so many headers 2026-03-24 17:11:12 +01:00
rewrite Further improve commentary about ChangeVarNodesWalkExpression() 2026-03-24 09:54:00 +02:00
snowball Fix meson build of snowball code. 2026-01-05 16:51:36 -05:00
statistics Fix inconsistency with HeapTuple freeing in extended_stats_funcs.c 2026-03-06 14:49:00 +09:00
storage Use GlobalVisState in vacuum to determine page level visibility 2026-03-24 14:50:59 -04:00
tcop Reduce header inclusions via execnodes.h 2026-03-16 14:34:57 +01:00
tsearch Require superuser to install a non-built-in selectivity estimator. 2026-02-09 10:07:31 -05:00
utils Don't include storage/lock.h in so many headers 2026-03-24 17:11:12 +01:00
.gitignore
common.mk Blind attempt to fix LLVM dependency in the backend 2022-09-15 10:53:48 +07:00
Makefile ssl: Serverside SNI support for libpq 2026-03-18 12:37:11 +01:00
meson.build Add backtrace support for Windows using DbgHelp API 2026-02-24 17:34:56 +01:00
nls.mk Create a separate file listing backend types 2025-09-26 15:21:49 +02:00