postgresql/src
Andres Freund b2f6f749c7 Fix logical decoding bug leading to inefficient reopening of files.
When spilling transaction data to disk a simple typo caused the output
file to be closed and reopened for every serialized change. That happens
to not have a huge impact on linux, which is why it probably wasn't
noticed so far, but on windows that appears to trigger actual disk
writes after every change. Not fun.

The bug fortunately does not have any impact besides speed. A change
could end up being in the wrong segment (last instead of next), but
since we read all files to the end, that's just ugly, not really
problematic. It's not a problem to upgrade, since transaction spill
files do not persist across restarts.

Bug: #13484
Reported-By: Olivier Gosseaume
Discussion: 20150703090217.1190.63940@wrigleys.postgresql.org

Backpatch to 9.4, where logical decoding was added.
2015-07-07 13:12:46 +02:00
..
backend Fix logical decoding bug leading to inefficient reopening of files. 2015-07-07 13:12:46 +02:00
bin Fix pg_recvlogical not to fsync output when it's a tty or pipe. 2015-07-07 12:54:11 +02:00
common pgindent run for 9.5 2015-05-23 21:35:49 -04:00
include Add an optional missing_ok argument to SQL function current_setting(). 2015-07-02 16:41:07 -04:00
interfaces Stamp shared-library minor version numbers for 9.6. 2015-06-30 14:06:04 -04:00
makefiles Fix parallel make risk with new check temp-install setup 2015-04-29 20:34:22 -04:00
pl Further reduce overhead for passing plpgsql variables to the executor. 2015-07-05 12:57:17 -04:00
port Stamp HEAD as 9.6devel. 2015-06-30 14:01:15 -04:00
template Remove duplicate specification of -Ae for HP-UX C compiler. 2015-01-13 22:52:11 -05:00
test Make RLS related error messages more consistent and compliant. 2015-07-06 19:16:53 -07:00
timezone Update time zone data files to tzdata release 2015d. 2015-05-15 19:35:29 -04:00
tools Turn install.bat into a pure one line wrapper fort he perl script. 2015-07-06 22:18:26 +03:00
tutorial Remove no-longer-required function declarations. 2015-05-24 12:20:23 -04:00
.gitignore Convert cvsignore to gitignore, and add .gitignore for build targets. 2010-09-22 12:57:04 +02:00
bcc32.mak Autoconfiscate selection of 64-bit int type for 64-bit large object API. 2012-10-07 21:52:43 -04:00
DEVELOPERS Replace a couple of references to files that no longer exist in the source 2009-05-04 08:08:47 +00:00
Makefile Create libpgcommon, and move pg_malloc et al to it 2013-02-12 11:21:05 -03:00
Makefile.global.in Make numeric form of PG version number readily available in Makefiles. 2015-07-02 17:24:36 -04:00
Makefile.shlib Add transforms feature 2015-04-26 10:33:14 -04:00
nls-global.mk Setup error context callback for transaction lock waits 2014-03-19 15:10:36 -03:00
win32.mak Autoconfiscate selection of 64-bit int type for 64-bit large object API. 2012-10-07 21:52:43 -04:00