postgresql/src/include
Andres Freund 810344436d Fix leaking of small spilled subtransactions during logical decoding.
When, during logical decoding, a transaction gets too big, it's
contents get spilled to disk. Not just the top-transaction gets
spilled, but *also* all of its subtransactions, even if they're not
that large themselves.  Unfortunately we didn't clean up
such small spilled subtransactions from disk.

Fix that, by keeping better track of whether a transaction has been
spilled to disk.

Author: Andres Freund
Reported-By: Dmitriy Sarafannikov, Fabrízio de Royes Mello
Discussion:
    https://postgr.es/m/1457621358.355011041@f382.i.mail.ru
    https://postgr.es/m/CAFcNs+qNMhNYii4nxpO6gqsndiyxNDYV0S=JNq0v_sEE+9PHXg@mail.gmail.com
Backpatch: 9.4-, where logical decoding was introduced
2017-06-18 19:13:15 -07:00
..
access Don't use bgw_main even to specify in-core bgworker entrypoints. 2017-03-31 20:47:50 -04:00
bootstrap Update copyright for 2016 2016-01-02 13:33:40 -05:00
catalog Further patch rangetypes_selfuncs.c's statistics slot management. 2017-05-08 15:02:57 -04:00
commands Final pgindent + perltidy run for 9.6. 2016-08-15 13:42:51 -04:00
common Fix integer-overflow problems in interval comparison. 2017-04-05 23:51:28 -04:00
datatype Be more careful about out-of-range dates and timestamps. 2016-03-16 19:09:28 -04:00
executor Avoid passing function pointers across process boundaries. 2017-04-15 16:23:27 -04:00
fe_utils Fix assorted places in psql to print version numbers >= 10 in new style. 2016-08-16 15:58:46 -04:00
foreign Remove GetUserMappingId() and GetUserMappingById(). 2016-07-22 11:32:23 -04:00
lib Revert "Permit dump/reload of not-too-large >1GB tuples" 2016-12-06 12:46:03 -03:00
libpq Give nicer error message when connecting to a v10 server requiring SCRAM. 2017-05-05 11:24:02 +03:00
mb Update copyright for 2016 2016-01-02 13:33:40 -05:00
nodes Improve castNode notation by introducing list-extraction-specific variants. 2017-04-10 13:51:29 -04:00
optimizer Avoid making a separate pass over the query to check for partializability. 2016-06-26 15:55:01 -04:00
parser Fix type-safety problem with parallel aggregate serial/deserialization. 2016-06-22 16:52:41 -04:00
port Fix unportable definition of BSWAP64() macro. 2017-02-24 15:21:39 -05:00
portability Update copyright for 2016 2016-01-02 13:33:40 -05:00
postmaster Avoid using PostmasterRandom() for DSM control segment ID. 2016-09-23 09:54:11 -04:00
regex Suppress compiler warnings about useless comparison of unsigned to zero. 2016-02-15 17:12:16 -05:00
replication Fix leaking of small spilled subtransactions during logical decoding. 2017-06-18 19:13:15 -07:00
rewrite Update copyright for 2016 2016-01-02 13:33:40 -05:00
snowball Update copyright for 2016 2016-01-02 13:33:40 -05:00
storage Prevent possibility of panics during shutdown checkpoint. 2017-06-05 19:18:16 -07:00
tcop Remove dead code and fix comments in fast-path function handling. 2017-04-06 09:11:11 +03:00
tsearch Fix typos in comments. 2017-02-06 11:34:15 +02:00
utils Avoid searching for callback functions in CallSyscacheCallbacks(). 2017-05-12 19:05:28 -04:00
.gitignore Autoconfiscate selection of 64-bit int type for 64-bit large object API. 2012-10-07 21:52:43 -04:00
c.h Fix typos in comments. 2017-02-06 11:34:15 +02:00
fmgr.h Revert addition of PGDLLEXPORT in PG_FUNCTION_INFO_V1 macro. 2016-10-12 18:01:52 -04:00
funcapi.h Widen query numbers-of-tuples-processed counters to uint64. 2016-03-12 16:05:29 -05:00
getaddrinfo.h Update copyright for 2016 2016-01-02 13:33:40 -05:00
getopt_long.h Update copyright for 2016 2016-01-02 13:33:40 -05:00
Makefile Create src/fe_utils/, and move stuff into there from pg_dump's dumputils. 2016-03-24 15:55:57 -04:00
miscadmin.h Unify SIGHUP handling between normal and walsender backends. 2017-06-05 19:18:16 -07:00
pg_config.h.in Revert "Use pselect(2) not select(2), if available, to wait in postmaster's loop." 2017-04-24 18:29:55 -04:00
pg_config.h.win32 Stamp 9.6.3. 2017-05-08 17:15:12 -04:00
pg_config_ext.h.in Autoconfiscate selection of 64-bit int type for 64-bit large object API. 2012-10-07 21:52:43 -04:00
pg_config_ext.h.win32 Autoconfiscate selection of 64-bit int type for 64-bit large object API. 2012-10-07 21:52:43 -04:00
pg_config_manual.h Bring some clarity to the defaults for the xxx_flush_after parameters. 2016-11-25 18:36:10 -05:00
pg_getopt.h Update copyright for 2016 2016-01-02 13:33:40 -05:00
pg_trace.h Update copyright for 2016 2016-01-02 13:33:40 -05:00
pgstat.h Fix typos in comments. 2016-10-26 11:13:17 +03:00
pgtar.h Update copyright for 2016 2016-01-02 13:33:40 -05:00
pgtime.h Update copyright for 2016 2016-01-02 13:33:40 -05:00
port.h Run the postmaster's signal handlers without SA_RESTART. 2017-04-24 13:00:23 -04:00
postgres.h Adjust DatumGetBool macro, this time for sure. 2016-04-28 11:50:58 -04:00
postgres_ext.h Add a nonlocalized version of the severity field to client error messages. 2016-08-26 16:20:24 -04:00
postgres_fe.h Update copyright for 2016 2016-01-02 13:33:40 -05:00
rusagestub.h Update copyright for 2016 2016-01-02 13:33:40 -05:00
windowapi.h Update copyright for 2016 2016-01-02 13:33:40 -05:00