mirror of
https://github.com/postgres/postgres.git
synced 2026-02-17 01:31:07 -05:00
Multiple calls to XMLTABLE in a query (e.g. laterally applying it to a table with an xml column, an important use-case) were leaking large amounts of memory into the per-query context, blowing up memory usage. Repair by reorganizing memory context usage in nodeTableFuncscan; use the usual per-tuple context for row-by-row evaluations instead of perValueCxt, and use the explicitly created context -- renamed from perValueCxt to perTableCxt -- for arguments and state for each individual table-generation operation. Backpatch to PG10 where this code was introduced. Original report by IRC user begriffs; analysis and patch by me. Reviewed by Tom Lane and Pavel Stehule. Discussion: https://postgr.es/m/153394403528.10284.7530399040974170549@wrigleys.postgresql.org |
||
|---|---|---|
| .. | ||
| bitmapset.h | ||
| execnodes.h | ||
| extensible.h | ||
| lockoptions.h | ||
| makefuncs.h | ||
| memnodes.h | ||
| nodeFuncs.h | ||
| nodes.h | ||
| params.h | ||
| parsenodes.h | ||
| pg_list.h | ||
| plannodes.h | ||
| primnodes.h | ||
| print.h | ||
| readfuncs.h | ||
| relation.h | ||
| replnodes.h | ||
| tidbitmap.h | ||
| value.h | ||